From 61cb637604dcbcb46343bfff0593b60f712300b5 Mon Sep 17 00:00:00 2001 From: stdavis Date: Mon, 16 Dec 2024 13:17:34 -0700 Subject: [PATCH] feat: integrate UtahID sign in ref #9 --- .vscode/settings.json | 1 + src/App.tsx | 99 ++++++++++--------- src/components/BackupSchedule.tsx | 4 +- src/components/contexts/AnalyticsProvider.tsx | 35 ------- .../contexts/FirebaseAppProvider.tsx | 49 --------- src/components/contexts/index.ts | 2 - src/components/hooks/index.ts | 0 src/contexts/FirebaseFunctionsProvider.tsx | 39 ++++++++ src/contexts/FirestoreProvider.tsx | 39 ++++++++ src/main.tsx | 43 ++++++-- 10 files changed, 172 insertions(+), 139 deletions(-) delete mode 100644 src/components/contexts/AnalyticsProvider.tsx delete mode 100644 src/components/contexts/FirebaseAppProvider.tsx delete mode 100644 src/components/contexts/index.ts delete mode 100644 src/components/hooks/index.ts create mode 100644 src/contexts/FirebaseFunctionsProvider.tsx create mode 100644 src/contexts/FirestoreProvider.tsx diff --git a/.vscode/settings.json b/.vscode/settings.json index 487570e..37a8470 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -13,6 +13,7 @@ "orgid", "prebuild", "tanstack", + "utahid", "venv", "VITE" ], diff --git a/src/App.tsx b/src/App.tsx index c0e10f9..5ada83f 100644 --- a/src/App.tsx +++ b/src/App.tsx @@ -1,14 +1,13 @@ import { useQuery } from '@tanstack/react-query'; -import { Drawer, Footer, Header, SocialMedia, UgrcLogo } from '@ugrc/utah-design-system'; +import { Drawer, Footer, Header, SocialMedia, UgrcLogo, useFirebaseAuth, UtahIdLogin } from '@ugrc/utah-design-system'; import { collection, getDocs } from 'firebase/firestore'; -import PropTypes from 'prop-types'; import { useState } from 'react'; import { useOverlayTrigger } from 'react-aria'; import { useOverlayTriggerState } from 'react-stately'; import { BackupItem } from './components/BackupItem'; import { BackupSchedule } from './components/BackupSchedule'; -import { useFirebaseApp } from './components/contexts'; import { MoonwalkBackup } from './components/types'; +import { useFirestore } from './contexts/FirestoreProvider'; const version = import.meta.env.PACKAGE_VERSION; @@ -21,10 +20,6 @@ const ErrorFallback = ({ error }: { error: Error }) => { ); }; -ErrorFallback.propTypes = { - error: PropTypes.object, -}; - const links = [ { key: 'UGRC Homepage', @@ -61,8 +56,11 @@ export default function App() { ); const [selected, setSelected] = useState(); - const { firestore } = useFirebaseApp(); + const { firestore } = useFirestore(); + const { currentUser, logout } = useFirebaseAuth(); const getMoonwalkData = async () => { + if (!firestore) return; + const snapshot = await getDocs(collection(firestore, 'items')); return snapshot.docs.map((doc) => { @@ -81,7 +79,7 @@ export default function App() { return ( <>
-
+

@@ -89,45 +87,56 @@ export default function App() {

-
- -
-

Available restore points

-
- {selected && } + {currentUser ? ( +
+ +
+

Available restore points

+
+ {selected && } +
+
+
+
+ {!isPending && + data?.map((item: MoonwalkBackup, i) => ( + { + setSelected(item); + sideBarState.open(); + }} + /> + ))} + {error && } + +
+

What's here?

+ Features: 25,001 +
+
+
+
- -
-
- {!isPending && - data?.map((item: MoonwalkBackup, i) => ( - { - setSelected(item); - sideBarState.open(); - }} - /> - ))} - {error && } - -
-

What's here?

- Features: 25,001 -
-
+
+ ) : ( +
+
+

Please log in to use the application

+
+ +
- -
-
+ + )}