From 70d52a839170213eed0dfeb36e68cdebe9092ed3 Mon Sep 17 00:00:00 2001 From: Lee JaeJun Date: Thu, 1 Feb 2024 23:48:13 +0900 Subject: [PATCH] =?UTF-8?q?Add:=20=EC=9C=A0=EC=A0=80=20=EC=A0=84=EC=97=AD?= =?UTF-8?q?=20=EC=83=81=ED=83=9C=20=EA=B4=80=EB=A6=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/recoil/authState.ts | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 src/recoil/authState.ts diff --git a/src/recoil/authState.ts b/src/recoil/authState.ts new file mode 100644 index 0000000..2af0599 --- /dev/null +++ b/src/recoil/authState.ts @@ -0,0 +1,29 @@ +import { atom } from 'recoil'; +import { recoilPersist } from 'recoil-persist'; + +export type Nullable = T | null; + +interface User { + memberId: Nullable; + email: Nullable; + nickname: Nullable; + image: Nullable; + loggedIn: boolean; +} + +const { persistAtom } = recoilPersist({ + key: 'bc-member', + storage: sessionStorage, +}); + +export const authState = atom({ + key: 'authState', + default: { + memberId: null, + email: null, + nickname: null, + image: null, + loggedIn: false, + }, + effects_UNSTABLE: [persistAtom], +});