From a9aa246f58dcb2664c4e7a1bd98e69c19e7d7000 Mon Sep 17 00:00:00 2001 From: Sam Nystrom Date: Tue, 12 Mar 2024 14:52:25 +0000 Subject: Add rudimentary backend and auth --- src/pages/SignUp.tsx | 53 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 src/pages/SignUp.tsx (limited to 'src/pages/SignUp.tsx') diff --git a/src/pages/SignUp.tsx b/src/pages/SignUp.tsx new file mode 100644 index 0000000..99cc7d6 --- /dev/null +++ b/src/pages/SignUp.tsx @@ -0,0 +1,53 @@ +import { useContext } from 'preact/hooks'; +import { useSignal } from '@preact/signals'; +import { route } from 'preact-router'; +import { Pb } from '../pb.ts'; + +export const SignUp = () => { + const pb = useContext(Pb); + + const username = useSignal(''); + const email = useSignal(''); + const password = useSignal(''); + const confirm = useSignal(''); + + const onSubmit = async (event: SubmitEvent) => { + event.preventDefault(); + const user = await pb.collection('users').create({ + username: username.value, + email: email.value, + emailVisibility: true, + password: password.value, + passwordConfirm: confirm.value, + }); + if (pb.authStore.isValid) { + route('/' + user.username); + } + }; + + return ( +
+
+
+ + + + + +
+
+
+ ); +}; \ No newline at end of file -- cgit v1.2.3