From 968c513de12a46e7d1ca0f8cd9465270d0bb2d06 Mon Sep 17 00:00:00 2001 From: Zai Shi Date: Tue, 5 Mar 2024 00:38:11 +0800 Subject: [PATCH] updated customization example doc --- docs/docs/01-getting-started/02-users.md | 2 +- .../docs/01-getting-started/03-server-side.md | 2 +- .../04-going-into-production.md | 2 +- .../01-customization/02-examples/01-signin.md | 40 ++++++++++++++++++- .../03-standalone-hooks.md/01-use-user.md | 6 +++ ...1-use-stack-app.md => 02-use-stack-app.md} | 0 .../03-standalone-hooks.md/use-user.md | 4 -- 7 files changed, 48 insertions(+), 8 deletions(-) create mode 100644 docs/docs/03-api-documentation/03-standalone-hooks.md/01-use-user.md rename docs/docs/03-api-documentation/03-standalone-hooks.md/{01-use-stack-app.md => 02-use-stack-app.md} (100%) delete mode 100644 docs/docs/03-api-documentation/03-standalone-hooks.md/use-user.md diff --git a/docs/docs/01-getting-started/02-users.md b/docs/docs/01-getting-started/02-users.md index 005abe9e7..7c1aa2643 100644 --- a/docs/docs/01-getting-started/02-users.md +++ b/docs/docs/01-getting-started/02-users.md @@ -1,5 +1,5 @@ --- -sidebar_position: 2 +sidebar_position: 1 --- import Tabs from '@theme/Tabs'; diff --git a/docs/docs/01-getting-started/03-server-side.md b/docs/docs/01-getting-started/03-server-side.md index 2edbd7f1c..be435b803 100644 --- a/docs/docs/01-getting-started/03-server-side.md +++ b/docs/docs/01-getting-started/03-server-side.md @@ -1,5 +1,5 @@ --- -sidebar_position: 3 +sidebar_position: 1 --- # Server-Side App diff --git a/docs/docs/01-getting-started/04-going-into-production.md b/docs/docs/01-getting-started/04-going-into-production.md index 021807869..24ef3961f 100644 --- a/docs/docs/01-getting-started/04-going-into-production.md +++ b/docs/docs/01-getting-started/04-going-into-production.md @@ -1,5 +1,5 @@ --- -sidebar_position: 4 +sidebar_position: 1 --- # Going Into Production diff --git a/docs/docs/02-advanced-guides/01-customization/02-examples/01-signin.md b/docs/docs/02-advanced-guides/01-customization/02-examples/01-signin.md index b493010d9..e538428b8 100644 --- a/docs/docs/02-advanced-guides/01-customization/02-examples/01-signin.md +++ b/docs/docs/02-advanced-guides/01-customization/02-examples/01-signin.md @@ -17,7 +17,9 @@ export default function DefaultSignIn() { } ``` -`redirectUrl` is optional and defaults to the current page. +`redirectUrl` is the url the user will be redirected to after successful signing in. It is optional and defaults to the current page. + +You can also use `useUser` at the beginning of the sign in page to check if wether the user is already signed in and redirect them to some other page if they are. ## Custom OAuth Sign In @@ -41,3 +43,39 @@ export default function CustomOAuthSignIn() { ## Custom Credential Sign In ```tsx +'use client'; +import { useStackApp, validateEmail } from "@stackframe/stack"; +import { useState } from "react"; + +export default function CustomCredentialSignIn() { + const [email, setEmail] = useState(''); + const [password, setPassword] = useState(''); + const [error, setError] = useState(''); + const app = useStackApp(); + + const onSubmit = async () => { + if (!validateEmail(email)) { + setError('Please enter a valid email'); + return; + } + if (!password) { + setError('Please enter your password'); + return; + } + const errorCode = await app.signInWithCredential({ email, password, redirectUrl: app.urls.userHome }); + // It is better to handle each error code separately, but for simplicity in this example, we will just show the error code directly + if (errorCode) { + setError(errorCode); + } + }; + + return ( +
+ {error} + setEmail(e.target.value)} /> + setPassword(e.target.value)} /> + +
+ ); +} +``` \ No newline at end of file diff --git a/docs/docs/03-api-documentation/03-standalone-hooks.md/01-use-user.md b/docs/docs/03-api-documentation/03-standalone-hooks.md/01-use-user.md new file mode 100644 index 000000000..e8f0c1031 --- /dev/null +++ b/docs/docs/03-api-documentation/03-standalone-hooks.md/01-use-user.md @@ -0,0 +1,6 @@ +--- +sidebar_position: 1 +sidebar_class_name: starred +--- + +# useUser diff --git a/docs/docs/03-api-documentation/03-standalone-hooks.md/01-use-stack-app.md b/docs/docs/03-api-documentation/03-standalone-hooks.md/02-use-stack-app.md similarity index 100% rename from docs/docs/03-api-documentation/03-standalone-hooks.md/01-use-stack-app.md rename to docs/docs/03-api-documentation/03-standalone-hooks.md/02-use-stack-app.md diff --git a/docs/docs/03-api-documentation/03-standalone-hooks.md/use-user.md b/docs/docs/03-api-documentation/03-standalone-hooks.md/use-user.md deleted file mode 100644 index 3d5ad9b9e..000000000 --- a/docs/docs/03-api-documentation/03-standalone-hooks.md/use-user.md +++ /dev/null @@ -1,4 +0,0 @@ ---- ---- - -# useUser