* add eastern and eastern pacific timezones * fixed issue while running tests. * fix: Find Braz..il instead of Brasil --------- Co-authored-by: Alex van Andel <me@alexvanandel.com>
This commit is contained in:
co-authored by
Alex van Andel
parent
711bec8d71
commit
b1cd3e940e
@@ -179,7 +179,7 @@ test.describe("Availablity", () => {
|
||||
.locator("svg")
|
||||
.click();
|
||||
|
||||
await page.locator("[id=timeZone-lg-viewport]").fill("bras");
|
||||
await page.locator("[id=timeZone-lg-viewport]").fill("Braz");
|
||||
await page.getByTestId("select-option-America/Sao_Paulo").click();
|
||||
await submitAndWaitForResponse(page, "/api/trpc/availability/schedule.update?batch=1");
|
||||
await page.getByTestId("add-override").click();
|
||||
|
||||
@@ -23,6 +23,66 @@ const cityData = [
|
||||
city: "San Francisco",
|
||||
timezone: "America/Los_Angeles",
|
||||
},
|
||||
{
|
||||
city: "Eastern Time - US & Canada",
|
||||
timezone: "America/New_York",
|
||||
},
|
||||
{
|
||||
city: "Pacific Time - US & Canada",
|
||||
timezone: "America/Los_Angeles",
|
||||
},
|
||||
{
|
||||
city: "Central Time - US & Canada",
|
||||
timezone: "America/Chicago",
|
||||
},
|
||||
{
|
||||
city: "Mountain Time - US & Canada",
|
||||
timezone: "America/Denver",
|
||||
},
|
||||
{
|
||||
city: "Atlantic Time - Canada",
|
||||
timezone: "America/Halifax",
|
||||
},
|
||||
{
|
||||
city: "Eastern European Time",
|
||||
timezone: "Europe/Bucharest",
|
||||
},
|
||||
{
|
||||
city: "Central European Time",
|
||||
timezone: "Europe/Berlin",
|
||||
},
|
||||
{
|
||||
city: "Western European Time",
|
||||
timezone: "Europe/London",
|
||||
},
|
||||
{
|
||||
city: "Australian Eastern Time",
|
||||
timezone: "Australia/Sydney",
|
||||
},
|
||||
{
|
||||
city: "Japan Standard Time",
|
||||
timezone: "Asia/Tokyo",
|
||||
},
|
||||
{
|
||||
city: "India Standard Time",
|
||||
timezone: "Asia/Kolkata",
|
||||
},
|
||||
{
|
||||
city: "Gulf Standard Time",
|
||||
timezone: "Asia/Dubai",
|
||||
},
|
||||
{
|
||||
city: "South Africa Standard Time",
|
||||
timezone: "Africa/Johannesburg",
|
||||
},
|
||||
{
|
||||
city: "Brazil Time",
|
||||
timezone: "America/Sao_Paulo",
|
||||
},
|
||||
{
|
||||
city: "Hawaii-Aleutian Standard Time",
|
||||
timezone: "Pacific/Honolulu",
|
||||
},
|
||||
];
|
||||
|
||||
const option = {
|
||||
@@ -49,37 +109,50 @@ describe("getTimezone", () => {
|
||||
|
||||
it("should filter cities for a valid city name", () => {
|
||||
expect(filterByCities("San Francisco", cityData)).toMatchInlineSnapshot(`
|
||||
[
|
||||
{
|
||||
"city": "San Francisco",
|
||||
"timezone": "America/Argentina/Cordoba",
|
||||
},
|
||||
{
|
||||
"city": "San Francisco de Macoris",
|
||||
"timezone": "America/Santo_Domingo",
|
||||
},
|
||||
{
|
||||
"city": "San Francisco Gotera",
|
||||
"timezone": "America/El_Salvador",
|
||||
},
|
||||
{
|
||||
"city": "San Francisco",
|
||||
"timezone": "America/Los_Angeles",
|
||||
},
|
||||
]
|
||||
`);
|
||||
[
|
||||
{
|
||||
"city": "San Francisco",
|
||||
"timezone": "America/Argentina/Cordoba",
|
||||
},
|
||||
{
|
||||
"city": "San Francisco de Macoris",
|
||||
"timezone": "America/Santo_Domingo",
|
||||
},
|
||||
{
|
||||
"city": "San Francisco Gotera",
|
||||
"timezone": "America/El_Salvador",
|
||||
},
|
||||
{
|
||||
"city": "San Francisco",
|
||||
"timezone": "America/Los_Angeles",
|
||||
},
|
||||
]
|
||||
`);
|
||||
});
|
||||
|
||||
it("should return appropriate timezone(s) for a given city name array", () => {
|
||||
expect(addCitiesToDropdown(cityData)).toMatchInlineSnapshot(`
|
||||
{
|
||||
"America/Argentina/Cordoba": "San Francisco",
|
||||
"America/El_Salvador": "San Francisco Gotera",
|
||||
"America/Los_Angeles": "San Francisco",
|
||||
"America/Santo_Domingo": "San Francisco de Macoris",
|
||||
"America/Sao_Paulo": "Sao Francisco do Sul",
|
||||
}
|
||||
`);
|
||||
{
|
||||
"Africa/Johannesburg": "South Africa Standard Time",
|
||||
"America/Argentina/Cordoba": "San Francisco",
|
||||
"America/Chicago": "Central Time - US & Canada",
|
||||
"America/Denver": "Mountain Time - US & Canada",
|
||||
"America/El_Salvador": "San Francisco Gotera",
|
||||
"America/Halifax": "Atlantic Time - Canada",
|
||||
"America/Los_Angeles": "Pacific Time - US & Canada",
|
||||
"America/New_York": "Eastern Time - US & Canada",
|
||||
"America/Santo_Domingo": "San Francisco de Macoris",
|
||||
"America/Sao_Paulo": "Brazil Time",
|
||||
"Asia/Dubai": "Gulf Standard Time",
|
||||
"Asia/Kolkata": "India Standard Time",
|
||||
"Asia/Tokyo": "Japan Standard Time",
|
||||
"Australia/Sydney": "Australian Eastern Time",
|
||||
"Europe/Berlin": "Central European Time",
|
||||
"Europe/Bucharest": "Eastern European Time",
|
||||
"Europe/London": "Western European Time",
|
||||
"Pacific/Honolulu": "Hawaii-Aleutian Standard Time",
|
||||
}
|
||||
`);
|
||||
});
|
||||
|
||||
it("should render city name as option label if cityData is not empty", () => {
|
||||
|
||||
@@ -0,0 +1,64 @@
|
||||
{
|
||||
"timezones": [
|
||||
{
|
||||
"name": "Eastern Time - US & Canada",
|
||||
"identifier": "America/New_York"
|
||||
},
|
||||
{
|
||||
"name": "Pacific Time - US & Canada",
|
||||
"identifier": "America/Los_Angeles"
|
||||
},
|
||||
{
|
||||
"name": "Central Time - US & Canada",
|
||||
"identifier": "America/Chicago"
|
||||
},
|
||||
{
|
||||
"name": "Mountain Time - US & Canada",
|
||||
"identifier": "America/Denver"
|
||||
},
|
||||
{
|
||||
"name": "Atlantic Time - Canada",
|
||||
"identifier": "America/Halifax"
|
||||
},
|
||||
{
|
||||
"name": "Eastern European Time",
|
||||
"identifier": "Europe/Bucharest"
|
||||
},
|
||||
{
|
||||
"name": "Central European Time",
|
||||
"identifier": "Europe/Berlin"
|
||||
},
|
||||
{
|
||||
"name": "Western European Time",
|
||||
"identifier": "Europe/London"
|
||||
},
|
||||
{
|
||||
"name": "Australian Eastern Time",
|
||||
"identifier": "Australia/Sydney"
|
||||
},
|
||||
{
|
||||
"name": "Japan Standard Time",
|
||||
"identifier": "Asia/Tokyo"
|
||||
},
|
||||
{
|
||||
"name": "India Standard Time",
|
||||
"identifier": "Asia/Kolkata"
|
||||
},
|
||||
{
|
||||
"name": "Gulf Standard Time",
|
||||
"identifier": "Asia/Dubai"
|
||||
},
|
||||
{
|
||||
"name": "South Africa Standard Time",
|
||||
"identifier": "Africa/Johannesburg"
|
||||
},
|
||||
{
|
||||
"name": "Brazil Time",
|
||||
"identifier": "America/Sao_Paulo"
|
||||
},
|
||||
{
|
||||
"name": "Hawaii-Aleutian Standard Time",
|
||||
"identifier": "Pacific/Honolulu"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
import * as additionalTimezones from "./additionalTimezones.json";
|
||||
|
||||
export interface Timezone {
|
||||
name: string;
|
||||
identifier: string;
|
||||
}
|
||||
|
||||
export const timezones: Timezone[] = additionalTimezones.timezones;
|
||||
|
||||
export default additionalTimezones;
|
||||
@@ -3,6 +3,7 @@ import type { ITimezoneOption } from "react-timezone-select";
|
||||
import dayjs from "@calcom/dayjs";
|
||||
import type { ICity } from "@calcom/ui/components/form/timezone-select";
|
||||
|
||||
import { timezones as additionalTimezones } from "../features/additionalTimezones/additionalTimezones";
|
||||
import isProblematicTimezone from "./isProblematicTimezone";
|
||||
|
||||
function findPartialMatch(itemsToSearch: string, searchString: string) {
|
||||
@@ -30,6 +31,11 @@ export const addCitiesToDropdown = (cities: ICity[]) => {
|
||||
}
|
||||
return acc;
|
||||
}, {});
|
||||
|
||||
additionalTimezones.forEach((tz) => {
|
||||
cityTimezones[tz.identifier] = tz.name;
|
||||
});
|
||||
|
||||
return cityTimezones || {};
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user