diff --git a/e2e/lazy-widgets.spec.ts b/e2e/lazy-widgets.spec.ts index a406cfa6e..76041981f 100644 --- a/e2e/lazy-widgets.spec.ts +++ b/e2e/lazy-widgets.spec.ts @@ -88,8 +88,11 @@ describe("lazy widget application graph", () => { ); await expect(clockWidget).toBeVisible({ timeout: 15_000 }); + await expect(page.locator("[data-homarr-dev-benchmark-spotlight-preloaded]")).toHaveCount(1, { + timeout: 15_000, + }); await page.keyboard.press("Control+K"); - await expect(page.locator("[data-homarr-dev-benchmark-spotlight]")).toBeVisible(); + await expect(page.locator("[data-homarr-dev-benchmark-spotlight]")).toBeVisible({ timeout: 15_000 }); await page.keyboard.press("Escape"); await expect(page.locator("[data-homarr-dev-benchmark-spotlight]")).not.toBeVisible(); diff --git a/packages/widgets/src/clock/component.tsx b/packages/widgets/src/clock/component.tsx index e45e99618..96a19a14d 100644 --- a/packages/widgets/src/clock/component.tsx +++ b/packages/widgets/src/clock/component.tsx @@ -50,14 +50,14 @@ export default function ClockWidget({ options, width, height, displayMode }: Wid )} - <time dateTime={dayjs(time).tz(timezone).toISOString()} suppressHydrationWarning> + <time dateTime={dayjs(time).tz(timezone).toISOString()}> {options.customTimeFormat ? dayjs(time).tz(timezone).format(customTimeFormat) : dayjs(time).tz(timezone).format(timeFormat)} </time> {options.showDate && ( - + {options.customDateFormat ? dayjs(time).tz(timezone).format(customDateFormat) : dayjs(time).tz(timezone).format(dateFormat)} @@ -124,7 +124,7 @@ interface UseCurrentTimeProps { } const useCurrentTime = ({ showSeconds }: UseCurrentTimeProps) => { - const [time, setTime] = useState(new Date()); + const [time, setTime] = useState(() => new Date(0)); const timeoutRef = useRef(null); const intervalRef = useRef(null); const intervalMultiplier = useMemo(() => (showSeconds ? 1 : 60), [showSeconds]);