import { createEffect, createMemo, createSignal, FlowComponent, onCleanup, useContext, } from "solid-js"; import { UiStoreContext } from "~/stores"; import { de } from "date-fns/locale"; import { formatDistanceToNow, fromUnixTime, getUnixTime } from "date-fns"; const Page: FlowComponent = (props) => { const [uiState] = useContext(UiStoreContext)!; const [now, setNow] = createSignal(new Date()); createEffect(function () { const interval = setInterval(function () { setNow(new Date()); }, 10000); onCleanup(() => clearInterval(interval)); }); const lastSavedWords = createMemo(function () { now(); let words = "Nie"; if (uiState.lastSaved > 0) { words = formatDistanceToNow(fromUnixTime(uiState.lastSaved), { includeSeconds: true, addSuffix: true, locale: de, }); } return words; }); const savedDistance = createMemo(function () { now(); if (uiState.lastSaved === 0) { return -1; } const nowUnix = getUnixTime(new Date()); const distance = nowUnix - uiState.lastSaved; return distance; }); return (