From 3e060b80428943c6562250a6ff77eff10a0259b7 Mon Sep 17 00:00:00 2001 From: Florian Dold Date: Mon, 24 Oct 2022 10:46:14 +0200 Subject: repo: integrate packages from former merchant-backoffice.git --- packages/demobank-ui/src/pages/profile/index.tsx | 42 ++++++++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 packages/demobank-ui/src/pages/profile/index.tsx (limited to 'packages/demobank-ui/src/pages/profile/index.tsx') diff --git a/packages/demobank-ui/src/pages/profile/index.tsx b/packages/demobank-ui/src/pages/profile/index.tsx new file mode 100644 index 000000000..3b9824488 --- /dev/null +++ b/packages/demobank-ui/src/pages/profile/index.tsx @@ -0,0 +1,42 @@ +import { FunctionalComponent, h } from 'preact'; +import { useEffect, useState } from 'preact/hooks'; + +interface Props { + user: string; +} + +const Profile: FunctionalComponent = (props: Props) => { + const { user } = props; + const [time, setTime] = useState(Date.now()); + const [count, setCount] = useState(0); + + // gets called when this route is navigated to + useEffect(() => { + const timer = window.setInterval(() => setTime(Date.now()), 1000); + + // gets called just before navigating away from the route + return (): void => { + clearInterval(timer); + }; + }, []); + + // update the current time + const increment = (): void => { + setCount(count + 1); + }; + + return ( +
+

Profile: {user}

+

This is the user profile for a user named {user}.

+ +
Current time: {new Date(time).toLocaleString()}
+ +

+ Clicked {count} times. +

+
+ ); +}; + +export default Profile; -- cgit v1.2.3