From 11de1108bc87be1c49515a69ef85d92b3067d952 Mon Sep 17 00:00:00 2001 From: Alex Lewin Date: Sat, 7 May 2022 01:44:24 -0400 Subject: [PATCH 1/3] added route headers --- src/requests/Admin.js | 34 ++++++++++++++++++++++++++++++++++ src/requests/Child.js | 26 ++++++++++++++++++++++++++ src/routes/NewAccount.js | 2 ++ 3 files changed, 62 insertions(+) create mode 100644 src/requests/Admin.js create mode 100644 src/requests/Child.js diff --git a/src/requests/Admin.js b/src/requests/Admin.js new file mode 100644 index 0000000..6594f8f --- /dev/null +++ b/src/requests/Admin.js @@ -0,0 +1,34 @@ +//Parent Account Requests + +// CreateNewAccount +// - ManageChildren +// - GetChildren +// - InviteChild +// - Role (1-4) +// - TransitionChildRole +// - SetChildAllowance +// - TransferFunds + +export const GetChildren = async (familyId) => { + return { children }; +}; + +export const InviteChild = async (familyId, childName, role) => { + return { success: true }; +}; + +export const TransitionChildRole = async (familyId, childId, newRole) => { + return { success: true }; +}; + +export const SetChildAllowance = async (familyId, childId, allowance) => { + return { success: true }; +}; + +export const TransferFunds = async (familyId, childId, amount) => { + return { success: true }; +}; + +export const ExportChild = async (familyId, childId) => { + return { success: true }; +}; diff --git a/src/requests/Child.js b/src/requests/Child.js new file mode 100644 index 0000000..021a07a --- /dev/null +++ b/src/requests/Child.js @@ -0,0 +1,26 @@ +// Children Account Requests +// - GetBalance +// - GetTransactions +// - GetAllowance +// - SendPayment +// - RequestOneTimeAllowance + +export const GetBalance = async (familyId, childId) => { + return { balance: 0 }; +}; + +export const GetTransactions = async (familyId, childId) => { + return { transactions: [] }; +}; + +export const GetAllowance = async (familyId, childId) => { + return { allowance: 0 }; +}; + +export const SendPayment = async (familyId, childId, amount) => { + return { success: true }; +}; + +export const RequestOneTimeAllowance = async (familyId, childId, amount) => { + return { success: true }; +}; diff --git a/src/routes/NewAccount.js b/src/routes/NewAccount.js index 938fa1d..fbe96e0 100644 --- a/src/routes/NewAccount.js +++ b/src/routes/NewAccount.js @@ -1,7 +1,9 @@ +import { Outlet } from "react-router-dom"; const NewAccount = () => { return (

New Account Screen

+
); }; From 13f764d4e6f59ee7ca25ced8e6e97498f37f2c5c Mon Sep 17 00:00:00 2001 From: Alex Lewin Date: Sat, 7 May 2022 11:38:59 -0400 Subject: [PATCH 2/3] added frontend, backend --- backend/api/Admin.js | 85 +++ {src/requests => backend/api}/Child.js | 0 backend/db/collection.js | 7 + backend/db/db.js | 22 + .eslintignore => frontend/.eslintignore | 0 .gitignore => frontend/.gitignore | 4 +- README.md => frontend/README.md | 0 package.json => frontend/package.json | 1 + .../postcss.config.js | 0 {public => frontend/public}/favicon.ico | Bin {public => frontend/public}/index.html | 0 {public => frontend/public}/logo192.png | Bin {public => frontend/public}/logo512.png | Bin {public => frontend/public}/manifest.json | 0 {public => frontend/public}/mountains.jpg | Bin {public => frontend/public}/robots.txt | 0 {src => frontend/src}/App.css | 0 {src => frontend/src}/App.js | 0 {src => frontend/src}/components/Button.js | 0 {src => frontend/src}/index.css | 0 {src => frontend/src}/index.js | 0 {src => frontend/src}/routes/Account.js | 0 frontend/src/routes/Accounts.js | 43 ++ {src => frontend/src}/routes/Family.js | 0 {src => frontend/src}/routes/Home.js | 0 {src => frontend/src}/routes/NewAccount.js | 0 {src => frontend/src}/routes/Onboarding.js | 0 frontend/src/serviceRequests/Admin.js | 85 +++ frontend/src/serviceRequests/Child.js | 26 + .../tailwind.config.js | 0 yarn.lock => frontend/yarn.lock | 616 +++++++++++++++++- src/requests/Admin.js | 34 - src/routes/Accounts.js | 25 - 33 files changed, 879 insertions(+), 69 deletions(-) create mode 100644 backend/api/Admin.js rename {src/requests => backend/api}/Child.js (100%) create mode 100644 backend/db/collection.js create mode 100644 backend/db/db.js rename .eslintignore => frontend/.eslintignore (100%) rename .gitignore => frontend/.gitignore (75%) rename README.md => frontend/README.md (100%) rename package.json => frontend/package.json (97%) rename postcss.config.js => frontend/postcss.config.js (100%) rename {public => frontend/public}/favicon.ico (100%) rename {public => frontend/public}/index.html (100%) rename {public => frontend/public}/logo192.png (100%) rename {public => frontend/public}/logo512.png (100%) rename {public => frontend/public}/manifest.json (100%) rename {public => frontend/public}/mountains.jpg (100%) rename {public => frontend/public}/robots.txt (100%) rename {src => frontend/src}/App.css (100%) rename {src => frontend/src}/App.js (100%) rename {src => frontend/src}/components/Button.js (100%) rename {src => frontend/src}/index.css (100%) rename {src => frontend/src}/index.js (100%) rename {src => frontend/src}/routes/Account.js (100%) create mode 100644 frontend/src/routes/Accounts.js rename {src => frontend/src}/routes/Family.js (100%) rename {src => frontend/src}/routes/Home.js (100%) rename {src => frontend/src}/routes/NewAccount.js (100%) rename {src => frontend/src}/routes/Onboarding.js (100%) create mode 100644 frontend/src/serviceRequests/Admin.js create mode 100644 frontend/src/serviceRequests/Child.js rename tailwind.config.js => frontend/tailwind.config.js (100%) rename yarn.lock => frontend/yarn.lock (93%) delete mode 100644 src/requests/Admin.js delete mode 100644 src/routes/Accounts.js diff --git a/backend/api/Admin.js b/backend/api/Admin.js new file mode 100644 index 0000000..fc5ec0f --- /dev/null +++ b/backend/api/Admin.js @@ -0,0 +1,85 @@ +//Parent Account Requests + +// CreateNewAccount +// - ManageChildren +// - GetChildren +// - InviteChild +// - Role (1-4) +// - TransitionChildRole +// - SetChildAllowance +// - TransferFunds + +import db, { getFamily } from "../db/db"; +import { + collection, + doc, + setDoc, + updateDoc, + arrayUnion, + getDocs, + query, + where, +} from "firebase/firestore"; + +export const GetFamily = async (familyName) => { + console.log("Getting Family"); + return await getFamily(familyName); +}; + +export const CreateNewFamily = async (familyName) => { + await setDoc(doc(db, "families", familyName), { + familyName: familyName, + children: [], + }); + return { success: true }; +}; +export const GetChildren = async (familyId) => { + return { children }; +}; + +export const InviteChild = async (familyId, childName, role) => { + return { success: true }; +}; + +export const AddChild = async ( + familyName, + childName, + role, + balance, + allowance +) => { + const coll = collection(db, "families"); + const docs = await getDocs(coll); + console.log("getDocs", docs); + let famDoc = null; + await docs.forEach((doc) => { + console.log("snap", doc); + famDoc = doc; + }); + + await updateDoc(famDoc, { + children: arrayUnion({ + allowance: allowance, + name: childName, + role: role, + balance: balance, + }), + }); + return { success: true, familyDoc }; +}; + +export const TransitionChildRole = async (familyId, childId, newRole) => { + return { success: true }; +}; + +export const SetChildAllowance = async (familyId, childId, allowance) => { + return { success: true }; +}; + +export const TransferFunds = async (familyId, childId, amount) => { + return { success: true }; +}; + +export const ExportChild = async (familyId, childId) => { + return { success: true }; +}; diff --git a/src/requests/Child.js b/backend/api/Child.js similarity index 100% rename from src/requests/Child.js rename to backend/api/Child.js diff --git a/backend/db/collection.js b/backend/db/collection.js new file mode 100644 index 0000000..1a9d283 --- /dev/null +++ b/backend/db/collection.js @@ -0,0 +1,7 @@ +const db = require("./db"); +const DB_COLLECTION = "families"; + +const collection = db.collection(DB_COLLECTION); +console.log(`Connected to collection ${db.projectId}/${DB_COLLECTION}`); + +export default collection; diff --git a/backend/db/db.js b/backend/db/db.js new file mode 100644 index 0000000..84aca95 --- /dev/null +++ b/backend/db/db.js @@ -0,0 +1,22 @@ +import { initializeApp } from "firebase/app"; +import { getFirestore, collection, getDocs } from "firebase/firestore"; + +const firebaseConfig = require("../service-account.json"); +console.log(firebaseConfig); + +const app = initializeApp(firebaseConfig); + +const db = getFirestore(app); +utils.info(`Connection to GCP Project ${db.projectId} successful!`); +export default db; + +export const getFamily = async (familyName) => { + const querySnapshot = await getDocs(collection(db, "families")); + let res = null; + const docs = await querySnapshot.forEach((doc) => { + if (doc.data()["family-name"] === familyName) { + res = doc.data(); + } + }); + return res; +}; diff --git a/.eslintignore b/frontend/.eslintignore similarity index 100% rename from .eslintignore rename to frontend/.eslintignore diff --git a/.gitignore b/frontend/.gitignore similarity index 75% rename from .gitignore rename to frontend/.gitignore index d186e8c..da748a1 100644 --- a/.gitignore +++ b/frontend/.gitignore @@ -18,4 +18,6 @@ psd thumb sketch -# End of https://www.toptal.com/developers/gitignore/api/react \ No newline at end of file +# End of https://www.toptal.com/developers/gitignore/api/react + +service-account.json diff --git a/README.md b/frontend/README.md similarity index 100% rename from README.md rename to frontend/README.md diff --git a/package.json b/frontend/package.json similarity index 97% rename from package.json rename to frontend/package.json index 5f31dd0..2bfb6bc 100644 --- a/package.json +++ b/frontend/package.json @@ -8,6 +8,7 @@ "@testing-library/jest-dom": "^5.16.4", "@testing-library/react": "^13.2.0", "@testing-library/user-event": "^13.5.0", + "firebase": "9.8.0", "react": "^18.1.0", "react-dom": "^18.1.0", "react-router-dom": "^6.3.0", diff --git a/postcss.config.js b/frontend/postcss.config.js similarity index 100% rename from postcss.config.js rename to frontend/postcss.config.js diff --git a/public/favicon.ico b/frontend/public/favicon.ico similarity index 100% rename from public/favicon.ico rename to frontend/public/favicon.ico diff --git a/public/index.html b/frontend/public/index.html similarity index 100% rename from public/index.html rename to frontend/public/index.html diff --git a/public/logo192.png b/frontend/public/logo192.png similarity index 100% rename from public/logo192.png rename to frontend/public/logo192.png diff --git a/public/logo512.png b/frontend/public/logo512.png similarity index 100% rename from public/logo512.png rename to frontend/public/logo512.png diff --git a/public/manifest.json b/frontend/public/manifest.json similarity index 100% rename from public/manifest.json rename to frontend/public/manifest.json diff --git a/public/mountains.jpg b/frontend/public/mountains.jpg similarity index 100% rename from public/mountains.jpg rename to frontend/public/mountains.jpg diff --git a/public/robots.txt b/frontend/public/robots.txt similarity index 100% rename from public/robots.txt rename to frontend/public/robots.txt diff --git a/src/App.css b/frontend/src/App.css similarity index 100% rename from src/App.css rename to frontend/src/App.css diff --git a/src/App.js b/frontend/src/App.js similarity index 100% rename from src/App.js rename to frontend/src/App.js diff --git a/src/components/Button.js b/frontend/src/components/Button.js similarity index 100% rename from src/components/Button.js rename to frontend/src/components/Button.js diff --git a/src/index.css b/frontend/src/index.css similarity index 100% rename from src/index.css rename to frontend/src/index.css diff --git a/src/index.js b/frontend/src/index.js similarity index 100% rename from src/index.js rename to frontend/src/index.js diff --git a/src/routes/Account.js b/frontend/src/routes/Account.js similarity index 100% rename from src/routes/Account.js rename to frontend/src/routes/Account.js diff --git a/frontend/src/routes/Accounts.js b/frontend/src/routes/Accounts.js new file mode 100644 index 0000000..2e3aeb6 --- /dev/null +++ b/frontend/src/routes/Accounts.js @@ -0,0 +1,43 @@ +import { Outlet, useParams, Link } from "react-router-dom"; +import { AddChild, CreateNewFamily, GetFamily } from "../serviceRequests/Admin"; +import { useEffect, useState } from "react"; +import { async } from "@firebase/util"; +//Specifc, Private Family Page +const Accounts = () => { + const { family } = useParams(); + const [fam, setFam] = useState([]); + const [children, setChildren] = useState([]); + + useEffect(() => { + async function getData() { + // await CreateNewFamily("atlantabitdevs"); + const res = await AddChild("atlantabitdevs", "Bryan", "piggy", 20, 0); + // const _fam = await GetFamily("atlantabitdevs"); + // setFam(_fam); + // const members = await _fam.children.map((member) => member.name); + // setChildren(members); + } + getData(); + }, []); + + // const members = ["Steven", "Alex", "Bryan", "Jordan"]; + + return ( +
+

