[#337] added timezone loading from backend (#386)

* [#337] added timezone loading from backend

* [#337] changed data structure to allow patching timezone while keeping other datetime params value

* [#337] fixed gap, event create modale sync with settings and added checkbox

* [#337] isBrowserDefaultTimezone is set to true when API return null timezone

Co-authored-by: Camille Moussu <cmoussu@linagora.com>
This commit is contained in:
Camille Moussu
2025-12-04 15:14:43 +01:00
committed by GitHub
parent d8f5f9ae46
commit 193c1a7166
23 changed files with 1021 additions and 109 deletions
@@ -2,11 +2,10 @@ import { fireEvent, screen, waitFor } from "@testing-library/react";
import CalendarApp from "../../../src/components/Calendar/Calendar";
import { updateSlotLabelVisibility } from "../../../src/components/Calendar/utils/calendarUtils";
import EventPreviewModal from "../../../src/features/Events/EventDisplayPreview";
import * as CalendarSlice from "../../../src/features/Calendars/CalendarSlice";
import * as SettingsSlice from "../../../src/features/Settings/SettingsSlice";
import * as calendarUtils from "../../../src/components/Calendar/utils/calendarUtils";
import { CalendarEvent } from "../../../src/features/Events/EventsTypes";
import { renderWithProviders } from "../../utils/Renderwithproviders";
import preview from "jest-preview";
describe("Calendar - Timezone Integration", () => {
const mockCalendarRef = { current: null };
@@ -56,7 +55,7 @@ describe("Calendar - Timezone Integration", () => {
});
it("dispatches setTimeZone action when timezone is changed", async () => {
const setTimeZoneSpy = jest.spyOn(CalendarSlice, "setTimeZone");
const setTimeZoneSpy = jest.spyOn(SettingsSlice, "setTimeZone");
renderWithProviders(
<CalendarApp calendarRef={mockCalendarRef} />,
@@ -226,8 +225,7 @@ describe("EventDisplayPreview - Timezone Display", () => {
for (const { tz, expectedOffset } of timezones) {
const state = {
...baseState,
calendars: {
...baseState.calendars,
settings: {
timeZone: tz,
},
};