diff options
author | Sebastian <sebasjm@gmail.com> | 2024-06-30 16:37:01 -0300 |
---|---|---|
committer | Sebastian <sebasjm@gmail.com> | 2024-06-30 23:46:47 -0300 |
commit | 4133128c4fd795bb3fb34e2f49e43c2f53af72ef (patch) | |
tree | 5a9341d085230f7f6c9d16400dccb6c4738e226c /packages/bank-ui/src/components | |
parent | 3bb3d4c82535e4c3bc946355967d40683a15fd1c (diff) | |
download | wallet-core-4133128c4fd795bb3fb34e2f49e43c2f53af72ef.tar.xz |
time to web-util
Diffstat (limited to 'packages/bank-ui/src/components')
-rw-r--r-- | packages/bank-ui/src/components/Cashouts/views.tsx | 3 | ||||
-rw-r--r-- | packages/bank-ui/src/components/Time.tsx | 80 | ||||
-rw-r--r-- | packages/bank-ui/src/components/Transactions/views.tsx | 2 |
3 files changed, 2 insertions, 83 deletions
diff --git a/packages/bank-ui/src/components/Cashouts/views.tsx b/packages/bank-ui/src/components/Cashouts/views.tsx index 22b8d8c1b..bc9de3a60 100644 --- a/packages/bank-ui/src/components/Cashouts/views.tsx +++ b/packages/bank-ui/src/components/Cashouts/views.tsx @@ -24,6 +24,7 @@ import { import { Attention, Loading, + Time, useTranslationContext, } from "@gnu-taler/web-util/browser"; import { format } from "date-fns"; @@ -31,7 +32,6 @@ import { Fragment, VNode, h } from "preact"; import { useConversionInfo } from "../../hooks/regional.js"; import { RenderAmount } from "../../pages/PaytoWireTransferForm.js"; import { ErrorLoadingWithDebug } from "../ErrorLoadingWithDebug.js"; -import { Time } from "../Time.js"; import { State } from "./index.js"; export function FailedView({ error }: State.Failed) { @@ -160,7 +160,6 @@ export function ReadyView({ timestamp={AbsoluteTime.fromProtocolTimestamp( item.creation_time, )} - // relative={Duration.fromSpec({ days: 1 })} /> </div> { diff --git a/packages/bank-ui/src/components/Time.tsx b/packages/bank-ui/src/components/Time.tsx deleted file mode 100644 index 5c8afe212..000000000 --- a/packages/bank-ui/src/components/Time.tsx +++ /dev/null @@ -1,80 +0,0 @@ -/* - This file is part of GNU Taler - (C) 2022-2024 Taler Systems S.A. - - GNU Taler is free software; you can redistribute it and/or modify it under the - terms of the GNU General Public License as published by the Free Software - Foundation; either version 3, or (at your option) any later version. - - GNU Taler is distributed in the hope that it will be useful, but WITHOUT ANY - WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR - A PARTICULAR PURPOSE. See the GNU General Public License for more details. - - You should have received a copy of the GNU General Public License along with - GNU Taler; see the file COPYING. If not, see <http://www.gnu.org/licenses/> - */ - -import { AbsoluteTime, Duration } from "@gnu-taler/taler-util"; -import { useTranslationContext } from "@gnu-taler/web-util/browser"; -import { - formatISO, - format, - formatDuration, - intervalToDuration, -} from "date-fns"; -import { Fragment, h, VNode } from "preact"; - -/** - * - * @param timestamp time to be formatted - * @param relative duration threshold, if the difference is lower - * the timestamp will be formatted as relative time from "now" - * - * @returns - */ -export function Time({ - timestamp, - relative, - format: formatString, -}: { - timestamp: AbsoluteTime | undefined; - relative?: Duration; - format: string; -}): VNode { - const { i18n, dateLocale } = useTranslationContext(); - if (!timestamp) return <Fragment />; - - if (timestamp.t_ms === "never") { - return <time>{i18n.str`never`}</time>; - } - - const now = AbsoluteTime.now(); - const diff = AbsoluteTime.difference(now, timestamp); - if (relative && now.t_ms !== "never" && Duration.cmp(diff, relative) === -1) { - const d = intervalToDuration({ - start: now.t_ms, - end: timestamp.t_ms, - }); - d.seconds = 0; - const duration = formatDuration(d, { locale: dateLocale }); - const isFuture = AbsoluteTime.cmp(now, timestamp) < 0; - if (isFuture) { - return ( - <time dateTime={formatISO(timestamp.t_ms)}> - <i18n.Translate>in {duration}</i18n.Translate> - </time> - ); - } else { - return ( - <time dateTime={formatISO(timestamp.t_ms)}> - <i18n.Translate>{duration} ago</i18n.Translate> - </time> - ); - } - } - return ( - <time dateTime={formatISO(timestamp.t_ms)}> - {format(timestamp.t_ms, formatString, { locale: dateLocale })} - </time> - ); -} diff --git a/packages/bank-ui/src/components/Transactions/views.tsx b/packages/bank-ui/src/components/Transactions/views.tsx index 10d63e6af..038603f9e 100644 --- a/packages/bank-ui/src/components/Transactions/views.tsx +++ b/packages/bank-ui/src/components/Transactions/views.tsx @@ -16,13 +16,13 @@ import { Attention, + Time, useBankCoreApiContext, useTranslationContext, } from "@gnu-taler/web-util/browser"; import { format } from "date-fns"; import { Fragment, VNode, h } from "preact"; import { RenderAmount } from "../../pages/PaytoWireTransferForm.js"; -import { Time } from "../Time.js"; import { State } from "./index.js"; export function ReadyView({ |