Welcome {family} family!

+
    + {children && + children.map((member, key) => { + return ( +
  • + {member}'s Account +
  • + ); + })} +
+ +
+ ); +}; + +export default Accounts; diff --git a/src/routes/Family.js b/frontend/src/routes/Family.js similarity index 100% rename from src/routes/Family.js rename to frontend/src/routes/Family.js diff --git a/src/routes/Home.js b/frontend/src/routes/Home.js similarity index 100% rename from src/routes/Home.js rename to frontend/src/routes/Home.js diff --git a/src/routes/NewAccount.js b/frontend/src/routes/NewAccount.js similarity index 100% rename from src/routes/NewAccount.js rename to frontend/src/routes/NewAccount.js diff --git a/src/routes/Onboarding.js b/frontend/src/routes/Onboarding.js similarity index 100% rename from src/routes/Onboarding.js rename to frontend/src/routes/Onboarding.js diff --git a/frontend/src/serviceRequests/Admin.js b/frontend/src/serviceRequests/Admin.js new file mode 100644 index 0000000..5184131 --- /dev/null +++ b/frontend/src/serviceRequests/Admin.js @@ -0,0 +1,85 @@ +//Parent Account Requests + +// CreateNewAccount +// - ManageChildren +// - GetChildren +// - InviteChild +// - Role (1-4) +// - TransitionChildRole +// - SetChildAllowance +// - TransferFunds + +// import db, { getFamily } from "../db/db"; +// import { +// collection, +// doc, +// setDoc, +// updateDoc, +// arrayUnion, +// getDocs, +// query, +// where, +// } from "firebase/firestore"; + +export const GetFamily = async (familyName) => { + console.log("Getting Family"); + // return await getFamily(familyName); +}; + +export const CreateNewFamily = async (familyName) => { + // await setDoc(doc(db, "families", familyName), { + // familyName: familyName, + // children: [], + // }); + return { success: true }; +}; +export const GetChildren = async (familyId) => { + return { children }; +}; + +export const InviteChild = async (familyId, childName, role) => { + return { success: true }; +}; + +export const AddChild = async ( + familyName, + childName, + role, + balance, + allowance +) => { + // const coll = collection(db, "families"); + // const docs = await getDocs(coll); + // console.log("getDocs", docs); + // let famDoc = null; + // await docs.forEach((doc) => { + // console.log("snap", doc); + // famDoc = doc; + // }); + + // await updateDoc(famDoc, { + // children: arrayUnion({ + // allowance: allowance, + // name: childName, + // role: role, + // balance: balance, + // }), + // }); + return { success: true, familyDoc }; +}; + +export const TransitionChildRole = async (familyId, childId, newRole) => { + return { success: true }; +}; + +export const SetChildAllowance = async (familyId, childId, allowance) => { + return { success: true }; +}; + +export const TransferFunds = async (familyId, childId, amount) => { + return { success: true }; +}; + +export const ExportChild = async (familyId, childId) => { + return { success: true }; +}; diff --git a/frontend/src/serviceRequests/Child.js b/frontend/src/serviceRequests/Child.js new file mode 100644 index 0000000..021a07a --- /dev/null +++ b/frontend/src/serviceRequests/Child.js @@ -0,0 +1,26 @@ +// Children Account Requests +// - GetBalance +// - GetTransactions +// - GetAllowance +// - SendPayment +// - RequestOneTimeAllowance + +export const GetBalance = async (familyId, childId) => { + return { balance: 0 }; +}; + +export const GetTransactions = async (familyId, childId) => { + return { transactions: [] }; +}; + +export const GetAllowance = async (familyId, childId) => { + return { allowance: 0 }; +}; + +export const SendPayment = async (familyId, childId, amount) => { + return { success: true }; +}; + +export const RequestOneTimeAllowance = async (familyId, childId, amount) => { + return { success: true }; +}; diff --git a/tailwind.config.js b/frontend/tailwind.config.js similarity index 100% rename from tailwind.config.js rename to frontend/tailwind.config.js diff --git a/yarn.lock b/frontend/yarn.lock similarity index 93% rename from yarn.lock rename to frontend/yarn.lock index 41be731..2b1d0f1 100644 --- a/yarn.lock +++ b/frontend/yarn.lock @@ -1159,6 +1159,392 @@ minimatch "^3.1.2" strip-json-comments "^3.1.1" +"@firebase/analytics-compat@0.1.10": + version "0.1.10" + resolved "https://registry.yarnpkg.com/@firebase/analytics-compat/-/analytics-compat-0.1.10.tgz#1e14677cdccad5052c6ccec49d2a92aab40be2a1" + integrity sha512-7zfB+BBO5RbF7RSHOA4ZPyLvOEEvMOhRbfIjh5ZmizAQY2J6tZB8t+dwQ/q4hqZVGgw4ds4g0JYuRKZKYsWADg== + dependencies: + "@firebase/analytics" "0.7.9" + "@firebase/analytics-types" "0.7.0" + "@firebase/component" "0.5.14" + "@firebase/util" "1.6.0" + tslib "^2.1.0" + +"@firebase/analytics-types@0.7.0": + version "0.7.0" + resolved "https://registry.yarnpkg.com/@firebase/analytics-types/-/analytics-types-0.7.0.tgz#91960e7c87ce8bf18cf8dd9e55ccbf5dc3989b5d" + integrity sha512-DNE2Waiwy5+zZnCfintkDtBfaW6MjIG883474v6Z0K1XZIvl76cLND4iv0YUb48leyF+PJK1KO2XrgHb/KpmhQ== + +"@firebase/analytics@0.7.9": + version "0.7.9" + resolved "https://registry.yarnpkg.com/@firebase/analytics/-/analytics-0.7.9.tgz#07f43100a1ab5750c7d8207f31aeba0a42bcf562" + integrity sha512-h/2L2q4/+mmV9EdvVC3XwFFbKSh8bvaYu4DMJIKnPAuGze6W5ALBLkK2GcVti6Kz1NTMJ3puxTRWE9XxRGZipQ== + dependencies: + "@firebase/component" "0.5.14" + "@firebase/installations" "0.5.9" + "@firebase/logger" "0.3.2" + "@firebase/util" "1.6.0" + tslib "^2.1.0" + +"@firebase/app-check-compat@0.2.8": + version "0.2.8" + resolved "https://registry.yarnpkg.com/@firebase/app-check-compat/-/app-check-compat-0.2.8.tgz#eb5027a2ffa88f78a62639d3c7dd253ecb9ee49f" + integrity sha512-EAqFa0juE2xc52IGh2nv8E+avTLsZfbO7fkJnhPu07e5FU39pptcsRckTdHU7v1/DuWuigUVFcOD5iic9I8TQw== + dependencies: + "@firebase/app-check" "0.5.8" + "@firebase/app-check-types" "0.4.0" + "@firebase/component" "0.5.14" + "@firebase/logger" "0.3.2" + "@firebase/util" "1.6.0" + tslib "^2.1.0" + +"@firebase/app-check-interop-types@0.1.0": + version "0.1.0" + resolved "https://registry.yarnpkg.com/@firebase/app-check-interop-types/-/app-check-interop-types-0.1.0.tgz#83afd9d41f99166c2bdb2d824e5032e9edd8fe53" + integrity sha512-uZfn9s4uuRsaX5Lwx+gFP3B6YsyOKUE+Rqa6z9ojT4VSRAsZFko9FRn6OxQUA1z5t5d08fY4pf+/+Dkd5wbdbA== + +"@firebase/app-check-types@0.4.0": + version "0.4.0" + resolved "https://registry.yarnpkg.com/@firebase/app-check-types/-/app-check-types-0.4.0.tgz#7007a9d1d720db20bcf466fe6785c96feaa0a82d" + integrity sha512-SsWafqMABIOu7zLgWbmwvHGOeQQVQlwm42kwwubsmfLmL4Sf5uGpBfDhQ0CAkpi7bkJ/NwNFKafNDL9prRNP0Q== + +"@firebase/app-check@0.5.8": + version "0.5.8" + resolved "https://registry.yarnpkg.com/@firebase/app-check/-/app-check-0.5.8.tgz#80fcdadd59b95669cf216c345281dd29cdc1eb57" + integrity sha512-DgrXnrJT0S5csa5CsvmWWSWqy61T3rOE2iZ/L4Q8+xZsjU2McpUj8g/lU8NDa4qc5mGRZ/Qjozqog1H3pwPgGw== + dependencies: + "@firebase/component" "0.5.14" + "@firebase/logger" "0.3.2" + "@firebase/util" "1.6.0" + tslib "^2.1.0" + +"@firebase/app-compat@0.1.24": + version "0.1.24" + resolved "https://registry.yarnpkg.com/@firebase/app-compat/-/app-compat-0.1.24.tgz#f0303b07097dc2d78413407aa6d499e008269e19" + integrity sha512-qDDo9vvFzpVoE4EpgzSMYOJ7wsy6cwh4lfz2/RqeNpmJniybcDNaxEVO52ejCNqIQ2yVo6yBbK8D0b5FrO8P2w== + dependencies: + "@firebase/app" "0.7.23" + "@firebase/component" "0.5.14" + "@firebase/logger" "0.3.2" + "@firebase/util" "1.6.0" + tslib "^2.1.0" + +"@firebase/app-types@0.7.0": + version "0.7.0" + resolved "https://registry.yarnpkg.com/@firebase/app-types/-/app-types-0.7.0.tgz#c9e16d1b8bed1a991840b8d2a725fb58d0b5899f" + integrity sha512-6fbHQwDv2jp/v6bXhBw2eSRbNBpxHcd1NBF864UksSMVIqIyri9qpJB1Mn6sGZE+bnDsSQBC5j2TbMxYsJQkQg== + +"@firebase/app@0.7.23": + version "0.7.23" + resolved "https://registry.yarnpkg.com/@firebase/app/-/app-0.7.23.tgz#eb125ba61e4e5c27e1e485f12de740463df5bdee" + integrity sha512-l4lWct3DrCGwwUtNzoKmOVGkWrbULGwPvV63888xuPppScd0VN/W7iOWJIOye6kEPuwrazTWGa+YQZYTaQK49g== + dependencies: + "@firebase/component" "0.5.14" + "@firebase/logger" "0.3.2" + "@firebase/util" "1.6.0" + idb "7.0.1" + tslib "^2.1.0" + +"@firebase/auth-compat@0.2.13": + version "0.2.13" + resolved "https://registry.yarnpkg.com/@firebase/auth-compat/-/auth-compat-0.2.13.tgz#1caae14d547db7c2216961eac376e3747cb6b591" + integrity sha512-erJF7+4FXztGGgJtELL+x3g0x3l8+JNvTcnIm3RbecXnq5ZlrPyMMhE0OwEICFBAQi0NLltVQigY/2IWHsHmlA== + dependencies: + "@firebase/auth" "0.20.0" + "@firebase/auth-types" "0.11.0" + "@firebase/component" "0.5.14" + "@firebase/util" "1.6.0" + node-fetch "2.6.7" + selenium-webdriver " 4.1.1" + tslib "^2.1.0" + +"@firebase/auth-interop-types@0.1.6": + version "0.1.6" + resolved "https://registry.yarnpkg.com/@firebase/auth-interop-types/-/auth-interop-types-0.1.6.tgz#5ce13fc1c527ad36f1bb1322c4492680a6cf4964" + integrity sha512-etIi92fW3CctsmR9e3sYM3Uqnoq861M0Id9mdOPF6PWIg38BXL5k4upCNBggGUpLIS0H1grMOvy/wn1xymwe2g== + +"@firebase/auth-types@0.11.0": + version "0.11.0" + resolved "https://registry.yarnpkg.com/@firebase/auth-types/-/auth-types-0.11.0.tgz#b9c73c60ca07945b3bbd7a097633e5f78fa9e886" + integrity sha512-q7Bt6cx+ySj9elQHTsKulwk3+qDezhzRBFC9zlQ1BjgMueUOnGMcvqmU0zuKlQ4RhLSH7MNAdBV2znVaoN3Vxw== + +"@firebase/auth@0.20.0": + version "0.20.0" + resolved "https://registry.yarnpkg.com/@firebase/auth/-/auth-0.20.0.tgz#cc3b2ef7a3ed893285b4c4a8cb76defd3236bbcb" + integrity sha512-OiuNLrnsewxO9IbsUVon++sjezRfGcy+ddvYmNpwOEmqnquF2K6nEePty7mcQ+2CrTyndHTwYyTeP471iAOU+A== + dependencies: + "@firebase/component" "0.5.14" + "@firebase/logger" "0.3.2" + "@firebase/util" "1.6.0" + node-fetch "2.6.7" + selenium-webdriver " 4.1.1" + tslib "^2.1.0" + +"@firebase/component@0.5.14": + version "0.5.14" + resolved "https://registry.yarnpkg.com/@firebase/component/-/component-0.5.14.tgz#23d2cc9f4aff5a516c91553a433326d366166bc3" + integrity sha512-ct2p1MTMV5P/nGIlkC3XjAVwHwjsIZaeo8JVyDAkJCNTROu5mYX3FBK16hjIUIIVJDpgnnzFh9nP74gciL4WrA== + dependencies: + "@firebase/util" "1.6.0" + tslib "^2.1.0" + +"@firebase/database-compat@0.2.0": + version "0.2.0" + resolved "https://registry.yarnpkg.com/@firebase/database-compat/-/database-compat-0.2.0.tgz#3471cde00a6fe442a5c6106a23c20336f02221d7" + integrity sha512-t2HVI1RrMz8cbmhyo2LQGSInhRN9DZTDKXm55iFQgSihcnCbfoMAFyRv/FFa1Y+iERgcDI8LaOMS/LTjpYVz4g== + dependencies: + "@firebase/component" "0.5.14" + "@firebase/database" "0.13.0" + "@firebase/database-types" "0.9.8" + "@firebase/logger" "0.3.2" + "@firebase/util" "1.6.0" + tslib "^2.1.0" + +"@firebase/database-types@0.9.8": + version "0.9.8" + resolved "https://registry.yarnpkg.com/@firebase/database-types/-/database-types-0.9.8.tgz#5a9bb1d2c492ad635eff5f3cfbe6a0ea6a2463e7" + integrity sha512-bI7bwF5xc0nPi6Oa3JVt6JJdfhVAnEpCwgfTNILR4lYDPtxdxlRXhZzQ5lfqlCj7PR+drKh9RvMu6C24N1q04w== + dependencies: + "@firebase/app-types" "0.7.0" + "@firebase/util" "1.6.0" + +"@firebase/database@0.13.0": + version "0.13.0" + resolved "https://registry.yarnpkg.com/@firebase/database/-/database-0.13.0.tgz#48018ab8f5a3ad12ec7c245d83b8b5749eb37189" + integrity sha512-lskyf5+FDnytrPJt3MLjkTDxYxutKtaYL7j/Z/De2DSVZJSR+weE/D/r47iK/+tyzMaew2v3joSgZOHvVlWshw== + dependencies: + "@firebase/auth-interop-types" "0.1.6" + "@firebase/component" "0.5.14" + "@firebase/logger" "0.3.2" + "@firebase/util" "1.6.0" + faye-websocket "0.11.4" + tslib "^2.1.0" + +"@firebase/firestore-compat@0.1.18": + version "0.1.18" + resolved "https://registry.yarnpkg.com/@firebase/firestore-compat/-/firestore-compat-0.1.18.tgz#50f19ceea1b95a5017557db9b9154627ffc12821" + integrity sha512-D6VXudL/B2jlZ6MGpsDPHHm/DSpfKuUOnEb5wwH89Sw0nW5snSMNG8QfYTQYKUxrX35ma+nWUnaa18LlVTUMXQ== + dependencies: + "@firebase/component" "0.5.14" + "@firebase/firestore" "3.4.9" + "@firebase/firestore-types" "2.5.0" + "@firebase/util" "1.6.0" + tslib "^2.1.0" + +"@firebase/firestore-types@2.5.0": + version "2.5.0" + resolved "https://registry.yarnpkg.com/@firebase/firestore-types/-/firestore-types-2.5.0.tgz#16fca40b6980fdb000de86042d7a96635f2bcdd7" + integrity sha512-I6c2m1zUhZ5SH0cWPmINabDyH5w0PPFHk2UHsjBpKdZllzJZ2TwTkXbDtpHUZNmnc/zAa0WNMNMvcvbb/xJLKA== + +"@firebase/firestore@3.4.9": + version "3.4.9" + resolved "https://registry.yarnpkg.com/@firebase/firestore/-/firestore-3.4.9.tgz#2f7ea62572ec027d9f187fb03f1e2567cb5f29ae" + integrity sha512-EiSG/uYDyUmrrHlwrsP9WqWI8ChD0hUW/+0MS3NDh8Cfo1Dfb/sM3YWKzgnIZ3wKTxn/nbe9oidHZp5cqI9G+w== + dependencies: + "@firebase/component" "0.5.14" + "@firebase/logger" "0.3.2" + "@firebase/util" "1.6.0" + "@firebase/webchannel-wrapper" "0.6.1" + "@grpc/grpc-js" "^1.3.2" + "@grpc/proto-loader" "^0.6.0" + node-fetch "2.6.7" + tslib "^2.1.0" + +"@firebase/functions-compat@0.2.1": + version "0.2.1" + resolved "https://registry.yarnpkg.com/@firebase/functions-compat/-/functions-compat-0.2.1.tgz#249c4750fdb0cc4cc29bb6e8d45f6a19b403a671" + integrity sha512-1epI+TGb3CxpQrnoSJnKMUqBLn9b6KA1Rro6ISmZIEkaDEi8p8q3UI917XP+OewiPG71xvpySiEIIxWyktcl+A== + dependencies: + "@firebase/component" "0.5.14" + "@firebase/functions" "0.8.1" + "@firebase/functions-types" "0.5.0" + "@firebase/util" "1.6.0" + tslib "^2.1.0" + +"@firebase/functions-types@0.5.0": + version "0.5.0" + resolved "https://registry.yarnpkg.com/@firebase/functions-types/-/functions-types-0.5.0.tgz#b50ba95ccce9e96f7cda453228ffe1684645625b" + integrity sha512-qza0M5EwX+Ocrl1cYI14zoipUX4gI/Shwqv0C1nB864INAD42Dgv4v94BCyxGHBg2kzlWy8PNafdP7zPO8aJQA== + +"@firebase/functions@0.8.1": + version "0.8.1" + resolved "https://registry.yarnpkg.com/@firebase/functions/-/functions-0.8.1.tgz#690ff9582442d2deeeb5e1ccad50047c0dcec77f" + integrity sha512-UF5187TPn1Q1sFmAUU1oZdKub1t0Z6MAjcskGS6CV4OwAkILZQ9v38LIbo3wnA62R5hr3IFpdEJxKkqHojMwSg== + dependencies: + "@firebase/app-check-interop-types" "0.1.0" + "@firebase/auth-interop-types" "0.1.6" + "@firebase/component" "0.5.14" + "@firebase/messaging-interop-types" "0.1.0" + "@firebase/util" "1.6.0" + node-fetch "2.6.7" + tslib "^2.1.0" + +"@firebase/installations@0.5.9": + version "0.5.9" + resolved "https://registry.yarnpkg.com/@firebase/installations/-/installations-0.5.9.tgz#43acb123ee19010e1ec3355e0ab86e1fb2b2687a" + integrity sha512-0XvF9ig8Zj7MWP4Aq5/Wcyjq9f/cDtD6DKFJhp3BT1AjmACdmq7WD72xok8UBhkOiqymIiGd5eQf7rX225D2Sw== + dependencies: + "@firebase/component" "0.5.14" + "@firebase/util" "1.6.0" + idb "7.0.1" + tslib "^2.1.0" + +"@firebase/logger@0.3.2": + version "0.3.2" + resolved "https://registry.yarnpkg.com/@firebase/logger/-/logger-0.3.2.tgz#5046ffa8295c577846d54b6ca95645a03809800e" + integrity sha512-lzLrcJp9QBWpo40OcOM9B8QEtBw2Fk1zOZQdvv+rWS6gKmhQBCEMc4SMABQfWdjsylBcDfniD1Q+fUX1dcBTXA== + dependencies: + tslib "^2.1.0" + +"@firebase/messaging-compat@0.1.13": + version "0.1.13" + resolved "https://registry.yarnpkg.com/@firebase/messaging-compat/-/messaging-compat-0.1.13.tgz#2a4b4083228e118a44c29ea13ded4e68870bf8aa" + integrity sha512-kGuzjpl+pcTRmEgGDjyOKQnxxQgC7wIJIIHhLMIpfxHHL5+ysN1Tjq0Ztr1t/gcdHKErtnD/n9To5eoGZHqpzA== + dependencies: + "@firebase/component" "0.5.14" + "@firebase/messaging" "0.9.13" + "@firebase/util" "1.6.0" + tslib "^2.1.0" + +"@firebase/messaging-interop-types@0.1.0": + version "0.1.0" + resolved "https://registry.yarnpkg.com/@firebase/messaging-interop-types/-/messaging-interop-types-0.1.0.tgz#bdac02dd31edd5cb9eec37b1db698ea5e2c1a631" + integrity sha512-DbvUl/rXAZpQeKBnwz0NYY5OCqr2nFA0Bj28Fmr3NXGqR4PAkfTOHuQlVtLO1Nudo3q0HxAYLa68ZDAcuv2uKQ== + +"@firebase/messaging@0.9.13": + version "0.9.13" + resolved "https://registry.yarnpkg.com/@firebase/messaging/-/messaging-0.9.13.tgz#443499868484cbeb8cbbfb2f8e0ca208f09ca336" + integrity sha512-wR/SGYGG/bmz1gRqm6/eGI6zRg/X3qNP0BCk0Oa6xVDKK04UCE9zNRgQYgCSKNP+zuLfDhpHbXvvXQp9/vBYVA== + dependencies: + "@firebase/component" "0.5.14" + "@firebase/installations" "0.5.9" + "@firebase/messaging-interop-types" "0.1.0" + "@firebase/util" "1.6.0" + idb "7.0.1" + tslib "^2.1.0" + +"@firebase/performance-compat@0.1.9": + version "0.1.9" + resolved "https://registry.yarnpkg.com/@firebase/performance-compat/-/performance-compat-0.1.9.tgz#db4cfea17f39c29403b93943b416c5dc5043beaf" + integrity sha512-EBX4u/uK76ikJSyoWZ2cEMj63G01w1DA68KDpSypSMhKPJE2eiCtWABRTSXhcaisq/FDwZzl4XhNjDyfzArwhA== + dependencies: + "@firebase/component" "0.5.14" + "@firebase/logger" "0.3.2" + "@firebase/performance" "0.5.9" + "@firebase/performance-types" "0.1.0" + "@firebase/util" "1.6.0" + tslib "^2.1.0" + +"@firebase/performance-types@0.1.0": + version "0.1.0" + resolved "https://registry.yarnpkg.com/@firebase/performance-types/-/performance-types-0.1.0.tgz#5e6efa9dc81860aee2cb7121b39ae8fa137e69fc" + integrity sha512-6p1HxrH0mpx+622Ql6fcxFxfkYSBpE3LSuwM7iTtYU2nw91Hj6THC8Bc8z4nboIq7WvgsT/kOTYVVZzCSlXl8w== + +"@firebase/performance@0.5.9": + version "0.5.9" + resolved "https://registry.yarnpkg.com/@firebase/performance/-/performance-0.5.9.tgz#0c911ea91c8f1e17fc67792dafed73f0a8a10b12" + integrity sha512-cA1pea1hkIZt0FG0a42tjKQNBhdY7q4apqHML92vBCS9QOOR0SHBui44IGQJRfRBGiVICHW03Q+ikSZv08g+jw== + dependencies: + "@firebase/component" "0.5.14" + "@firebase/installations" "0.5.9" + "@firebase/logger" "0.3.2" + "@firebase/util" "1.6.0" + tslib "^2.1.0" + +"@firebase/polyfill@0.3.36": + version "0.3.36" + resolved "https://registry.yarnpkg.com/@firebase/polyfill/-/polyfill-0.3.36.tgz#c057cce6748170f36966b555749472b25efdb145" + integrity sha512-zMM9oSJgY6cT2jx3Ce9LYqb0eIpDE52meIzd/oe/y70F+v9u1LDqk5kUF5mf16zovGBWMNFmgzlsh6Wj0OsFtg== + dependencies: + core-js "3.6.5" + promise-polyfill "8.1.3" + whatwg-fetch "2.0.4" + +"@firebase/remote-config-compat@0.1.9": + version "0.1.9" + resolved "https://registry.yarnpkg.com/@firebase/remote-config-compat/-/remote-config-compat-0.1.9.tgz#dfd11003ccf33d30ba61be10d6fa115f25cba025" + integrity sha512-ud4yINy8cegE82KoBDXS4fOp6qwy0+7zl0k587kMXHSWHbWVRZ/uKMQGJQc7kG0EQp0tZhM20CxVwtcCGsABBA== + dependencies: + "@firebase/component" "0.5.14" + "@firebase/logger" "0.3.2" + "@firebase/remote-config" "0.3.8" + "@firebase/remote-config-types" "0.2.0" + "@firebase/util" "1.6.0" + tslib "^2.1.0" + +"@firebase/remote-config-types@0.2.0": + version "0.2.0" + resolved "https://registry.yarnpkg.com/@firebase/remote-config-types/-/remote-config-types-0.2.0.tgz#1e2759fc01f20b58c564db42196f075844c3d1fd" + integrity sha512-hqK5sCPeZvcHQ1D6VjJZdW6EexLTXNMJfPdTwbD8NrXUw6UjWC4KWhLK/TSlL0QPsQtcKRkaaoP+9QCgKfMFPw== + +"@firebase/remote-config@0.3.8": + version "0.3.8" + resolved "https://registry.yarnpkg.com/@firebase/remote-config/-/remote-config-0.3.8.tgz#5dbbd6a39eb610b5efa0e908ec2037d3a0ca19f0" + integrity sha512-z5HYrjrgzkR25nlvQqiPowDGatlEJirA5sN1B6rOy+KYMLsb6IXLVOdKjj/Tg/uHAErwd0DblGxwBUZKTCuo1g== + dependencies: + "@firebase/component" "0.5.14" + "@firebase/installations" "0.5.9" + "@firebase/logger" "0.3.2" + "@firebase/util" "1.6.0" + tslib "^2.1.0" + +"@firebase/storage-compat@0.1.14": + version "0.1.14" + resolved "https://registry.yarnpkg.com/@firebase/storage-compat/-/storage-compat-0.1.14.tgz#a9f0c9c3fba857cf39f392bb163df813af29739e" + integrity sha512-/Fey1n+ryIeAEyd/qXPXh32ReFZUhzE5W0z/+LDA+3yyMGw/a6wCzQqe7wBiGiCRhjd+5XiV++jkCXTflun3Dg== + dependencies: + "@firebase/component" "0.5.14" + "@firebase/storage" "0.9.6" + "@firebase/storage-types" "0.6.0" + "@firebase/util" "1.6.0" + tslib "^2.1.0" + +"@firebase/storage-types@0.6.0": + version "0.6.0" + resolved "https://registry.yarnpkg.com/@firebase/storage-types/-/storage-types-0.6.0.tgz#0b1af64a2965af46fca138e5b70700e9b7e6312a" + integrity sha512-1LpWhcCb1ftpkP/akhzjzeFxgVefs6eMD2QeKiJJUGH1qOiows2w5o0sKCUSQrvrRQS1lz3SFGvNR1Ck/gqxeA== + +"@firebase/storage@0.9.6": + version "0.9.6" + resolved "https://registry.yarnpkg.com/@firebase/storage/-/storage-0.9.6.tgz#496bc8c7e6062b2efc35f8b0f26c4241302c1029" + integrity sha512-q8/s3qFbFl+AlKbyEtGA7FRVhcMu3NKPqHueBTn5XSI0B3bfxptBcDJMb9txs69ppve6P3jrK1//TEWpjTGJUg== + dependencies: + "@firebase/component" "0.5.14" + "@firebase/util" "1.6.0" + node-fetch "2.6.7" + tslib "^2.1.0" + +"@firebase/util@1.6.0": + version "1.6.0" + resolved "https://registry.yarnpkg.com/@firebase/util/-/util-1.6.0.tgz#31aea6bba3ee98fc83a60eb189cb187243f4ef4b" + integrity sha512-6+hhqb4Zzjoo12xofTDHPkgW3FnN4ydBsjd5X2KuQI268DR3W3Ld64W/gkKPZrKRgUxeNeb+pykfP3qRe7q+vA== + dependencies: + tslib "^2.1.0" + +"@firebase/webchannel-wrapper@0.6.1": + version "0.6.1" + resolved "https://registry.yarnpkg.com/@firebase/webchannel-wrapper/-/webchannel-wrapper-0.6.1.tgz#0c74724ba6e9ea6ad25a391eab60a79eaba4c556" + integrity sha512-9FqhNjKQWpQ3fGnSOCovHOm+yhhiorKEqYLAfd525jWavunDJcx8rOW6i6ozAh+FbwcYMkL7b+3j4UR/30MpoQ== + +"@grpc/grpc-js@^1.3.2": + version "1.6.7" + resolved "https://registry.yarnpkg.com/@grpc/grpc-js/-/grpc-js-1.6.7.tgz#4c4fa998ff719fe859ac19fe977fdef097bb99aa" + integrity sha512-eBM03pu9hd3VqDQG+kHahiG1x80RGkkqqRb1Pchcwqej/KkAH95gAvKs6laqaHCycYaPK+TKuNQnOz9UXYA8qw== + dependencies: + "@grpc/proto-loader" "^0.6.4" + "@types/node" ">=12.12.47" + +"@grpc/proto-loader@^0.6.0", "@grpc/proto-loader@^0.6.4": + version "0.6.12" + resolved "https://registry.yarnpkg.com/@grpc/proto-loader/-/proto-loader-0.6.12.tgz#459b619b8b9b67794bf0d1cb819653a38c63e164" + integrity sha512-filTVbETFnxb9CyRX98zN18ilChTuf/C5scZ2xyaOTp0EHGq0/ufX8rjqXUcSb1Gpv7eZq4M2jDvbh9BogKnrg== + dependencies: + "@types/long" "^4.0.1" + lodash.camelcase "^4.3.0" + long "^4.0.0" + protobufjs "^6.10.0" + yargs "^16.2.0" + "@heroicons/react@^1.0.6": version "1.0.6" resolved "https://registry.yarnpkg.com/@heroicons/react/-/react-1.0.6.tgz#35dd26987228b39ef2316db3b1245c42eb19e324" @@ -1476,6 +1862,59 @@ schema-utils "^3.0.0" source-map "^0.7.3" +"@protobufjs/aspromise@^1.1.1", "@protobufjs/aspromise@^1.1.2": + version "1.1.2" + resolved "https://registry.yarnpkg.com/@protobufjs/aspromise/-/aspromise-1.1.2.tgz#9b8b0cc663d669a7d8f6f5d0893a14d348f30fbf" + integrity sha1-m4sMxmPWaafY9vXQiToU00jzD78= + +"@protobufjs/base64@^1.1.2": + version "1.1.2" + resolved "https://registry.yarnpkg.com/@protobufjs/base64/-/base64-1.1.2.tgz#4c85730e59b9a1f1f349047dbf24296034bb2735" + integrity sha512-AZkcAA5vnN/v4PDqKyMR5lx7hZttPDgClv83E//FMNhR2TMcLUhfRUBHCmSl0oi9zMgDDqRUJkSxO3wm85+XLg== + +"@protobufjs/codegen@^2.0.4": + version "2.0.4" + resolved "https://registry.yarnpkg.com/@protobufjs/codegen/-/codegen-2.0.4.tgz#7ef37f0d010fb028ad1ad59722e506d9262815cb" + integrity sha512-YyFaikqM5sH0ziFZCN3xDC7zeGaB/d0IUb9CATugHWbd1FRFwWwt4ld4OYMPWu5a3Xe01mGAULCdqhMlPl29Jg== + +"@protobufjs/eventemitter@^1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@protobufjs/eventemitter/-/eventemitter-1.1.0.tgz#355cbc98bafad5978f9ed095f397621f1d066b70" + integrity sha1-NVy8mLr61ZePntCV85diHx0Ga3A= + +"@protobufjs/fetch@^1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@protobufjs/fetch/-/fetch-1.1.0.tgz#ba99fb598614af65700c1619ff06d454b0d84c45" + integrity sha1-upn7WYYUr2VwDBYZ/wbUVLDYTEU= + dependencies: + "@protobufjs/aspromise" "^1.1.1" + "@protobufjs/inquire" "^1.1.0" + +"@protobufjs/float@^1.0.2": + version "1.0.2" + resolved "https://registry.yarnpkg.com/@protobufjs/float/-/float-1.0.2.tgz#5e9e1abdcb73fc0a7cb8b291df78c8cbd97b87d1" + integrity sha1-Xp4avctz/Ap8uLKR33jIy9l7h9E= + +"@protobufjs/inquire@^1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@protobufjs/inquire/-/inquire-1.1.0.tgz#ff200e3e7cf2429e2dcafc1140828e8cc638f089" + integrity sha1-/yAOPnzyQp4tyvwRQIKOjMY48Ik= + +"@protobufjs/path@^1.1.2": + version "1.1.2" + resolved "https://registry.yarnpkg.com/@protobufjs/path/-/path-1.1.2.tgz#6cc2b20c5c9ad6ad0dccfd21ca7673d8d7fbf68d" + integrity sha1-bMKyDFya1q0NzP0hynZz2Nf79o0= + +"@protobufjs/pool@^1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@protobufjs/pool/-/pool-1.1.0.tgz#09fd15f2d6d3abfa9b65bc366506d6ad7846ff54" + integrity sha1-Cf0V8tbTq/qbZbw2ZQbWrXhG/1Q= + +"@protobufjs/utf8@^1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@protobufjs/utf8/-/utf8-1.1.0.tgz#a777360b5b39a1a2e5106f8e858f2fd2d060c570" + integrity sha1-p3c2C1s5oaLlEG+OhY8v0tBgxXA= + "@rollup/plugin-babel@^5.2.0": version "5.3.1" resolved "https://registry.npmjs.org/@rollup/plugin-babel/-/plugin-babel-5.3.1.tgz" @@ -1874,12 +2313,17 @@ resolved "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz" integrity sha1-7ihweulOEdK4J7y+UnC86n8+ce4= +"@types/long@^4.0.1": + version "4.0.2" + resolved "https://registry.yarnpkg.com/@types/long/-/long-4.0.2.tgz#b74129719fc8d11c01868010082d483b7545591a" + integrity sha512-MqTGEo5bj5t157U6fA/BiDynNkn0YknVdh48CMPkTSpFTVmvao5UQmm7uEF6xBEo7qIMAlY/JSleYaE6VOdpaA== + "@types/mime@^1": version "1.3.2" resolved "https://registry.npmjs.org/@types/mime/-/mime-1.3.2.tgz" integrity sha512-YATxVxgRqNH6nHEIsvg6k2Boc1JHI9ZbH5iWFFv/MTkchz3b1ieGDa5T0a9RznNdI0KhVbdbWSN+KWWrQZRxTw== -"@types/node@*": +"@types/node@*", "@types/node@>=12.12.47", "@types/node@>=13.7.0": version "17.0.31" resolved "https://registry.npmjs.org/@types/node/-/node-17.0.31.tgz" integrity sha512-AR0x5HbXGqkEx9CadRH3EBYx/VkiUgZIhP4wvPn/+5KIsgpNoyFaRlVe0Zlx9gRtg8fA06a9tskE2MSN7TcG4Q== @@ -3111,6 +3555,11 @@ core-js-pure@^3.20.2, core-js-pure@^3.8.1: resolved "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.22.4.tgz" integrity sha512-4iF+QZkpzIz0prAFuepmxwJ2h5t4agvE8WPYqs2mjLJMNNwJOnpch76w2Q7bUfCPEv/V7wpvOfog0w273M+ZSw== +core-js@3.6.5: + version "3.6.5" + resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.6.5.tgz#7395dc273af37fb2e50e9bd3d9fe841285231d1a" + integrity sha512-vZVEEwZoIsI+vPEuoF9Iqf5H7/M3eeQqWlQnYa8FSKKePuYTf5MWnxb5SDAzCa60b3JBRS5g9b+Dq7b1y/RCrA== + core-js@^3.19.2: version "3.22.4" resolved "https://registry.npmjs.org/core-js/-/core-js-3.22.4.tgz" @@ -4163,7 +4612,7 @@ fastq@^1.6.0: dependencies: reusify "^1.0.4" -faye-websocket@^0.11.3: +faye-websocket@0.11.4, faye-websocket@^0.11.3: version "0.11.4" resolved "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.4.tgz" integrity sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g== @@ -4263,6 +4712,38 @@ find-up@^5.0.0: locate-path "^6.0.0" path-exists "^4.0.0" +firebase@9.8.0: + version "9.8.0" + resolved "https://registry.yarnpkg.com/firebase/-/firebase-9.8.0.tgz#1846060b2db281d38c995df118ffff39688ab59f" + integrity sha512-9du2Rvb+gvc4laqnazwmhzJyhw6slQ67ciP98MD/IGO1NmDNhu3cOohqxVm8P4LWYLTcBxlRL9puyXu0AIcspw== + dependencies: + "@firebase/analytics" "0.7.9" + "@firebase/analytics-compat" "0.1.10" + "@firebase/app" "0.7.23" + "@firebase/app-check" "0.5.8" + "@firebase/app-check-compat" "0.2.8" + "@firebase/app-compat" "0.1.24" + "@firebase/app-types" "0.7.0" + "@firebase/auth" "0.20.0" + "@firebase/auth-compat" "0.2.13" + "@firebase/database" "0.13.0" + "@firebase/database-compat" "0.2.0" + "@firebase/firestore" "3.4.9" + "@firebase/firestore-compat" "0.1.18" + "@firebase/functions" "0.8.1" + "@firebase/functions-compat" "0.2.1" + "@firebase/installations" "0.5.9" + "@firebase/messaging" "0.9.13" + "@firebase/messaging-compat" "0.1.13" + "@firebase/performance" "0.5.9" + "@firebase/performance-compat" "0.1.9" + "@firebase/polyfill" "0.3.36" + "@firebase/remote-config" "0.3.8" + "@firebase/remote-config-compat" "0.1.9" + "@firebase/storage" "0.9.6" + "@firebase/storage-compat" "0.1.14" + "@firebase/util" "1.6.0" + flat-cache@^3.0.4: version "3.0.4" resolved "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz" @@ -4729,6 +5210,11 @@ icss-utils@^5.0.0, icss-utils@^5.1.0: resolved "https://registry.npmjs.org/icss-utils/-/icss-utils-5.1.0.tgz" integrity sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA== +idb@7.0.1: + version "7.0.1" + resolved "https://registry.yarnpkg.com/idb/-/idb-7.0.1.tgz#d2875b3a2f205d854ee307f6d196f246fea590a7" + integrity sha512-UUxlE7vGWK5RfB/fDwEGgRf84DY/ieqNha6msMV99UsEMQhJ1RwbCd8AYBj3QMgnE3VZnfQvm4oKVCJTYlqIgg== + idb@^6.1.4: version "6.1.5" resolved "https://registry.npmjs.org/idb/-/idb-6.1.5.tgz" @@ -4746,6 +5232,11 @@ ignore@^5.1.8, ignore@^5.2.0: resolved "https://registry.npmjs.org/ignore/-/ignore-5.2.0.tgz" integrity sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ== +immediate@~3.0.5: + version "3.0.6" + resolved "https://registry.yarnpkg.com/immediate/-/immediate-3.0.6.tgz#9db1dbd0faf8de6fbe0f5dd5e56bb606280de69b" + integrity sha1-nbHb0Pr43m++D13V5Wu2BigN5ps= + immer@^9.0.7: version "9.0.12" resolved "https://registry.npmjs.org/immer/-/immer-9.0.12.tgz" @@ -5654,6 +6145,16 @@ jsonpointer@^5.0.0: array-includes "^3.1.4" object.assign "^4.1.2" +jszip@^3.6.0: + version "3.9.1" + resolved "https://registry.yarnpkg.com/jszip/-/jszip-3.9.1.tgz#784e87f328450d1e8151003a9c67733e2b901051" + integrity sha512-H9A60xPqJ1CuC4Ka6qxzXZeU8aNmgOeP5IFqwJbQQwtu2EUYxota3LdsiZWplF7Wgd9tkAd0mdu36nceSaPuYw== + dependencies: + lie "~3.3.0" + pako "~1.0.2" + readable-stream "~2.3.6" + set-immediate-shim "~1.0.1" + kind-of@^6.0.2: version "6.0.3" resolved "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz" @@ -5702,6 +6203,13 @@ levn@~0.3.0: prelude-ls "~1.1.2" type-check "~0.3.2" +lie@~3.3.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/lie/-/lie-3.3.0.tgz#dcf82dee545f46074daf200c7c1c5a08e0f40f6a" + integrity sha512-UaiMJzeWRlEujzAuw5LokY1L5ecNQYZKfmyZ9L7wDHb/p5etKaxXhohBcrw0EYby+G/NA52vRSN4N39dxHAIwQ== + dependencies: + immediate "~3.0.5" + lilconfig@^2.0.3, lilconfig@^2.0.5: version "2.0.5" resolved "https://registry.npmjs.org/lilconfig/-/lilconfig-2.0.5.tgz" @@ -5761,6 +6269,11 @@ locate-path@^6.0.0: dependencies: p-locate "^5.0.0" +lodash.camelcase@^4.3.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz#b28aa6288a2b9fc651035c7711f65ab6190331a6" + integrity sha1-soqmKIorn8ZRA1x3EfZathkDMaY= + lodash.debounce@^4.0.8: version "4.0.8" resolved "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz" @@ -5791,6 +6304,11 @@ lodash@^4.17.15, lodash@^4.17.20, lodash@^4.17.21, lodash@^4.7.0: resolved "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz" integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== +long@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/long/-/long-4.0.0.tgz#9a7b71cfb7d361a194ea555241c92f7468d5bf28" + integrity sha512-XsP+KhQif4bjX1kbuSiySJFNAehNxgLb6hPRGJ9QsUr8ajHkuXGdrHmFUTUUXhDwVX2R5bY4JNZEwbUiMhV+MA== + loose-envify@^1.1.0, loose-envify@^1.4.0: version "1.4.0" resolved "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz" @@ -6011,6 +6529,13 @@ no-case@^3.0.4: lower-case "^2.0.2" tslib "^2.0.3" +node-fetch@2.6.7: + version "2.6.7" + resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.7.tgz#24de9fba827e3b4ae44dc8b20256a379160052ad" + integrity sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ== + dependencies: + whatwg-url "^5.0.0" + node-forge@^1: version "1.3.1" resolved "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz" @@ -6272,6 +6797,11 @@ p-try@^2.0.0: resolved "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz" integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ== +pako@~1.0.2: + version "1.0.11" + resolved "https://registry.yarnpkg.com/pako/-/pako-1.0.11.tgz#6c9599d340d54dfd3946380252a35705a6b992bf" + integrity sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw== + param-case@^3.0.4: version "3.0.4" resolved "https://registry.npmjs.org/param-case/-/param-case-3.0.4.tgz" @@ -6969,6 +7499,11 @@ process-nextick-args@~2.0.0: resolved "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz" integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag== +promise-polyfill@8.1.3: + version "8.1.3" + resolved "https://registry.yarnpkg.com/promise-polyfill/-/promise-polyfill-8.1.3.tgz#8c99b3cf53f3a91c68226ffde7bde81d7f904116" + integrity sha512-MG5r82wBzh7pSKDRa9y+vllNHz3e3d4CNj1PQE4BQYxLme0gKYYBm9YENq+UkEikyZ0XbiGWxYlVw3Rl9O/U8g== + promise@^8.1.0: version "8.1.0" resolved "https://registry.npmjs.org/promise/-/promise-8.1.0.tgz" @@ -6993,6 +7528,25 @@ prop-types@^15.8.1: object-assign "^4.1.1" react-is "^16.13.1" +protobufjs@^6.10.0: + version "6.11.2" + resolved "https://registry.yarnpkg.com/protobufjs/-/protobufjs-6.11.2.tgz#de39fabd4ed32beaa08e9bb1e30d08544c1edf8b" + integrity sha512-4BQJoPooKJl2G9j3XftkIXjoC9C0Av2NOrWmbLWT1vH32GcSUHjM0Arra6UfTsVyfMAuFzaLucXn1sadxJydAw== + dependencies: + "@protobufjs/aspromise" "^1.1.2" + "@protobufjs/base64" "^1.1.2" + "@protobufjs/codegen" "^2.0.4" + "@protobufjs/eventemitter" "^1.1.0" + "@protobufjs/fetch" "^1.1.0" + "@protobufjs/float" "^1.0.2" + "@protobufjs/inquire" "^1.1.0" + "@protobufjs/path" "^1.1.2" + "@protobufjs/pool" "^1.1.0" + "@protobufjs/utf8" "^1.1.0" + "@types/long" "^4.0.1" + "@types/node" ">=13.7.0" + long "^4.0.0" + proxy-addr@~2.0.7: version "2.0.7" resolved "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz" @@ -7214,7 +7768,7 @@ react@^18.1.0: dependencies: loose-envify "^1.1.0" -readable-stream@^2.0.1: +readable-stream@^2.0.1, readable-stream@~2.3.6: version "2.3.7" resolved "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz" integrity sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw== @@ -7536,6 +8090,15 @@ select-hose@^2.0.0: resolved "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz" integrity sha1-Yl2GWPhlr0Psliv8N2o3NZpJlMo= +"selenium-webdriver@ 4.1.1": + version "4.1.1" + resolved "https://registry.yarnpkg.com/selenium-webdriver/-/selenium-webdriver-4.1.1.tgz#da083177d811f36614950e809e2982570f67d02e" + integrity sha512-Fr9e9LC6zvD6/j7NO8M1M/NVxFX67abHcxDJoP5w2KN/Xb1SyYLjMVPGgD14U2TOiKe4XKHf42OmFw9g2JgCBQ== + dependencies: + jszip "^3.6.0" + tmp "^0.2.1" + ws ">=7.4.6" + selfsigned@^2.0.1: version "2.0.1" resolved "https://registry.npmjs.org/selfsigned/-/selfsigned-2.0.1.tgz" @@ -7616,6 +8179,11 @@ serve-static@1.15.0: parseurl "~1.3.3" send "0.18.0" +set-immediate-shim@~1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz#4b2b1b27eb808a9f8dcc481a58e5e56f599f3f61" + integrity sha1-SysbJ+uAip+NzEgaWOXlb1mfP2E= + setprototypeof@1.1.0: version "1.1.0" resolved "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz" @@ -8118,6 +8686,13 @@ thunky@^1.0.2: resolved "https://registry.npmjs.org/thunky/-/thunky-1.1.0.tgz" integrity sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA== +tmp@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.2.1.tgz#8457fc3037dcf4719c251367a1af6500ee1ccf14" + integrity sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ== + dependencies: + rimraf "^3.0.0" + tmpl@1.0.5: version "1.0.5" resolved "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz" @@ -8163,6 +8738,11 @@ tr46@^2.1.0: dependencies: punycode "^2.1.1" +tr46@~0.0.3: + version "0.0.3" + resolved "https://registry.yarnpkg.com/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a" + integrity sha1-gYT9NH2snNwYWZLzpmIuFLnZq2o= + tryer@^1.0.1: version "1.0.1" resolved "https://registry.npmjs.org/tryer/-/tryer-1.0.1.tgz" @@ -8183,7 +8763,7 @@ tslib@^1.8.1: resolved "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz" integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== -tslib@^2.0.3: +tslib@^2.0.3, tslib@^2.1.0: version "2.4.0" resolved "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz" integrity sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ== @@ -8406,6 +8986,11 @@ web-vitals@^2.1.4: resolved "https://registry.npmjs.org/web-vitals/-/web-vitals-2.1.4.tgz" integrity sha512-sVWcwhU5mX6crfI5Vd2dC4qchyTqxV8URinzt25XqVh+bHEPGH4C3NPrNionCP7Obx59wrYEbNlw4Z8sjALzZg== +webidl-conversions@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-3.0.1.tgz#24534275e2a7bc6be7bc86611cc16ae0a5654871" + integrity sha1-JFNCdeKnvGvnvIZhHMFq4KVlSHE= + webidl-conversions@^4.0.2: version "4.0.2" resolved "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-4.0.2.tgz" @@ -8546,6 +9131,11 @@ whatwg-encoding@^1.0.5: dependencies: iconv-lite "0.4.24" +whatwg-fetch@2.0.4: + version "2.0.4" + resolved "https://registry.yarnpkg.com/whatwg-fetch/-/whatwg-fetch-2.0.4.tgz#dde6a5df315f9d39991aa17621853d720b85566f" + integrity sha512-dcQ1GWpOD/eEQ97k66aiEVpNnapVj90/+R+SXTPYGHpYBBypfKJEQjLrvMZ7YXbKm21gXd4NcuxUTjiv1YtLng== + whatwg-fetch@^3.6.2: version "3.6.2" resolved "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-3.6.2.tgz" @@ -8556,6 +9146,14 @@ whatwg-mimetype@^2.3.0: resolved "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz" integrity sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g== +whatwg-url@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-5.0.0.tgz#966454e8765462e37644d3626f6742ce8b70965d" + integrity sha1-lmRU6HZUYuN2RNNib2dCzotwll0= + dependencies: + tr46 "~0.0.3" + webidl-conversions "^3.0.0" + whatwg-url@^7.0.0: version "7.1.0" resolved "https://registry.npmjs.org/whatwg-url/-/whatwg-url-7.1.0.tgz" @@ -8797,16 +9395,16 @@ write-file-atomic@^3.0.0: signal-exit "^3.0.2" typedarray-to-buffer "^3.1.5" +ws@>=7.4.6, ws@^8.4.2: + version "8.6.0" + resolved "https://registry.npmjs.org/ws/-/ws-8.6.0.tgz" + integrity sha512-AzmM3aH3gk0aX7/rZLYvjdvZooofDu3fFOzGqcSnQ1tOcTWwhM/o+q++E8mAyVVIyUdajrkzWUGftaVSDLn1bw== + ws@^7.4.6: version "7.5.7" resolved "https://registry.npmjs.org/ws/-/ws-7.5.7.tgz" integrity sha512-KMvVuFzpKBuiIXW3E4u3mySRO2/mCHSyZDJQM5NQ9Q9KHWHWh0NHgfbRMLLrceUK5qAL4ytALJbpRMjixFZh8A== -ws@^8.4.2: - version "8.6.0" - resolved "https://registry.npmjs.org/ws/-/ws-8.6.0.tgz" - integrity sha512-AzmM3aH3gk0aX7/rZLYvjdvZooofDu3fFOzGqcSnQ1tOcTWwhM/o+q++E8mAyVVIyUdajrkzWUGftaVSDLn1bw== - xml-name-validator@^3.0.0: version "3.0.0" resolved "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-3.0.0.tgz" diff --git a/src/requests/Admin.js b/src/requests/Admin.js deleted file mode 100644 index 6594f8f..0000000 --- a/src/requests/Admin.js +++ /dev/null @@ -1,34 +0,0 @@ -//Parent Account Requests - -// CreateNewAccount -// - ManageChildren -// - GetChildren -// - InviteChild -// - Role (1-4) -// - TransitionChildRole -// - SetChildAllowance -// - TransferFunds - -export const GetChildren = async (familyId) => { - return { children }; -}; - -export const InviteChild = async (familyId, childName, role) => { - return { success: true }; -}; - -export const TransitionChildRole = async (familyId, childId, newRole) => { - return { success: true }; -}; - -export const SetChildAllowance = async (familyId, childId, allowance) => { - return { success: true }; -}; - -export const TransferFunds = async (familyId, childId, amount) => { - return { success: true }; -}; - -export const ExportChild = async (familyId, childId) => { - return { success: true }; -}; diff --git a/src/routes/Accounts.js b/src/routes/Accounts.js deleted file mode 100644 index cd1c543..0000000 --- a/src/routes/Accounts.js +++ /dev/null @@ -1,25 +0,0 @@ -import { Outlet, useParams, Link } from "react-router-dom"; -//Specifc, Private Family Page -const Accounts = () => { - const { family } = useParams(); - - const members = ["Steven", "Alex", "Bryan", "Jordan"]; - - return ( -
-

Welcome {family} family!

-
    - {members.map((member, key) => { - return ( -
  • - {member}'s Account -
  • - ); - })} -
- -
- ); -}; - -export default Accounts; From 18ffdb861cdf24a7ebaea8c6f91205ed97a03c98 Mon Sep 17 00:00:00 2001 From: Alex Lewin Date: Sat, 7 May 2022 11:49:46 -0400 Subject: [PATCH 3/3] add .gitignore --- .gitignore | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 .gitignore diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..57b9554 --- /dev/null +++ b/.gitignore @@ -0,0 +1,23 @@ + +# Created by https://www.toptal.com/developers/gitignore/api/react +# Edit at https://www.toptal.com/developers/gitignore?templates=react + +### react ### +.DS_* +*.log +logs +**/*.backup.* +**/*.back.* + +**/node_modules +bower_components + +*.sublime* + +psd +thumb +sketch + +# End of https://www.toptal.com/developers/gitignore/api/react + +**/service-account.json