From ca58644acfb43205eede78f776c7cc5983648b18 Mon Sep 17 00:00:00 2001 From: An Hoang Date: Sat, 27 Aug 2022 15:35:54 +0700 Subject: [PATCH 01/20] Checkpoint next-auth/expo --- .gitignore | 1 + packages/next-auth/package.json | 12 +- packages/next-auth/src/core/index.ts | 98 + packages/next-auth/src/core/types.ts | 1 + packages/next-auth/src/expo/Auth.tsx | 421 +++ packages/next-auth/src/expo/Auth.web.tsx | 1 + packages/next-auth/src/expo/index.ts | 1 + packages/next-auth/src/expo/types.ts | 77 + pnpm-lock.yaml | 2959 +++++++++++++++++++++- 9 files changed, 3467 insertions(+), 104 deletions(-) create mode 100644 packages/next-auth/src/expo/Auth.tsx create mode 100644 packages/next-auth/src/expo/Auth.web.tsx create mode 100644 packages/next-auth/src/expo/index.ts create mode 100644 packages/next-auth/src/expo/types.ts diff --git a/.gitignore b/.gitignore index b1797b1813..687d470c51 100644 --- a/.gitignore +++ b/.gitignore @@ -40,6 +40,7 @@ packages/next-auth/index.js packages/next-auth/next packages/next-auth/middleware.d.ts packages/next-auth/middleware.js +packages/next-auth/expo # Development app apps/dev/src/css diff --git a/packages/next-auth/package.json b/packages/next-auth/package.json index bc909bdd5a..ede502d29e 100644 --- a/packages/next-auth/package.json +++ b/packages/next-auth/package.json @@ -32,6 +32,7 @@ "./react": "./react/index.js", "./core": "./core/index.js", "./next": "./next/index.js", + "./expo": "./expo/index.js", "./middleware": "./middleware.js", "./client/_utils": "./client/_utils.js", "./providers/*": "./providers/*.js" @@ -54,6 +55,7 @@ "jwt", "react", "next", + "expo", "client", "providers", "core", @@ -77,9 +79,11 @@ "uuid": "^8.3.2" }, "peerDependencies": { + "expo": "^46", "nodemailer": "^6.6.5", "react": "^17.0.2 || ^18", - "react-dom": "^17.0.2 || ^18" + "react-dom": "^17.0.2 || ^18", + "react-native": ">= 0.63.0" }, "peerDependenciesMeta": { "nodemailer": { @@ -95,6 +99,7 @@ "@babel/preset-react": "^7.17.12", "@babel/preset-typescript": "^7.17.12", "@next-auth/tsconfig": "workspace:^0.0.0", + "@react-navigation/native": "^6.0.12", "@swc/core": "^1.2.198", "@swc/jest": "^0.2.21", "@testing-library/dom": "^8.13.0", @@ -112,6 +117,10 @@ "babel-plugin-jsx-pragmatic": "^1.0.2", "babel-preset-preact": "^2.0.0", "cssnano": "^5.1.11", + "expo": "^46", + "expo-auth-session": "^3.7.1", + "expo-constants": "^13.2.4", + "expo-secure-store": "^11.3.0", "jest": "^28.1.1", "jest-environment-jsdom": "^28.1.1", "jest-watch-typeahead": "^1.1.0", @@ -122,6 +131,7 @@ "postcss-nested": "^5.0.6", "react": "^18", "react-dom": "^18", + "react-native": "0.69.4", "whatwg-fetch": "^3.6.2" }, "engines": { diff --git a/packages/next-auth/src/core/index.ts b/packages/next-auth/src/core/index.ts index a49418ba6b..ceaa2be73f 100644 --- a/packages/next-auth/src/core/index.ts +++ b/packages/next-auth/src/core/index.ts @@ -143,6 +143,104 @@ export async function NextAuthHandler< const render = renderPage({ ...options, query: req.query, cookies }) const { pages } = options switch (action) { + case "proxy": { + // const getCookieFromHeader = (name: string, headers: Headers) => { + // return headers + // .get("set-cookie") + // ?.split(", ") + // .filter((s) => s.startsWith(`${name}=`))[0] + // ?.split("=")[1] + // ?.split(";")[0] + // } + + const cookies: Record = {} + if (req.body?.sessionToken) { + cookies[options.cookies.sessionToken.name] = req.body.sessionToken + } + if (req.body?.csrfToken) { + cookies[options.cookies.csrfToken.name] = req.body.sessionToken + } + if (req.body?.stateEncrypted) { + cookies[options.cookies.state.name] = req.body.stateEncrypted + } + if (req.body?.codeVerifier) { + cookies[options.cookies.pkceCodeVerifier.name] = req.body.codeVerifier + } + if (req.body?.providerId) { + req.providerId = req.body.providerId + } + switch (req.body?.action) { + case "signin": { + // Get csrf token + // const csrfTokenRes = await fetch(`${webHost}/api/auth/csrf`) + const csrfTokenRes = await NextAuthHandler({ + req: { + action: "csrf", + }, + options: userOptions, + }) + // const csrfToken = (await csrfTokenRes.json()).csrfToken + const csrfToken = (csrfTokenRes.body as any).csrfToken + const csrfTokenCookie = + csrfTokenRes.cookies?.[options.cookies.csrfToken.name] + cookies[options.cookies.csrfToken.name] = csrfTokenCookie + + // Get authorizationUrl + const callbackUrl = req.body?.callbackUrl + cookies[options.cookies.callbackUrl.name] = callbackUrl + + const signInRes = await NextAuthHandler({ + req: { + action: "signin", + method: "POST", + cookies, + body: { + csrfToken, + callbackUrl, + }, + }, + options: userOptions, + }) + + const authorizationUrl = signInRes.redirect as string + const url = new URL(authorizationUrl) + const params = new URLSearchParams(url.search) + + // state + const stateEncrypted = + signInRes.cookies?.[options.cookies.state.name] + const state = params.get("state") as string + + // pkce code verifier + const codeChallenge = params.get("code_challenge") as string + const codeVerifier = + signInRes.cookies?.[options.cookies.pkceCodeVerifier.name] + + return { + body: { + state, + stateEncrypted, + csrfTokenCookie, + codeVerifier, + codeChallenge, + } as any, + } + } + case "callback": { + return {} // TODO: + } + case "signout": { + return {} // TODO: + } + } + return await NextAuthHandler({ + req: { + cookies, + action: req.body?.action, + }, + options: userOptions, + }) + } case "providers": return (await routes.providers(options.providers)) as any case "session": { diff --git a/packages/next-auth/src/core/types.ts b/packages/next-auth/src/core/types.ts index 6c998d335d..74ad58b11e 100644 --- a/packages/next-auth/src/core/types.ts +++ b/packages/next-auth/src/core/types.ts @@ -513,6 +513,7 @@ export type NextAuthAction = | "verify-request" | "error" | "_log" + | "proxy" /** @internal */ export interface InternalOptions { diff --git a/packages/next-auth/src/expo/Auth.tsx b/packages/next-auth/src/expo/Auth.tsx new file mode 100644 index 0000000000..b30c1d5149 --- /dev/null +++ b/packages/next-auth/src/expo/Auth.tsx @@ -0,0 +1,421 @@ +// Note about signIn() and signOut() methods: +// +// On signIn() and signOut() we pass 'json: true' to request a response in JSON +// instead of HTTP as redirect URLs on other domains are not returned to +// requests made using the fetch API in the browser, and we need to ask the API +// to return the response as a JSON object (the end point still defaults to +// returning an HTTP response with a redirect for non-JavaScript clients). +// +// We use HTTP POST requests with CSRF Tokens to protect against CSRF attacks. + +import { Session } from ".." +import { NextAuthClientConfig, now } from "../client/_utils" +import _logger, { LoggerInstance, proxyLogger } from "../utils/logger" +import parseUrl from "../utils/parse-url" +import * as React from "react" + +import type { + ClientSafeProvider, + LiteralUnion, + SessionProviderProps, + SignInOptions, + SignInResponse, + SignOutParams, + UseSessionOptions, +} from "./types" + +import type { + BuiltInProviderType, + RedirectableProviderType, +} from "../providers" + +import { useFocusEffect } from "@react-navigation/native" +import * as SecureStore from "expo-secure-store" +import Constants from "expo-constants" +import { Alert } from "react-native" +import { defaultCookies } from "src/core/lib/cookie" +import * as AuthSession from "expo-auth-session" + +const storageKeys = { + sessionToken: "next-auth.sessionToken", + csrfToken: "next-auth.csrfToken", +} + +export async function fetchData( + path: string, + __NEXTAUTH: NextAuthClientConfig, + logger: LoggerInstance, + params?: {} // TODO: populate this +): Promise { + const url = `${apiBaseUrl(__NEXTAUTH)}/proxy` + const sessionToken = await SecureStore.getItemAsync(storageKeys.sessionToken) + try { + let csrfToken = await SecureStore.getItemAsync(storageKeys.csrfToken) + if (!csrfToken) { + csrfToken = (await getCsrfToken())?.csrfTokenCookie ?? null + } + + const options: RequestInit = { + body: JSON.stringify({ action: path, sessionToken, csrfToken }), // TODO: populate this + } + const res = await fetch(url, options) + const data = await res.json() + if (!res.ok) throw data + return Object.keys(data).length > 0 ? data : null // Return null if data empty + } catch (error) { + logger.error("CLIENT_FETCH_ERROR", { error: error as Error, url }) + return null + } +} + +export function apiBaseUrl(__NEXTAUTH: NextAuthClientConfig) { + return `${__NEXTAUTH.baseUrlServer}${__NEXTAUTH.basePathServer}` +} + +const nextAuthUrl = Constants.manifest?.extra?.nextAuthUrl + +const __NEXTAUTH: NextAuthClientConfig = { + baseUrl: parseUrl(nextAuthUrl).origin, + basePath: parseUrl(nextAuthUrl).path, + baseUrlServer: parseUrl(nextAuthUrl).origin, + basePathServer: parseUrl(nextAuthUrl).path, + _lastSync: 0, + _session: undefined, + _getSession: () => {}, +} + +const logger = proxyLogger(_logger, __NEXTAUTH.basePath) + +export type SessionContextValue = + | { data: Session; status: "authenticated" } + | { data: null; status: "unauthenticated" | "loading" } + +const SessionContext = React.createContext( + undefined +) + +/** + * React Hook that gives you access + * to the logged in user's session data. + * + * [Documentation](https://next-auth.js.org/getting-started/client#usesession) + */ +export function useSession(options?: UseSessionOptions) { + // @ts-expect-error Satisfy TS if branch on line below + const value: SessionContextValue = React.useContext(SessionContext) + if (!value && process.env.NODE_ENV !== "production") { + throw new Error( + "[next-auth]: `useSession` must be wrapped in a " + ) + } + + const { onUnauthenticated } = options ?? {} + + const unauthenticated = value.status === "unauthenticated" + + React.useEffect(() => { + if (unauthenticated) { + if (onUnauthenticated) onUnauthenticated() + } + }, [unauthenticated, onUnauthenticated]) + + return value +} + +export async function getSession() { + const session = await fetchData("session", __NEXTAUTH, logger) + return session +} + +const getCookieFromHeader = (name: string, headers: Headers) => { + return headers + .get("set-cookie") + ?.split(", ") + .filter((s) => s.startsWith(`${name}=`))[0] + ?.split("=")[1] + ?.split(";")[0] +} + +export const authCookies = defaultCookies( + // useSecureCookies ?? + __NEXTAUTH.baseUrl.startsWith("https://") +) + +/** + * Returns the current Cross Site Request Forgery Token (CSRF Token) + * required to make POST requests (e.g. for signing in and signing out). + * You likely only need to use this if you are not using the built-in + * `signIn()` and `signOut()` methods. + * + * [Documentation](https://next-auth.js.org/getting-started/client#getcsrftoken) + */ +export async function getCsrfToken() { + const csrfTokenRes = await fetch(`${apiBaseUrl(__NEXTAUTH)}/csrf`) + const csrfToken = (await csrfTokenRes.json()).csrfToken + const csrfTokenCookie = getCookieFromHeader( + authCookies.csrfToken.name, + csrfTokenRes.headers + ) as string + console.log("debug getCsrfToken", { csrfToken, csrfTokenCookie }) + // const { csrfToken, csrfTokenCookie } = await trpcClient.query("auth.csrf") + + // await SafeStorage.set(storageKeys.csrfToken, csrfTokenCookie) + + return { + csrfToken, + csrfTokenCookie, + } +} + +/** + * It calls `/api/auth/providers` and returns + * a list of the currently configured authentication providers. + * It can be useful if you are creating a dynamic custom sign in page. + * + * [Documentation](https://next-auth.js.org/getting-started/client#getproviders) + */ +export async function getProviders() { + return await fetchData< + Record, ClientSafeProvider> + >("providers", __NEXTAUTH, logger) +} + +export interface SigninResult { + result: AuthSession.AuthSessionResult + state: string + csrfTokenCookie: string + stateEncrypted: string + codeVerifier?: string + proxyRedirectUri: string + provider: string +} + +/** + * Client-side method to initiate a signin flow + * or send the user to the signin page listing all possible providers. + * Automatically adds the CSRF token to the request. + * + * [Documentation](https://next-auth.js.org/getting-started/client#signin) + */ +export async function signIn< + P extends RedirectableProviderType | undefined = undefined +>( + provider: LiteralUnion< + P extends RedirectableProviderType + ? P | BuiltInProviderType + : BuiltInProviderType + >, + initiateExpoAuthFlow: () => Promise, + options?: SignInOptions // TODO: use this +): Promise< + P extends RedirectableProviderType ? SignInResponse | undefined : undefined +> { + const providers = await getProviders() + if (!providers) { + Alert.alert("Error", "Provider not valid.") + return + } + if (!provider || !(provider in providers)) { + Alert.alert("Error", "Provider not valid.") + return + } + + const signinResult = await initiateExpoAuthFlow() + const { + result, + state, + codeVerifier, + csrfTokenCookie, + proxyRedirectUri, + stateEncrypted, + provider: nativeProvider, + } = signinResult + + if (result.type !== "success") return // TODO: handle other results + + const data = await fetchData<{ error?: string; sessionToken?: string }>( + "callback", + __NEXTAUTH, + logger, + { + provider: nativeProvider, + code: result.params.code, + csrfTokenCookie, + state, + stateEncrypted, + callbackUrl: proxyRedirectUri, + codeVerifier, + } + ) + if (!data) { + Alert.alert("Error", "Callback error.") + return + } + const { error, sessionToken } = data + if (!!error || !sessionToken) { + switch (error) { + case "OAuthAccountNotLinked": { + Alert.alert( + "Error", + "The email associated with the account you just logged in is being used by another account. Please log into that account and then link to other providers afterwards." + ) + break + } + } + return + } + console.log("sessionToken received in Client", sessionToken) + if (sessionToken) { + await SecureStore.setItemAsync(storageKeys.sessionToken, sessionToken) + await __NEXTAUTH._getSession({ event: "storage" }) + } +} + +/** + * Signs the user out, by removing the session cookie. + * Automatically adds the CSRF token to the request. + * + * [Documentation](https://next-auth.js.org/getting-started/client#signout) + */ +export async function signOut( + options?: SignOutParams +): Promise { + const sessionToken = await SecureStore.getItemAsync(storageKeys.sessionToken) + if (!sessionToken) throw new Error("No sessionToken") + + let csrfToken = await SecureStore.getItemAsync(storageKeys.csrfToken) + if (!csrfToken) { + csrfToken = (await getCsrfToken())?.csrfTokenCookie ?? null + } + + const data = await fetchData("signout", __NEXTAUTH, logger, { + csrfToken, + sessionToken, + }) + + console.log("debug signOut", data) + if (data) { + await SecureStore.deleteItemAsync(storageKeys.sessionToken) + + // Trigger session refetch to update AuthContext state. + await __NEXTAUTH._getSession({ event: "storage" }) + } +} + +/** + * Provider to wrap the app in to make session data available globally. + * Can also be used to throttle the number of requests to the endpoint + * `/api/auth/session`. + * + * [Documentation](https://next-auth.js.org/getting-started/client#sessionprovider) + */ +export function SessionProvider(props: SessionProviderProps) { + const { children, basePath, refetchInterval } = props + + if (basePath) __NEXTAUTH.basePath = basePath + + /** + * If session was `null`, there was an attempt to fetch it, + * but it failed, but we still treat it as a valid initial value. + */ + const hasInitialSession = props.session !== undefined + + /** If session was passed, initialize as already synced */ + __NEXTAUTH._lastSync = hasInitialSession ? now() : 0 + + const [session, setSession] = React.useState(() => { + if (hasInitialSession) __NEXTAUTH._session = props.session + return props.session + }) + + /** If session was passed, initialize as not loading */ + const [loading, setLoading] = React.useState(!hasInitialSession) + + React.useEffect(() => { + __NEXTAUTH._getSession = async ({ event } = {}) => { + try { + const storageEvent = event === "storage" + // We should always update if we don't have a client session yet + // or if there are events from other tabs/windows + if (storageEvent || __NEXTAUTH._session === undefined) { + __NEXTAUTH._lastSync = now() + __NEXTAUTH._session = await getSession() + setSession(__NEXTAUTH._session) + return + } + + if ( + // If there is no time defined for when a session should be considered + // stale, then it's okay to use the value we have until an event is + // triggered which updates it + !event || + // If the client doesn't have a session then we don't need to call + // the server to check if it does (if they have signed in via another + // tab or window that will come through as a "stroage" event + // event anyway) + __NEXTAUTH._session === null || + // Bail out early if the client session is not stale yet + now() < __NEXTAUTH._lastSync + ) { + return + } + + // An event or session staleness occurred, update the client session. + __NEXTAUTH._lastSync = now() + __NEXTAUTH._session = await getSession() + setSession(__NEXTAUTH._session) + } catch (error) { + logger.error("CLIENT_SESSION_ERROR", error as Error) + } finally { + setLoading(false) + } + } + + __NEXTAUTH._getSession() + + return () => { + __NEXTAUTH._lastSync = 0 + __NEXTAUTH._session = undefined + __NEXTAUTH._getSession = () => {} + } + }, []) + + useFocusEffect( + React.useCallback(() => { + const { refetchOnWindowFocus = true } = props + // Listen for when the page is visible, if the user switches tabs + // and makes our tab visible again, re-fetch the session, but only if + // this feature is not disabled. + if (refetchOnWindowFocus) + __NEXTAUTH._getSession({ event: "visibilitychange" }) + }, [props]) + ) + + React.useEffect(() => { + // Set up polling + if (refetchInterval) { + const refetchIntervalTimer = setInterval(() => { + if (__NEXTAUTH._session) { + __NEXTAUTH._getSession({ event: "poll" }) + } + }, refetchInterval * 1000) + return () => clearInterval(refetchIntervalTimer) + } + }, [refetchInterval]) + + const value: any = React.useMemo( + () => ({ + data: session, + status: loading + ? "loading" + : session + ? "authenticated" + : "unauthenticated", + }), + [session, loading] + ) + + return ( + {children} + ) +} diff --git a/packages/next-auth/src/expo/Auth.web.tsx b/packages/next-auth/src/expo/Auth.web.tsx new file mode 100644 index 0000000000..6c407ff162 --- /dev/null +++ b/packages/next-auth/src/expo/Auth.web.tsx @@ -0,0 +1 @@ +export * from "../react" diff --git a/packages/next-auth/src/expo/index.ts b/packages/next-auth/src/expo/index.ts new file mode 100644 index 0000000000..c6e4863f5a --- /dev/null +++ b/packages/next-auth/src/expo/index.ts @@ -0,0 +1 @@ +export * from "./Auth"; diff --git a/packages/next-auth/src/expo/types.ts b/packages/next-auth/src/expo/types.ts new file mode 100644 index 0000000000..3f5f7c3c84 --- /dev/null +++ b/packages/next-auth/src/expo/types.ts @@ -0,0 +1,77 @@ +import type { Session } from ".." +import type { BuiltInProviderType, ProviderType } from "../providers" + +export interface UseSessionOptions { + /** Defaults to `signIn` */ + onUnauthenticated?: () => void +} + +/** + * Util type that matches some strings literally, but allows any other string as well. + * @source https://github.com/microsoft/TypeScript/issues/29729#issuecomment-832522611 + */ +export type LiteralUnion = + | T + | (U & Record) + +export interface ClientSafeProvider { + id: LiteralUnion + name: string + type: ProviderType + signinUrl: string + callbackUrl: string +} + +export interface SignInOptions extends Record { + /** + * Defaults to the current URL. + * @docs https://next-auth.js.org/getting-started/client#specifying-a-callbackurl + */ + callbackUrl?: string + /** @docs https://next-auth.js.org/getting-started/client#using-the-redirect-false-option */ + redirect?: boolean +} + +export interface SignInResponse { + error: string | undefined + status: number + ok: boolean + url: string | null +} + +/** Match `inputType` of `new URLSearchParams(inputType)` */ +export type SignInAuthorizationParams = + | string + | string[][] + | Record + | URLSearchParams + +/** @docs https://next-auth.js.org/getting-started/client#using-the-redirect-false-option-1 */ +export interface SignOutResponse { + url: string +} + +export interface SignOutParams { + /** @docs https://next-auth.js.org/getting-started/client#specifying-a-callbackurl-1 */ + callbackUrl?: string + /** @docs https://next-auth.js.org/getting-started/client#using-the-redirect-false-option-1 */ + redirect?: R +} + +/** @docs: https://next-auth.js.org/getting-started/client#options */ +export interface SessionProviderProps { + children: React.ReactNode + session?: Session | null + baseUrl?: string + basePath?: string + /** + * A time interval (in seconds) after which the session will be re-fetched. + * If set to `0` (default), the session is not polled. + */ + refetchInterval?: number + /** + * `SessionProvider` automatically refetches the session when the user switches between windows. + * This option activates this behaviour if set to `true` (default). + */ + refetchOnWindowFocus?: boolean +} diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 0f3318df36..35d2dab985 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -405,6 +405,7 @@ importers: '@babel/runtime': ^7.16.3 '@next-auth/tsconfig': workspace:^0.0.0 '@panva/hkdf': ^1.0.1 + '@react-navigation/native': ^6.0.12 '@swc/core': ^1.2.198 '@swc/jest': ^0.2.21 '@testing-library/dom': ^8.13.0 @@ -423,6 +424,10 @@ importers: babel-preset-preact: ^2.0.0 cookie: ^0.4.1 cssnano: ^5.1.11 + expo: ^46 + expo-auth-session: ^3.7.1 + expo-constants: ^13.2.4 + expo-secure-store: ^11.3.0 jest: ^28.1.1 jest-environment-jsdom: ^28.1.1 jest-watch-typeahead: ^1.1.0 @@ -438,6 +443,7 @@ importers: preact-render-to-string: ^5.1.19 react: ^18 react-dom: ^18 + react-native: 0.69.4 uuid: ^8.3.2 whatwg-fetch: ^3.6.2 dependencies: @@ -459,6 +465,7 @@ importers: '@babel/preset-react': 7.17.12_@babel+core@7.18.5 '@babel/preset-typescript': 7.17.12_@babel+core@7.18.5 '@next-auth/tsconfig': link:../tsconfig + '@react-navigation/native': 6.0.12_5ifwsx3kh4yeq2aw7ur5frzkxu '@swc/core': 1.2.204 '@swc/jest': 0.2.21_@swc+core@1.2.204 '@testing-library/dom': 8.14.0 @@ -476,6 +483,10 @@ importers: babel-plugin-jsx-pragmatic: 1.0.2 babel-preset-preact: 2.0.0_@babel+core@7.18.5 cssnano: 5.1.12_postcss@8.4.14 + expo: 46.0.9_@babel+core@7.18.5 + expo-auth-session: 3.7.1_expo@46.0.9 + expo-constants: 13.2.4_expo@46.0.9 + expo-secure-store: 11.3.0_expo@46.0.9 jest: 28.1.1_@types+node@17.0.45 jest-environment-jsdom: 28.1.1 jest-watch-typeahead: 1.1.0_jest@28.1.1 @@ -486,6 +497,7 @@ importers: postcss-nested: 5.0.6_postcss@8.4.14 react: 18.2.0 react-dom: 18.2.0_react@18.2.0 + react-native: 0.69.4_27wpj6te4dzakyna6ilyljc3vq whatwg-fetch: 3.6.2 packages/tsconfig: @@ -1547,6 +1559,12 @@ packages: chokidar: 3.5.3 dev: true + /@babel/code-frame/7.10.4: + resolution: {integrity: sha512-vG6SvB6oYEhvgisZNFRmRCUkLz11c7rp+tbNTynGqc6mS1d5ATd/sGyV6W0KZZnXRKMTzZDRgQT3Ou9jhpAfUg==} + dependencies: + '@babel/highlight': 7.18.6 + dev: true + /@babel/code-frame/7.12.11: resolution: {integrity: sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==} dependencies: @@ -1559,6 +1577,13 @@ packages: dependencies: '@babel/highlight': 7.17.12 + /@babel/code-frame/7.18.6: + resolution: {integrity: sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/highlight': 7.18.6 + dev: true + /@babel/compat-data/7.18.5: resolution: {integrity: sha512-BxhE40PVCBxVEJsSBhB6UWyAuqJRxGsAw8BdHMJ3AKGydcwuWW4kOO3HmqBQAdcq/OP+/DlTVxLvsCzRTnZuGg==} engines: {node: '>=6.9.0'} @@ -1609,6 +1634,15 @@ packages: transitivePeerDependencies: - supports-color + /@babel/generator/7.18.13: + resolution: {integrity: sha512-CkPg8ySSPuHTYPJYo7IRALdqyjM9HCbt/3uOBEFbzyGVP6Mn8bwFPB0jX6982JVNBlYzM1nnPkfjuXSOPtQeEQ==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/types': 7.18.13 + '@jridgewell/gen-mapping': 0.3.2 + jsesc: 2.5.2 + dev: true + /@babel/generator/7.18.2: resolution: {integrity: sha512-W1lG5vUwFvfMd8HVXqdfbuG7RuaSrTCCD8cl8fP8wOivdbtbIg2Db3IWUcgvfxKbbn6ZBGYRW/Zk1MIwK49mgw==} engines: {node: '>=6.9.0'} @@ -1623,6 +1657,13 @@ packages: dependencies: '@babel/types': 7.18.4 + /@babel/helper-annotate-as-pure/7.18.6: + resolution: {integrity: sha512-duORpUiYrEpzKIop6iNbjnwKLAKnJ47csTyRACyEmWj0QdUrm5aqNJGHSSEQSUAvNW0ojX0dOmK9dZduvkfeXA==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/types': 7.18.13 + dev: true + /@babel/helper-builder-binary-assignment-operator-visitor/7.16.7: resolution: {integrity: sha512-C6FdbRaxYjwVu/geKW4ZeQ0Q31AftgRcdSnZ5/jsH6BzCJbtvXvhpfkbkThYSuutZA7nCXpPR6AD9zd1dprMkA==} engines: {node: '>=6.9.0'} @@ -1688,6 +1729,24 @@ packages: transitivePeerDependencies: - supports-color + /@babel/helper-create-class-features-plugin/7.18.13_@babel+core@7.18.5: + resolution: {integrity: sha512-hDvXp+QYxSRL+23mpAlSGxHMDyIGChm0/AwTfTAAK5Ufe40nCsyNdaYCGuK91phn/fVu9kqayImRDkvNAgdrsA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + dependencies: + '@babel/core': 7.18.5 + '@babel/helper-annotate-as-pure': 7.18.6 + '@babel/helper-environment-visitor': 7.18.9 + '@babel/helper-function-name': 7.18.9 + '@babel/helper-member-expression-to-functions': 7.18.9 + '@babel/helper-optimise-call-expression': 7.18.6 + '@babel/helper-replace-supers': 7.18.9 + '@babel/helper-split-export-declaration': 7.18.6 + transitivePeerDependencies: + - supports-color + dev: true + /@babel/helper-create-regexp-features-plugin/7.17.12: resolution: {integrity: sha512-b2aZrV4zvutr9AIa6/gA3wsZKRwTKYoDxYiFKcESS3Ug2GTXzwBEvMuuFLhCQpEnRXs1zng4ISAXSUxxKBIcxw==} engines: {node: '>=6.9.0'} @@ -1746,6 +1805,11 @@ packages: resolution: {integrity: sha512-14GQKWkX9oJzPiQQ7/J36FTXcD4kSp8egKjO9nINlSKiHITRA9q/R74qu8S9xlc/b/yjsJItQUeeh3xnGN0voQ==} engines: {node: '>=6.9.0'} + /@babel/helper-environment-visitor/7.18.9: + resolution: {integrity: sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==} + engines: {node: '>=6.9.0'} + dev: true + /@babel/helper-explode-assignable-expression/7.16.7: resolution: {integrity: sha512-KyUenhWMC8VrxzkGP0Jizjo4/Zx+1nNZhgocs+gLzyZyB8SHidhoq9KK/8Ato4anhwsivfkBLftky7gvzbZMtQ==} engines: {node: '>=6.9.0'} @@ -1759,18 +1823,40 @@ packages: '@babel/template': 7.16.7 '@babel/types': 7.18.4 + /@babel/helper-function-name/7.18.9: + resolution: {integrity: sha512-fJgWlZt7nxGksJS9a0XdSaI4XvpExnNIgRP+rVefWh5U7BL8pPuir6SJUmFKRfjWQ51OtWSzwOxhaH/EBWWc0A==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/template': 7.18.10 + '@babel/types': 7.18.13 + dev: true + /@babel/helper-hoist-variables/7.16.7: resolution: {integrity: sha512-m04d/0Op34H5v7pbZw6pSKP7weA6lsMvfiIAMeIvkY/R4xQtBSMFEigu9QTZ2qB/9l22vsxtM8a+Q8CzD255fg==} engines: {node: '>=6.9.0'} dependencies: '@babel/types': 7.18.4 + /@babel/helper-hoist-variables/7.18.6: + resolution: {integrity: sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/types': 7.18.13 + dev: true + /@babel/helper-member-expression-to-functions/7.17.7: resolution: {integrity: sha512-thxXgnQ8qQ11W2wVUObIqDL4p148VMxkt5T/qpN5k2fboRyzFGFmKsTGViquyM5QHKUy48OZoca8kw4ajaDPyw==} engines: {node: '>=6.9.0'} dependencies: '@babel/types': 7.18.4 + /@babel/helper-member-expression-to-functions/7.18.9: + resolution: {integrity: sha512-RxifAh2ZoVU67PyKIO4AMi1wTenGfMR/O/ae0CCRqwgBAt5v7xjdtRw7UoSbsreKrQn5t7r89eruK/9JjYHuDg==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/types': 7.18.13 + dev: true + /@babel/helper-module-imports/7.16.7: resolution: {integrity: sha512-LVtS6TqjJHFc+nYeITRo6VLXve70xmq7wPhWTqDJusJEgGmkAACWwMiTNrvfoQo6hEhFwAIixNkvB0jPXDL8Wg==} engines: {node: '>=6.9.0'} @@ -1798,6 +1884,13 @@ packages: dependencies: '@babel/types': 7.18.4 + /@babel/helper-optimise-call-expression/7.18.6: + resolution: {integrity: sha512-HP59oD9/fEHQkdcbgFCnbmgH5vIQTJbxh2yf+CdM89/glUNnuzr87Q8GIjGEnOktTROemO0Pe0iPAYbqZuOUiA==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/types': 7.18.13 + dev: true + /@babel/helper-plugin-utils/7.10.4: resolution: {integrity: sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==} dev: false @@ -1806,6 +1899,11 @@ packages: resolution: {integrity: sha512-JDkf04mqtN3y4iAbO1hv9U2ARpPyPL1zqyWs/2WG1pgSq9llHFjStX5jdxb84himgJm+8Ng+x0oiWF/nw/XQKA==} engines: {node: '>=6.9.0'} + /@babel/helper-plugin-utils/7.18.9: + resolution: {integrity: sha512-aBXPT3bmtLryXaoJLyYPXPlSD4p1ld9aYeR+sJNOZjJJGiOpb+fKfh3NkcCu7J54nUJwCERPBExCCpyCOHnu/w==} + engines: {node: '>=6.9.0'} + dev: true + /@babel/helper-remap-async-to-generator/7.16.8: resolution: {integrity: sha512-fm0gH7Flb8H51LqJHy3HJ3wnE1+qtYR2A99K06ahwrawLdOFsCEWjZOrYricXJHoPSudNKxrMBUPEIPxiIIvBw==} engines: {node: '>=6.9.0'} @@ -1828,6 +1926,19 @@ packages: transitivePeerDependencies: - supports-color + /@babel/helper-replace-supers/7.18.9: + resolution: {integrity: sha512-dNsWibVI4lNT6HiuOIBr1oyxo40HvIVmbwPUm3XZ7wMh4k2WxrxTqZwSqw/eEmXDS9np0ey5M2bz9tBmO9c+YQ==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/helper-environment-visitor': 7.18.9 + '@babel/helper-member-expression-to-functions': 7.18.9 + '@babel/helper-optimise-call-expression': 7.18.6 + '@babel/traverse': 7.18.13 + '@babel/types': 7.18.13 + transitivePeerDependencies: + - supports-color + dev: true + /@babel/helper-simple-access/7.18.2: resolution: {integrity: sha512-7LIrjYzndorDY88MycupkpQLKS1AFfsVRm2k/9PtKScSy5tZq0McZTj+DiMRynboZfIqOKvo03pmhTaUgiD6fQ==} engines: {node: '>=6.9.0'} @@ -1846,14 +1957,36 @@ packages: dependencies: '@babel/types': 7.18.4 + /@babel/helper-split-export-declaration/7.18.6: + resolution: {integrity: sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/types': 7.18.13 + dev: true + + /@babel/helper-string-parser/7.18.10: + resolution: {integrity: sha512-XtIfWmeNY3i4t7t4D2t02q50HvqHybPqW2ki1kosnvWCwuCMeo81Jf0gwr85jy/neUdg5XDdeFE/80DXiO+njw==} + engines: {node: '>=6.9.0'} + dev: true + /@babel/helper-validator-identifier/7.16.7: resolution: {integrity: sha512-hsEnFemeiW4D08A5gUAZxLBTXpZ39P+a+DGDsHw1yxqyQ/jzFEnxf5uTEGp+3bzAbNOxU1paTgYS4ECU/IgfDw==} engines: {node: '>=6.9.0'} + /@babel/helper-validator-identifier/7.18.6: + resolution: {integrity: sha512-MmetCkz9ej86nJQV+sFCxoGGrUbU3q02kgLciwkrt9QqEB7cP39oKEY0PakknEO0Gu20SskMRi+AYZ3b1TpN9g==} + engines: {node: '>=6.9.0'} + dev: true + /@babel/helper-validator-option/7.16.7: resolution: {integrity: sha512-TRtenOuRUVo9oIQGPC5G9DgK4743cdxvtOw0weQNpZXaS16SCBi5MNjZF8vba3ETURjZpTbVn7Vvcf2eAwFozQ==} engines: {node: '>=6.9.0'} + /@babel/helper-validator-option/7.18.6: + resolution: {integrity: sha512-XO7gESt5ouv/LRJdrVjkShckw6STTaB7l9BrpBaAHDeF5YZT+01PCwmR0SJHnkW6i8OwW/EVWRShfi4j2x+KQw==} + engines: {node: '>=6.9.0'} + dev: true + /@babel/helper-wrap-function/7.16.8: resolution: {integrity: sha512-8RpyRVIAW1RcDDGTA+GpPAwV22wXCfKOoM9bet6TLkGIFTkRQSkH1nMQ5Yet4MpoXe1ZwHPVtNasc2w0uZMqnw==} engines: {node: '>=6.9.0'} @@ -1883,6 +2016,23 @@ packages: chalk: 2.4.2 js-tokens: 4.0.0 + /@babel/highlight/7.18.6: + resolution: {integrity: sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/helper-validator-identifier': 7.18.6 + chalk: 2.4.2 + js-tokens: 4.0.0 + dev: true + + /@babel/parser/7.18.13: + resolution: {integrity: sha512-dgXcIfMuQ0kgzLB2b9tRZs7TTFFaGM2AbtA4fJgUUYukzGH4jwsS7hzQHEGs67jdehpm22vkgKwvbU+aEflgwg==} + engines: {node: '>=6.0.0'} + hasBin: true + dependencies: + '@babel/types': 7.18.13 + dev: true + /@babel/parser/7.18.5: resolution: {integrity: sha512-YZWVaglMiplo7v8f1oMQ5ZPQr0vn7HPeZXxXWsxXJRjGVrzUFn9OxFQl1sb5wzfootjA/yChhW84BV+383FSOw==} engines: {node: '>=6.0.0'} @@ -2006,6 +2156,22 @@ packages: transitivePeerDependencies: - supports-color + /@babel/plugin-proposal-decorators/7.18.10_@babel+core@7.18.5: + resolution: {integrity: sha512-wdGTwWF5QtpTY/gbBtQLAiCnoxfD4qMbN87NYZle1dOZ9Os8Y6zXcKrIaOU8W+TIvFUWVGG9tUgNww3CjXRVVw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.18.5 + '@babel/helper-create-class-features-plugin': 7.18.13_@babel+core@7.18.5 + '@babel/helper-plugin-utils': 7.18.9 + '@babel/helper-replace-supers': 7.18.9 + '@babel/helper-split-export-declaration': 7.18.6 + '@babel/plugin-syntax-decorators': 7.18.6_@babel+core@7.18.5 + transitivePeerDependencies: + - supports-color + dev: true + /@babel/plugin-proposal-dynamic-import/7.16.7: resolution: {integrity: sha512-I8SW9Ho3/8DRSdmDdH3gORdyUuYnk1m4cMxUAdu5oy4n3OfN8flDEH+d60iG7dUfi0KkYwSvoalHzzdRzpWHTg==} engines: {node: '>=6.9.0'} @@ -2026,6 +2192,17 @@ packages: '@babel/helper-plugin-utils': 7.17.12 '@babel/plugin-syntax-dynamic-import': 7.8.3_@babel+core@7.18.5 + /@babel/plugin-proposal-export-default-from/7.18.10_@babel+core@7.18.5: + resolution: {integrity: sha512-5H2N3R2aQFxkV4PIBUR/i7PUSwgTZjouJKzI8eKswfIjT0PhvzkPn0t0wIS5zn6maQuvtT0t1oHtMUz61LOuow==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.18.5 + '@babel/helper-plugin-utils': 7.18.9 + '@babel/plugin-syntax-export-default-from': 7.18.6_@babel+core@7.18.5 + dev: true + /@babel/plugin-proposal-export-namespace-from/7.17.12: resolution: {integrity: sha512-j7Ye5EWdwoXOpRmo5QmRyHPsDIe6+u70ZYZrd7uz+ebPYFKfRcLcNu3Ro0vOlJ5zuv8rU7xa+GttNiRzX56snQ==} engines: {node: '>=6.9.0'} @@ -2336,6 +2513,16 @@ packages: '@babel/core': 7.18.5 '@babel/helper-plugin-utils': 7.17.12 + /@babel/plugin-syntax-decorators/7.18.6_@babel+core@7.18.5: + resolution: {integrity: sha512-fqyLgjcxf/1yhyZ6A+yo1u9gJ7eleFQod2lkaUsF9DQ7sbbY3Ligym3L0+I2c0WmqNKDpoD9UTb1AKP3qRMOAQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.18.5 + '@babel/helper-plugin-utils': 7.18.9 + dev: true + /@babel/plugin-syntax-dynamic-import/7.8.3: resolution: {integrity: sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==} peerDependencies: @@ -2352,6 +2539,16 @@ packages: '@babel/core': 7.18.5 '@babel/helper-plugin-utils': 7.17.12 + /@babel/plugin-syntax-export-default-from/7.18.6_@babel+core@7.18.5: + resolution: {integrity: sha512-Kr//z3ujSVNx6E9z9ih5xXXMqK07VVTuqPmqGe6Mss/zW5XPeLZeSDZoP9ab/hT4wPKqAgjl2PnhPrcpk8Seew==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.18.5 + '@babel/helper-plugin-utils': 7.18.9 + dev: true + /@babel/plugin-syntax-export-namespace-from/7.8.3: resolution: {integrity: sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==} peerDependencies: @@ -2368,6 +2565,16 @@ packages: '@babel/core': 7.18.5 '@babel/helper-plugin-utils': 7.17.12 + /@babel/plugin-syntax-flow/7.18.6_@babel+core@7.18.5: + resolution: {integrity: sha512-LUbR+KNTBWCUAqRG9ex5Gnzu2IOkt8jRJbHHXFT9q+L9zm7M/QQbEqXyw1n1pohYvOyWC8CjeyjrSaIwiYjK7A==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.18.5 + '@babel/helper-plugin-utils': 7.18.9 + dev: true + /@babel/plugin-syntax-import-assertions/7.17.12: resolution: {integrity: sha512-n/loy2zkq9ZEM8tEOwON9wTQSTNDTDEz6NujPtJGLU7qObzT1N4c4YZZf8E6ATB2AjNQg/Ib2AIpO03EZaCehw==} engines: {node: '>=6.9.0'} @@ -2789,6 +2996,17 @@ packages: '@babel/helper-builder-binary-assignment-operator-visitor': 7.16.7 '@babel/helper-plugin-utils': 7.17.12 + /@babel/plugin-transform-flow-strip-types/7.18.9_@babel+core@7.18.5: + resolution: {integrity: sha512-+G6rp2zRuOAInY5wcggsx4+QVao1qPM0osC9fTUVlAV3zOrzTCnrMAFVnR6+a3T8wz1wFIH7KhYMcMB3u1n80A==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.18.5 + '@babel/helper-plugin-utils': 7.18.9 + '@babel/plugin-syntax-flow': 7.18.6_@babel+core@7.18.5 + dev: true + /@babel/plugin-transform-for-of/7.18.1: resolution: {integrity: sha512-+TTB5XwvJ5hZbO8xvl2H4XaMDOAK57zF4miuC9qQJgysPNEAZZ9Z69rdF5LJkozGdZrjBIUAIyKUWRMmebI7vg==} engines: {node: '>=6.9.0'} @@ -3109,6 +3327,26 @@ packages: '@babel/core': 7.18.5 '@babel/plugin-transform-react-jsx': 7.17.12_@babel+core@7.18.5 + /@babel/plugin-transform-react-jsx-self/7.18.6_@babel+core@7.18.5: + resolution: {integrity: sha512-A0LQGx4+4Jv7u/tWzoJF7alZwnBDQd6cGLh9P+Ttk4dpiL+J5p7NSNv/9tlEFFJDq3kjxOavWmbm6t0Gk+A3Ig==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.18.5 + '@babel/helper-plugin-utils': 7.18.9 + dev: true + + /@babel/plugin-transform-react-jsx-source/7.18.6_@babel+core@7.18.5: + resolution: {integrity: sha512-utZmlASneDfdaMh0m/WausbjUjEdGrQJz0vFK93d7wD3xf5wBtX219+q6IlCNZeguIcxS2f/CvLZrlLSvSHQXw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.18.5 + '@babel/helper-plugin-utils': 7.18.9 + dev: true + /@babel/plugin-transform-react-jsx/7.17.12_@babel+core@7.18.5: resolution: {integrity: sha512-Lcaw8bxd1DKht3thfD4A12dqo1X16he1Lm8rIv8sTwjAYNInRS1qHa9aJoqvzpscItXvftKDCfaEQzwoVyXpEQ==} engines: {node: '>=6.9.0'} @@ -3515,6 +3753,18 @@ packages: transitivePeerDependencies: - supports-color + /@babel/preset-flow/7.18.6_@babel+core@7.18.5: + resolution: {integrity: sha512-E7BDhL64W6OUqpuyHnSroLnqyRTcG6ZdOBl1OKI/QK/HJfplqK/S3sq1Cckx7oTodJ5yOXyfw7rEADJ6UjoQDQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.18.5 + '@babel/helper-plugin-utils': 7.18.9 + '@babel/helper-validator-option': 7.18.6 + '@babel/plugin-transform-flow-strip-types': 7.18.9_@babel+core@7.18.5 + dev: true + /@babel/preset-modules/0.1.5: resolution: {integrity: sha512-A57th6YRG7oR3cq/yt/Y84MvGgE0eJG2F1JLhKuyG+jFxEgrd/HAMJatiFtmOiZurz+0DkrvbheCLaV5f2JfjA==} peerDependencies: @@ -3566,6 +3816,20 @@ packages: transitivePeerDependencies: - supports-color + /@babel/register/7.18.9_@babel+core@7.18.5: + resolution: {integrity: sha512-ZlbnXDcNYHMR25ITwwNKT88JiaukkdVj/nG7r3wnuXkOTHc60Uy05PwMCPre0hSkY68E6zK3xz+vUJSP2jWmcw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.18.5 + clone-deep: 4.0.1 + find-cache-dir: 2.1.0 + make-dir: 2.1.0 + pirates: 4.0.5 + source-map-support: 0.5.21 + dev: true + /@babel/runtime-corejs3/7.18.3: resolution: {integrity: sha512-l4ddFwrc9rnR+EJsHsh+TJ4A35YqQz/UqcjtlX2ov53hlJYG5CxtQmNZxyajwDVmCxwy++rtvGU5HazCK4W41Q==} engines: {node: '>=6.9.0'} @@ -3588,6 +3852,33 @@ packages: '@babel/parser': 7.18.5 '@babel/types': 7.18.4 + /@babel/template/7.18.10: + resolution: {integrity: sha512-TI+rCtooWHr3QJ27kJxfjutghu44DLnasDMwpDqCXVTal9RLp3RSYNh4NdBrRP2cQAoG9A8juOQl6P6oZG4JxA==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/code-frame': 7.18.6 + '@babel/parser': 7.18.13 + '@babel/types': 7.18.13 + dev: true + + /@babel/traverse/7.18.13: + resolution: {integrity: sha512-N6kt9X1jRMLPxxxPYWi7tgvJRH/rtoU+dbKAPDM44RFHiMH8igdsaSBgFeskhSl/kLWLDUvIh1RXCrTmg0/zvA==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/code-frame': 7.18.6 + '@babel/generator': 7.18.13 + '@babel/helper-environment-visitor': 7.18.9 + '@babel/helper-function-name': 7.18.9 + '@babel/helper-hoist-variables': 7.18.6 + '@babel/helper-split-export-declaration': 7.18.6 + '@babel/parser': 7.18.13 + '@babel/types': 7.18.13 + debug: 4.3.4 + globals: 11.12.0 + transitivePeerDependencies: + - supports-color + dev: true + /@babel/traverse/7.18.5: resolution: {integrity: sha512-aKXj1KT66sBj0vVzk6rEeAO6Z9aiiQ68wfDgge3nHhA/my6xMM/7HGQUNumKZaoa2qUPQ5whJG9aAifsxUKfLA==} engines: {node: '>=6.9.0'} @@ -3623,6 +3914,15 @@ packages: - supports-color dev: false + /@babel/types/7.18.13: + resolution: {integrity: sha512-ePqfTihzW0W6XAU+aMw2ykilisStJfDnsejDCXRchCcMJ4O0+8DhPXf2YUbZ6wjBlsEmZwLK/sPweWtu8hcJYQ==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/helper-string-parser': 7.18.10 + '@babel/helper-validator-identifier': 7.18.6 + to-fast-properties: 2.0.0 + dev: true + /@babel/types/7.18.4: resolution: {integrity: sha512-ThN1mBcMq5pG/Vm2IcBmPPfyPXbd8S02rS+OBIDENdufvqC7Z/jHPCv9IcP01277aKtDI8g/2XysBN4hA8niiw==} engines: {node: '>=6.9.0'} @@ -4424,63 +4724,369 @@ packages: - supports-color dev: true - /@fauna-labs/fauna-schema-migrate/2.2.1_faunadb@4.6.0: - resolution: {integrity: sha512-UYefaEMYwAg810vYvbvgQ2TbYGvnA2ZITZiX/yLG6BBSQEfTfA47AfzYeF9+1SQ0NM1fpUdse6d5z2NDmeDiTw==} + /@expo/bunyan/4.0.0: + resolution: {integrity: sha512-Ydf4LidRB/EBI+YrB+cVLqIseiRfjUI/AeHBgjGMtq3GroraDu81OV7zqophRgupngoL3iS3JUMDMnxO7g39qA==} + engines: {'0': node >=0.10.0} + dependencies: + uuid: 8.3.2 + optionalDependencies: + mv: 2.1.1 + safe-json-stringify: 1.2.0 + dev: true + + /@expo/cli/0.2.11_ldu6zrsp2qyz4kn3c44jkm42fu: + resolution: {integrity: sha512-TIlylp3nghiEdlVliZRcBg8Yb++tnU92HinuQQZznVGFXFCoqJ210SPUJS1j3rxxltt8NhIJjL9OTO7PYRqnsQ==} hasBin: true - peerDependencies: - faunadb: ^4.4.1 dependencies: - '@babel/parser': 7.18.5 - '@types/deep-equal': 1.0.1 - '@types/fs-extra': 8.1.2 - '@types/js-beautify': 1.13.3 - '@types/lodash.clonedeep': 4.5.7 - '@types/node': 12.20.55 - '@types/prettier': 2.6.3 - '@types/shelljs': 0.8.11 - arr-rotate: 1.0.0 - boxen: 5.1.2 - chalk: 2.4.2 - cli-highlight: 2.1.11 - cli-spinners: 2.6.1 - commander: 2.20.3 - deep-equal: 2.0.5 - esbuild: 0.8.57 - faunadb: 4.6.0 - figures: 3.2.0 + '@babel/runtime': 7.18.3 + '@expo/code-signing-certificates': 0.0.2 + '@expo/config': 7.0.1 + '@expo/config-plugins': 5.0.1 + '@expo/dev-server': 0.1.119 + '@expo/devcert': 1.0.0 + '@expo/json-file': 8.2.36 + '@expo/metro-config': 0.3.22 + '@expo/osascript': 2.0.33 + '@expo/package-manager': 0.0.56 + '@expo/plist': 0.0.18 + '@expo/prebuild-config': 5.0.3_ldu6zrsp2qyz4kn3c44jkm42fu + '@expo/rudder-sdk-node': 1.1.1 + '@expo/spawn-async': 1.5.0 + '@expo/xcpretty': 4.2.2 + '@urql/core': 2.3.6_graphql@15.8.0 + '@urql/exchange-retry': 0.3.0_graphql@15.8.0 + accepts: 1.3.8 + arg: 4.1.0 + better-opn: 3.0.2 + bplist-parser: 0.3.2 + cacache: 15.3.0 + chalk: 4.1.2 + ci-info: 3.3.2 + debug: 4.3.4 + env-editor: 0.4.2 + form-data: 3.0.1 + freeport-async: 2.0.0 fs-extra: 8.1.0 - glob: 7.2.3 - js-beautify: 1.14.4 - kleur: 4.1.4 - lodash.clonedeep: 4.5.0 + getenv: 1.0.0 + graphql: 15.8.0 + graphql-tag: 2.12.6_graphql@15.8.0 + internal-ip: 4.3.0 + is-root: 2.1.0 + js-yaml: 3.14.1 + json-schema-deref-sync: 0.13.0 + md5-file: 3.2.3 + md5hex: 1.0.0 + minipass: 3.1.6 + node-fetch: 2.6.7 + node-forge: 1.3.1 + npm-package-arg: 7.0.0 + ora: 3.4.0 + pretty-bytes: 5.6.0 + progress: 2.0.3 prompts: 2.4.2 - shelljs: 0.8.5 - uuid: 8.3.2 + qrcode-terminal: 0.11.0 + requireg: 0.2.2 + resolve-from: 5.0.0 + semver: 6.3.0 + send: 0.18.0 + slugify: 1.6.5 + structured-headers: 0.4.1 + tar: 6.1.11 + tempy: 0.7.1 + terminal-link: 2.1.1 + text-table: 0.2.0 + url-join: 4.0.0 + uuid: 3.4.0 + wrap-ansi: 7.0.0 + transitivePeerDependencies: + - bluebird + - encoding + - expo-modules-autolinking + - supports-color dev: true - /@firebase/analytics-compat/0.1.12_ikt45rtbctnl5l4y6p3bca5464: - resolution: {integrity: sha512-mXR02p/4C9Xx07prhzr9nwocH6Xn3vpcO7DMGUMNB0qKdJADOaBow6LDlDY3u8ILhmHqNS8qPY3sKnhoTWzz8A==} - peerDependencies: - '@firebase/app-compat': 0.x + /@expo/code-signing-certificates/0.0.2: + resolution: {integrity: sha512-vnPHFjwOqxQ1VLztktY+fYCfwvLzjqpzKn09rchcQE7Sdf0wtW5fFtIZBEFOOY5wasp8tXSnp627zrAwazPHzg==} dependencies: - '@firebase/analytics': 0.7.11_@firebase+app@0.7.27 - '@firebase/analytics-types': 0.7.0 - '@firebase/app-compat': 0.1.28 - '@firebase/component': 0.5.16 - '@firebase/util': 1.6.2 - tslib: 2.4.0 + node-forge: 1.3.1 + nullthrows: 1.1.1 + dev: true + + /@expo/config-plugins/5.0.1: + resolution: {integrity: sha512-1OfnsOrfeSkB0VZfT01UjQ5Uq6p+yYbq8yNkj0e99K/6NLHpyvIxj+5tZIV0nQXgkOcqBIABL2uA7lwB8CkaBQ==} + dependencies: + '@expo/config-types': 46.0.2 + '@expo/json-file': 8.2.36 + '@expo/plist': 0.0.18 + '@expo/sdk-runtime-versions': 1.0.0 + '@react-native/normalize-color': 2.0.0 + chalk: 4.1.2 + debug: 4.3.4 + find-up: 5.0.0 + getenv: 1.0.0 + glob: 7.1.6 + resolve-from: 5.0.0 + semver: 7.3.7 + slash: 3.0.0 + xcode: 3.0.1 + xml2js: 0.4.23 transitivePeerDependencies: - - '@firebase/app' + - supports-color dev: true - /@firebase/analytics-types/0.7.0: - resolution: {integrity: sha512-DNE2Waiwy5+zZnCfintkDtBfaW6MjIG883474v6Z0K1XZIvl76cLND4iv0YUb48leyF+PJK1KO2XrgHb/KpmhQ==} + /@expo/config-types/46.0.2: + resolution: {integrity: sha512-PXkmOgNwRyBfgVT1HmFZhfh3Qm7WKKyV6mk3/5HJ/LzPh1t+Zs2JrWX8U2YncTLV1QzV7nV8tnkyvszzqnZEzQ==} dev: true - /@firebase/analytics/0.7.11_@firebase+app@0.7.27: - resolution: {integrity: sha512-rEGBmZdvD+biSAcMztrIftc/vS8Wgexau8Ok2aFqo3n3IkKDdBq2tdhh6tXsugBt755+q56HGQOHRWboaqG3LQ==} - peerDependencies: - '@firebase/app': 0.x + /@expo/config/7.0.1: + resolution: {integrity: sha512-4lu0wr45XXJ2MXiLAm2+fmOyy/jjqF3NuDm92fO6nuulRzEEvTP4w3vsibJ690rT81ohtvhpruKhkRs0wSjKWA==} + dependencies: + '@babel/code-frame': 7.10.4 + '@expo/config-plugins': 5.0.1 + '@expo/config-types': 46.0.2 + '@expo/json-file': 8.2.36 + getenv: 1.0.0 + glob: 7.1.6 + require-from-string: 2.0.2 + resolve-from: 5.0.0 + semver: 7.3.2 + slugify: 1.6.5 + sucrase: 3.25.0 + transitivePeerDependencies: + - supports-color + dev: true + + /@expo/dev-server/0.1.119: + resolution: {integrity: sha512-DcVnj4/YA+b+Ljsz2qffHHN5LbouXFKeE9ER0Yjq5vIb2moV1q3U6LezndFLCf42Uev7C2vSa8YCcP3WOpxuMw==} + dependencies: + '@expo/bunyan': 4.0.0 + '@expo/metro-config': 0.3.22 + '@expo/osascript': 2.0.33 + body-parser: 1.19.0 + chalk: 4.1.2 + connect: 3.7.0 + fs-extra: 9.0.0 + node-fetch: 2.6.7 + open: 8.4.0 + resolve-from: 5.0.0 + semver: 7.3.2 + serialize-error: 6.0.0 + temp-dir: 2.0.0 + transitivePeerDependencies: + - encoding + - supports-color + dev: true + + /@expo/devcert/1.0.0: + resolution: {integrity: sha512-cahGyQCmpZmHpn2U04NR9KwsOIZy7Rhsw8Fg4q+A6563lIJxbkrgPnxq/O3NQAh3ohEvOXOOnoFx0b4yycCkpQ==} + dependencies: + application-config-path: 0.1.0 + command-exists: 1.2.9 + debug: 3.2.7 + eol: 0.9.1 + get-port: 3.2.0 + glob: 7.2.3 + lodash: 4.17.21 + mkdirp: 0.5.6 + password-prompt: 1.1.2 + rimraf: 2.7.1 + sudo-prompt: 8.2.5 + tmp: 0.0.33 + tslib: 1.14.1 + transitivePeerDependencies: + - supports-color + dev: true + + /@expo/image-utils/0.3.20: + resolution: {integrity: sha512-NgF/80XENyCS+amwC0P6uk1fauEtUq7gijD19jvl2xknJaADq8M2dMCRHwWMVOXosr2v46f3Z++G/NjmyOVS7A==} + dependencies: + '@expo/spawn-async': 1.5.0 + chalk: 4.1.2 + fs-extra: 9.0.0 + getenv: 1.0.0 + jimp-compact: 0.16.1 + mime: 2.6.0 + node-fetch: 2.6.7 + parse-png: 2.1.0 + resolve-from: 5.0.0 + semver: 7.3.2 + tempy: 0.3.0 + transitivePeerDependencies: + - encoding + dev: true + + /@expo/json-file/8.2.36: + resolution: {integrity: sha512-tOZfTiIFA5KmMpdW9KF7bc6CFiGjb0xnbieJhTGlHrLL+ps2G0OkqmuZ3pFEXBOMnJYUVpnSy++52LFxvpa5ZQ==} + dependencies: + '@babel/code-frame': 7.10.4 + json5: 1.0.1 + write-file-atomic: 2.4.3 + dev: true + + /@expo/metro-config/0.3.22: + resolution: {integrity: sha512-R81sLbaeUBjN8IXcxiVx7GcpSj8z7szILl1b5yJDb38WdIFwxhrseA5wXaTT1yMhI+59w6n99T2qtFV2yD5qYA==} + dependencies: + '@expo/config': 7.0.1 + '@expo/json-file': 8.2.36 + chalk: 4.1.2 + debug: 4.3.4 + find-yarn-workspace-root: 2.0.0 + getenv: 1.0.0 + resolve-from: 5.0.0 + sucrase: 3.25.0 + transitivePeerDependencies: + - supports-color + dev: true + + /@expo/osascript/2.0.33: + resolution: {integrity: sha512-FQinlwHrTlJbntp8a7NAlCKedVXe06Va/0DSLXRO8lZVtgbEMrYYSUZWQNcOlNtc58c2elNph6z9dMOYwSo3JQ==} + engines: {node: '>=12'} + dependencies: + '@expo/spawn-async': 1.5.0 + exec-async: 2.2.0 + dev: true + + /@expo/package-manager/0.0.56: + resolution: {integrity: sha512-PGk34uz4XDyhoNIlPh2D+BDsiXYuW2jXavTiax8d32uvHlRO6FN0cAsqlWD6fx3H2hRn8cU/leTuc4M7pYovCQ==} + dependencies: + '@expo/json-file': 8.2.36 + '@expo/spawn-async': 1.5.0 + ansi-regex: 5.0.1 + chalk: 4.1.2 + find-up: 5.0.0 + find-yarn-workspace-root: 2.0.0 + npm-package-arg: 7.0.0 + rimraf: 3.0.2 + split: 1.0.1 + sudo-prompt: 9.1.1 + dev: true + + /@expo/plist/0.0.18: + resolution: {integrity: sha512-+48gRqUiz65R21CZ/IXa7RNBXgAI/uPSdvJqoN9x1hfL44DNbUoWHgHiEXTx7XelcATpDwNTz6sHLfy0iNqf+w==} + dependencies: + '@xmldom/xmldom': 0.7.5 + base64-js: 1.5.1 + xmlbuilder: 14.0.0 + dev: true + + /@expo/prebuild-config/5.0.3_ldu6zrsp2qyz4kn3c44jkm42fu: + resolution: {integrity: sha512-G4j1H3WFjRaiQ+FgFNULrnIm7RsQyjc4xp6lLTP2ydBv79wO3x8wAdeZvaZh7eOkfu9BESpQzACT1uuJTag5jg==} + peerDependencies: + expo-modules-autolinking: '>=0.8.1' + dependencies: + '@expo/config': 7.0.1 + '@expo/config-plugins': 5.0.1 + '@expo/config-types': 46.0.2 + '@expo/image-utils': 0.3.20 + '@expo/json-file': 8.2.36 + debug: 4.3.4 + expo-modules-autolinking: 0.10.3 + fs-extra: 9.1.0 + resolve-from: 5.0.0 + semver: 7.3.2 + xml2js: 0.4.23 + transitivePeerDependencies: + - encoding + - supports-color + dev: true + + /@expo/rudder-sdk-node/1.1.1: + resolution: {integrity: sha512-uy/hS/awclDJ1S88w9UGpc6Nm9XnNUjzOAAib1A3PVAnGQIwebg8DpFqOthFBTlZxeuV/BKbZ5jmTbtNZkp1WQ==} + engines: {node: '>=12'} + dependencies: + '@expo/bunyan': 4.0.0 + '@segment/loosely-validate-event': 2.0.0 + fetch-retry: 4.1.1 + md5: 2.3.0 + node-fetch: 2.6.7 + remove-trailing-slash: 0.1.1 + uuid: 8.3.2 + transitivePeerDependencies: + - encoding + dev: true + + /@expo/sdk-runtime-versions/1.0.0: + resolution: {integrity: sha512-Doz2bfiPndXYFPMRwPyGa1k5QaKDVpY806UJj570epIiMzWaYyCtobasyfC++qfIXVb5Ocy7r3tP9d62hAQ7IQ==} + dev: true + + /@expo/spawn-async/1.5.0: + resolution: {integrity: sha512-LB7jWkqrHo+5fJHNrLAFdimuSXQ2MQ4lA7SQW5bf/HbsXuV2VrT/jN/M8f/KoWt0uJMGN4k/j7Opx4AvOOxSew==} + engines: {node: '>=4'} + dependencies: + cross-spawn: 6.0.5 + dev: true + + /@expo/vector-icons/13.0.0: + resolution: {integrity: sha512-TI+l71+5aSKnShYclFa14Kum+hQMZ86b95SH6tQUG3qZEmLTarvWpKwqtTwQKqvlJSJrpFiSFu3eCuZokY6zWA==} + dev: true + + /@expo/xcpretty/4.2.2: + resolution: {integrity: sha512-Lke/geldJqUV0Dfxg5/QIOugOzdqZ/rQ9yHKSgGbjZtG1uiSqWyFwWvXmrdd3/sIdX33eykGvIcf+OrvvcXVUw==} + hasBin: true + dependencies: + '@babel/code-frame': 7.10.4 + chalk: 4.1.2 + find-up: 5.0.0 + js-yaml: 4.1.0 + dev: true + + /@fauna-labs/fauna-schema-migrate/2.2.1_faunadb@4.6.0: + resolution: {integrity: sha512-UYefaEMYwAg810vYvbvgQ2TbYGvnA2ZITZiX/yLG6BBSQEfTfA47AfzYeF9+1SQ0NM1fpUdse6d5z2NDmeDiTw==} + hasBin: true + peerDependencies: + faunadb: ^4.4.1 + dependencies: + '@babel/parser': 7.18.5 + '@types/deep-equal': 1.0.1 + '@types/fs-extra': 8.1.2 + '@types/js-beautify': 1.13.3 + '@types/lodash.clonedeep': 4.5.7 + '@types/node': 12.20.55 + '@types/prettier': 2.6.3 + '@types/shelljs': 0.8.11 + arr-rotate: 1.0.0 + boxen: 5.1.2 + chalk: 2.4.2 + cli-highlight: 2.1.11 + cli-spinners: 2.6.1 + commander: 2.20.3 + deep-equal: 2.0.5 + esbuild: 0.8.57 + faunadb: 4.6.0 + figures: 3.2.0 + fs-extra: 8.1.0 + glob: 7.2.3 + js-beautify: 1.14.4 + kleur: 4.1.4 + lodash.clonedeep: 4.5.0 + prompts: 2.4.2 + shelljs: 0.8.5 + uuid: 8.3.2 + dev: true + + /@firebase/analytics-compat/0.1.12_ikt45rtbctnl5l4y6p3bca5464: + resolution: {integrity: sha512-mXR02p/4C9Xx07prhzr9nwocH6Xn3vpcO7DMGUMNB0qKdJADOaBow6LDlDY3u8ILhmHqNS8qPY3sKnhoTWzz8A==} + peerDependencies: + '@firebase/app-compat': 0.x + dependencies: + '@firebase/analytics': 0.7.11_@firebase+app@0.7.27 + '@firebase/analytics-types': 0.7.0 + '@firebase/app-compat': 0.1.28 + '@firebase/component': 0.5.16 + '@firebase/util': 1.6.2 + tslib: 2.4.0 + transitivePeerDependencies: + - '@firebase/app' + dev: true + + /@firebase/analytics-types/0.7.0: + resolution: {integrity: sha512-DNE2Waiwy5+zZnCfintkDtBfaW6MjIG883474v6Z0K1XZIvl76cLND4iv0YUb48leyF+PJK1KO2XrgHb/KpmhQ==} + dev: true + + /@firebase/analytics/0.7.11_@firebase+app@0.7.27: + resolution: {integrity: sha512-rEGBmZdvD+biSAcMztrIftc/vS8Wgexau8Ok2aFqo3n3IkKDdBq2tdhh6tXsugBt755+q56HGQOHRWboaqG3LQ==} + peerDependencies: + '@firebase/app': 0.x dependencies: '@firebase/app': 0.7.27 '@firebase/component': 0.5.16 @@ -4912,7 +5518,6 @@ packages: /@gar/promisify/1.1.3: resolution: {integrity: sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==} dev: true - optional: true /@google-cloud/paginator/3.0.7: resolution: {integrity: sha512-jJNutk0arIQhmpUUQJPJErsojqo834KcyB6X7a1mxuic8i1tKXxde8E69IZxNZawRIlZdIK2QY4WALvlK5MzYQ==} @@ -4961,6 +5566,14 @@ packages: - supports-color dev: true + /@graphql-typed-document-node/core/3.1.1_graphql@15.8.0: + resolution: {integrity: sha512-NQ17ii0rK1b34VZonlmT2QMJFI70m0TRwbknO/ihlbatXyaktDhN/98vBiUU6kNBPljqGqyIrl2T4nY2RpFANg==} + peerDependencies: + graphql: ^0.8.0 || ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0 + dependencies: + graphql: 15.8.0 + dev: true + /@grpc/grpc-js/1.6.7: resolution: {integrity: sha512-eBM03pu9hd3VqDQG+kHahiG1x80RGkkqqRb1Pchcwqej/KkAH95gAvKs6laqaHCycYaPK+TKuNQnOz9UXYA8qw==} engines: {node: ^8.13.0 || >=10.10.0} @@ -5470,6 +6083,15 @@ packages: '@jridgewell/sourcemap-codec': 1.4.13 '@jridgewell/trace-mapping': 0.3.13 + /@jridgewell/gen-mapping/0.3.2: + resolution: {integrity: sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==} + engines: {node: '>=6.0.0'} + dependencies: + '@jridgewell/set-array': 1.1.1 + '@jridgewell/sourcemap-codec': 1.4.13 + '@jridgewell/trace-mapping': 0.3.13 + dev: true + /@jridgewell/resolve-uri/3.0.7: resolution: {integrity: sha512-8cXDaBBHOr2pQ7j77Y6Vp5VDT2sIqWyWQ56TjEq4ih/a4iST3dItRe8Q9fp0rrIl9DoKhWQtUQz/YpOxLkXbNA==} engines: {node: '>=6.0.0'} @@ -5838,7 +6460,6 @@ packages: '@gar/promisify': 1.1.3 semver: 7.3.7 dev: true - optional: true /@npmcli/fs/2.1.0: resolution: {integrity: sha512-DmfBvNXGaetMxj9LTp8NAN9vEidXURrf5ZTslQzEAi/6GbW+4yjaLFQc6Tue5cpZ9Frlk4OBo/Snf1Bh/S7qTQ==} @@ -5856,7 +6477,6 @@ packages: mkdirp: 1.0.4 rimraf: 3.0.2 dev: true - optional: true /@npmcli/move-file/2.0.0: resolution: {integrity: sha512-UR6D5f4KEGWJV6BGPH3Qb2EtgH+t+1XQ1Tt85c7qicN6cezzuHPdZwwAxqZr4JLtnQu0LZsTza/5gmNmSl8XLg==} @@ -5952,6 +6572,246 @@ packages: resolution: {integrity: sha512-Vvn3zZrhQZkkBE8LSuW3em98c0FwgO4nxzv6OdSxPKJIEKY2bGbHn+mhGIPerzI4twdxaP8/0+06HBpwf345Lw==} dev: true + /@react-native-community/cli-clean/8.0.4: + resolution: {integrity: sha512-IwS1M1NHg6+qL8PThZYMSIMYbZ6Zbx+lIck9PLBskbosFo24M3lCOflOl++Bggjakp6mR+sRXxLMexid/GeOsQ==} + dependencies: + '@react-native-community/cli-tools': 8.0.4 + chalk: 4.1.2 + execa: 1.0.0 + prompts: 2.4.2 + transitivePeerDependencies: + - encoding + dev: true + + /@react-native-community/cli-config/8.0.6: + resolution: {integrity: sha512-mjVpVvdh8AviiO8xtqeX+BkjqE//NMDnISwsLWSJUfNCwTAPmdR8PGbhgP5O4hWHyJ3WkepTopl0ya7Tfi3ifw==} + dependencies: + '@react-native-community/cli-tools': 8.0.4 + cosmiconfig: 5.2.1 + deepmerge: 3.3.0 + glob: 7.2.3 + joi: 17.6.0 + transitivePeerDependencies: + - encoding + dev: true + + /@react-native-community/cli-debugger-ui/8.0.0: + resolution: {integrity: sha512-u2jq06GZwZ9sRERzd9FIgpW6yv4YOW4zz7Ym/B8eSzviLmy3yI/8mxJtvlGW+J8lBsfMcQoqJpqI6Rl1nZy9yQ==} + dependencies: + serve-static: 1.15.0 + transitivePeerDependencies: + - supports-color + dev: true + + /@react-native-community/cli-doctor/8.0.6: + resolution: {integrity: sha512-ZQqyT9mJMVeFEVIwj8rbDYGCA2xXjJfsQjWk2iTRZ1CFHfhPSUuUiG8r6mJmTinAP9t+wYcbbIYzNgdSUKnDMw==} + dependencies: + '@react-native-community/cli-config': 8.0.6 + '@react-native-community/cli-platform-ios': 8.0.6 + '@react-native-community/cli-tools': 8.0.4 + chalk: 4.1.2 + command-exists: 1.2.9 + envinfo: 7.8.1 + execa: 1.0.0 + hermes-profile-transformer: 0.0.6 + ip: 1.1.8 + node-stream-zip: 1.15.0 + ora: 5.4.1 + prompts: 2.4.2 + semver: 6.3.0 + strip-ansi: 5.2.0 + sudo-prompt: 9.2.1 + wcwidth: 1.0.1 + transitivePeerDependencies: + - encoding + dev: true + + /@react-native-community/cli-hermes/8.0.5: + resolution: {integrity: sha512-Zm0wM6SfgYAEX1kfJ1QBvTayabvh79GzmjHyuSnEROVNPbl4PeCG4WFbwy489tGwOP9Qx9fMT5tRIFCD8bp6/g==} + dependencies: + '@react-native-community/cli-platform-android': 8.0.5 + '@react-native-community/cli-tools': 8.0.4 + chalk: 4.1.2 + hermes-profile-transformer: 0.0.6 + ip: 1.1.8 + transitivePeerDependencies: + - encoding + dev: true + + /@react-native-community/cli-platform-android/8.0.5: + resolution: {integrity: sha512-z1YNE4T1lG5o9acoQR1GBvf7mq6Tzayqo/za5sHVSOJAC9SZOuVN/gg/nkBa9a8n5U7qOMFXfwhTMNqA474gXA==} + dependencies: + '@react-native-community/cli-tools': 8.0.4 + chalk: 4.1.2 + execa: 1.0.0 + fs-extra: 8.1.0 + glob: 7.2.3 + jetifier: 1.6.8 + lodash: 4.17.21 + logkitty: 0.7.1 + slash: 3.0.0 + transitivePeerDependencies: + - encoding + dev: true + + /@react-native-community/cli-platform-ios/8.0.6: + resolution: {integrity: sha512-CMR6mu/LVx6JVfQRDL9uULsMirJT633bODn+IrYmrwSz250pnhON16We8eLPzxOZHyDjm7JPuSgHG3a/BPiRuQ==} + dependencies: + '@react-native-community/cli-tools': 8.0.4 + chalk: 4.1.2 + execa: 1.0.0 + glob: 7.2.3 + js-yaml: 3.14.1 + lodash: 4.17.21 + ora: 5.4.1 + plist: 3.0.6 + transitivePeerDependencies: + - encoding + dev: true + + /@react-native-community/cli-plugin-metro/8.0.4: + resolution: {integrity: sha512-UWzY1eMcEr/6262R2+d0Is5M3L/7Y/xXSDIFMoc5Rv5Wucl3hJM/TxHXmByvHpuJf6fJAfqOskyt4bZCvbI+wQ==} + dependencies: + '@react-native-community/cli-server-api': 8.0.4 + '@react-native-community/cli-tools': 8.0.4 + chalk: 4.1.2 + metro: 0.70.3 + metro-config: 0.70.3 + metro-core: 0.70.3 + metro-react-native-babel-transformer: 0.70.3 + metro-resolver: 0.70.3 + metro-runtime: 0.70.3 + readline: 1.3.0 + transitivePeerDependencies: + - bufferutil + - encoding + - supports-color + - utf-8-validate + dev: true + + /@react-native-community/cli-server-api/8.0.4: + resolution: {integrity: sha512-Orr14njx1E70CVrUA8bFdl+mrnbuXUjf1Rhhm0RxUadFpvkHuOi5dh8Bryj2MKtf8eZrpEwZ7tuQPhJEULW16A==} + dependencies: + '@react-native-community/cli-debugger-ui': 8.0.0 + '@react-native-community/cli-tools': 8.0.4 + compression: 1.7.4 + connect: 3.7.0 + errorhandler: 1.5.1 + nocache: 3.0.4 + pretty-format: 26.6.2 + serve-static: 1.15.0 + ws: 7.5.8 + transitivePeerDependencies: + - bufferutil + - encoding + - supports-color + - utf-8-validate + dev: true + + /@react-native-community/cli-tools/8.0.4: + resolution: {integrity: sha512-ePN9lGxh6LRFiotyddEkSmuqpQhnq2iw9oiXYr4EFWpIEy0yCigTuSTiDF68+c8M9B+7bTwkRpz/rMPC4ViO5Q==} + dependencies: + appdirsjs: 1.2.7 + chalk: 4.1.2 + find-up: 5.0.0 + lodash: 4.17.21 + mime: 2.6.0 + node-fetch: 2.6.7 + open: 6.4.0 + ora: 5.4.1 + semver: 6.3.0 + shell-quote: 1.7.3 + transitivePeerDependencies: + - encoding + dev: true + + /@react-native-community/cli-types/8.0.0: + resolution: {integrity: sha512-1lZS1PEvMlFaN3Se1ksyoFWzMjk+YfKi490GgsqKJln9gvFm8tqVPdnXttI5Uf2DQf3BMse8Bk8dNH4oV6Ewow==} + dependencies: + joi: 17.6.0 + dev: true + + /@react-native-community/cli/8.0.6_react-native@0.69.4: + resolution: {integrity: sha512-E36hU/if3quQCfJHGWVkpsCnwtByRCwORuAX0r6yr1ebKktpKeEO49zY9PAu/Z1gfyxCtgluXY0HfRxjKRFXTg==} + engines: {node: '>=12'} + hasBin: true + peerDependencies: + react-native: '*' + dependencies: + '@react-native-community/cli-clean': 8.0.4 + '@react-native-community/cli-config': 8.0.6 + '@react-native-community/cli-debugger-ui': 8.0.0 + '@react-native-community/cli-doctor': 8.0.6 + '@react-native-community/cli-hermes': 8.0.5 + '@react-native-community/cli-plugin-metro': 8.0.4 + '@react-native-community/cli-server-api': 8.0.4 + '@react-native-community/cli-tools': 8.0.4 + '@react-native-community/cli-types': 8.0.0 + chalk: 4.1.2 + commander: 2.20.3 + execa: 1.0.0 + find-up: 4.1.0 + fs-extra: 8.1.0 + graceful-fs: 4.2.10 + leven: 3.1.0 + lodash: 4.17.21 + minimist: 1.2.6 + prompts: 2.4.2 + react-native: 0.69.4_27wpj6te4dzakyna6ilyljc3vq + semver: 6.3.0 + transitivePeerDependencies: + - bufferutil + - encoding + - supports-color + - utf-8-validate + dev: true + + /@react-native/assets/1.0.0: + resolution: {integrity: sha512-KrwSpS1tKI70wuKl68DwJZYEvXktDHdZMG0k2AXD/rJVSlB23/X2CB2cutVR0HwNMJIal9HOUOBB2rVfa6UGtQ==} + dev: true + + /@react-native/normalize-color/2.0.0: + resolution: {integrity: sha512-Wip/xsc5lw8vsBlmY2MO/gFLp3MvuZ2baBZjDeTjjndMgM0h5sxz7AZR62RDPGgstp8Np7JzjvVqVT7tpFZqsw==} + dev: true + + /@react-native/polyfills/2.0.0: + resolution: {integrity: sha512-K0aGNn1TjalKj+65D7ycc1//H9roAQ51GJVk5ZJQFb2teECGmzd86bYDC0aYdbRf7gtovescq4Zt6FR0tgXiHQ==} + dev: true + + /@react-navigation/core/6.3.0_react@18.2.0: + resolution: {integrity: sha512-nyvReUB00SAfHdL/AA+GksdaTuiC31LxHp+f1kxuPNkcGR7zSMVT+Wrq4OHe+VPFfCxJxoseQ2ElsvE+4IYFoQ==} + peerDependencies: + react: '*' + dependencies: + '@react-navigation/routers': 6.1.2 + escape-string-regexp: 4.0.0 + nanoid: 3.3.4 + query-string: 7.1.1 + react: 18.2.0 + react-is: 16.13.1 + use-latest-callback: 0.1.5 + dev: true + + /@react-navigation/native/6.0.12_5ifwsx3kh4yeq2aw7ur5frzkxu: + resolution: {integrity: sha512-23n0pDsFvFxPIkB4zrAip05uUj6Jr+5dinqrDdEU26cPoki3/iJlirvbSIs/64Om/OuTyUjFdB/zI75ng+m5Pg==} + peerDependencies: + react: '*' + react-native: '*' + dependencies: + '@react-navigation/core': 6.3.0_react@18.2.0 + escape-string-regexp: 4.0.0 + fast-deep-equal: 3.1.3 + nanoid: 3.3.4 + react: 18.2.0 + react-native: 0.69.4_27wpj6te4dzakyna6ilyljc3vq + dev: true + + /@react-navigation/routers/6.1.2: + resolution: {integrity: sha512-uJ+N7dyrZjA2L3ykyH0OyEiLNhzxDSfUqgOS4LmrLWlgly/oYFfPTqsxCD8zP0r3hv7ayLIPQPC1u1ubSO+42A==} + dependencies: + nanoid: 3.3.4 + dev: true + /@sapphire/docusaurus-plugin-npm2yarn2pnpm/1.1.3: resolution: {integrity: sha512-wbTVwK3xGSD4Zu1gxHH86/XJ0HzI+jp8cB1g8Lh9+pqWN7uv3OnNwoCo/qGUBl6in5OvTVocq/lyq7Mwcrv+Eg==} engines: {node: '>=v16.6.0', npm: '>=7.0.0'} @@ -5960,6 +6820,13 @@ packages: unist-util-visit: 2.0.3 dev: false + /@segment/loosely-validate-event/2.0.0: + resolution: {integrity: sha512-ZMCSfztDBqwotkl848ODgVcAmN4OItEWDCkshcKz0/W6gGSQayuuCtWV/MlodFivAZD793d6UgANd6wCXUfrIw==} + dependencies: + component-type: 1.2.1 + join-component: 1.1.0 + dev: true + /@shelf/jest-dynamodb/2.2.4_qsruu6yolbxs4rh6ixjhkibvwu: resolution: {integrity: sha512-OAnkP5sPcIoqL+q/tpp54psuK1gssm+nZLOHRy0S1eyAZGmuqiYAUzyAvmH5AhyqvDPSEHFkIkfbqlp1+KpHgw==} engines: {node: '>=14'} @@ -6861,7 +7728,6 @@ packages: /@types/qs/6.9.7: resolution: {integrity: sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==} - dev: false /@types/range-parser/1.2.4: resolution: {integrity: sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==} @@ -7267,6 +8133,26 @@ packages: - encoding dev: true + /@urql/core/2.3.6_graphql@15.8.0: + resolution: {integrity: sha512-PUxhtBh7/8167HJK6WqBv6Z0piuiaZHQGYbhwpNL9aIQmLROPEdaUYkY4wh45wPQXcTpnd11l0q3Pw+TI11pdw==} + peerDependencies: + graphql: ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0 + dependencies: + '@graphql-typed-document-node/core': 3.1.1_graphql@15.8.0 + graphql: 15.8.0 + wonka: 4.0.15 + dev: true + + /@urql/exchange-retry/0.3.0_graphql@15.8.0: + resolution: {integrity: sha512-hHqer2mcdVC0eYnVNbWyi28AlGOPb2vjH3lP3/Bc8Lc8BjhMsDwFMm7WhoP5C1+cfbr/QJ6Er3H/L08wznXxfg==} + peerDependencies: + graphql: ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 + dependencies: + '@urql/core': 2.3.6_graphql@15.8.0 + graphql: 15.8.0 + wonka: 4.0.15 + dev: true + /@webassemblyjs/ast/1.11.1: resolution: {integrity: sha512-ukBh14qFLjxTQNTXocdyksN5QdM28S1CxHt2rdskFyL+xFV7VremuBLVbmCePj+URalXBENx/9Lm7lnhihtCSw==} dependencies: @@ -7392,6 +8278,10 @@ packages: event-target-shim: 5.0.1 dev: true + /absolute-path/0.0.0: + resolution: {integrity: sha512-HQiug4c+/s3WOvEnDRxXVmNtSG5s2gJM9r19BTcqjp7BWcE48PB+Y2G6jE65kqI0LpsQeMZygt/b60Gi4KxGyA==} + dev: true + /abstract-leveldown/2.7.2: resolution: {integrity: sha512-+OVvxH2rHVEhWLdbudP6p0+dNMXu8JA1CbhP19T8paTYAcX7oJ4OVjT+ZUVpv7mITxXHqDMej+GdqXBmXkw09w==} dependencies: @@ -7586,6 +8476,10 @@ packages: '@algolia/transporter': 4.13.1 dev: false + /anser/1.4.10: + resolution: {integrity: sha512-hCv9AqTQ8ycjpSd3upOJd7vFwW1JaoYQ7tpham03GJ1ca8/65rqn0RpaWpItOAd6ylW9wAw6luXYPJIyPFVOww==} + dev: true + /ansi-align/3.0.1: resolution: {integrity: sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==} dependencies: @@ -7608,6 +8502,14 @@ packages: type-fest: 0.21.3 dev: true + /ansi-fragments/0.2.1: + resolution: {integrity: sha512-DykbNHxuXQwUDRv5ibc2b0x7uw7wmwOGLBUd5RmaQ5z8Lhx19vwvKV+FAsM5rEA6dEcHxX+/Ad5s9eF2k2bB+w==} + dependencies: + colorette: 1.4.0 + slice-ansi: 2.1.0 + strip-ansi: 5.2.0 + dev: true + /ansi-html-community/0.0.8: resolution: {integrity: sha512-1APHAyr3+PCamwNw3bXCPp4HFLONZt/yIH0sZp0/469KWNTEy+qN5jQ3GVX6DMZ1UXAi34yVwtTeaG/HpBuuzw==} engines: {'0': node >= 0.8.0} @@ -7619,6 +8521,11 @@ packages: engines: {node: '>=0.10.0'} dev: true + /ansi-regex/4.1.1: + resolution: {integrity: sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==} + engines: {node: '>=6'} + dev: true + /ansi-regex/5.0.1: resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} engines: {node: '>=8'} @@ -7681,6 +8588,14 @@ packages: engines: {node: '>= 6.0.0'} dev: true + /appdirsjs/1.2.7: + resolution: {integrity: sha512-Quji6+8kLBC3NnBeo14nPDq0+2jUs5s3/xEye+udFHumHhRk4M7aAMXp/PBJqkKYGuuyR9M/6Dq7d2AViiGmhw==} + dev: true + + /application-config-path/0.1.0: + resolution: {integrity: sha512-lljTpVvFteShrHuKRvweZfa9o/Nc34Y8r5/1Lqh/yyKaspRT2J3fkEiSSk1YLG8ZSVyU7yHysRy9zcDDS2aH1Q==} + dev: true + /aproba/2.0.0: resolution: {integrity: sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==} dev: true @@ -7731,6 +8646,10 @@ packages: dev: true optional: true + /arg/4.1.0: + resolution: {integrity: sha512-ZWc51jO3qegGkVh8Hwpv636EkbesNV5ZNQPCtRa+0qytRYPEs9IYT9qITY9buezqUH5uqyzlWLcufrzU2rffdg==} + dev: true + /arg/5.0.2: resolution: {integrity: sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==} dev: false @@ -7859,7 +8778,6 @@ packages: /asap/2.0.6: resolution: {integrity: sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==} - dev: false /asn1/0.2.6: resolution: {integrity: sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==} @@ -7884,6 +8802,18 @@ packages: tslib: 2.4.0 dev: true + /ast-types/0.14.2: + resolution: {integrity: sha512-O0yuUDnZeQDL+ncNGlJ78BiO4jnYI3bvMsD5prT0/nsgijG/LpNBIr63gTjVTNsiGkgQhiyCShTgxt8oXOrklA==} + engines: {node: '>=4'} + dependencies: + tslib: 2.4.0 + dev: true + + /astral-regex/1.0.0: + resolution: {integrity: sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==} + engines: {node: '>=4'} + dev: true + /astral-regex/2.0.0: resolution: {integrity: sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==} engines: {node: '>=8'} @@ -7893,6 +8823,10 @@ packages: resolution: {integrity: sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ==} dev: true + /async-limiter/1.0.1: + resolution: {integrity: sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==} + dev: true + /async/2.6.4: resolution: {integrity: sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==} dependencies: @@ -7910,7 +8844,6 @@ packages: /at-least-node/1.0.0: resolution: {integrity: sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==} engines: {node: '>= 4.0.0'} - dev: false /atob/2.1.2: resolution: {integrity: sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==} @@ -7962,6 +8895,14 @@ packages: - debug dev: false + /babel-core/7.0.0-bridge.0_@babel+core@7.18.5: + resolution: {integrity: sha512-poPX9mZH/5CSanm50Q+1toVci6pv5KSRv/5TWCwtzQS5XEwn40BcCrgIeMFWP9CKKIniKXNxoIOnOq4VVlGXhg==} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.18.5 + dev: true + /babel-jest/27.5.1_@babel+core@7.18.5: resolution: {integrity: sha512-cdQ5dXjGRd0IBRATiQ4mZGlGlRE8kJpjPOixdNRdT+m3UcNqmYWN6rK6nvtXYfY3D76cb8s/O1Ss8ea24PIwcg==} engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} @@ -8074,6 +9015,17 @@ packages: babel-plugin-syntax-jsx: 6.18.0 dev: true + /babel-plugin-module-resolver/4.1.0: + resolution: {integrity: sha512-MlX10UDheRr3lb3P0WcaIdtCSRlxdQsB1sBqL7W0raF070bGl1HQQq5K3T2vf2XAYie+ww+5AKC/WrkjRO2knA==} + engines: {node: '>= 8.0.0'} + dependencies: + find-babel-config: 1.2.0 + glob: 7.2.3 + pkg-up: 3.1.0 + reselect: 4.1.6 + resolve: 1.22.1 + dev: true + /babel-plugin-polyfill-corejs2/0.3.1: resolution: {integrity: sha512-v7/T6EQcNfVLfcN2X8Lulb7DjprieyLWJK/zOWH5DUYcAgex9sP3h25Q+DLsX9TloXe3y1O8l2q2Jv9q8UVB9w==} peerDependencies: @@ -8140,6 +9092,10 @@ packages: transitivePeerDependencies: - supports-color + /babel-plugin-react-native-web/0.18.8: + resolution: {integrity: sha512-4UwlBe9ZiWNMes8nK+qRn9ql6nZuSKcgu87YuFmnU9maEYIP1megcRcjbA5mAViaV3ct6PTyntTVf8thathf6Q==} + dev: true + /babel-plugin-styled-components/2.0.7_styled-components@5.3.3: resolution: {integrity: sha512-i7YhvPgVqRKfoQ66toiZ06jPNA3p6ierpfUuEWxNF+fV27Uv5gxBkf8KZLHUCc1nFA9j6+80pYoIpqCeyW3/bA==} peerDependencies: @@ -8156,6 +9112,10 @@ packages: /babel-plugin-syntax-jsx/6.18.0: resolution: {integrity: sha512-qrPaCSo9c8RHNRHIotaufGbuOBN8rtdC4QrrFFc43vyWCCz7Kl7GL1PGaXtMGQZUXrkCjNEgxDfmAuAabr/rlw==} + /babel-plugin-syntax-trailing-function-commas/7.0.0-beta.0: + resolution: {integrity: sha512-Xj9XuRuz3nTSbaTXWv3itLOcxyF4oPD8douBBmj7U9BBC6nEBYfyOJYQMf/8PJAFotC62UY5dFfIGEPr7WswzQ==} + dev: true + /babel-preset-current-node-syntax/1.0.1_@babel+core@7.18.5: resolution: {integrity: sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ==} peerDependencies: @@ -8176,6 +9136,57 @@ packages: '@babel/plugin-syntax-top-level-await': 7.14.5_@babel+core@7.18.5 dev: true + /babel-preset-expo/9.2.0_@babel+core@7.18.5: + resolution: {integrity: sha512-aM2htiNx0H49H+MWCp9+cKVSdcdNSn0tbE5Dln/GO1xna4ZlnA30clbfClcYJFUcZtW90IsYeZwQ/hj8zyWhNA==} + dependencies: + '@babel/plugin-proposal-decorators': 7.18.10_@babel+core@7.18.5 + '@babel/plugin-transform-react-jsx': 7.17.12_@babel+core@7.18.5 + '@babel/preset-env': 7.18.2_@babel+core@7.18.5 + babel-plugin-module-resolver: 4.1.0 + babel-plugin-react-native-web: 0.18.8 + metro-react-native-babel-preset: 0.70.3 + transitivePeerDependencies: + - '@babel/core' + - supports-color + dev: true + + /babel-preset-fbjs/3.4.0_@babel+core@7.18.5: + resolution: {integrity: sha512-9ywCsCvo1ojrw0b+XYk7aFvTH6D9064t0RIL1rtMf3nsa02Xw41MS7sZw216Im35xj/UY0PDBQsa1brUDDF1Ow==} + peerDependencies: + '@babel/core': ^7.0.0 + dependencies: + '@babel/core': 7.18.5 + '@babel/plugin-proposal-class-properties': 7.17.12_@babel+core@7.18.5 + '@babel/plugin-proposal-object-rest-spread': 7.18.0_@babel+core@7.18.5 + '@babel/plugin-syntax-class-properties': 7.12.13_@babel+core@7.18.5 + '@babel/plugin-syntax-flow': 7.18.6_@babel+core@7.18.5 + '@babel/plugin-syntax-jsx': 7.17.12_@babel+core@7.18.5 + '@babel/plugin-syntax-object-rest-spread': 7.8.3_@babel+core@7.18.5 + '@babel/plugin-transform-arrow-functions': 7.17.12_@babel+core@7.18.5 + '@babel/plugin-transform-block-scoped-functions': 7.16.7_@babel+core@7.18.5 + '@babel/plugin-transform-block-scoping': 7.18.4_@babel+core@7.18.5 + '@babel/plugin-transform-classes': 7.18.4_@babel+core@7.18.5 + '@babel/plugin-transform-computed-properties': 7.17.12_@babel+core@7.18.5 + '@babel/plugin-transform-destructuring': 7.18.0_@babel+core@7.18.5 + '@babel/plugin-transform-flow-strip-types': 7.18.9_@babel+core@7.18.5 + '@babel/plugin-transform-for-of': 7.18.1_@babel+core@7.18.5 + '@babel/plugin-transform-function-name': 7.16.7_@babel+core@7.18.5 + '@babel/plugin-transform-literals': 7.17.12_@babel+core@7.18.5 + '@babel/plugin-transform-member-expression-literals': 7.16.7_@babel+core@7.18.5 + '@babel/plugin-transform-modules-commonjs': 7.18.2_@babel+core@7.18.5 + '@babel/plugin-transform-object-super': 7.16.7_@babel+core@7.18.5 + '@babel/plugin-transform-parameters': 7.17.12_@babel+core@7.18.5 + '@babel/plugin-transform-property-literals': 7.16.7_@babel+core@7.18.5 + '@babel/plugin-transform-react-display-name': 7.16.7_@babel+core@7.18.5 + '@babel/plugin-transform-react-jsx': 7.17.12_@babel+core@7.18.5 + '@babel/plugin-transform-shorthand-properties': 7.16.7_@babel+core@7.18.5 + '@babel/plugin-transform-spread': 7.17.12_@babel+core@7.18.5 + '@babel/plugin-transform-template-literals': 7.18.2_@babel+core@7.18.5 + babel-plugin-syntax-trailing-function-commas: 7.0.0-beta.0 + transitivePeerDependencies: + - supports-color + dev: true + /babel-preset-jest/27.5.1_@babel+core@7.18.5: resolution: {integrity: sha512-Nptf2FzlPCWYuJg41HBqXVT8ym6bXOevuCTbhxlUpjwtysGaIWFvDEjp4y+G7fl13FgOdjs7P/DmErqH7da0Ag==} engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} @@ -8266,6 +9277,13 @@ packages: tweetnacl: 0.14.5 dev: true + /better-opn/3.0.2: + resolution: {integrity: sha512-aVNobHnJqLiUelTaHat9DZ1qM2w0C0Eym4LPI/3JxOnSokGVdsl1T1kN7TFvsEAD8G47A6VKQ0TVHqbBnYMJlQ==} + engines: {node: '>=12.0.0'} + dependencies: + open: 8.4.0 + dev: true + /big-integer/1.6.51: resolution: {integrity: sha512-GPEid2Y9QU1Exl1rpO9B2IPJGHPSupF5GnVIP0blYvNOMer2bTvSWs1jGOUg04hTmu67nmLsQ9TBo1puaotBHg==} engines: {node: '>=0.6'} @@ -8330,6 +9348,28 @@ packages: resolution: {integrity: sha512-iD3898SR7sWVRHbiQv+sHUtHnMvC1o3nW5rAcqnq3uOn07DSAppZYUkIGslDz6gXC7HfunPe7YVBgoEJASPcHA==} dev: true + /blueimp-md5/2.19.0: + resolution: {integrity: sha512-DRQrD6gJyy8FbiE4s+bDoXS9hiW3Vbx5uCdwvcCf3zLHL+Iv7LtGHLpr+GZV8rHG8tK766FGYBwRbu8pELTt+w==} + dev: true + + /body-parser/1.19.0: + resolution: {integrity: sha512-dhEPs72UPbDnAQJ9ZKMNTP6ptJaionhP5cBb541nXPlW60Jepo9RV/a4fX4XWW9CuFNK22krhrj1+rgzifNCsw==} + engines: {node: '>= 0.8'} + dependencies: + bytes: 3.1.0 + content-type: 1.0.4 + debug: 2.6.9 + depd: 1.1.2 + http-errors: 1.7.2 + iconv-lite: 0.4.24 + on-finished: 2.3.0 + qs: 6.7.0 + raw-body: 2.4.0 + type-is: 1.6.18 + transitivePeerDependencies: + - supports-color + dev: true + /body-parser/1.20.0: resolution: {integrity: sha512-DfJ+q6EPcGKZD1QWUjSpqp+Q7bDQTsQIF4zfUAtZ6qk+H/3/QRhg9CEp39ss+/T2vw0+HaidC0ecJj/DRLIaKg==} engines: {node: '>= 0.8', npm: 1.2.8000 || >= 1.4.16} @@ -8406,6 +9446,26 @@ packages: wrap-ansi: 8.0.1 dev: false + /bplist-creator/0.1.0: + resolution: {integrity: sha512-sXaHZicyEEmY86WyueLTQesbeoH/mquvarJaQNbjuOQO+7gbFcDEWqKmcWA4cOTLzFlfgvkiVxolk1k5bBIpmg==} + dependencies: + stream-buffers: 2.2.0 + dev: true + + /bplist-parser/0.3.1: + resolution: {integrity: sha512-PyJxiNtA5T2PlLIeBot4lbp7rj4OadzjnMZD/G5zuBNt8ei/yCU7+wW0h2bag9vr8c+/WuRWmSxbqAl9hL1rBA==} + engines: {node: '>= 5.10.0'} + dependencies: + big-integer: 1.6.51 + dev: true + + /bplist-parser/0.3.2: + resolution: {integrity: sha512-apC2+fspHGI3mMKj+dGevkGo/tCqVB8jMb6i+OX+E29p0Iposz07fABkRIfVUPNd5A5VbuOz1bZbnmkKLYF+wQ==} + engines: {node: '>= 5.10.0'} + dependencies: + big-integer: 1.6.51 + dev: true + /brace-expansion/1.1.11: resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} dependencies: @@ -8489,6 +9549,17 @@ packages: /btoa-lite/1.0.0: resolution: {integrity: sha512-gvW7InbIyF8AicrqWoptdW08pUxuhq8BEgowNajy9RhiE86fmGAGl+bLKo6oB8QP0CkqHLowfN0oJdKC/J6LbA==} + /buffer-alloc-unsafe/1.1.0: + resolution: {integrity: sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg==} + dev: true + + /buffer-alloc/1.2.0: + resolution: {integrity: sha512-CFsHQgjtW1UChdXgbyJGtnm+O/uLQeZdtbDo8mfUgYXCHSM1wgrVxXm6bSyrUuErEb+4sYVGCzASBRot7zyrow==} + dependencies: + buffer-alloc-unsafe: 1.1.0 + buffer-fill: 1.0.0 + dev: true + /buffer-crc32/0.2.13: resolution: {integrity: sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==} dev: true @@ -8496,6 +9567,10 @@ packages: /buffer-equal-constant-time/1.0.1: resolution: {integrity: sha1-+OcRMvf/5uAaXJaXpMbz5I1cyBk=} + /buffer-fill/1.0.0: + resolution: {integrity: sha512-T7zexNBwiiaCOGDg9xNX9PBmjrubblRkENuptryuI64URkXDFum9il/JGL8Lm8wYfAXpredVXXZz7eMHilimiQ==} + dev: true + /buffer-from/1.1.2: resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==} @@ -8528,10 +9603,19 @@ packages: engines: {node: '>=0.2.0'} dev: true + /builtins/1.0.3: + resolution: {integrity: sha512-uYBjakWipfaO/bXI7E8rq6kpwHRZK5cNYrUv2OzZSI/FvmdMyXJ2tG9dKcjEC5YHmHpUAwsargWIZNWdxb/bnQ==} + dev: true + /bytes/3.0.0: resolution: {integrity: sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==} engines: {node: '>= 0.8'} + /bytes/3.1.0: + resolution: {integrity: sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==} + engines: {node: '>= 0.8'} + dev: true + /bytes/3.1.2: resolution: {integrity: sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==} engines: {node: '>= 0.8'} @@ -8561,7 +9645,6 @@ packages: transitivePeerDependencies: - bluebird dev: true - optional: true /cacache/16.1.1: resolution: {integrity: sha512-VDKN+LHyCQXaaYZ7rA/qtkURU+/yYhviUdvqEv2LT6QPZU8jpyzEkEVAcKlKLt5dJ5BRp11ym8lo3NKLluEPLg==} @@ -8627,6 +9710,25 @@ packages: resolution: {integrity: sha512-wCyFsDQkKPwwF8BDwOiWNx/9K45L/hvggQiDbve+viMNMQnWhrlYIuBk09offfwCRtCO9P6XwUttufzU11WCVw==} dev: true + /caller-callsite/2.0.0: + resolution: {integrity: sha512-JuG3qI4QOftFsZyOn1qq87fq5grLIyk1JYd5lJmdA+fG7aQ9pA/i3JIJGcO3q0MrRcHlOt1U+ZeHW8Dq9axALQ==} + engines: {node: '>=4'} + dependencies: + callsites: 2.0.0 + dev: true + + /caller-path/2.0.0: + resolution: {integrity: sha512-MCL3sf6nCSXOwCTzvPKhN18TU7AHTvdtam8DAogxcrJ8Rjfbbg7Lgng64H9Iy+vUV6VGFClN/TyxBkAebLRR4A==} + engines: {node: '>=4'} + dependencies: + caller-callsite: 2.0.0 + dev: true + + /callsites/2.0.0: + resolution: {integrity: sha512-ksWePWBloaWPxJYQ8TL0JHvtci6G5QTKwQ95RcWAa/lzoAKuAOflGdAK92hpHXjkwb8zLxoLNUoNYZgVsaJzvQ==} + engines: {node: '>=4'} + dev: true + /callsites/3.1.0: resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} engines: {node: '>=6'} @@ -8766,6 +9868,10 @@ packages: resolution: {integrity: sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==} dev: true + /charenc/0.0.2: + resolution: {integrity: sha512-yrLQ/yVUFXkzg7EDQsPieE/53+0RlaWTs+wBrvW36cyilJ2SaDWfl4Yj7MtLTXleV9uEKefbAGUPv2/iWSooRA==} + dev: true + /cheerio-select/2.1.0: resolution: {integrity: sha512-9v9kG0LvzrlcungtnJtpGNxY+fzECQKhK4EGJX2vByejiMX84MFNQw4UxPJl3bFbTMw+Dfs37XaIkCwTZfLh4g==} dependencies: @@ -8899,6 +10005,13 @@ packages: timers-ext: 0.1.7 dev: true + /cli-cursor/2.1.0: + resolution: {integrity: sha512-8lgKz8LmCRYZZQDpRyT2m5rKJ08TnU4tR9FFFW2rxpxR1FzWi4PQ/NfyODchAatHaUgnSPVcx/R5w6NuTBzFiw==} + engines: {node: '>=4'} + dependencies: + restore-cursor: 2.0.0 + dev: true + /cli-cursor/3.1.0: resolution: {integrity: sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==} engines: {node: '>=8'} @@ -8953,6 +10066,14 @@ packages: glob: 7.2.3 dev: true + /cliui/6.0.0: + resolution: {integrity: sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==} + dependencies: + string-width: 4.2.3 + strip-ansi: 6.0.1 + wrap-ansi: 6.2.0 + dev: true + /cliui/7.0.4: resolution: {integrity: sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==} dependencies: @@ -8984,6 +10105,11 @@ packages: engines: {node: '>=0.8'} dev: true + /clone/2.1.2: + resolution: {integrity: sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w==} + engines: {node: '>=0.8'} + dev: true + /clsx/1.1.1: resolution: {integrity: sha512-6/bPho624p3S2pMyvP5kKBPXnI3ufHLObBFCfgx+LkeR5lg2XYy2hqZqUf45ypD8COn2bhgGJSUE+l5dhNBieA==} engines: {node: '>=6'} @@ -9049,6 +10175,10 @@ packages: /colord/2.9.2: resolution: {integrity: sha512-Uqbg+J445nc1TKn4FoDPS6ZZqAvEDnwrH42yo8B40JSOgSLxMZ/gt3h4nmCtPLQeXhjJJkqBx7SCY35WnIixaQ==} + /colorette/1.4.0: + resolution: {integrity: sha512-Y2oEozpomLn7Q3HFP7dpww7AtMJplbM9lGZP6RDfHqmbeRjiwRg4n6VM6j4KLmRke85uWEI7JqF17f3pqdRA0g==} + dev: true + /colorette/2.0.16: resolution: {integrity: sha512-hUewv7oMjCp+wkBv5Rm0v87eJhq4woh5rSR+42YSQJKecCqgIqNkZ6lAlQms/BwHPJA5NKMRlpxPRv0n8HQW6g==} dev: true @@ -9085,6 +10215,14 @@ packages: resolution: {integrity: sha512-GHuDRO12Sypu2cV70d1dkA2EUmXHgntrzbpvOB+Qy+49ypNfGgFQIC2fhhXbnyrJRynDCAARsT7Ou0M6hirpfw==} dev: false + /command-exists/1.2.9: + resolution: {integrity: sha512-LTQ/SGc+s0Xc0Fu5WaKnR0YiygZkm9eKFvyS+fRsU7/ZWFF8ykFM6Pc9aCVf1+xasOOZpO3BAVgVrKvsqKHV7w==} + dev: true + + /commander/2.13.0: + resolution: {integrity: sha512-MVuS359B+YzaWqjCL/c+22gfryv+mCBPHAv3zyVI2GN8EY6IRP8VwtasXn8jyyhvvq84R4ImN1OKRtcbIasjYA==} + dev: true + /commander/2.20.3: resolution: {integrity: sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==} @@ -9113,7 +10251,6 @@ packages: /commondir/1.0.1: resolution: {integrity: sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==} - dev: false /compare-func/2.0.0: resolution: {integrity: sha512-zHig5N+tPWARooBnb0Zx1MFcdfpyJrfTJ3Y5L+IFvUm8rM74hHz66z0gw0x4tijh5CorKkKUCnW82R2vmpeCRA==} @@ -9128,10 +10265,25 @@ packages: semver: 5.7.1 dev: true + /compare-urls/2.0.0: + resolution: {integrity: sha512-eCJcWn2OYFEIqbm70ta7LQowJOOZZqq1a2YbbFCFI1uwSvj+TWMwXVn7vPR1ceFNcAIt5RSTDbwdlX82gYLTkA==} + engines: {node: '>=6'} + dependencies: + normalize-url: 2.0.1 + dev: true + + /compare-versions/3.6.0: + resolution: {integrity: sha512-W6Af2Iw1z4CB7q4uU4hv646dW9GQuBM+YpC0UvUCWSD8w90SJjp+ujJuXaEMtAXBtSqGfMPuFOVn4/+FlaqfBA==} + dev: true + /component-emitter/1.3.0: resolution: {integrity: sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==} dev: true + /component-type/1.2.1: + resolution: {integrity: sha512-Kgy+2+Uwr75vAi6ChWXgHuLvd+QLD7ssgpaRq2zCvt80ptvAfMc/hijcJxXkBa2wMlEZcJvC2H8Ubo+A9ATHIg==} + dev: true + /compress-commons/4.1.1: resolution: {integrity: sha512-QLdDLCKNV2dtoTorqgxngQCMA+gWXkM/Nwu7FpeBhk/RdkzimqC3jueb/FDmaZeXh+uby1jkBqE3xArsLBE5wQ==} engines: {node: '>= 10'} @@ -9343,6 +10495,16 @@ packages: vary: 1.1.2 dev: true + /cosmiconfig/5.2.1: + resolution: {integrity: sha512-H65gsXo1SKjf8zmrJ67eJk8aIRKV5ff2D4uKZIBZShbhGSpEmsQOPW/SKMKYhSTrqR7ufy6RP69rPogdaPh/kA==} + engines: {node: '>=4'} + dependencies: + import-fresh: 2.0.0 + is-directory: 0.3.1 + js-yaml: 3.14.1 + parse-json: 4.0.0 + dev: true + /cosmiconfig/6.0.0: resolution: {integrity: sha512-xb3ZL6+L8b9JLLCx3ZdoZy4+2ECphCMo2PwqgP1tlfVq6M6YReyzBJtvWWtbDSpNr9hn96pkCiZqUcFEc+54Qg==} engines: {node: '>=8'} @@ -9432,6 +10594,15 @@ packages: shebang-command: 2.0.0 which: 2.0.2 + /crypt/0.0.2: + resolution: {integrity: sha512-mCxBlsHFYh9C+HVpiEacem8FEBnMXgU9gy4zmNC+SXAZNB/1idgp/aulFJ4FgCi7GPEVbfyng092GqL2k2rmow==} + dev: true + + /crypto-random-string/1.0.0: + resolution: {integrity: sha512-GsVpkFPlycH7/fRR7Dhcmnoii54gV1nz7y4CWyeFS14N+JVBBhY+r8amRHE4BwSYal7BPTDp8isvAlCxyFt3Hg==} + engines: {node: '>=4'} + dev: true + /crypto-random-string/2.0.0: resolution: {integrity: sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==} engines: {node: '>=8'} @@ -10138,6 +11309,10 @@ packages: d3-zoom: 3.0.0 dev: false + /dag-map/1.0.2: + resolution: {integrity: sha512-+LSAiGFwQ9dRnRdOeaj7g47ZFJcOUPukAP8J3A3fuZ1g9Y44BG+P1sgApjLXTQPOzC4+7S9Wr8kXsfpINM4jpw==} + dev: true + /dagre-d3/0.6.4: resolution: {integrity: sha512-e/6jXeCP7/ptlAM48clmX4xTZc5Ek6T6kagS7Oz2HrYSdqcLZFLqpAfh7ldbZRFfxCZVyh61NEPR08UQRVxJzQ==} dependencies: @@ -10194,6 +11369,10 @@ packages: engines: {node: '>0.4.0'} dev: true + /dayjs/1.11.5: + resolution: {integrity: sha512-CAdX5Q3YW3Gclyo5Vpqkgpj8fSdLQcRuzfX6mC6Phy0nfJ0eGYOeS7m4mt2plDWLAtA4TqTakvbboHvUxfe4iA==} + dev: true + /debug/2.6.9: resolution: {integrity: sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==} peerDependencies: @@ -10347,10 +11526,23 @@ packages: resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} dev: true + /deepmerge/3.3.0: + resolution: {integrity: sha512-GRQOafGHwMHpjPx9iCvTgpu9NojZ49q794EEL94JVEw6VaeA8XTUyBKvAkOOjBX9oJNiV6G3P+T+tihFjo2TqA==} + engines: {node: '>=0.10.0'} + dev: true + /deepmerge/4.2.2: resolution: {integrity: sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==} engines: {node: '>=0.10.0'} + /default-gateway/4.2.0: + resolution: {integrity: sha512-h6sMrVB1VMWVrW13mSc6ia/DwYYw5MN6+exNu1OaJeFac5aSAvwM7lZ0NVfTABuSkQelr4h5oebg3KB1XPdjgA==} + engines: {node: '>=6'} + dependencies: + execa: 1.0.0 + ip-regex: 2.1.0 + dev: true + /default-gateway/6.0.3: resolution: {integrity: sha512-fwSOJsbbNzZ/CUFpqFBqYfYNLj1NbMPm8MMCIzHjC83iSJRBEGmDUxU+WP661BaBQImeC2yHwXtz+P/O9o+XEg==} engines: {node: '>= 10'} @@ -10378,7 +11570,6 @@ packages: /define-lazy-prop/2.0.0: resolution: {integrity: sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==} engines: {node: '>=8'} - dev: false /define-properties/1.1.4: resolution: {integrity: sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==} @@ -10431,7 +11622,6 @@ packages: p-map: 4.0.0 rimraf: 3.0.2 slash: 3.0.0 - dev: false /delaunator/5.0.0: resolution: {integrity: sha512-AyLvtyJdbv/U1GkiS6gUUzclRoAY4Gs75qkMygJJhU75LW4DNuSF2RMzpxs9jw9Oz1BobHjTdkG3zdP55VxAqw==} @@ -10448,6 +11638,10 @@ packages: resolution: {integrity: sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==} dev: true + /denodeify/1.2.1: + resolution: {integrity: sha512-KNTihKNmQENUZeKu5fzfpzRqR5S2VMp4gl9RFHiWzj9DfvYQPMJ6XHKNaQxaGCXwPk6y9yme3aUoaiAe+KX+vg==} + dev: true + /denque/2.0.1: resolution: {integrity: sha512-tfiWc6BQLXNLpNiR5iGd0Ocu3P3VpxfzFiqubLgMfhfOw9WyvgJBd46CClNn9k3qfbjvT//0cf7AlYRX/OslMQ==} engines: {node: '>=0.10'} @@ -10756,7 +11950,7 @@ packages: dev: true /ee-first/1.1.1: - resolution: {integrity: sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=} + resolution: {integrity: sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==} /electron-to-chromium/1.4.167: resolution: {integrity: sha512-lPHuHXBwpkr4RcfaZBKm6TKOWG/1N9mVggUpP4fY3l1JIUU2x4fkM8928smYdZ5lF+6KCTAxo1aK9JmqT+X71Q==} @@ -10859,12 +12053,27 @@ packages: engines: {node: '>=0.12'} dev: false + /env-editor/0.4.2: + resolution: {integrity: sha512-ObFo8v4rQJAE59M69QzwloxPZtd33TpYEIjtKD1rrFDcM1Gd7IkDxEBU+HriziN6HSHQnBJi8Dmy+JWkav5HKA==} + engines: {node: '>=8'} + dev: true + /env-paths/2.2.1: resolution: {integrity: sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==} engines: {node: '>=6'} dev: true optional: true + /envinfo/7.8.1: + resolution: {integrity: sha512-/o+BXHmB7ocbHEAs6F2EnG0ogybVVUdkRunTT2glZU9XAaGmhqskrvKwqXuDfNjEO0LZKWdejEEpnq8aM0tOaw==} + engines: {node: '>=4'} + hasBin: true + dev: true + + /eol/0.9.1: + resolution: {integrity: sha512-Ds/TEoZjwggRoz/Q2O7SE3i4Jm66mqTDfmdHdq/7DKVk3bro9Q8h6WdXKdPqFLMoqxrDK5SVRzHVPOS6uuGtrg==} + dev: true + /err-code/2.0.3: resolution: {integrity: sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==} dev: true @@ -10882,6 +12091,20 @@ packages: dependencies: is-arrayish: 0.2.1 + /error-stack-parser/2.1.4: + resolution: {integrity: sha512-Sk5V6wVazPhq5MhpO+AUxJn5x7XSXGl1R93Vn7i+zS15KDVxQijejNCrz8340/2bgLBjR9GtEG8ZVKONDjcqGQ==} + dependencies: + stackframe: 1.3.4 + dev: true + + /errorhandler/1.5.1: + resolution: {integrity: sha512-rcOwbfvP1WTViVoUjcfZicVzjhjTuhSMntHh6mW3IrEiyE6mJyXvsToJUJGlGlw/2xU9P5whlWNGlIDVeCiT4A==} + engines: {node: '>= 0.8'} + dependencies: + accepts: 1.3.8 + escape-html: 1.0.3 + dev: true + /es-abstract/1.20.1: resolution: {integrity: sha512-WEm2oBhfoI2sImeM4OF2zE2V3BYdSF+KnSi9Sidz51fQHd7+JuF8Xgcj9/0o+OWeIeIS/MiuNnlruQrJf16GQA==} engines: {node: '>= 0.4'} @@ -11422,6 +12645,23 @@ packages: resolution: {integrity: sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==} engines: {node: '>=0.8.x'} + /exec-async/2.2.0: + resolution: {integrity: sha512-87OpwcEiMia/DeiKFzaQNBNFeN3XkkpYIh9FyOqq5mS2oKv3CBE67PXoEKcr6nodWdXNogTiQ0jE2NGuoffXPw==} + dev: true + + /execa/1.0.0: + resolution: {integrity: sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==} + engines: {node: '>=6'} + dependencies: + cross-spawn: 6.0.5 + get-stream: 4.1.0 + is-stream: 1.1.0 + npm-run-path: 2.0.2 + p-finally: 1.0.0 + signal-exit: 3.0.7 + strip-eof: 1.0.0 + dev: true + /execa/4.1.0: resolution: {integrity: sha512-j5W0//W7f8UxAn8hXVnwG8tLwdiUy4FJLcSupCg6maBYZDpyBvTApK7KyuI4bKj8KOh1r2YH+6ucuYtJv1bTZA==} engines: {node: '>=10'} @@ -11557,6 +12797,188 @@ packages: jest-util: 28.1.1 dev: true + /expo-application/4.2.2_expo@46.0.9: + resolution: {integrity: sha512-bFEaFRUdV6aK2iBd+HzkHNPYsyj88EAhaQW5leznmO0qQMJxpAQ3eoUXMey1hfDBh1qgkkHgSyCZ9BIgMAGJ1g==} + peerDependencies: + expo: '*' + dependencies: + expo: 46.0.9_@babel+core@7.18.5 + dev: true + + /expo-asset/8.6.1_expo@46.0.9: + resolution: {integrity: sha512-urbUp1YtwH2J0Qc3inGQJdqTjWKML77SeMNgff+iR9MUE8gDkFqSCDjrBi7i5Oj5DDtq43mmtDg8G8ei6Vchcg==} + dependencies: + blueimp-md5: 2.19.0 + expo-constants: 13.2.4_expo@46.0.9 + expo-file-system: 14.1.0_expo@46.0.9 + invariant: 2.2.4 + md5-file: 3.2.3 + path-browserify: 1.0.1 + url-parse: 1.5.10 + transitivePeerDependencies: + - expo + - supports-color + dev: true + + /expo-auth-session/3.7.1_expo@46.0.9: + resolution: {integrity: sha512-sUOdXBclpYSZEvOkaSbOpLhhtGUQ485ltPfq0sQi+24wh33rKLH2yBocL5QeU/yq/8bafHEWQvkKaUIA2Qq+dA==} + peerDependencies: + expo-random: '*' + peerDependenciesMeta: + expo-random: + optional: true + dependencies: + expo-constants: 13.2.4_expo@46.0.9 + expo-crypto: 11.0.0_expo@46.0.9 + expo-linking: 3.2.2_expo@46.0.9 + expo-web-browser: 11.0.0_expo@46.0.9 + invariant: 2.2.4 + qs: 6.9.1 + transitivePeerDependencies: + - expo + - supports-color + dev: true + + /expo-constants/13.2.4_expo@46.0.9: + resolution: {integrity: sha512-Zobau8EuTk2GgafwkfGnWM6CmSLB7X8qnQXVuXe0nd3v92hfQUmRWGhJwH88uxXj3LrfqctM6PaJ8taG1vxfBw==} + peerDependencies: + expo: '*' + dependencies: + '@expo/config': 7.0.1 + expo: 46.0.9_@babel+core@7.18.5 + uuid: 3.4.0 + transitivePeerDependencies: + - supports-color + dev: true + + /expo-crypto/11.0.0_expo@46.0.9: + resolution: {integrity: sha512-EH1Ikcy/HxfLJpo+zVRic4Igl6AovZEksAheKfeM2u+2TfL3FEBiQo+cGkuIa8NQ9ui3xYqQcyMk+IIZ6AO0Xg==} + peerDependencies: + expo: '*' + dependencies: + expo: 46.0.9_@babel+core@7.18.5 + dev: true + + /expo-error-recovery/3.2.0_expo@46.0.9: + resolution: {integrity: sha512-XZ630ks5HNxa9oc2Ya1hEn1ez031Cy4VnyxerPC2o9fKNKSrD/64cRqGF9NkGM3X2uf8+PCB9adxVflAIXBf6w==} + requiresBuild: true + peerDependencies: + expo: '*' + dependencies: + expo: 46.0.9_@babel+core@7.18.5 + dev: true + optional: true + + /expo-file-system/14.1.0_expo@46.0.9: + resolution: {integrity: sha512-lJcPGQ8yKXVknVkD5TmcJnR/TpQbEL0JP8hknLejfq3FIqPqI/LBFn31YiP37grxW8lITz1al8pq5T6CSUjAzQ==} + peerDependencies: + expo: '*' + dependencies: + '@expo/config-plugins': 5.0.1 + expo: 46.0.9_@babel+core@7.18.5 + uuid: 3.4.0 + transitivePeerDependencies: + - supports-color + dev: true + + /expo-font/10.2.0_expo@46.0.9: + resolution: {integrity: sha512-2V4EcpmhNoppaLn+lPprZVS+3bmV9hxLPKttKh2u8ghjH/oX9bv3u4JVo77SYh0EfrWO4toqVyXn8pXH8GpbIg==} + peerDependencies: + expo: '*' + dependencies: + expo: 46.0.9_@babel+core@7.18.5 + fontfaceobserver: 2.3.0 + dev: true + + /expo-keep-awake/10.2.0_expo@46.0.9: + resolution: {integrity: sha512-kIRtO4Hmrvxh4E45IPWG/NiUZsuRe1AQwBT09pq+kx8nm6tUS4B9TeL6+1NFy+qVBLbGKDqoQD5Ez7XYTFtBeQ==} + peerDependencies: + expo: '*' + dependencies: + expo: 46.0.9_@babel+core@7.18.5 + dev: true + + /expo-linking/3.2.2_expo@46.0.9: + resolution: {integrity: sha512-2OY7WAyZXuc8zdTGm2rLu5ESJaFL2TYmPHsJuDJcfIJFaw+nS5vIVk5DGPlk+zCNC3uoqT02t7a5PZVp2bvqtQ==} + dependencies: + '@types/qs': 6.9.7 + expo-constants: 13.2.4_expo@46.0.9 + invariant: 2.2.4 + qs: 6.10.5 + url-parse: 1.5.10 + transitivePeerDependencies: + - expo + - supports-color + dev: true + + /expo-modules-autolinking/0.10.3: + resolution: {integrity: sha512-av9ln2zwUt303g98raX7sDmESgL3SXs1sbbtIjh1rL7R0676XIUacIKgbydR0/4tMbOShWx14Z9fozpk9xIAJA==} + hasBin: true + dependencies: + chalk: 4.1.2 + commander: 7.2.0 + fast-glob: 3.2.11 + find-up: 5.0.0 + fs-extra: 9.1.0 + dev: true + + /expo-modules-core/0.11.4: + resolution: {integrity: sha512-8dEYICk7hUi1GPz5hWm8dBuZDGc+4Tm7zDhSIhKApo5jY/5vB4Bk+fjPo693iWn6pp3+XBHT8Ri8rJ3G7wH1vQ==} + dependencies: + compare-versions: 3.6.0 + invariant: 2.2.4 + dev: true + + /expo-secure-store/11.3.0_expo@46.0.9: + resolution: {integrity: sha512-k8dw1v7MCHIv7MnAIBXqyqplJo0I5MmRjZXO7bsVPb/BqWvvfBo/JAFdM6K60X6szh+13TWgxwx6GxAkCJVUnQ==} + peerDependencies: + expo: '*' + dependencies: + expo: 46.0.9_@babel+core@7.18.5 + dev: true + + /expo-web-browser/11.0.0_expo@46.0.9: + resolution: {integrity: sha512-LKakUgsDIFLCYWh+RrjB8ANzgD6TTpi0fe00Gu5GrGuEs0cQmEynltq2OVPYOXiaNdcaaora7VFqC47A9rDE+A==} + peerDependencies: + expo: '*' + dependencies: + compare-urls: 2.0.0 + expo: 46.0.9_@babel+core@7.18.5 + dev: true + + /expo/46.0.9_@babel+core@7.18.5: + resolution: {integrity: sha512-UsBjm0BL7w+OyF6kypVPrk3jhg9cCXF0D9CaOWQ+cedm7oT4mTVQx9+A45VsDvLzNWBjJejZQZ1PFKqOY5HNcQ==} + hasBin: true + dependencies: + '@babel/runtime': 7.18.3 + '@expo/cli': 0.2.11_ldu6zrsp2qyz4kn3c44jkm42fu + '@expo/vector-icons': 13.0.0 + babel-preset-expo: 9.2.0_@babel+core@7.18.5 + cross-spawn: 6.0.5 + expo-application: 4.2.2_expo@46.0.9 + expo-asset: 8.6.1_expo@46.0.9 + expo-constants: 13.2.4_expo@46.0.9 + expo-file-system: 14.1.0_expo@46.0.9 + expo-font: 10.2.0_expo@46.0.9 + expo-keep-awake: 10.2.0_expo@46.0.9 + expo-modules-autolinking: 0.10.3 + expo-modules-core: 0.11.4 + fbemitter: 3.0.0 + getenv: 1.0.0 + invariant: 2.2.4 + md5-file: 3.2.3 + node-fetch: 2.6.7 + pretty-format: 26.6.2 + uuid: 3.4.0 + optionalDependencies: + expo-error-recovery: 3.2.0_expo@46.0.9 + transitivePeerDependencies: + - '@babel/core' + - bluebird + - encoding + - supports-color + dev: true + /express-basic-auth/1.2.1: resolution: {integrity: sha512-L6YQ1wQ/mNjVLAmK3AG1RK6VkokA1BIY6wmiH304Xtt/cLTps40EusZsU1Uop+v9lTDPxdtzbFmdXfFO3KEnwA==} dependencies: @@ -11751,11 +13173,9 @@ packages: fbjs: 3.0.4 transitivePeerDependencies: - encoding - dev: false /fbjs-css-vars/1.0.2: resolution: {integrity: sha512-b2XGFAFdWZWg0phtAWLHCk836A1Xann+I+Dgd3Gk64MHKZO44FfoD1KxyvbSh0qZsIoXQGGlVztIY+oitJPpRQ==} - dev: false /fbjs/3.0.4: resolution: {integrity: sha512-ucV0tDODnGV3JCnnkmoszb5lf4bNpzjv80K41wd4k798Etq+UYD0y0TIfalLjZoKgjive6/adkRnszwapiDgBQ==} @@ -11769,7 +13189,6 @@ packages: ua-parser-js: 0.7.31 transitivePeerDependencies: - encoding - dev: false /fecha/4.2.3: resolution: {integrity: sha512-OP2IUU6HeYKJi3i0z4A19kHMQoLVs4Hc+DPqqxI2h/DPZHTm/vjsfC6P0b4jCMy14XizLBqvndQ+UilD7707Jw==} @@ -11789,6 +13208,10 @@ packages: tough-cookie: 4.0.0 dev: true + /fetch-retry/4.1.1: + resolution: {integrity: sha512-e6eB7zN6UBSwGVwrbWVH+gdLnkW9WwHhmq2YDK1Sh30pzx1onRVGBvogTlUeWxwTa+L86NYdo4hFkh7O8ZjSnA==} + dev: true + /figures/3.2.0: resolution: {integrity: sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==} engines: {node: '>=8'} @@ -11867,6 +13290,11 @@ packages: dependencies: to-regex-range: 5.0.1 + /filter-obj/1.1.0: + resolution: {integrity: sha512-8rXg1ZnX7xzy2NGDVkBVaAy+lSlPNwad13BtgSlLuxfIslyt5Vg64U7tFcCt4WS1R0hvtnQybT/IyCkGZ3DpXQ==} + engines: {node: '>=0.10.0'} + dev: true + /finalhandler/1.1.2: resolution: {integrity: sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==} engines: {node: '>= 0.8'} @@ -11896,6 +13324,23 @@ packages: transitivePeerDependencies: - supports-color + /find-babel-config/1.2.0: + resolution: {integrity: sha512-jB2CHJeqy6a820ssiqwrKMeyC6nNdmrcgkKWJWmpoxpE8RKciYJXCcXRq1h2AzCo5I5BJeN2tkGEO3hLTuePRA==} + engines: {node: '>=4.0.0'} + dependencies: + json5: 0.5.1 + path-exists: 3.0.0 + dev: true + + /find-cache-dir/2.1.0: + resolution: {integrity: sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==} + engines: {node: '>=6'} + dependencies: + commondir: 1.0.1 + make-dir: 2.1.0 + pkg-dir: 3.0.0 + dev: true + /find-cache-dir/3.3.2: resolution: {integrity: sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==} engines: {node: '>=8'} @@ -11936,7 +13381,6 @@ packages: engines: {node: '>=6'} dependencies: locate-path: 3.0.0 - dev: false /find-up/4.1.0: resolution: {integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==} @@ -11951,7 +13395,12 @@ packages: dependencies: locate-path: 6.0.0 path-exists: 4.0.0 - dev: false + + /find-yarn-workspace-root/2.0.0: + resolution: {integrity: sha512-1IMnbjt4KzsQfnhnzNd8wUEgXZ44IzZaZmnLYx7D5FZlaHt2gW20Cri8Q+E/t5tIj4+epTBub+2Zxu/vNILzqQ==} + dependencies: + micromatch: 4.0.5 + dev: true /firebase-frameworks/0.4.2: resolution: {integrity: sha512-a3xNE3wPh8JWq2WOgWlSypVS9O/y/3/3Im9EV7bNBF44wFV2oOAyFdVgDk6it81+lBRv7ci8PttgQZohtsFeVA==} @@ -12082,6 +13531,11 @@ packages: resolution: {integrity: sha512-WIWGi2L3DyTUvUrwRKgGi9TwxQMUEqPOPQBVi71R96jZXJdFskXEmf54BoZaS1kknGODoIGASGEzBUYdyMCBJg==} dev: true + /flow-parser/0.121.0: + resolution: {integrity: sha512-1gIBiWJNR0tKUNv8gZuk7l9rVX06OuLzY9AoGio7y/JT4V1IZErEMEq2TJS+PFcw/y0RshZ1J/27VfK1UQzYVg==} + engines: {node: '>=0.4.0'} + dev: true + /flux/4.0.3_react@18.2.0: resolution: {integrity: sha512-yKAbrp7JhZhj6uiT1FTuVMlIAT1J4jqEyBpFApi1kxpGZCvacMVc/t1pMQyotqHhAgvoE3bNvAykhCo2CLjnYw==} peerDependencies: @@ -12124,6 +13578,10 @@ packages: debug: 4.3.4 dev: true + /fontfaceobserver/2.3.0: + resolution: {integrity: sha512-6FPvD/IVyT4ZlNe7Wcn5Fb/4ChigpucKYSvD6a+0iMoLn2inpo711eyIcKjmDtE5XNcgAkSH9uN/nfAeZzHEfg==} + dev: true + /for-each/0.3.3: resolution: {integrity: sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==} dependencies: @@ -12226,8 +13684,13 @@ packages: map-cache: 0.2.2 dev: true + /freeport-async/2.0.0: + resolution: {integrity: sha512-K7od3Uw45AJg00XUmy15+Hae2hOcgKcmN3/EF6Y7i01O0gaqiRx8sUSpsb9+BRNL8RPBrhzPsVfy8q9ADlJuWQ==} + engines: {node: '>=8'} + dev: true + /fresh/0.5.2: - resolution: {integrity: sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=} + resolution: {integrity: sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==} engines: {node: '>= 0.6'} /fs-constants/1.0.0: @@ -12239,6 +13702,14 @@ packages: engines: {node: '>=0.10.0'} dev: true + /fs-extra/1.0.0: + resolution: {integrity: sha512-VerQV6vEKuhDWD2HGOybV6v5I73syoc/cXAbKlgTC7M/oFVEtklWlp9QH2Ijw3IaWDOQcMkldSPa7zXy79Z/UQ==} + dependencies: + graceful-fs: 4.2.10 + jsonfile: 2.4.0 + klaw: 1.3.1 + dev: true + /fs-extra/10.1.0: resolution: {integrity: sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==} engines: {node: '>=12'} @@ -12264,6 +13735,16 @@ packages: universalify: 0.1.2 dev: true + /fs-extra/9.0.0: + resolution: {integrity: sha512-pmEYSk3vYsG/bF651KPUXZ+hvjpgWYw/Gc7W9NFUe3ZVLczKKWIij3IKpOrQcdw4TILtibFslZ0UmR8Vvzig4g==} + engines: {node: '>=10'} + dependencies: + at-least-node: 1.0.0 + graceful-fs: 4.2.10 + jsonfile: 6.1.0 + universalify: 1.0.0 + dev: true + /fs-extra/9.1.0: resolution: {integrity: sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==} engines: {node: '>=10'} @@ -12272,7 +13753,6 @@ packages: graceful-fs: 4.2.10 jsonfile: 6.1.0 universalify: 2.0.0 - dev: false /fs-minipass/1.2.7: resolution: {integrity: sha512-GWSSJGFy4e9GUeCcbIkED+bgAoFyj7XF1mV8rma3QW4NIqX9Kyx79N/PF61H5udOV3aY1IaMLs6pGbH71nlCTA==} @@ -12436,6 +13916,11 @@ packages: engines: {node: '>=8.0.0'} dev: true + /get-port/3.2.0: + resolution: {integrity: sha512-x5UJKlgeUiNT8nyo/AcnwLnZuZNcSjSw0kogRB+Whd1fjjFq4B1hySFxSFWWSn4mIBzg3sRNUDFYc4g5gjPoLg==} + engines: {node: '>=4'} + dev: true + /get-stdin/9.0.0: resolution: {integrity: sha512-dVKBjfWisLAicarI2Sf+JuBE/DghV4UzNAVe9yhEJuzeREd3JhOTE9cUaJTeSa77fsbQUK3pcOpJfM59+VKZaA==} engines: {node: '>=12'} @@ -12484,6 +13969,11 @@ packages: engines: {node: '>=0.10.0'} dev: true + /getenv/1.0.0: + resolution: {integrity: sha512-7yetJWqbS9sbn0vIfliPsFgoXMKn/YMF+Wuiog97x+urnSRRRZ7xB+uVkwGKzRgq9CDFfMQnE9ruL5DHv9c6Xg==} + engines: {node: '>=6'} + dev: true + /getopts/2.3.0: resolution: {integrity: sha512-5eDf9fuSXwxBL6q5HX+dhDj+dslFGWzU5thZ9kNKUkcPtaPdatmUFKwHFrLb/uf/WpA4BHET+AX3Scl56cAjpA==} dev: true @@ -12556,6 +14046,28 @@ packages: /glob-to-regexp/0.4.1: resolution: {integrity: sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==} + /glob/6.0.4: + resolution: {integrity: sha512-MKZeRNyYZAVVVG1oZeLaWie1uweH40m9AZwIwxyPbTSX4hHrVYSzLg0Ro5Z5R7XKkIX+Cc6oD1rqeDJnwsB8/A==} + dependencies: + inflight: 1.0.6 + inherits: 2.0.4 + minimatch: 3.1.2 + once: 1.4.0 + path-is-absolute: 1.0.1 + dev: true + optional: true + + /glob/7.1.6: + resolution: {integrity: sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==} + dependencies: + fs.realpath: 1.0.0 + inflight: 1.0.6 + inherits: 2.0.4 + minimatch: 3.1.2 + once: 1.4.0 + path-is-absolute: 1.0.1 + dev: true + /glob/7.2.3: resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} dependencies: @@ -12765,6 +14277,21 @@ packages: lodash: 4.17.21 dev: false + /graphql-tag/2.12.6_graphql@15.8.0: + resolution: {integrity: sha512-FdSNcu2QQcWnM2VNvSCCDCVS5PpPqpzgFT8+GXzqJuoDd0CBncxCY278u4mhRO7tMgo2JjgJA5aZ+nWSQ/Z+xg==} + engines: {node: '>=10'} + peerDependencies: + graphql: ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0 + dependencies: + graphql: 15.8.0 + tslib: 2.4.0 + dev: true + + /graphql/15.8.0: + resolution: {integrity: sha512-5gghUc24tP9HRznNpV2+FIoq3xKkj5dTQqf4v0CpdPbFVwFkWoxOM+o+2OC9ZSvjEMTjfmG9QT+gcvggTwW1zw==} + engines: {node: '>= 10.x'} + dev: true + /graphql/16.5.0: resolution: {integrity: sha512-qbHgh8Ix+j/qY+a/ZcJnFQ+j8ezakqPiHwPiZhV/3PgGlgf96QMBB5/f2rkiC9sgLoy/xvT6TSiaf2nTHJh5iA==} engines: {node: ^12.22.0 || ^14.16.0 || ^16.0.0 || >=17.0.0} @@ -12996,6 +14523,27 @@ packages: resolution: {integrity: sha512-JoLCAdCEab58+2/yEmSnOlficyHFpIl0XJqwu3l+Unkm1gXpFUYsThz6Yha3D6tNhocWkCPfyW0YVIGWFqTi7w==} dev: true + /hermes-engine/0.11.0: + resolution: {integrity: sha512-7aMUlZja2IyLYAcZ69NBnwJAR5ZOYlSllj0oMpx08a8HzxHOys0eKCzfphrf6D0vX1JGO1QQvVsQKe6TkYherw==} + dev: true + + /hermes-estree/0.6.0: + resolution: {integrity: sha512-2YTGzJCkhdmT6VuNprWjXnvTvw/3iPNw804oc7yknvQpNKo+vJGZmtvLLCghOZf0OwzKaNAzeIMp71zQbNl09w==} + dev: true + + /hermes-parser/0.6.0: + resolution: {integrity: sha512-Vf58jBZca2+QBLR9h7B7mdg8oFz2g5ILz1iVouZ5DOrOrAfBmPfJjdjDT8jrO0f+iJ4/hSRrQHqHIjSnTaLUDQ==} + dependencies: + hermes-estree: 0.6.0 + dev: true + + /hermes-profile-transformer/0.0.6: + resolution: {integrity: sha512-cnN7bQUm65UWOy6cbGcCcZ3rpwW8Q/j4OP5aWRhEry4Z2t2aR1cjrbp0BS+KiBN0smvP1caBgAuxutvyvJILzQ==} + engines: {node: '>=8'} + dependencies: + source-map: 0.7.4 + dev: true + /highlight.js/10.7.3: resolution: {integrity: sha512-tzcUFauisWKNHaRkN4Wjl/ZA07gENAjFl3J/c480dprkGTg5EQstgaNFqBfUqCq54kZRIEcreTsAgF/m2quD7A==} dev: true @@ -13027,6 +14575,13 @@ packages: resolution: {integrity: sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==} dev: true + /hosted-git-info/3.0.8: + resolution: {integrity: sha512-aXpmwoOhRBrw6X3j0h5RloK4x1OzsxMPyxqIHyNfSe2pypkVTZFpEiRoSipPEPlMrh0HW/XsjkJ5WgnCirpNUw==} + engines: {node: '>=10'} + dependencies: + lru-cache: 6.0.0 + dev: true + /hosted-git-info/4.1.0: resolution: {integrity: sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==} engines: {node: '>=10'} @@ -13157,7 +14712,18 @@ packages: inherits: 2.0.3 setprototypeof: 1.1.0 statuses: 1.5.0 - dev: false + dev: false + + /http-errors/1.7.2: + resolution: {integrity: sha512-uUQBt3H/cSIVfch6i1EuPNy/YsRSOUBXTVfZ+yR7Zjez3qjBz6i9+i4zjNaoqcoFVI4lQJ5plg63TvGfRSDCRg==} + engines: {node: '>= 0.6'} + dependencies: + depd: 1.1.2 + inherits: 2.0.3 + setprototypeof: 1.1.1 + statuses: 1.5.0 + toidentifier: 1.0.0 + dev: true /http-errors/2.0.0: resolution: {integrity: sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==} @@ -13317,6 +14883,12 @@ packages: resolution: {integrity: sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==} engines: {node: '>= 4'} + /image-size/0.6.3: + resolution: {integrity: sha512-47xSUiQioGaB96nqtp5/q55m0aBQSQdyIloMOc/x+QVTDZLNmXE892IIDrJ0hM1A5vcNUDD5tDffkSP5lCaIIA==} + engines: {node: '>=4.0'} + hasBin: true + dev: true + /image-size/1.0.1: resolution: {integrity: sha512-VAwkvNSNGClRw9mDHhc5Efax8PLlsOGcUTh0T/LIriC8vPA3U5PdqXWqkz406MoYHMKW8Uf9gWr05T/rYB44kQ==} engines: {node: '>=12.0.0'} @@ -13337,6 +14909,14 @@ packages: resolution: {integrity: sha512-2eB/sswms9AEUSkOm4SbV5Y7Vmt/bKRwByd52jfLkW4OLYeaTP3EEiJ9agqU0O/tq6Dk62Zfj+TJSqfm1rLVGQ==} dev: false + /import-fresh/2.0.0: + resolution: {integrity: sha512-eZ5H8rcgYazHbKC3PG4ClHNykCSxtAhxSSEM+2mb+7evD2CKF5V7c0dNum7AdpDh0ZdICwZY9sRSn8f+KH96sg==} + engines: {node: '>=4'} + dependencies: + caller-path: 2.0.0 + resolve-from: 3.0.0 + dev: true + /import-fresh/3.3.0: resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==} engines: {node: '>=6'} @@ -13368,7 +14948,6 @@ packages: /infer-owner/1.0.4: resolution: {integrity: sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==} dev: true - optional: true /infima/0.2.0-alpha.39: resolution: {integrity: sha512-UyYiwD3nwHakGhuOUfpe3baJ8gkiPpRVx4a4sE/Ag+932+Y6swtLsdPoRR8ezhwqGnduzxmFkjumV9roz6QoLw==} @@ -13388,7 +14967,6 @@ packages: /inherits/2.0.3: resolution: {integrity: sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==} - dev: false /inherits/2.0.4: resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} @@ -13435,6 +15013,14 @@ packages: dev: true optional: true + /internal-ip/4.3.0: + resolution: {integrity: sha512-S1zBo1D6zcsyuC6PMmY5+55YMILQ9av8lotMx447Bq6SAgo/sDK6y6uUKmuYhW7eacnIhFfsPmCNYdDzsnnDCg==} + engines: {node: '>=6'} + dependencies: + default-gateway: 4.2.0 + ipaddr.js: 1.9.1 + dev: true + /internal-slot/1.0.3: resolution: {integrity: sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==} engines: {node: '>= 0.4'} @@ -13625,6 +15211,11 @@ packages: kind-of: 6.0.3 dev: true + /is-directory/0.3.1: + resolution: {integrity: sha512-yVChGzahRFvbkscn2MlwGismPO12i9+znNruC5gVEntG3qu0xQMzsGg/JFbrsqDOHtHFPci+V5aP5T9I+yeKqw==} + engines: {node: '>=0.10.0'} + dev: true + /is-docker/2.2.1: resolution: {integrity: sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==} engines: {node: '>=8'} @@ -13662,6 +15253,11 @@ packages: resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} engines: {node: '>=0.10.0'} + /is-fullwidth-code-point/2.0.0: + resolution: {integrity: sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==} + engines: {node: '>=4'} + dev: true + /is-fullwidth-code-point/3.0.0: resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} engines: {node: '>=8'} @@ -13708,6 +15304,13 @@ packages: engines: {node: '>=8'} dev: true + /is-invalid-path/0.1.0: + resolution: {integrity: sha512-aZMG0T3F34mTg4eTdszcGXx54oiZ4NtHSft3hWNJMGJXUUqdIj3cOZuHcU0nCWWcY3jd7yRe/3AEm3vSNTpBGQ==} + engines: {node: '>=0.10.0'} + dependencies: + is-glob: 2.0.1 + dev: true + /is-lambda/1.0.1: resolution: {integrity: sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ==} dev: true @@ -13777,7 +15380,6 @@ packages: /is-path-cwd/2.2.0: resolution: {integrity: sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ==} engines: {node: '>=6'} - dev: false /is-path-inside/3.0.3: resolution: {integrity: sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==} @@ -13838,7 +15440,6 @@ packages: /is-root/2.1.0: resolution: {integrity: sha512-AGOriNp96vNBd3HtU+RzFEc75FfR5ymiYv8E553I71SCeXBiMsVDUtdio1OEFvrPyLIQ9tVR5RxXIFe5PUFjMg==} engines: {node: '>=6'} - dev: false /is-set/2.0.2: resolution: {integrity: sha512-+2cnTEZeY5z/iXGbLhPrOAaK/Mau5k5eXq9j14CpRTftq0pAJu2MwVRSZhyZWBzx3o6X795Lz6Bpb6R0GKf37g==} @@ -13854,6 +15455,11 @@ packages: resolution: {integrity: sha512-xj0XPvmr7bQFTvirqnFr50o0hQIh6ZItDqloxt5aJrR4NQsYeSsyFQERYGCAzfindAcnKjINnwEEgLx4IqVzQw==} dev: true + /is-stream/1.1.0: + resolution: {integrity: sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ==} + engines: {node: '>=0.10.0'} + dev: true + /is-stream/2.0.1: resolution: {integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==} engines: {node: '>=8'} @@ -13902,6 +15508,13 @@ packages: resolution: {integrity: sha512-ITvGim8FhRiYe4IQ5uHSkj7pVaPDrCTkNd3yq3cV7iZAcJdHTUMPMEHcqSOy9xZ9qFenQCvi+2wjH9a1nXqHww==} dev: true + /is-valid-path/0.1.1: + resolution: {integrity: sha512-+kwPrVDu9Ms03L90Qaml+79+6DZHqHyRoANI6IsZJ/g8frhnfchDOBCa0RbQ6/kdHt5CS5OeIEyrYznNuVN+8A==} + engines: {node: '>=0.10.0'} + dependencies: + is-invalid-path: 0.1.0 + dev: true + /is-weakmap/2.0.1: resolution: {integrity: sha512-NSBR4kH5oVj1Uwvv970ruUkCV7O1mzgVFO4/rev2cLRda9Tm9HrL70ZPut4rOHgY0FNrUu9BCbXA2sdQ+x0chA==} dev: true @@ -14839,6 +16452,18 @@ packages: picomatch: 2.3.1 dev: true + /jest-validate/26.6.2: + resolution: {integrity: sha512-NEYZ9Aeyj0i5rQqbq+tpIOom0YS1u2MVu6+euBsvpgIme+FOfRmoC4R5p0JiAUpaFvFy24xgrpMknarR/93XjQ==} + engines: {node: '>= 10.14.2'} + dependencies: + '@jest/types': 26.6.2 + camelcase: 6.3.0 + chalk: 4.1.2 + jest-get-type: 26.3.0 + leven: 3.1.0 + pretty-format: 26.6.2 + dev: true + /jest-validate/27.5.1: resolution: {integrity: sha512-thkNli0LYTmOI1tDB3FI1S1RTp/Bqyd9pTarJwL87OIBFuqEb5Apv5EaApEudYg4g86e3CT6kM0RowkhtEnCBQ==} engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} @@ -14978,6 +16603,15 @@ packages: - ts-node dev: true + /jetifier/1.6.8: + resolution: {integrity: sha512-3Zi16h6L5tXDRQJTb221cnRoVG9/9OvreLdLU2/ZjRv/GILL+2Cemt0IKvkowwkDpvouAU1DQPOJ7qaiHeIdrw==} + hasBin: true + dev: true + + /jimp-compact/0.16.1: + resolution: {integrity: sha512-dZ6Ra7u1G8c4Letq/B5EzAxj4tLFHL+cGtdpR+PVm4yzPDj+lCk+AbivWt1eOM+ikzkowtyV7qSqX6qr3t71Ww==} + dev: true + /jju/1.4.0: resolution: {integrity: sha512-8wb9Yw966OSxApiCt0K3yNJL8pnNeIv+OEq2YMidz4FKP6nonSRoOXc80iXY4JaN2FC11B9qsNmDsm+ZOfMROA==} dev: true @@ -14991,6 +16625,10 @@ packages: '@sideway/formula': 3.0.0 '@sideway/pinpoint': 2.0.0 + /join-component/1.1.0: + resolution: {integrity: sha512-bF7vcQxbODoGK1imE2P9GS9aw4zD0Sd+Hni68IMZLj7zRnquH7dXUmMw9hDI5S/Jzt7q+IyTXN0rSg2GI0IKhQ==} + dev: true + /join-path/1.1.1: resolution: {integrity: sha512-jnt9OC34sLXMLJ6YfPQ2ZEKrR9mB5ZbSnQb4LPaOx1c5rTzxpR33L18jjp0r75mGGTJmsil3qwN1B5IBeTnSSA==} dependencies: @@ -15043,6 +16681,40 @@ packages: resolution: {integrity: sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg==} dev: true + /jsc-android/250230.2.1: + resolution: {integrity: sha512-KmxeBlRjwoqCnBBKGsihFtvsBHyUFlBxJPK4FzeYcIuBfdjv6jFys44JITAgSTbQD+vIdwMEfyZklsuQX0yI1Q==} + dev: true + + /jscodeshift/0.13.1_@babel+preset-env@7.18.2: + resolution: {integrity: sha512-lGyiEbGOvmMRKgWk4vf+lUrCWO/8YR8sUR3FKF1Cq5fovjZDlIcw3Hu5ppLHAnEXshVffvaM0eyuY/AbOeYpnQ==} + hasBin: true + peerDependencies: + '@babel/preset-env': ^7.1.6 + dependencies: + '@babel/core': 7.18.5 + '@babel/parser': 7.18.5 + '@babel/plugin-proposal-class-properties': 7.17.12_@babel+core@7.18.5 + '@babel/plugin-proposal-nullish-coalescing-operator': 7.17.12_@babel+core@7.18.5 + '@babel/plugin-proposal-optional-chaining': 7.17.12_@babel+core@7.18.5 + '@babel/plugin-transform-modules-commonjs': 7.18.2_@babel+core@7.18.5 + '@babel/preset-env': 7.18.2_@babel+core@7.18.5 + '@babel/preset-flow': 7.18.6_@babel+core@7.18.5 + '@babel/preset-typescript': 7.17.12_@babel+core@7.18.5 + '@babel/register': 7.18.9_@babel+core@7.18.5 + babel-core: 7.0.0-bridge.0_@babel+core@7.18.5 + chalk: 4.1.2 + flow-parser: 0.121.0 + graceful-fs: 4.2.10 + micromatch: 3.1.10 + neo-async: 2.6.2 + node-dir: 0.1.17 + recast: 0.20.5 + temp: 0.8.4 + write-file-atomic: 2.4.3 + transitivePeerDependencies: + - supports-color + dev: true + /jsdom/16.7.0: resolution: {integrity: sha512-u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw==} engines: {node: '>=10'} @@ -15145,6 +16817,10 @@ packages: /json-buffer/3.0.0: resolution: {integrity: sha1-Wx85evx11ne96Lz8Dkfh+aPZqJg=} + /json-parse-better-errors/1.0.2: + resolution: {integrity: sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==} + dev: true + /json-parse-even-better-errors/2.3.1: resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==} @@ -15158,6 +16834,20 @@ packages: resolution: {integrity: sha512-KMsG905wFbHHTnvd66MHCNo0E43UPalKt2zQUbBtWrDYKk/3vE/4u8lfWDdIyPEoMXxOFJO1lsBs6xPBXKxeVw==} dev: true + /json-schema-deref-sync/0.13.0: + resolution: {integrity: sha512-YBOEogm5w9Op337yb6pAT6ZXDqlxAsQCanM3grid8lMWNxRJO/zWEJi3ZzqDL8boWfwhTFym5EFrNgWwpqcBRg==} + engines: {node: '>=6.0.0'} + dependencies: + clone: 2.1.2 + dag-map: 1.0.2 + is-valid-path: 0.1.1 + lodash: 4.17.21 + md5: 2.2.1 + memory-cache: 0.2.0 + traverse: 0.6.6 + valid-url: 1.0.9 + dev: true + /json-schema-traverse/0.4.1: resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} @@ -15176,6 +16866,11 @@ packages: resolution: {integrity: sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==} dev: true + /json5/0.5.1: + resolution: {integrity: sha512-4xrs1aW+6N5DalkqSVA8fxh458CXvR99WU8WLKmq4v8eWAL86Xo3BVqyd3SkA9wEVjCMqyvvRRkshAdOnBp5rw==} + hasBin: true + dev: true + /json5/1.0.1: resolution: {integrity: sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==} hasBin: true @@ -15192,6 +16887,12 @@ packages: resolution: {integrity: sha512-fQzRfAbIBnR0IQvftw9FJveWiHp72Fg20giDrHz6TdfB12UH/uue0D3hm57UB5KgAVuniLMCaS8P1IMj9NR7cA==} dev: true + /jsonfile/2.4.0: + resolution: {integrity: sha512-PKllAqbgLgxHaj8TElYymKCAgrASebJrWpTnEkOaTowt23VKXXN0sUeriJ+eh7y6ufb/CC5ap11pz71/cM0hUw==} + optionalDependencies: + graceful-fs: 4.2.10 + dev: true + /jsonfile/4.0.0: resolution: {integrity: sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==} optionalDependencies: @@ -15313,6 +17014,12 @@ packages: resolution: {integrity: sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==} engines: {node: '>=0.10.0'} + /klaw/1.3.1: + resolution: {integrity: sha512-TED5xi9gGQjGpNnvRWknrwAB1eL5GciPfVFOt3Vk1OJCVDQbzuSfrF3hkUQKlsgKrG1F+0t5W0m+Fje1jIt8rw==} + optionalDependencies: + graceful-fs: 4.2.10 + dev: true + /kleur/3.0.3: resolution: {integrity: sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==} engines: {node: '>=6'} @@ -15580,7 +17287,6 @@ packages: dependencies: p-locate: 3.0.0 path-exists: 3.0.0 - dev: false /locate-path/5.0.0: resolution: {integrity: sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==} @@ -15593,7 +17299,6 @@ packages: engines: {node: '>=10'} dependencies: p-locate: 5.0.0 - dev: false /lodash._objecttypes/2.4.1: resolution: {integrity: sha512-XpqGh1e7hhkOzftBfWE7zt+Yn9mVHFkDhicVttvKLsoCMLVVL+xTQjfjB4X4vtznauxv0QZ5ZAeqjvat0dh62Q==} @@ -15668,6 +17373,10 @@ packages: resolution: {integrity: sha512-QZ1d4xoBHYUeuouhEq3lk3Uq7ldgyFXGBhg04+oRLnIz8o9T65Eh+8YdroUwn846zchkA9yDsDl5CVVaV2nqYw==} dev: true + /lodash.throttle/4.1.1: + resolution: {integrity: sha512-wIkUCfVKpVsWo3JSZlc+8MB5it+2AN5W8J7YVMST30UrvcQNZ1Okbj+rbVniijTWE6FGYy4XJq/rHkas8qJMLQ==} + dev: true + /lodash.truncate/4.4.2: resolution: {integrity: sha512-jttmRe7bRse52OsWIMDLaXxWqRAmtIUccAQ3garviCqJjafXOfNMO0yMfNpdD6zbGaTU0P5Nz7e7gAT6cKmJRw==} dev: true @@ -15682,6 +17391,13 @@ packages: /lodash/4.17.21: resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} + /log-symbols/2.2.0: + resolution: {integrity: sha512-VeIAFslyIerEJLXHziedo2basKbMKtTw3vfn5IzG0XTjhAVEJyNHnL2p7vc+wBDSdQuUpNw3M2u6xb9QsAY5Eg==} + engines: {node: '>=4'} + dependencies: + chalk: 2.4.2 + dev: true + /log-symbols/4.1.0: resolution: {integrity: sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==} engines: {node: '>=10'} @@ -15700,6 +17416,15 @@ packages: triple-beam: 1.3.0 dev: true + /logkitty/0.7.1: + resolution: {integrity: sha512-/3ER20CTTbahrCrpYfPn7Xavv9diBROZpoXGVZDWMw4b/X4uuUwAC0ki85tgsdMRONURyIJbcOvS94QsUBYPbQ==} + hasBin: true + dependencies: + ansi-fragments: 0.2.1 + dayjs: 1.11.5 + yargs: 15.4.1 + dev: true + /long/4.0.0: resolution: {integrity: sha512-XsP+KhQif4bjX1kbuSiySJFNAehNxgLb6hPRGJ9QsUr8ajHkuXGdrHmFUTUUXhDwVX2R5bY4JNZEwbUiMhV+MA==} dev: true @@ -15912,6 +17637,34 @@ packages: resolution: {integrity: sha512-rUxjysqif/BZQH2yhd5Aaq7vXMSx9NdEsQcyA07uEzIvxgI7zIr33gGsh+RU0/XjmQpCW7RsVof1vlkvQVCK5A==} dev: true + /md5-file/3.2.3: + resolution: {integrity: sha512-3Tkp1piAHaworfcCgH0jKbTvj1jWWFgbvh2cXaNCgHwyTCBxxvD1Y04rmfpvdPm1P4oXMOpm6+2H7sr7v9v8Fw==} + engines: {node: '>=0.10'} + hasBin: true + dependencies: + buffer-alloc: 1.2.0 + dev: true + + /md5/2.2.1: + resolution: {integrity: sha512-PlGG4z5mBANDGCKsYQe0CaUYHdZYZt8ZPZLmEt+Urf0W4GlpTX4HescwHU+dc9+Z/G/vZKYZYFrwgm9VxK6QOQ==} + dependencies: + charenc: 0.0.2 + crypt: 0.0.2 + is-buffer: 1.1.6 + dev: true + + /md5/2.3.0: + resolution: {integrity: sha512-T1GITYmFaKuO91vxyoQMFETst+O71VUPEU3ze5GNzDm0OWdP8v1ziTaAEPUr/3kLsY3Sftgz242A1SetQiDL7g==} + dependencies: + charenc: 0.0.2 + crypt: 0.0.2 + is-buffer: 1.1.6 + dev: true + + /md5hex/1.0.0: + resolution: {integrity: sha512-c2YOUbp33+6thdCUi34xIyOU/a7bvGKj/3DB1iaPMTuPHf/Q2d5s4sn1FaCOO43XkXggnb08y5W2PU8UNYNLKQ==} + dev: true + /mdast-squeeze-paragraphs/4.0.0: resolution: {integrity: sha512-zxdPn69hkQ1rm4J+2Cs2j6wDEv7O17TfXTJ33tl/+JPIoEmtV9t2ZzBM5LPHE8QlHsmVD8t3vPKCyY3oH+H8MQ==} dependencies: @@ -15972,7 +17725,7 @@ packages: dev: false /media-typer/0.3.0: - resolution: {integrity: sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=} + resolution: {integrity: sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==} engines: {node: '>= 0.6'} /memdown/1.4.1: @@ -15993,6 +17746,10 @@ packages: fs-monkey: 1.0.3 dev: false + /memoize-one/5.2.1: + resolution: {integrity: sha512-zYiwtZUcYyXKo/np96AGZAckk+FWWsUdJ3cHGGmld7+AhvcWmQyGCYUh1hc4Q/pkOhb65dQR/pqCyK0cOaHz4Q==} + dev: true + /memoizee/0.4.15: resolution: {integrity: sha512-UBWmJpLZd5STPm7PMUlOw/TSy972M+z8gcyQ5veOnSDRREz/0bmpyTfKt3/51DhEBqCZQn1udM/5flcSPYhkdQ==} dependencies: @@ -16006,6 +17763,10 @@ packages: timers-ext: 0.1.7 dev: true + /memory-cache/0.2.0: + resolution: {integrity: sha512-OcjA+jzjOYzKmKS6IQVALHLVz+rNTMPoJvCztFaZxwG14wtAW7VRZjwTQu06vKCYOxh4jVnik7ya0SXTB0W+xA==} + dev: true + /memory-pager/1.5.0: resolution: {integrity: sha512-ZS4Bp4r/Zoeq6+NLJpP+0Zzm0pR8whtGPf1XExKLJBAczGMnSi3It14OiNCStjQjM6NU1okjQGSxgEZN8eBYKg==} dev: true @@ -16038,23 +17799,291 @@ packages: resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} engines: {node: '>= 8'} - /mermaid/9.1.2: - resolution: {integrity: sha512-RVf3hBKqiMfyORHboCaEjOAK1TomLO50hYRPvlTrZCXlCniM5pRpe8UlkHBjjpaLtioZnbdYv/vEVj7iKnwkJQ==} + /mermaid/9.1.2: + resolution: {integrity: sha512-RVf3hBKqiMfyORHboCaEjOAK1TomLO50hYRPvlTrZCXlCniM5pRpe8UlkHBjjpaLtioZnbdYv/vEVj7iKnwkJQ==} + dependencies: + '@braintree/sanitize-url': 6.0.0 + d3: 7.4.4 + dagre: 0.8.5 + dagre-d3: 0.6.4 + dompurify: 2.3.8 + graphlib: 2.1.8 + khroma: 2.0.0 + moment-mini: 2.24.0 + stylis: 4.1.1 + dev: false + + /methods/1.1.2: + resolution: {integrity: sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==} + engines: {node: '>= 0.6'} + + /metro-babel-transformer/0.70.3: + resolution: {integrity: sha512-bWhZRMn+mIOR/s3BDpFevWScz9sV8FGktVfMlF1eJBLoX24itHDbXvTktKBYi38PWIKcHedh6THSFpJogfuwNA==} + dependencies: + '@babel/core': 7.18.5 + hermes-parser: 0.6.0 + metro-source-map: 0.70.3 + nullthrows: 1.1.1 + transitivePeerDependencies: + - supports-color + dev: true + + /metro-cache-key/0.70.3: + resolution: {integrity: sha512-0zpw+IcpM3hmGd5sKMdxNv3sbOIUYnMUvx1/yaM6vNRReSPmOLX0bP8fYf3CGgk8NEreZ1OHbVsuw7bdKt40Mw==} + dev: true + + /metro-cache/0.70.3: + resolution: {integrity: sha512-iCix/+z812fUqa6KlOxaTkY6LQQDoXIe/VljXkGIvpygSCmYyhjQpfQVZEVVPezFmUBYXNdabdQ6cYx6JX3yMg==} + dependencies: + metro-core: 0.70.3 + rimraf: 2.7.1 + dev: true + + /metro-config/0.70.3: + resolution: {integrity: sha512-SSCDjSTygoCgzoj61DdrBeJzZDRwQxUEfcgc6t6coxWSExXNR4mOngz0q4SAam49Bmjq9J2Jft6qUKnUTPrRgA==} + dependencies: + cosmiconfig: 5.2.1 + jest-validate: 26.6.2 + metro: 0.70.3 + metro-cache: 0.70.3 + metro-core: 0.70.3 + metro-runtime: 0.70.3 + transitivePeerDependencies: + - bufferutil + - encoding + - supports-color + - utf-8-validate + dev: true + + /metro-core/0.70.3: + resolution: {integrity: sha512-NzfHB/w5R7yLaOeU1tzPTbBzCRsYSvpKJkLMP0yudszKZzIAZqNdjoEJ9GZ688Wi0ynZxcU0BxukXh4my80ZBw==} + dependencies: + jest-haste-map: 27.5.1 + lodash.throttle: 4.1.1 + metro-resolver: 0.70.3 + dev: true + + /metro-hermes-compiler/0.70.3: + resolution: {integrity: sha512-W6WttLi4E72JL/NyteQ84uxYOFMibe0PUr9aBKuJxxfCq6QRnJKOVcNY0NLW0He2tneXGk+8ZsNz8c0flEvYqg==} + dev: true + + /metro-inspector-proxy/0.70.3: + resolution: {integrity: sha512-qQoNdPGrmyoJSWYkxSDpTaAI8xyqVdNDVVj9KRm1PG8niSuYmrCCFGLLFsMvkVYwsCWUGHoGBx0UoAzVp14ejw==} + hasBin: true + dependencies: + connect: 3.7.0 + debug: 2.6.9 + ws: 7.5.8 + yargs: 15.4.1 + transitivePeerDependencies: + - bufferutil + - supports-color + - utf-8-validate + dev: true + + /metro-minify-uglify/0.70.3: + resolution: {integrity: sha512-oHyjV9WDqOlDE1FPtvs6tIjjeY/oP1PNUPYL1wqyYtqvjN+zzAOrcbsAAL1sv+WARaeiMsWkF2bwtNo+Hghoog==} + dependencies: + uglify-es: 3.3.9 + dev: true + + /metro-react-native-babel-preset/0.70.3: + resolution: {integrity: sha512-4Nxc1zEiHEu+GTdEMEsHnRgfaBkg8f/Td3+FcQ8NTSvs+xL3LBrQy6N07idWSQZHIdGFf+tTHvRfSIWLD8u8Tg==} + dependencies: + '@babel/core': 7.18.5 + '@babel/plugin-proposal-async-generator-functions': 7.17.12_@babel+core@7.18.5 + '@babel/plugin-proposal-class-properties': 7.17.12_@babel+core@7.18.5 + '@babel/plugin-proposal-export-default-from': 7.18.10_@babel+core@7.18.5 + '@babel/plugin-proposal-nullish-coalescing-operator': 7.17.12_@babel+core@7.18.5 + '@babel/plugin-proposal-object-rest-spread': 7.18.0_@babel+core@7.18.5 + '@babel/plugin-proposal-optional-catch-binding': 7.16.7_@babel+core@7.18.5 + '@babel/plugin-proposal-optional-chaining': 7.17.12_@babel+core@7.18.5 + '@babel/plugin-syntax-dynamic-import': 7.8.3_@babel+core@7.18.5 + '@babel/plugin-syntax-export-default-from': 7.18.6_@babel+core@7.18.5 + '@babel/plugin-syntax-flow': 7.18.6_@babel+core@7.18.5 + '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3_@babel+core@7.18.5 + '@babel/plugin-syntax-optional-chaining': 7.8.3_@babel+core@7.18.5 + '@babel/plugin-transform-arrow-functions': 7.17.12_@babel+core@7.18.5 + '@babel/plugin-transform-async-to-generator': 7.17.12_@babel+core@7.18.5 + '@babel/plugin-transform-block-scoping': 7.18.4_@babel+core@7.18.5 + '@babel/plugin-transform-classes': 7.18.4_@babel+core@7.18.5 + '@babel/plugin-transform-computed-properties': 7.17.12_@babel+core@7.18.5 + '@babel/plugin-transform-destructuring': 7.18.0_@babel+core@7.18.5 + '@babel/plugin-transform-exponentiation-operator': 7.16.7_@babel+core@7.18.5 + '@babel/plugin-transform-flow-strip-types': 7.18.9_@babel+core@7.18.5 + '@babel/plugin-transform-function-name': 7.16.7_@babel+core@7.18.5 + '@babel/plugin-transform-literals': 7.17.12_@babel+core@7.18.5 + '@babel/plugin-transform-modules-commonjs': 7.18.2_@babel+core@7.18.5 + '@babel/plugin-transform-named-capturing-groups-regex': 7.17.12_@babel+core@7.18.5 + '@babel/plugin-transform-parameters': 7.17.12_@babel+core@7.18.5 + '@babel/plugin-transform-react-display-name': 7.16.7_@babel+core@7.18.5 + '@babel/plugin-transform-react-jsx': 7.17.12_@babel+core@7.18.5 + '@babel/plugin-transform-react-jsx-self': 7.18.6_@babel+core@7.18.5 + '@babel/plugin-transform-react-jsx-source': 7.18.6_@babel+core@7.18.5 + '@babel/plugin-transform-runtime': 7.18.5_@babel+core@7.18.5 + '@babel/plugin-transform-shorthand-properties': 7.16.7_@babel+core@7.18.5 + '@babel/plugin-transform-spread': 7.17.12_@babel+core@7.18.5 + '@babel/plugin-transform-sticky-regex': 7.16.7_@babel+core@7.18.5 + '@babel/plugin-transform-template-literals': 7.18.2_@babel+core@7.18.5 + '@babel/plugin-transform-typescript': 7.18.4_@babel+core@7.18.5 + '@babel/plugin-transform-unicode-regex': 7.16.7_@babel+core@7.18.5 + '@babel/template': 7.16.7 + react-refresh: 0.4.3 + transitivePeerDependencies: + - supports-color + dev: true + + /metro-react-native-babel-transformer/0.70.3: + resolution: {integrity: sha512-WKBU6S/G50j9cfmFM4k4oRYprd8u3qjleD4so1E2zbTNILg+gYla7ZFGCAvi2G0ZcqS2XuGCR375c2hF6VVvwg==} + dependencies: + '@babel/core': 7.18.5 + babel-preset-fbjs: 3.4.0_@babel+core@7.18.5 + hermes-parser: 0.6.0 + metro-babel-transformer: 0.70.3 + metro-react-native-babel-preset: 0.70.3 + metro-source-map: 0.70.3 + nullthrows: 1.1.1 + transitivePeerDependencies: + - supports-color + dev: true + + /metro-resolver/0.70.3: + resolution: {integrity: sha512-5Pc5S/Gs4RlLbziuIWtvtFd9GRoILlaRC8RZDVq5JZWcWHywKy/PjNmOBNhpyvtRlzpJfy/ssIfLhu8zINt1Mw==} + dependencies: + absolute-path: 0.0.0 + dev: true + + /metro-runtime/0.70.3: + resolution: {integrity: sha512-22xU7UdXZacniTIDZgN2EYtmfau2pPyh97Dcs+cWrLcJYgfMKjWBtesnDcUAQy3PHekDYvBdJZkoQUeskYTM+w==} + dependencies: + '@babel/runtime': 7.18.3 + dev: true + + /metro-source-map/0.70.3: + resolution: {integrity: sha512-zsYtZGrwRbbGEFHtmMqqeCH9K9aTGNVPsurMOWCUeQA3VGyVGXPGtLMC+CdAM9jLpUyg6jw2xh0esxi+tYH7Uw==} + dependencies: + '@babel/traverse': 7.18.5 + '@babel/types': 7.18.4 + invariant: 2.2.4 + metro-symbolicate: 0.70.3 + nullthrows: 1.1.1 + ob1: 0.70.3 + source-map: 0.5.7 + vlq: 1.0.1 + transitivePeerDependencies: + - supports-color + dev: true + + /metro-symbolicate/0.70.3: + resolution: {integrity: sha512-JTYkF1dpeDUssQ84juE1ycnhHki2ylJBBdJE1JHtfu5oC+z1ElDbBdPHq90Uvt8HbRov/ZAnxvv7Zy6asS+WCA==} + engines: {node: '>=8.3'} + hasBin: true + dependencies: + invariant: 2.2.4 + metro-source-map: 0.70.3 + nullthrows: 1.1.1 + source-map: 0.5.7 + through2: 2.0.5 + vlq: 1.0.1 + transitivePeerDependencies: + - supports-color + dev: true + + /metro-transform-plugins/0.70.3: + resolution: {integrity: sha512-dQRIJoTkWZN2IVS2KzgS1hs7ZdHDX3fS3esfifPkqFAEwHiLctCf0EsPgIknp0AjMLvmGWfSLJigdRB/dc0ASw==} + dependencies: + '@babel/core': 7.18.5 + '@babel/generator': 7.18.2 + '@babel/template': 7.16.7 + '@babel/traverse': 7.18.13 + nullthrows: 1.1.1 + transitivePeerDependencies: + - supports-color + dev: true + + /metro-transform-worker/0.70.3: + resolution: {integrity: sha512-MtVVsnHhhBOp9GRLCdAb2mD1dTCsIzT4+m34KMRdBDCEbDIb90YafT5prpU8qbj5uKd0o2FOQdrJ5iy5zQilHw==} dependencies: - '@braintree/sanitize-url': 6.0.0 - d3: 7.4.4 - dagre: 0.8.5 - dagre-d3: 0.6.4 - dompurify: 2.3.8 - graphlib: 2.1.8 - khroma: 2.0.0 - moment-mini: 2.24.0 - stylis: 4.1.1 - dev: false + '@babel/core': 7.18.5 + '@babel/generator': 7.18.2 + '@babel/parser': 7.18.5 + '@babel/types': 7.18.13 + babel-preset-fbjs: 3.4.0_@babel+core@7.18.5 + metro: 0.70.3 + metro-babel-transformer: 0.70.3 + metro-cache: 0.70.3 + metro-cache-key: 0.70.3 + metro-hermes-compiler: 0.70.3 + metro-source-map: 0.70.3 + metro-transform-plugins: 0.70.3 + nullthrows: 1.1.1 + transitivePeerDependencies: + - bufferutil + - encoding + - supports-color + - utf-8-validate + dev: true - /methods/1.1.2: - resolution: {integrity: sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==} - engines: {node: '>= 0.6'} + /metro/0.70.3: + resolution: {integrity: sha512-uEWS7xg8oTetQDABYNtsyeUjdLhH3KAvLFpaFFoJqUpOk2A3iygszdqmjobFl6W4zrvKDJS+XxdMR1roYvUhTw==} + hasBin: true + dependencies: + '@babel/code-frame': 7.18.6 + '@babel/core': 7.18.5 + '@babel/generator': 7.18.2 + '@babel/parser': 7.18.5 + '@babel/template': 7.16.7 + '@babel/traverse': 7.18.5 + '@babel/types': 7.18.4 + absolute-path: 0.0.0 + accepts: 1.3.8 + async: 3.2.4 + chalk: 4.1.2 + ci-info: 2.0.0 + connect: 3.7.0 + debug: 2.6.9 + denodeify: 1.2.1 + error-stack-parser: 2.1.4 + fs-extra: 1.0.0 + graceful-fs: 4.2.10 + hermes-parser: 0.6.0 + image-size: 0.6.3 + invariant: 2.2.4 + jest-haste-map: 27.5.1 + jest-worker: 27.5.1 + lodash.throttle: 4.1.1 + metro-babel-transformer: 0.70.3 + metro-cache: 0.70.3 + metro-cache-key: 0.70.3 + metro-config: 0.70.3 + metro-core: 0.70.3 + metro-hermes-compiler: 0.70.3 + metro-inspector-proxy: 0.70.3 + metro-minify-uglify: 0.70.3 + metro-react-native-babel-preset: 0.70.3 + metro-resolver: 0.70.3 + metro-runtime: 0.70.3 + metro-source-map: 0.70.3 + metro-symbolicate: 0.70.3 + metro-transform-plugins: 0.70.3 + metro-transform-worker: 0.70.3 + mime-types: 2.1.35 + node-fetch: 2.6.7 + nullthrows: 1.1.1 + rimraf: 2.7.1 + serialize-error: 2.1.0 + source-map: 0.5.7 + strip-ansi: 6.0.1 + temp: 0.8.3 + throat: 5.0.0 + ws: 7.5.8 + yargs: 15.4.1 + transitivePeerDependencies: + - bufferutil + - encoding + - supports-color + - utf-8-validate + dev: true /micromatch/2.3.11: resolution: {integrity: sha512-LnU2XFEk9xxSJ6rfgAry/ty5qwUTyHYOBU0g4R6tIw5ljwgGIBmiKhRWLw5NpMOnrgUNcDJ4WMp8rl3sYVHLNA==} @@ -16141,6 +18170,11 @@ packages: hasBin: true dev: true + /mimic-fn/1.2.0: + resolution: {integrity: sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==} + engines: {node: '>=4'} + dev: true + /mimic-fn/2.1.0: resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==} engines: {node: '>=6'} @@ -16223,7 +18257,6 @@ packages: dependencies: minipass: 3.3.3 dev: true - optional: true /minipass-fetch/1.4.1: resolution: {integrity: sha512-CGH1eblLq26Y15+Azk7ey4xh0J/XfJfrCox5LDJiKqI2Q2iwOLOKrlmIaODiSQS8d18jalF6y2K2ePUm0CmShw==} @@ -16255,7 +18288,6 @@ packages: dependencies: minipass: 3.3.3 dev: true - optional: true /minipass-pipeline/1.2.4: resolution: {integrity: sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==} @@ -16263,7 +18295,6 @@ packages: dependencies: minipass: 3.3.3 dev: true - optional: true /minipass-sized/1.0.3: resolution: {integrity: sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g==} @@ -16280,6 +18311,13 @@ packages: yallist: 3.1.1 dev: true + /minipass/3.1.6: + resolution: {integrity: sha512-rty5kpw9/z8SX9dmxblFA6edItUmwJgMeYDZRrwlIVN27i8gysGbznJwUggw2V/FVqFSDdWy040ZPS811DYAqQ==} + engines: {node: '>=8'} + dependencies: + yallist: 4.0.0 + dev: true + /minipass/3.3.3: resolution: {integrity: sha512-N0BOsdFAlNRfmwMhjAsLVWOk7Ljmeb39iqFlsV1At+jqRhSUP9yeof8FyJu4imaJiSUp8vQebWD/guZwGQC8iA==} engines: {node: '>=8'} @@ -16479,6 +18517,17 @@ packages: resolution: {integrity: sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==} dev: true + /mv/2.1.1: + resolution: {integrity: sha512-at/ZndSy3xEGJ8i0ygALh8ru9qy7gWW1cmkaqBN29JmMlIvM//MEO9y1sk/avxuwnPcfhkejkLsuPxH81BrkSg==} + engines: {node: '>=0.8.0'} + requiresBuild: true + dependencies: + mkdirp: 0.5.6 + ncp: 2.0.0 + rimraf: 2.4.5 + dev: true + optional: true + /mysql/2.18.1: resolution: {integrity: sha512-Bca+gk2YWmqp2Uf6k5NFEurwY/0td0cpebAucFpY/3jhrwrVGuxU2uQFCHjU19SJfje0yQvi+rVWdq78hR5lig==} engines: {node: '>= 0.6'} @@ -16543,6 +18592,12 @@ packages: resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} dev: true + /ncp/2.0.0: + resolution: {integrity: sha512-zIdGUrPRFTUELUvr3Gmc7KZ2Sw/h1PiVM0Af/oHB6zgnV1ikqSfRk+TOufi79aHYCW3NiOXmr1BP5nWbzojLaA==} + hasBin: true + dev: true + optional: true + /negotiator/0.6.3: resolution: {integrity: sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==} engines: {node: '>= 0.6'} @@ -16571,6 +18626,10 @@ packages: rxjs: 6.6.7 dev: true + /nested-error-stacks/2.0.1: + resolution: {integrity: sha512-SrQrok4CATudVzBS7coSz26QRSmlK9TzzoFbeKfcPBUFPjcQM9Rqvr/DlJkOrwI/0KcgvMub1n1g5Jt9EgRn4A==} + dev: true + /netmask/2.0.2: resolution: {integrity: sha512-dBpDMdxv9Irdq66304OLfEmQ9tbNRFnFTuZiLo+bD+r332bBmMJ8GBLXklIXXgxd3+v9+KUnZaUR5PJMa75Gsg==} engines: {node: '>= 0.4.0'} @@ -16681,6 +18740,11 @@ packages: tslib: 2.4.0 dev: false + /nocache/3.0.4: + resolution: {integrity: sha512-WDD0bdg9mbq6F4mRxEYcPWwfA1vxd0mrvKOyxI7Xj/atfRHVeutzuWByG//jfm4uPzp0y4Kj051EORCBSQMycw==} + engines: {node: '>=12.0.0'} + dev: true + /node-abi/3.22.0: resolution: {integrity: sha512-u4uAs/4Zzmp/jjsD9cyFYDXeISfUWaAVWshPmDZOFOv4Xl4SbzTXm53I04C2uRueYJ+0t5PEtLH/owbn2Npf/w==} engines: {node: '>=10'} @@ -16700,6 +18764,13 @@ packages: resolution: {integrity: sha512-73sE9+3UaLYYFmDsFZnqCInzPyh3MqIwZO9cw58yIqAZhONrrabrYyYe3TuIqtIiOuTXVhsGau8hcrhhwSsDIQ==} dev: true + /node-dir/0.1.17: + resolution: {integrity: sha512-tmPX422rYgofd4epzrNoOXiE8XFZYOcCq1vD7MAXCDO+O+zndlA2ztdKKMa+EeuBG5tHETpr4ml4RGgpqDCCAg==} + engines: {node: '>= 0.10.5'} + dependencies: + minimatch: 3.1.2 + dev: true + /node-emoji/1.11.0: resolution: {integrity: sha512-wo2DpQkQp7Sjm2A0cq+sN7EHKO6Sl0ctXeBdFZrL9T9+UywORbufTcTZxom8YqpLQt/FqNMUkOpkZrJVYSKD3A==} dependencies: @@ -16775,6 +18846,11 @@ packages: /node-releases/2.0.5: resolution: {integrity: sha512-U9h1NLROZTq9uE1SNffn6WuPDg8icmi3ns4rEl/oTfIle4iLjTliCzgTsbaIFMq/Xn078/lfY/BL0GWZ+psK4Q==} + /node-stream-zip/1.15.0: + resolution: {integrity: sha512-LN4fydt9TqhZhThkZIVQnF9cwjU3qmUH9h78Mx/K7d3VvfRqqwthLwJEUOEL0QPZ0XQmNN7be5Ggit5+4dq3Bw==} + engines: {node: '>=0.12.0'} + dev: true + /nodemailer/6.4.11: resolution: {integrity: sha512-BVZBDi+aJV4O38rxsUh164Dk1NCqgh6Cm0rQSb9SK/DHGll/DrCMnycVDD7msJgZCnmVa8ASo8EZzR7jsgTukQ==} engines: {node: '>=6.0.0'} @@ -16833,6 +18909,15 @@ packages: resolution: {integrity: sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==} engines: {node: '>=0.10.0'} + /normalize-url/2.0.1: + resolution: {integrity: sha512-D6MUW4K/VzoJ4rJ01JFKxDrtY1v9wrgzCX5f2qj/lzH1m/lW6MhUZFKerVsnyjOhOsYzI9Kqqak+10l4LvLpMw==} + engines: {node: '>=4'} + dependencies: + prepend-http: 2.0.0 + query-string: 5.1.1 + sort-keys: 2.0.0 + dev: true + /normalize-url/4.5.1: resolution: {integrity: sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA==} engines: {node: '>=8'} @@ -16841,6 +18926,22 @@ packages: resolution: {integrity: sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==} engines: {node: '>=10'} + /npm-package-arg/7.0.0: + resolution: {integrity: sha512-xXxr8y5U0kl8dVkz2oK7yZjPBvqM2fwaO5l3Yg13p03v8+E3qQcD0JNhHzjL1vyGgxcKkD0cco+NLR72iuPk3g==} + dependencies: + hosted-git-info: 3.0.8 + osenv: 0.1.5 + semver: 5.7.1 + validate-npm-package-name: 3.0.0 + dev: true + + /npm-run-path/2.0.2: + resolution: {integrity: sha512-lJxZYlT4DW/bRUtFh1MQIWqmLwQfAxnqWG4HhEdjMlkrJYnJn0Jrr2u3mgxqaWsdiBc76TYkTG/mhrnYTuzfHw==} + engines: {node: '>=4'} + dependencies: + path-key: 2.0.1 + dev: true + /npm-run-path/4.0.1: resolution: {integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==} engines: {node: '>=8'} @@ -16876,6 +18977,10 @@ packages: dependencies: boolbase: 1.0.0 + /nullthrows/1.1.1: + resolution: {integrity: sha512-2vPPEi+Z7WqML2jZYddDIfy5Dqb0r2fze2zTxNNknZaFpVHU3mFB3R+DWeJWGVx0ecvttSGlJTI+WG+8Z4cDWw==} + dev: true + /nwsapi/2.2.0: resolution: {integrity: sha512-h2AatdwYH+JHiZpv7pt/gSX1XoRGb7L/qSIeuqA6GwYoF9w1vP1cw42TO0aI2pNyshRK5893hNSl+1//vHK7hQ==} dev: true @@ -16888,6 +18993,10 @@ packages: resolution: {integrity: sha512-a5ERWK1kh38ExDEfoO6qUHJb32rd7aYmPHuyCu3Fta/cnICvYmgd2uhuKXvPD+PXB+gCEYYEaQdIRAjCOwAKNA==} dev: false + /ob1/0.70.3: + resolution: {integrity: sha512-Vy9GGhuXgDRY01QA6kdhToPd8AkLdLpX9GjH5kpqluVqTu70mgOm7tpGoJDZGaNbr9nJlJgnipqHJQRPORixIQ==} + dev: true + /object-assign/4.1.1: resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} engines: {node: '>=0.10.0'} @@ -17007,6 +19116,13 @@ packages: fn.name: 1.1.0 dev: true + /onetime/2.0.1: + resolution: {integrity: sha512-oyyPpiMaKARvvcgip+JV+7zci5L8D1W9RZIz2l1o08AM3pfspitVWnPt3mzHcBPp12oYMTy0pqrFs/C+m3EwsQ==} + engines: {node: '>=4'} + dependencies: + mimic-fn: 1.2.0 + dev: true + /onetime/5.1.2: resolution: {integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==} engines: {node: '>=6'} @@ -17035,7 +19151,6 @@ packages: define-lazy-prop: 2.0.0 is-docker: 2.2.1 is-wsl: 2.2.0 - dev: false /openapi3-ts/2.0.2: resolution: {integrity: sha512-TxhYBMoqx9frXyOgnRHufjQfPXomTIHYKhSKJ6jHfj13kS8OEIhvmE8CTuQyKtjjWttAjX5DPxM1vmalEpo8Qw==} @@ -17082,6 +19197,18 @@ packages: word-wrap: 1.2.3 dev: true + /ora/3.4.0: + resolution: {integrity: sha512-eNwHudNbO1folBP3JsZ19v9azXWtQZjICdr3Q0TDPIaeBQ3mXLrh54wM+er0+hSp+dWKf+Z8KM58CYzEyIYxYg==} + engines: {node: '>=6'} + dependencies: + chalk: 2.4.2 + cli-cursor: 2.1.0 + cli-spinners: 2.6.1 + log-symbols: 2.2.0 + strip-ansi: 5.2.0 + wcwidth: 1.0.1 + dev: true + /ora/5.4.1: resolution: {integrity: sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==} engines: {node: '>=10'} @@ -17107,6 +19234,13 @@ packages: engines: {node: '>=0.10.0'} dev: true + /osenv/0.1.5: + resolution: {integrity: sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==} + dependencies: + os-homedir: 1.0.2 + os-tmpdir: 1.0.2 + dev: true + /outvariant/1.3.0: resolution: {integrity: sha512-yeWM9k6UPfG/nzxdaPlJkB2p08hCg4xP6Lx99F+vP8YF7xyZVfTmJjrrNalkmzudD4WFvNLVudQikqUmF8zhVQ==} dev: true @@ -17120,6 +19254,11 @@ packages: engines: {node: '>=8'} dev: true + /p-finally/1.0.0: + resolution: {integrity: sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow==} + engines: {node: '>=4'} + dev: true + /p-limit/1.3.0: resolution: {integrity: sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==} engines: {node: '>=4'} @@ -17138,7 +19277,6 @@ packages: engines: {node: '>=10'} dependencies: yocto-queue: 0.1.0 - dev: false /p-locate/2.0.0: resolution: {integrity: sha512-nQja7m7gSKuewoVRen45CtVfODR3crN3goVQ0DDZ9N3yHxgpkuBhZqsaiotSQRrADUrne346peY7kT3TSACykg==} @@ -17152,7 +19290,6 @@ packages: engines: {node: '>=6'} dependencies: p-limit: 2.3.0 - dev: false /p-locate/4.1.0: resolution: {integrity: sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==} @@ -17165,7 +19302,6 @@ packages: engines: {node: '>=10'} dependencies: p-limit: 3.1.0 - dev: false /p-map/4.0.0: resolution: {integrity: sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==} @@ -17267,6 +19403,14 @@ packages: is-glob: 2.0.1 dev: true + /parse-json/4.0.0: + resolution: {integrity: sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==} + engines: {node: '>=4'} + dependencies: + error-ex: 1.3.2 + json-parse-better-errors: 1.0.2 + dev: true + /parse-json/5.2.0: resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==} engines: {node: '>=8'} @@ -17285,6 +19429,13 @@ packages: engines: {node: '>=0.10.0'} dev: true + /parse-png/2.1.0: + resolution: {integrity: sha512-Nt/a5SfCLiTnQAjx3fHlqp8hRgTL3z7kTQZzvIMS9uCAepnCyjpdEc6M/sz69WqMBdaDBw9sF1F1UaHROYzGkQ==} + engines: {node: '>=10'} + dependencies: + pngjs: 3.4.0 + dev: true + /parse5-htmlparser2-tree-adapter/6.0.1: resolution: {integrity: sha512-qPuWvbLgvDGilKc5BoicRovlT4MtYT6JfJyBOMDsKoiT+GiuP5qyrPCnR9HcPECIJJmZh5jRndyNThnhhb/vlA==} dependencies: @@ -17326,6 +19477,17 @@ packages: engines: {node: '>=0.10.0'} dev: true + /password-prompt/1.1.2: + resolution: {integrity: sha512-bpuBhROdrhuN3E7G/koAju0WjVw9/uQOG5Co5mokNj0MiOSBVZS1JTwM4zl55hu0WFmIEFvO9cU9sJQiBIYeIA==} + dependencies: + ansi-escapes: 3.2.0 + cross-spawn: 6.0.5 + dev: true + + /path-browserify/1.0.1: + resolution: {integrity: sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==} + dev: true + /path-exists/3.0.0: resolution: {integrity: sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==} engines: {node: '>=4'} @@ -17456,6 +19618,13 @@ packages: engines: {node: '>= 6'} dev: true + /pkg-dir/3.0.0: + resolution: {integrity: sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==} + engines: {node: '>=6'} + dependencies: + find-up: 3.0.0 + dev: true + /pkg-dir/4.2.0: resolution: {integrity: sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==} engines: {node: '>=8'} @@ -17467,7 +19636,19 @@ packages: engines: {node: '>=8'} dependencies: find-up: 3.0.0 - dev: false + + /plist/3.0.6: + resolution: {integrity: sha512-WiIVYyrp8TD4w8yCvyeIr+lkmrGRd5u0VbRnU+tP/aRLxP/YadJUYOMZJ/6hIa3oUyVCsycXvtNRgd5XBJIbiA==} + engines: {node: '>=6'} + dependencies: + base64-js: 1.5.1 + xmlbuilder: 15.1.1 + dev: true + + /pngjs/3.4.0: + resolution: {integrity: sha512-NCrCHhWmnQklfH4MtJMRjZ2a8c80qXeMlQMv2uVp9ISJMTt562SbGd6n2oq0PaPgKm7Z6pL9E2UlLIhC+SHL3w==} + engines: {node: '>=4.0.0'} + dev: true /portfinder/1.0.28: resolution: {integrity: sha512-Se+2isanIcEqf2XMHjyUKskczxbPH7dQnlMjXX6+dybayyHvAf/TCgyMRlzf/B6QDhAEFOGes0pzRo3by4AbMA==} @@ -18189,6 +20370,11 @@ packages: hasBin: true dev: true + /pretty-bytes/5.6.0: + resolution: {integrity: sha512-FFw039TmrBqFK8ma/7OL3sDz/VytdtJr044/QUJtH0wK9lb9jLq9tJyIxUwtQJHwar2BqtiA4iCWSwo9JLkzFg==} + engines: {node: '>=6'} + dev: true + /pretty-error/4.0.0: resolution: {integrity: sha512-AoJ5YMAcXKYxKhuJGdcvse+Voc6v1RgnsR3nWcYU7q4t6z0Q6T86sv5Zq8VIRbOWWFpvdGE83LtdSMNd+6Y0xw==} dependencies: @@ -18309,7 +20495,6 @@ packages: bluebird: optional: true dev: true - optional: true /promise-polyfill/8.1.3: resolution: {integrity: sha512-MG5r82wBzh7pSKDRa9y+vllNHz3e3d4CNj1PQE4BQYxLme0gKYYBm9YENq+UkEikyZ0XbiGWxYlVw3Rl9O/U8g==} @@ -18328,7 +20513,12 @@ packages: resolution: {integrity: sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==} dependencies: asap: 2.0.6 - dev: false + + /promise/8.1.0: + resolution: {integrity: sha512-W04AqnILOL/sPRXziNicCjSNRruLAuIHEOVBazepu0545DDNGYHz7ar9ZgZ1fMU8/MA4mVxp5rkBWRi6OXIy3Q==} + dependencies: + asap: 2.0.6 + dev: true /prompts/2.4.2: resolution: {integrity: sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==} @@ -18472,6 +20662,11 @@ packages: engines: {node: '>=0.6.0', teleport: '>=0.2.0'} dev: true + /qrcode-terminal/0.11.0: + resolution: {integrity: sha512-Uu7ii+FQy4Qf82G4xu7ShHhjhGahEpCWc3x8UavY3CTcWV+ufmmCtwkr7ZKsX42jdL0kr1B5FKUeqJvAn51jzQ==} + hasBin: true + dev: true + /qs/6.10.3: resolution: {integrity: sha512-wr7M2E0OFRfIfJZjKGieI8lBKb7fRCH4Fv5KNPEs7gJ8jadvotdsS08PzOKR7opXhZ/Xkjtt3WF9g38drmyRqQ==} engines: {node: '>=0.6'} @@ -18491,6 +20686,39 @@ packages: engines: {node: '>=0.6'} dev: true + /qs/6.7.0: + resolution: {integrity: sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==} + engines: {node: '>=0.6'} + dev: true + + /qs/6.9.1: + resolution: {integrity: sha512-Cxm7/SS/y/Z3MHWSxXb8lIFqgqBowP5JMlTUFyJN88y0SGQhVmZnqFK/PeuMX9LzUyWsqqhNxIyg0jlzq946yA==} + engines: {node: '>=0.6'} + dev: true + + /query-string/5.1.1: + resolution: {integrity: sha512-gjWOsm2SoGlgLEdAGt7a6slVOk9mGiXmPFMqrEhLQ68rhQuBnpfs3+EmlvqKyxnCo9/PPlF+9MtY02S1aFg+Jw==} + engines: {node: '>=0.10.0'} + dependencies: + decode-uri-component: 0.2.0 + object-assign: 4.1.1 + strict-uri-encode: 1.1.0 + dev: true + + /query-string/7.1.1: + resolution: {integrity: sha512-MplouLRDHBZSG9z7fpuAAcI7aAYjDLhtsiVZsevsfaHWDS2IDdORKbSd1kWUA+V4zyva/HZoSfpwnYMMQDhb0w==} + engines: {node: '>=6'} + dependencies: + decode-uri-component: 0.2.0 + filter-obj: 1.1.0 + split-on-first: 1.1.0 + strict-uri-encode: 2.0.0 + dev: true + + /querystringify/2.2.0: + resolution: {integrity: sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==} + dev: true + /queue-microtask/1.2.3: resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} @@ -18528,6 +20756,16 @@ packages: resolution: {integrity: sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==} engines: {node: '>= 0.6'} + /raw-body/2.4.0: + resolution: {integrity: sha512-4Oz8DUIwdvoa5qMJelxipzi/iJIi40O5cGV1wNYp5hvZP8ZN0T+jiNkL0QepXs+EsQ9XJ8ipEDoiH70ySUJP3Q==} + engines: {node: '>= 0.8'} + dependencies: + bytes: 3.1.0 + http-errors: 1.7.2 + iconv-lite: 0.4.24 + unpipe: 1.0.0 + dev: true + /raw-body/2.5.1: resolution: {integrity: sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==} engines: {node: '>= 0.8'} @@ -18604,6 +20842,16 @@ packages: - webpack dev: false + /react-devtools-core/4.24.0: + resolution: {integrity: sha512-Rw7FzYOOzcfyUPaAm9P3g0tFdGqGq2LLiAI+wjYcp6CsF3DeeMrRS3HZAho4s273C29G/DJhx0e8BpRE/QZNGg==} + dependencies: + shell-quote: 1.7.3 + ws: 7.5.8 + transitivePeerDependencies: + - bufferutil + - utf-8-validate + dev: true + /react-dom/18.2.0_react@18.2.0: resolution: {integrity: sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==} peerDependencies: @@ -18696,6 +20944,76 @@ packages: styled-components: 5.3.3_biqbaboplfbrettd7655fr4n2y dev: false + /react-native-codegen/0.69.2_@babel+preset-env@7.18.2: + resolution: {integrity: sha512-yPcgMHD4mqLbckqnWjFBaxomDnBREfRjDi2G/WxNyPBQLD+PXUEmZTkDx6QoOXN+Bl2SkpnNOSsLE2+/RUHoPw==} + dependencies: + '@babel/parser': 7.18.5 + flow-parser: 0.121.0 + jscodeshift: 0.13.1_@babel+preset-env@7.18.2 + nullthrows: 1.1.1 + transitivePeerDependencies: + - '@babel/preset-env' + - supports-color + dev: true + + /react-native-gradle-plugin/0.0.7: + resolution: {integrity: sha512-+4JpbIx42zGTONhBTIXSyfyHICHC29VTvhkkoUOJAh/XHPEixpuBduYgf6Y4y9wsN1ARlQhBBoptTvXvAFQf5g==} + dev: true + + /react-native/0.69.4_27wpj6te4dzakyna6ilyljc3vq: + resolution: {integrity: sha512-rqNMialM/T4pHRKWqTIpOxA65B/9kUjtnepxwJqvsdCeMP9Q2YdSx4VASFR9RoEFYcPRU41yGf6EKrChNfns3g==} + engines: {node: '>=14'} + hasBin: true + peerDependencies: + react: 18.0.0 + dependencies: + '@jest/create-cache-key-function': 27.5.1 + '@react-native-community/cli': 8.0.6_react-native@0.69.4 + '@react-native-community/cli-platform-android': 8.0.5 + '@react-native-community/cli-platform-ios': 8.0.6 + '@react-native/assets': 1.0.0 + '@react-native/normalize-color': 2.0.0 + '@react-native/polyfills': 2.0.0 + abort-controller: 3.0.0 + anser: 1.4.10 + base64-js: 1.5.1 + event-target-shim: 5.0.1 + hermes-engine: 0.11.0 + invariant: 2.2.4 + jsc-android: 250230.2.1 + memoize-one: 5.2.1 + metro-react-native-babel-transformer: 0.70.3 + metro-runtime: 0.70.3 + metro-source-map: 0.70.3 + mkdirp: 0.5.6 + nullthrows: 1.1.1 + pretty-format: 26.6.2 + promise: 8.1.0 + react: 18.2.0 + react-devtools-core: 4.24.0 + react-native-codegen: 0.69.2_@babel+preset-env@7.18.2 + react-native-gradle-plugin: 0.0.7 + react-refresh: 0.4.3 + react-shallow-renderer: 16.15.0_react@18.2.0 + regenerator-runtime: 0.13.9 + scheduler: 0.21.0 + stacktrace-parser: 0.1.10 + use-sync-external-store: 1.1.0_react@18.2.0 + whatwg-fetch: 3.6.2 + ws: 6.2.2 + transitivePeerDependencies: + - '@babel/preset-env' + - bufferutil + - encoding + - supports-color + - utf-8-validate + dev: true + + /react-refresh/0.4.3: + resolution: {integrity: sha512-Hwln1VNuGl/6bVwnd0Xdn1e84gT/8T9aYNL+HAKDArLCS7LWjwr7StE30IEYbIkx0Vi3vs+coQxe+SQDbGbbpA==} + engines: {node: '>=0.10.0'} + dev: true + /react-router-config/5.1.1_4gumyfmpzq3vvokmq4lwan2qpu: resolution: {integrity: sha512-DuanZjaD8mQp1ppHjgnnUnyOlqYXZVjnov/JzFhjLEwd3Z4dYjMSnqrEzzGThH47vpCOqPPwJM2FtthLeJ8Pbg==} peerDependencies: @@ -18740,6 +21058,16 @@ packages: tiny-warning: 1.0.3 dev: false + /react-shallow-renderer/16.15.0_react@18.2.0: + resolution: {integrity: sha512-oScf2FqQ9LFVQgA73vr86xl2NaOIX73rh+YFqcOp68CWj56tSfgtGKrEbyhCj0rSijyG9M1CYprTh39fBi5hzA==} + peerDependencies: + react: ^16.0.0 || ^17.0.0 || ^18.0.0 + dependencies: + object-assign: 4.1.1 + react: 18.2.0 + react-is: 18.2.0 + dev: true + /react-textarea-autosize/8.3.4_react@18.2.0: resolution: {integrity: sha512-CdtmP8Dc19xL8/R6sWvtknD/eCXkQr30dtvC4VmGInhRsfF8X/ihXCq6+9l9qbxmKRiq407/7z5fxE7cVWQNgQ==} engines: {node: '>=10'} @@ -18844,6 +21172,20 @@ packages: resolution: {integrity: sha512-onYyVhBNr4CmAxFsKS7bz+uTLRakypIe4R+5A824vBSkQy/hB3fZepoVEf8OVAxzLvK+H/jm9TzpI3ETSm64Kg==} dev: false + /readline/1.3.0: + resolution: {integrity: sha512-k2d6ACCkiNYz222Fs/iNze30rRJ1iIicW7JuX/7/cozvih6YCkFZH+J6mAFDVgv0dRBaAyr4jDqC95R2y4IADg==} + dev: true + + /recast/0.20.5: + resolution: {integrity: sha512-E5qICoPoNL4yU0H0NoBDntNB0Q5oMSNh9usFctYniLBluTthi3RsQVBXIJNbApOlvSwW/RGxIuokPcAc59J5fQ==} + engines: {node: '>= 4'} + dependencies: + ast-types: 0.14.2 + esprima: 4.0.1 + source-map: 0.6.1 + tslib: 2.4.0 + dev: true + /rechoir/0.6.2: resolution: {integrity: sha512-HFM8rkZ+i3zrV+4LQjwQ0W+ez98pApMGM3HUrN04j3CqzPOzl9nmP15Y8YXNm8QHGv/eacOVEjqhmWpkRV0NAw==} engines: {node: '>= 0.10'} @@ -19051,6 +21393,10 @@ packages: resolution: {integrity: sha512-/hS+Y0u3aOfIETiaiirUFwDBDzmXPvO+jAfKTitUngIPzdKc6Z0LoFjM/CK5PL4C+eKwHohlHAb6H0VFfmmUsw==} dev: true + /remove-trailing-slash/0.1.1: + resolution: {integrity: sha512-o4S4Qh6L2jpnCy83ysZDau+VORNvnFw07CKSAymkd6ICNVEPisMyzlc00KlvvicsxKck94SEwhDnMNdICzO+tA==} + dev: true + /renderkid/3.0.0: resolution: {integrity: sha512-q/7VIQA8lmM1hF+jn+sFSPWGlMkSAeNYcPLmDQx2zzuiDfaLrOmumR8iaUKlenFgh0XRPIUeSPlH3A+AW3Z5pg==} dependencies: @@ -19110,9 +21456,25 @@ packages: resolution: {integrity: sha512-oyrU88skkMtDdauHDuKVrgR+zuItqr6/c//FXzvmxRGMexSDc6hNvJInGW3LL46n+8b50RykrvwSUIIQH2LQ5A==} dev: false + /require-main-filename/2.0.0: + resolution: {integrity: sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==} + dev: true + + /requireg/0.2.2: + resolution: {integrity: sha512-nYzyjnFcPNGR3lx9lwPPPnuQxv6JWEZd2Ci0u9opN7N5zUEPIhY/GbL3vMGOr2UXwEg9WwSyV9X9Y/kLFgPsOg==} + engines: {node: '>= 4.0.0'} + dependencies: + nested-error-stacks: 2.0.1 + rc: 1.2.8 + resolve: 1.7.1 + dev: true + /requires-port/1.0.0: resolution: {integrity: sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==} - dev: false + + /reselect/4.1.6: + resolution: {integrity: sha512-ZovIuXqto7elwnxyXbBtCPo9YFEr3uJqj2rRbcOOog1bmu2Ag85M4hixSwFWyaBMKXNgvPaJ9OSu9SkBPIeJHQ==} + dev: true /resolve-cwd/3.0.0: resolution: {integrity: sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==} @@ -19129,6 +21491,11 @@ packages: global-modules: 0.2.3 dev: true + /resolve-from/3.0.0: + resolution: {integrity: sha512-GnlH6vxLymXJNMBo7XP1fJIzBFbdYt49CuTwmB/6N53t+kMPRMFKz783LlQ4tv28XoQfMWinAJX6WCGf2IlaIw==} + engines: {node: '>=4'} + dev: true + /resolve-from/4.0.0: resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} engines: {node: '>=4'} @@ -19159,11 +21526,25 @@ packages: path-parse: 1.0.7 supports-preserve-symlinks-flag: 1.0.0 + /resolve/1.7.1: + resolution: {integrity: sha512-c7rwLofp8g1U+h1KNyHL/jicrKg1Ek4q+Lr33AL65uZTinUZHe30D5HlyN5V9NW0JX1D5dXQ4jqW5l7Sy/kGfw==} + dependencies: + path-parse: 1.0.7 + dev: true + /responselike/1.0.2: resolution: {integrity: sha512-/Fpe5guzJk1gPqdJLJR5u7eG/gNY4nImjbRDaVWVMRhne55TCmj2i9Q+54PBRfatRC8v/rIiv9BN0pMd9OV5EQ==} dependencies: lowercase-keys: 1.0.1 + /restore-cursor/2.0.0: + resolution: {integrity: sha512-6IzJLuGi4+R14vwagDHX+JrXmPVtPpn4mffDJ1UdR7/Edm87fl6yi8mMBIVvFtJaNTUvjughmW4hwLhRG7gC1Q==} + engines: {node: '>=4'} + dependencies: + onetime: 2.0.1 + signal-exit: 3.0.7 + dev: true + /restore-cursor/3.1.0: resolution: {integrity: sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==} engines: {node: '>=8'} @@ -19209,6 +21590,26 @@ packages: resolution: {integrity: sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA==} dev: true + /rimraf/2.2.8: + resolution: {integrity: sha512-R5KMKHnPAQaZMqLOsyuyUmcIjSeDm+73eoqQpaXA7AZ22BL+6C+1mcUscgOsNd8WVlJuvlgAPsegcx7pjlV0Dg==} + hasBin: true + dev: true + + /rimraf/2.4.5: + resolution: {integrity: sha512-J5xnxTyqaiw06JjMftq7L9ouA448dw/E7dKghkP9WpKNuwmARNNg+Gk8/u5ryb9N/Yo2+z3MCwuqFK/+qPOPfQ==} + hasBin: true + dependencies: + glob: 6.0.4 + dev: true + optional: true + + /rimraf/2.6.3: + resolution: {integrity: sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==} + hasBin: true + dependencies: + glob: 7.2.3 + dev: true + /rimraf/2.7.1: resolution: {integrity: sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==} hasBin: true @@ -19287,6 +21688,12 @@ packages: /safe-buffer/5.2.1: resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==} + /safe-json-stringify/1.2.0: + resolution: {integrity: sha512-gH8eh2nZudPQO6TytOvbxnuhYBOvDBBLW52tz5q6X58lJcd/tkmqFR+5Z9adS8aJtURSXWThWy/xJtJwixErvg==} + requiresBuild: true + dev: true + optional: true + /safe-regex/1.1.0: resolution: {integrity: sha512-aJXcif4xnaNUzvUuC5gcb46oTS7zvg4jpMTnuqtrEPlR3vFr4pxtdTwaF1Qs3Enjn9HK+ZlwQui+a7z0SywIzg==} dependencies: @@ -19320,6 +21727,12 @@ packages: xmlchars: 2.2.0 dev: true + /scheduler/0.21.0: + resolution: {integrity: sha512-1r87x5fz9MXqswA2ERLo0EbOAU74DpIUO090gIasYTqlVoJeMcl+Z1Rg7WHz+qtPujhS/hGIt9kxZOYBV3faRQ==} + dependencies: + loose-envify: 1.4.0 + dev: true + /scheduler/0.23.0: resolution: {integrity: sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==} dependencies: @@ -19410,6 +21823,12 @@ packages: resolution: {integrity: sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A==} hasBin: true + /semver/7.3.2: + resolution: {integrity: sha512-OrOb32TeeambH6UrhtShmF7CRDqhL6/5XpPNp2DuRH6+9QLw/orhp72j87v8Qa1ScDkvrrBNpZcDejAirJmfXQ==} + engines: {node: '>=10'} + hasBin: true + dev: true + /semver/7.3.5: resolution: {integrity: sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==} engines: {node: '>=10'} @@ -19500,6 +21919,18 @@ packages: - supports-color dev: true + /serialize-error/2.1.0: + resolution: {integrity: sha512-ghgmKt5o4Tly5yEG/UJp8qTd0AN7Xalw4XBtDEKP655B699qMEtra1WlXeE6WIvdEG481JvRxULKsInq/iNysw==} + engines: {node: '>=0.10.0'} + dev: true + + /serialize-error/6.0.0: + resolution: {integrity: sha512-3vmBkMZLQO+BR4RPHcyRGdE09XCF6cvxzk2N2qn8Er3F91cy8Qt7VvEbZBOpaL53qsBbe2cFOefU6tRY6WDelA==} + engines: {node: '>=10'} + dependencies: + type-fest: 0.12.0 + dev: true + /serialize-javascript/6.0.0: resolution: {integrity: sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag==} dependencies: @@ -19574,6 +22005,10 @@ packages: resolution: {integrity: sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==} dev: false + /setprototypeof/1.1.1: + resolution: {integrity: sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==} + dev: true + /setprototypeof/1.2.0: resolution: {integrity: sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==} @@ -19656,6 +22091,14 @@ packages: dev: true optional: true + /simple-plist/1.3.1: + resolution: {integrity: sha512-iMSw5i0XseMnrhtIzRb7XpQEXepa9xhWxGUojHBL43SIpQuDQkh3Wpy67ZbDzZVr6EKxvwVChnVpdl8hEVLDiw==} + dependencies: + bplist-creator: 0.1.0 + bplist-parser: 0.3.1 + plist: 3.0.6 + dev: true + /simple-swizzle/0.2.2: resolution: {integrity: sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==} dependencies: @@ -19698,6 +22141,15 @@ packages: resolution: {integrity: sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==} engines: {node: '>=12'} + /slice-ansi/2.1.0: + resolution: {integrity: sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ==} + engines: {node: '>=6'} + dependencies: + ansi-styles: 3.2.1 + astral-regex: 1.0.0 + is-fullwidth-code-point: 2.0.0 + dev: true + /slice-ansi/4.0.0: resolution: {integrity: sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==} engines: {node: '>=10'} @@ -19707,6 +22159,11 @@ packages: is-fullwidth-code-point: 3.0.0 dev: true + /slugify/1.6.5: + resolution: {integrity: sha512-8mo9bslnBO3tr5PEVFzMPIWwWnipGS0xVbYf65zxDqfNwmzYn1LpiKNrR6DlClusuvo+hDHd1zKpmfAe83NQSQ==} + engines: {node: '>=8.0.0'} + dev: true + /smart-buffer/4.2.0: resolution: {integrity: sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==} engines: {node: '>= 6.0.0', npm: '>= 3.0.0'} @@ -19809,6 +22266,13 @@ packages: engines: {node: '>= 6.3.0'} dev: false + /sort-keys/2.0.0: + resolution: {integrity: sha512-/dPCrG1s3ePpWm6yBbxZq5Be1dXGLyLn9Z791chDC3NFrpkVbWGzkBwPN1knaciexFXgRJ7hzdnwZ4stHSDmjg==} + engines: {node: '>=4'} + dependencies: + is-plain-obj: 1.1.0 + dev: true + /source-map-js/1.0.2: resolution: {integrity: sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==} engines: {node: '>=0.10.0'} @@ -19934,6 +22398,11 @@ packages: - supports-color dev: false + /split-on-first/1.1.0: + resolution: {integrity: sha512-43ZssAJaMusuKWL8sKUBQXHWOpq8d6CfN/u1p4gUzfJkM05C8rxTmYrkIPTXapZpORA6LkkzcUulJ8FqA7Uudw==} + engines: {node: '>=6'} + dev: true + /split-string/3.1.0: resolution: {integrity: sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==} engines: {node: '>=0.10.0'} @@ -19941,6 +22410,12 @@ packages: extend-shallow: 3.0.2 dev: true + /split/1.0.1: + resolution: {integrity: sha512-mTyOoPbrivtXnwnIxZRFYRrPNtEFKlpB2fvjSnCQUiAA6qAZzqwna5envK4uk6OIeP17CsdF3rSBGYVBsU0Tkg==} + dependencies: + through: 2.3.8 + dev: true + /split2/1.0.0: resolution: {integrity: sha512-NKywug4u4pX/AZBB1FCPzZ6/7O+Xhz1qMVbzTvvKvikjO99oPN87SkK08mEY9P63/5lWjK+wgOOgApnTg5r6qg==} dependencies: @@ -20020,7 +22495,6 @@ packages: dependencies: minipass: 3.3.3 dev: true - optional: true /ssri/9.0.1: resolution: {integrity: sha512-o57Wcn66jMQvfHG1FlYbWeZWW/dHZhJXjpIcTfXldXEk5nz5lStPo3mK0OJQfGR3RbZUlbISexbljkJzuEj/8Q==} @@ -20045,6 +22519,17 @@ packages: escape-string-regexp: 2.0.0 dev: true + /stackframe/1.3.4: + resolution: {integrity: sha512-oeVtt7eWQS+Na6F//S4kJ2K2VbRlS9D43mAlMyVpVWovy9o+jfgH8O9agzANzaiLjclA0oYzUXEM4PurhSUChw==} + dev: true + + /stacktrace-parser/0.1.10: + resolution: {integrity: sha512-KJP1OCML99+8fhOHxwwzyWrlUuVX5GQ0ZpJTd1DFXhdkrvg1szxfHhawXUZ3g9TkXORQd4/WG68jMlQZ2p8wlg==} + engines: {node: '>=6'} + dependencies: + type-fest: 0.7.1 + dev: true + /state-toggle/1.0.3: resolution: {integrity: sha512-d/5Z4/2iiCnHw6Xzghyhb+GcmF89bxwgXG60wjIiZaxnymbyOmI8Hk4VqHXiVVp6u2ysaskFfXg3ekCj4WNftQ==} dev: false @@ -20074,6 +22559,11 @@ packages: engines: {node: '>=4', npm: '>=6'} dev: true + /stream-buffers/2.2.0: + resolution: {integrity: sha512-uyQK/mx5QjHun80FLJTfaWE7JtwfRMKBLkMne6udYOmvH0CawotVa7TfgYHzAnpphn4+TweIx1QKMnRIbipmUg==} + engines: {node: '>= 0.10.0'} + dev: true + /stream-chain/2.2.5: resolution: {integrity: sha512-1TJmBx6aSWqZ4tx7aTpBDXK0/e2hhcNSTV8+CbFJtDjbb+I1mZ8lHit0Grw9GRT+6JbIrrDd8esncgBi8aBXGA==} dev: true @@ -20107,6 +22597,16 @@ packages: events: 3.3.0 dev: true + /strict-uri-encode/1.1.0: + resolution: {integrity: sha512-R3f198pcvnB+5IpnBlRkphuE9n46WyVl8I39W/ZUTZLz4nqSP/oLYUrcnJrw462Ds8he4YKMov2efsTIw1BDGQ==} + engines: {node: '>=0.10.0'} + dev: true + + /strict-uri-encode/2.0.0: + resolution: {integrity: sha512-QwiXZgpRcKkhTj2Scnn++4PKtWsH0kpzZ62L2R6c/LUVYv7hVnZqcg2+sMuT6R7Jusu1vviK/MFsu6kNJfWlEQ==} + engines: {node: '>=4'} + dev: true + /string-length/1.0.1: resolution: {integrity: sha512-MNCACnufWUf3pQ57O5WTBMkKhzYIaKEcUioO0XHrTMafrbBaNk4IyDOLHBv5xbXO0jLLdsYWeFjpjG2hVHRDtw==} engines: {node: '>=0.10.0'} @@ -20193,6 +22693,13 @@ packages: ansi-regex: 2.1.1 dev: true + /strip-ansi/5.2.0: + resolution: {integrity: sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==} + engines: {node: '>=6'} + dependencies: + ansi-regex: 4.1.1 + dev: true + /strip-ansi/6.0.1: resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} engines: {node: '>=8'} @@ -20220,6 +22727,11 @@ packages: engines: {node: '>=8'} dev: true + /strip-eof/1.0.0: + resolution: {integrity: sha512-7FCwGGmx8mD5xQd3RPUvnSpUXHM3BWuzjtpD4TXsfcZ9EL4azvVVUscFYwD9nx8Kh+uCBC00XBtAykoMHwTh8Q==} + engines: {node: '>=0.10.0'} + dev: true + /strip-final-newline/2.0.0: resolution: {integrity: sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==} engines: {node: '>=6'} @@ -20239,6 +22751,10 @@ packages: resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} engines: {node: '>=8'} + /structured-headers/0.4.1: + resolution: {integrity: sha512-0MP/Cxx5SzeeZ10p/bZI0S6MpgD+yxAhi1BOQ34jgnMXsCq3j1t6tQnZu+KdlL7dvJTLT3g9xN8tl10TqgFMcg==} + dev: true + /style-to-object/0.3.0: resolution: {integrity: sha512-CzFnRRXhzWIdItT3OmF8SQfWyahHhjq3HwcMNCNLn+N7klOOqPjMeG/4JSu77D7ypZdGvSzvkrbyeTMizz2VrA==} dependencies: @@ -20329,6 +22845,31 @@ packages: readable-stream: 1.1.14 dev: true + /sucrase/3.25.0: + resolution: {integrity: sha512-WxTtwEYXSmZArPGStGBicyRsg5TBEFhT5b7N+tF+zauImP0Acy+CoUK0/byJ8JNPK/5lbpWIVuFagI4+0l85QQ==} + engines: {node: '>=8'} + hasBin: true + dependencies: + commander: 4.1.1 + glob: 7.1.6 + lines-and-columns: 1.2.4 + mz: 2.7.0 + pirates: 4.0.5 + ts-interface-checker: 0.1.13 + dev: true + + /sudo-prompt/8.2.5: + resolution: {integrity: sha512-rlBo3HU/1zAJUrkY6jNxDOC9eVYliG6nS4JA8u8KAshITd07tafMc/Br7xQwCSseXwJ2iCcHCE8SNWX3q8Z+kw==} + dev: true + + /sudo-prompt/9.1.1: + resolution: {integrity: sha512-es33J1g2HjMpyAhz8lOR+ICmXXAqTuKbuXuUWLhOLew20oN9oUCgCJx615U/v7aioZg7IX5lIh9x34vwneu4pA==} + dev: true + + /sudo-prompt/9.2.1: + resolution: {integrity: sha512-Mu7R0g4ig9TUuGSxJavny5Rv0egCEtpZRNMrZaYS1vxkiIxGiGUwoezU3LazIQ+KE04hTrTfNPgxU5gzi7F5Pw==} + dev: true + /superstatic/8.0.0: resolution: {integrity: sha512-PqlA2xuEwOlRZsknl58A/rZEmgCUcfWIFec0bn10wYE5/tbMhEbMXGHCYDppiXLXcuhGHyOp1IimM2hLqkLLuw==} engines: {node: '>= 12.20'} @@ -20529,6 +23070,51 @@ packages: - supports-color dev: true + /temp-dir/1.0.0: + resolution: {integrity: sha512-xZFXEGbG7SNC3itwBzI3RYjq/cEhBkx2hJuKGIUOcEULmkQExXiHat2z/qkISYsuR+IKumhEfKKbV5qXmhICFQ==} + engines: {node: '>=4'} + dev: true + + /temp-dir/2.0.0: + resolution: {integrity: sha512-aoBAniQmmwtcKp/7BzsH8Cxzv8OL736p7v1ihGb5e9DJ9kTwGWHrQrVB5+lfVDzfGrdRzXch+ig7LHaY1JTOrg==} + engines: {node: '>=8'} + dev: true + + /temp/0.8.3: + resolution: {integrity: sha512-jtnWJs6B1cZlHs9wPG7BrowKxZw/rf6+UpGAkr8AaYmiTyTO7zQlLoST8zx/8TcUPnZmeBoB+H8ARuHZaSijVw==} + engines: {'0': node >=0.8.0} + dependencies: + os-tmpdir: 1.0.2 + rimraf: 2.2.8 + dev: true + + /temp/0.8.4: + resolution: {integrity: sha512-s0ZZzd0BzYv5tLSptZooSjK8oj6C+c19p7Vqta9+6NPOf7r+fxq0cJe6/oN4LTC79sy5NY8ucOJNgwsKCSbfqg==} + engines: {node: '>=6.0.0'} + dependencies: + rimraf: 2.6.3 + dev: true + + /tempy/0.3.0: + resolution: {integrity: sha512-WrH/pui8YCwmeiAoxV+lpRH9HpRtgBhSR2ViBPgpGb/wnYDzp21R4MN45fsCGvLROvY67o3byhJRYRONJyImVQ==} + engines: {node: '>=8'} + dependencies: + temp-dir: 1.0.0 + type-fest: 0.3.1 + unique-string: 1.0.0 + dev: true + + /tempy/0.7.1: + resolution: {integrity: sha512-vXPxwOyaNVi9nyczO16mxmHGpl6ASC5/TVhRRHpqeYHvKQm58EaWNvZXxAhR0lYYnBOQFjXjhzeLsaXdjxLjRg==} + engines: {node: '>=10'} + dependencies: + del: 6.1.1 + is-stream: 2.0.1 + temp-dir: 2.0.0 + type-fest: 0.16.0 + unique-string: 2.0.0 + dev: true + /term-size/2.2.1: resolution: {integrity: sha512-wK0Ri4fOGjv/XPy8SBHZChl8CM7uMc5VML7SqiQ0zG7+J5Vr+RMQDoHa2CNT6KHUnTGIXH34UDMkPzAUyapBZg==} engines: {node: '>=8'} @@ -20613,6 +23199,10 @@ packages: any-promise: 1.3.0 dev: true + /throat/5.0.0: + resolution: {integrity: sha512-fcwX4mndzpLQKBS1DVYhGAcYaYt7vsHNIvQV+WXMvnow5cgjPphq5CaayLaGsjRdSCKZFNGt7/GYAuXaNOiYCA==} + dev: true + /throat/6.0.1: resolution: {integrity: sha512-8hmiGIJMDlwjg7dlJ4yKGLK8EsYqKgPWbG3b4wjJddKNwc7N7Dpn08Df4szr/sZdMVeOstrdYSsqzX6BYbcB+w==} dev: true @@ -20725,6 +23315,11 @@ packages: safe-regex: 1.1.0 dev: true + /toidentifier/1.0.0: + resolution: {integrity: sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==} + engines: {node: '>=0.6'} + dev: true + /toidentifier/1.0.1: resolution: {integrity: sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==} engines: {node: '>=0.6'} @@ -20821,6 +23416,10 @@ packages: resolution: {integrity: sha512-rvuRbTarPXmMb79SmzEp8aqXNKcK+y0XaB298IXueQ8I2PsrATcPBCSPyK/dDNa2iWOhKlfNnOjdAOTBU/nkFA==} dev: false + /ts-interface-checker/0.1.13: + resolution: {integrity: sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==} + dev: true + /ts-jest/27.1.5_lvqy56smyn5gszh3zmisfmhukm: resolution: {integrity: sha512-Xv6jBQPoBEvBq/5i2TeSG9tt/nqkbpcurrEG1b+2yfBrcJelOZF9Ml6dmyMh7bcW9JyFbRYpR5rxROSlBLTZHA==} engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} @@ -21093,6 +23692,16 @@ packages: engines: {node: '>=4'} dev: true + /type-fest/0.12.0: + resolution: {integrity: sha512-53RyidyjvkGpnWPMF9bQgFtWp+Sl8O2Rp13VavmJgfAP9WWG6q6TkrKU8iyJdnwnfgHI6k2hTlgqH4aSdjoTbg==} + engines: {node: '>=10'} + dev: true + + /type-fest/0.16.0: + resolution: {integrity: sha512-eaBzG6MxNzEn9kiwvtre90cXaNLkmadMWa1zQMs3XORCXNbsH/OewwbxC5ia9dCxIxnTAsSxXJaa/p5y8DlvJg==} + engines: {node: '>=10'} + dev: true + /type-fest/0.18.1: resolution: {integrity: sha512-OIAYXk8+ISY+qTOwkHtKqzAuxchoMiD9Udx+FSGQDuiRR+PJKJHc2NJAXlbhkGwTt/4/nKZxELY1w3ReWOL8mw==} engines: {node: '>=10'} @@ -21107,11 +23716,21 @@ packages: engines: {node: '>=10'} dev: true + /type-fest/0.3.1: + resolution: {integrity: sha512-cUGJnCdr4STbePCgqNFbpVNCepa+kAVohJs1sLhxzdH+gnEoOd8VhbYa7pD3zZYGiURWM2xzEII3fQcRizDkYQ==} + engines: {node: '>=6'} + dev: true + /type-fest/0.6.0: resolution: {integrity: sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==} engines: {node: '>=8'} dev: true + /type-fest/0.7.1: + resolution: {integrity: sha512-Ne2YiiGN8bmrmJJEuTWTLJR32nh/JdL1+PSicowtNb0WFpn59GK8/lfD61bVtzguz7b3PBt74nxpv/Pw5po5Rg==} + engines: {node: '>=8'} + dev: true + /type-fest/0.8.1: resolution: {integrity: sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==} engines: {node: '>=8'} @@ -21326,12 +23945,21 @@ packages: /ua-parser-js/0.7.31: resolution: {integrity: sha512-qLK/Xe9E2uzmYI3qLeOmI0tEOt+TBBQyUIAh4aAgU05FVYzeZrKUdkAZfBNVGRaHVgV0TDkdEngJSw/SyQchkQ==} - dev: false /uc.micro/1.0.6: resolution: {integrity: sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA==} dev: true + /uglify-es/3.3.9: + resolution: {integrity: sha512-r+MU0rfv4L/0eeW3xZrd16t4NZfK8Ld4SWVglYBb7ez5uXFWHuVRs6xCTrf1yirs9a4j4Y27nn7SRfO6v67XsQ==} + engines: {node: '>=0.8.0'} + deprecated: support for ECMAScript is superseded by `uglify-js` as of v3.13.0 + hasBin: true + dependencies: + commander: 2.13.0 + source-map: 0.6.1 + dev: true + /ulid/2.3.0: resolution: {integrity: sha512-keqHubrlpvT6G2wH0OEfSW4mquYRcbe/J8NMmveoQOjUqmo+hXtO+ORCpWhdbZ7k72UtY61BL7haGxW6enBnjw==} hasBin: true @@ -21412,14 +24040,19 @@ packages: dependencies: unique-slug: 2.0.2 dev: true - optional: true /unique-slug/2.0.2: resolution: {integrity: sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w==} dependencies: imurmurhash: 0.1.4 dev: true - optional: true + + /unique-string/1.0.0: + resolution: {integrity: sha512-ODgiYu03y5g76A1I9Gt0/chLCzQjvzDy7DsZGsLOE/1MrF6wriEskSncj1+/C58Xk/kPZDppSctDybCwOSaGAg==} + engines: {node: '>=4'} + dependencies: + crypto-random-string: 1.0.0 + dev: true /unique-string/2.0.0: resolution: {integrity: sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg==} @@ -21491,6 +24124,11 @@ packages: engines: {node: '>= 4.0.0'} dev: true + /universalify/1.0.0: + resolution: {integrity: sha512-rb6X1W158d7pRQBg5gkR8uPaSfiids68LTJQYOtEUhoJUWBdaQHsuT/EUduxXYxcrt4r5PJ4fuHW1MHT6p0qug==} + engines: {node: '>= 10.0.0'} + dev: true + /universalify/2.0.0: resolution: {integrity: sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==} engines: {node: '>= 10.0.0'} @@ -21584,6 +24222,10 @@ packages: resolution: {integrity: sha1-HbSK1CLTQCRpqH99l73r/k+x48g=} dev: true + /url-join/4.0.0: + resolution: {integrity: sha512-EGXjXJZhIHiQMK2pQukuFcL303nskqIRzWvPvV5O8miOfwoUb9G+a/Cld60kUyeaybEI94wvVClT10DtfeAExA==} + dev: true + /url-loader/4.1.1_ljnyroaqobwke7fusd7ro2cgzm: resolution: {integrity: sha512-3BTV812+AVHHOJQO8O5MkWgZ5aosP7GnROJwvzLS9hWDj00lZ6Z0wNak423Lp9PBZN05N+Jk/N5Si8jRAlGyWA==} engines: {node: '>= 10.13.0'} @@ -21607,6 +24249,13 @@ packages: dependencies: prepend-http: 2.0.0 + /url-parse/1.5.10: + resolution: {integrity: sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==} + dependencies: + querystringify: 2.2.0 + requires-port: 1.0.0 + dev: true + /use-composed-ref/1.3.0_react@18.2.0: resolution: {integrity: sha512-GLMG0Jc/jiKov/3Ulid1wbv3r54K9HlMW29IWcDFPEqFkSO2nS0MuefWgMJpeHQ9YJeXDL3ZUF+P3jdXlZX/cQ==} peerDependencies: @@ -21627,6 +24276,10 @@ packages: react: 18.2.0 dev: false + /use-latest-callback/0.1.5: + resolution: {integrity: sha512-HtHatS2U4/h32NlkhupDsPlrbiD27gSH5swBdtXbCAlc6pfOFzaj0FehW/FO12rx8j2Vy4/lJScCiJyM01E+bQ==} + dev: true + /use-latest/1.2.1_react@18.2.0: resolution: {integrity: sha512-xA+AVm/Wlg3e2P/JiItTziwS7FK92LWrDB0p+hgXloIMuVCeJJ8v6f0eeHyPZaJrM+usM1FkFfbNCrJGs8A/zw==} peerDependencies: @@ -21664,7 +24317,7 @@ packages: engines: {node: '>= 4'} /utils-merge/1.0.1: - resolution: {integrity: sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=} + resolution: {integrity: sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==} engines: {node: '>= 0.4.0'} /uuid/3.4.0: @@ -21673,6 +24326,11 @@ packages: hasBin: true dev: true + /uuid/7.0.3: + resolution: {integrity: sha512-DPSke0pXhTZgoF/d+WSt2QaKMCFSfx7QegxEWT+JOuHF5aWrKEn0G+ztjuJg/gG8/ItK+rbPCD/yNv8yyih6Cg==} + hasBin: true + dev: true + /uuid/8.3.2: resolution: {integrity: sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==} hasBin: true @@ -21710,6 +24368,12 @@ packages: spdx-expression-parse: 3.0.1 dev: true + /validate-npm-package-name/3.0.0: + resolution: {integrity: sha512-M6w37eVCMMouJ9V/sdPGnC5H4uDr73/+xdq0FBLO3TFFX1+7wiUY6Es328NN+y43tmY+doUdN9g9J21vqB7iLw==} + dependencies: + builtins: 1.0.3 + dev: true + /validator/13.7.0: resolution: {integrity: sha512-nYXQLCBkpJ8X6ltALua9dRrZDHVYxjJ1wgskNt1lH9fzGjs3tgojGSCBjmEPwkWS1y29+DrizMTW19Pr9uB2nw==} engines: {node: '>= 0.10'} @@ -21751,6 +24415,10 @@ packages: vfile-message: 2.0.4 dev: false + /vlq/1.0.1: + resolution: {integrity: sha512-gQpnTgkubC6hQgdIcRdYGDSDc+SaujOdyesZQMv6JlfQee/9Mp0Qhnys6WxDWvQnL5WZdT7o2Ul187aSt0Rq+w==} + dev: true + /vm2/3.9.9: resolution: {integrity: sha512-xwTm7NLh/uOjARRBs8/95H0e8fT3Ukw5D/JJWhxMbhKzNh1Nu981jQKvkep9iKYNxzlVrdzD0mlBGkDKZWprlw==} engines: {node: '>=6.0'} @@ -22081,6 +24749,10 @@ packages: is-weakset: 2.0.2 dev: true + /which-module/2.0.0: + resolution: {integrity: sha512-B+enWhmw6cjfVC7kS8Pj9pCrKSc5txArRyaYGe088shv/FGWH+0Rjx/xPgtsWfsUtS27FkP697E4DDhgrgoc0Q==} + dev: true + /which-typed-array/1.1.8: resolution: {integrity: sha512-Jn4e5PItbcAHyLoRDwvPj1ypu27DJbtdYXUa5zsinrUx77Uvfb0cXwwnGMTn7cjUfhhqgVQnVJCwF+7cgU7tpw==} engines: {node: '>= 0.4'} @@ -22159,11 +24831,24 @@ packages: '@types/node': 18.0.0 dev: true + /wonka/4.0.15: + resolution: {integrity: sha512-U0IUQHKXXn6PFo9nqsHphVCE5m3IntqZNB9Jjn7EB1lrR7YTDY3YWgFvEvwniTzXSvOH/XMzAZaIfJF/LvHYXg==} + dev: true + /word-wrap/1.2.3: resolution: {integrity: sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==} engines: {node: '>=0.10.0'} dev: true + /wrap-ansi/6.2.0: + resolution: {integrity: sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==} + engines: {node: '>=8'} + dependencies: + ansi-styles: 4.3.0 + string-width: 4.2.3 + strip-ansi: 6.0.1 + dev: true + /wrap-ansi/7.0.0: resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} engines: {node: '>=10'} @@ -22184,6 +24869,14 @@ packages: /wrappy/1.0.2: resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} + /write-file-atomic/2.4.3: + resolution: {integrity: sha512-GaETH5wwsX+GcnzhPgKcKjJ6M2Cq3/iZp1WyY/X1CSqrW+jVNM9Y7D8EC2sM4ZG/V8wZlSniJnCKWPmBYAucRQ==} + dependencies: + graceful-fs: 4.2.10 + imurmurhash: 0.1.4 + signal-exit: 3.0.7 + dev: true + /write-file-atomic/3.0.3: resolution: {integrity: sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==} dependencies: @@ -22206,6 +24899,20 @@ packages: readable-stream: 0.0.4 dev: true + /ws/6.2.2: + resolution: {integrity: sha512-zmhltoSR8u1cnDsD43TX59mzoMZsLKqUweyYBAIvTngR3shc0W6aOZylZmq/7hqyVxPdi+5Ud2QInblgyE72fw==} + peerDependencies: + bufferutil: ^4.0.1 + utf-8-validate: ^5.0.2 + peerDependenciesMeta: + bufferutil: + optional: true + utf-8-validate: + optional: true + dependencies: + async-limiter: 1.0.1 + dev: true + /ws/7.5.8: resolution: {integrity: sha512-ri1Id1WinAX5Jqn9HejiGb8crfRio0Qgu8+MtL36rlTA6RLsMdWt1Az/19A2Qij6uSHUMphEFaTKa4WG+UNHNw==} engines: {node: '>=8.3.0'} @@ -22230,6 +24937,14 @@ packages: utf-8-validate: optional: true + /xcode/3.0.1: + resolution: {integrity: sha512-kCz5k7J7XbJtjABOvkc5lJmkiDh8VhjVCGNiqdKCscmVpdVUpEAyXv1xmCLkQJ5dsHqx3IPO4XW+NTDhU/fatA==} + engines: {node: '>=10.0.0'} + dependencies: + simple-plist: 1.3.1 + uuid: 7.0.3 + dev: true + /xdg-basedir/4.0.0: resolution: {integrity: sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==} engines: {node: '>=8'} @@ -22263,6 +24978,16 @@ packages: engines: {node: '>=4.0'} dev: true + /xmlbuilder/14.0.0: + resolution: {integrity: sha512-ts+B2rSe4fIckR6iquDjsKbQFK2NlUk6iG5nf14mDEyldgoc2nEKZ3jZWMPTxGQwVgToSjt6VGIho1H8/fNFTg==} + engines: {node: '>=8.0'} + dev: true + + /xmlbuilder/15.1.1: + resolution: {integrity: sha512-yMqGBqtXyeN1e3TGYvgNgDVZ3j84W4cwkOXQswghol6APgZWaff9lnbvN7MHYJOiXsvGPXtjTYJEiC9J2wv9Eg==} + engines: {node: '>=8.0'} + dev: true + /xmlchars/2.2.0: resolution: {integrity: sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==} dev: true @@ -22280,6 +25005,10 @@ packages: resolution: {integrity: sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==} engines: {node: '>=0.4'} + /y18n/4.0.3: + resolution: {integrity: sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==} + dev: true + /y18n/5.0.8: resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==} engines: {node: '>=10'} @@ -22300,6 +25029,14 @@ packages: resolution: {integrity: sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==} engines: {node: '>= 6'} + /yargs-parser/18.1.3: + resolution: {integrity: sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==} + engines: {node: '>=6'} + dependencies: + camelcase: 5.3.1 + decamelize: 1.2.0 + dev: true + /yargs-parser/20.2.9: resolution: {integrity: sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==} engines: {node: '>=10'} @@ -22310,6 +25047,23 @@ packages: engines: {node: '>=12'} dev: true + /yargs/15.4.1: + resolution: {integrity: sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==} + engines: {node: '>=8'} + dependencies: + cliui: 6.0.0 + decamelize: 1.2.0 + find-up: 4.1.0 + get-caller-file: 2.0.5 + require-directory: 2.1.1 + require-main-filename: 2.0.0 + set-blocking: 2.0.0 + string-width: 4.2.3 + which-module: 2.0.0 + y18n: 4.0.3 + yargs-parser: 18.1.3 + dev: true + /yargs/16.2.0: resolution: {integrity: sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==} engines: {node: '>=10'} @@ -22339,7 +25093,6 @@ packages: /yocto-queue/0.1.0: resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} engines: {node: '>=10'} - dev: false /zip-stream/4.1.0: resolution: {integrity: sha512-zshzwQW7gG7hjpBlgeQP9RuyPGNxvJdzR8SUM3QhxCnLjWN2E7j3dOvpeDcQoETfHx0urRS7EtmVToql7YpU4A==} From c901fe79b4455db2de6f7381d0dfd19f8e496cc2 Mon Sep 17 00:00:00 2001 From: An Hoang Date: Sun, 28 Aug 2022 06:27:58 +0700 Subject: [PATCH 02/20] add expo to clean script --- packages/next-auth/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/next-auth/package.json b/packages/next-auth/package.json index ede502d29e..3f3feafd4e 100644 --- a/packages/next-auth/package.json +++ b/packages/next-auth/package.json @@ -39,7 +39,7 @@ }, "scripts": { "build": "pnpm clean && pnpm build:js && pnpm build:css", - "clean": "rm -rf client css utils providers core jwt react next index.d.ts index.js adapters.d.ts middleware.d.ts middleware.js", + "clean": "rm -rf client css utils providers core jwt react expo next index.d.ts index.js adapters.d.ts middleware.d.ts middleware.js", "build:js": "pnpm clean && pnpm generate-providers && tsc && babel --config-file ./config/babel.config.js src --out-dir . --extensions \".tsx,.ts,.js,.jsx\"", "build:css": "postcss --config config/postcss.config.js src/**/*.css --base src --dir . && node config/wrap-css.js", "watch:css": "postcss --config config/postcss.config.js --watch src/**/*.css --base src --dir .", From 1586403be697a74d7bd8281b38f1fd6d57fecc2b Mon Sep 17 00:00:00 2001 From: An Hoang Date: Sun, 28 Aug 2022 06:28:30 +0700 Subject: [PATCH 03/20] react-native-polyfill-url; remove react-navigation --- packages/next-auth/package.json | 4 +- packages/next-auth/src/expo/Auth.tsx | 24 +- pnpm-lock.yaml | 377 ++------------------------- 3 files changed, 34 insertions(+), 371 deletions(-) diff --git a/packages/next-auth/package.json b/packages/next-auth/package.json index 3f3feafd4e..e122c46eca 100644 --- a/packages/next-auth/package.json +++ b/packages/next-auth/package.json @@ -76,7 +76,8 @@ "openid-client": "^5.1.0", "preact": "^10.6.3", "preact-render-to-string": "^5.1.19", - "uuid": "^8.3.2" + "uuid": "^8.3.2", + "react-native-url-polyfill": "^1.3.0" }, "peerDependencies": { "expo": "^46", @@ -99,7 +100,6 @@ "@babel/preset-react": "^7.17.12", "@babel/preset-typescript": "^7.17.12", "@next-auth/tsconfig": "workspace:^0.0.0", - "@react-navigation/native": "^6.0.12", "@swc/core": "^1.2.198", "@swc/jest": "^0.2.21", "@testing-library/dom": "^8.13.0", diff --git a/packages/next-auth/src/expo/Auth.tsx b/packages/next-auth/src/expo/Auth.tsx index b30c1d5149..63cf6814bc 100644 --- a/packages/next-auth/src/expo/Auth.tsx +++ b/packages/next-auth/src/expo/Auth.tsx @@ -13,6 +13,7 @@ import { NextAuthClientConfig, now } from "../client/_utils" import _logger, { LoggerInstance, proxyLogger } from "../utils/logger" import parseUrl from "../utils/parse-url" import * as React from "react" +import "react-native-url-polyfill/auto" import type { ClientSafeProvider, @@ -29,11 +30,10 @@ import type { RedirectableProviderType, } from "../providers" -import { useFocusEffect } from "@react-navigation/native" import * as SecureStore from "expo-secure-store" import Constants from "expo-constants" import { Alert } from "react-native" -import { defaultCookies } from "src/core/lib/cookie" +import { defaultCookies } from "../core/lib/cookie" import * as AuthSession from "expo-auth-session" const storageKeys = { @@ -380,16 +380,16 @@ export function SessionProvider(props: SessionProviderProps) { } }, []) - useFocusEffect( - React.useCallback(() => { - const { refetchOnWindowFocus = true } = props - // Listen for when the page is visible, if the user switches tabs - // and makes our tab visible again, re-fetch the session, but only if - // this feature is not disabled. - if (refetchOnWindowFocus) - __NEXTAUTH._getSession({ event: "visibilitychange" }) - }, [props]) - ) + // useFocusEffect( + // React.useCallback(() => { + // const { refetchOnWindowFocus = true } = props + // // Listen for when the page is visible, if the user switches tabs + // // and makes our tab visible again, re-fetch the session, but only if + // // this feature is not disabled. + // if (refetchOnWindowFocus) + // __NEXTAUTH._getSession({ event: "visibilitychange" }) + // }, [props]) + // ) React.useEffect(() => { // Set up polling diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 35d2dab985..de14aae367 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -405,7 +405,6 @@ importers: '@babel/runtime': ^7.16.3 '@next-auth/tsconfig': workspace:^0.0.0 '@panva/hkdf': ^1.0.1 - '@react-navigation/native': ^6.0.12 '@swc/core': ^1.2.198 '@swc/jest': ^0.2.21 '@testing-library/dom': ^8.13.0 @@ -444,6 +443,7 @@ importers: react: ^18 react-dom: ^18 react-native: 0.69.4 + react-native-url-polyfill: ^1.3.0 uuid: ^8.3.2 whatwg-fetch: ^3.6.2 dependencies: @@ -455,6 +455,7 @@ importers: openid-client: 5.1.6 preact: 10.8.2 preact-render-to-string: 5.2.0_preact@10.8.2 + react-native-url-polyfill: 1.3.0_react-native@0.69.4 uuid: 8.3.2 devDependencies: '@babel/cli': 7.17.10_@babel+core@7.18.5 @@ -465,7 +466,6 @@ importers: '@babel/preset-react': 7.17.12_@babel+core@7.18.5 '@babel/preset-typescript': 7.17.12_@babel+core@7.18.5 '@next-auth/tsconfig': link:../tsconfig - '@react-navigation/native': 6.0.12_5ifwsx3kh4yeq2aw7ur5frzkxu '@swc/core': 1.2.204 '@swc/jest': 0.2.21_@swc+core@1.2.204 '@testing-library/dom': 8.14.0 @@ -1582,7 +1582,6 @@ packages: engines: {node: '>=6.9.0'} dependencies: '@babel/highlight': 7.18.6 - dev: true /@babel/compat-data/7.18.5: resolution: {integrity: sha512-BxhE40PVCBxVEJsSBhB6UWyAuqJRxGsAw8BdHMJ3AKGydcwuWW4kOO3HmqBQAdcq/OP+/DlTVxLvsCzRTnZuGg==} @@ -1641,7 +1640,6 @@ packages: '@babel/types': 7.18.13 '@jridgewell/gen-mapping': 0.3.2 jsesc: 2.5.2 - dev: true /@babel/generator/7.18.2: resolution: {integrity: sha512-W1lG5vUwFvfMd8HVXqdfbuG7RuaSrTCCD8cl8fP8wOivdbtbIg2Db3IWUcgvfxKbbn6ZBGYRW/Zk1MIwK49mgw==} @@ -1808,7 +1806,6 @@ packages: /@babel/helper-environment-visitor/7.18.9: resolution: {integrity: sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==} engines: {node: '>=6.9.0'} - dev: true /@babel/helper-explode-assignable-expression/7.16.7: resolution: {integrity: sha512-KyUenhWMC8VrxzkGP0Jizjo4/Zx+1nNZhgocs+gLzyZyB8SHidhoq9KK/8Ato4anhwsivfkBLftky7gvzbZMtQ==} @@ -1829,7 +1826,6 @@ packages: dependencies: '@babel/template': 7.18.10 '@babel/types': 7.18.13 - dev: true /@babel/helper-hoist-variables/7.16.7: resolution: {integrity: sha512-m04d/0Op34H5v7pbZw6pSKP7weA6lsMvfiIAMeIvkY/R4xQtBSMFEigu9QTZ2qB/9l22vsxtM8a+Q8CzD255fg==} @@ -1842,7 +1838,6 @@ packages: engines: {node: '>=6.9.0'} dependencies: '@babel/types': 7.18.13 - dev: true /@babel/helper-member-expression-to-functions/7.17.7: resolution: {integrity: sha512-thxXgnQ8qQ11W2wVUObIqDL4p148VMxkt5T/qpN5k2fboRyzFGFmKsTGViquyM5QHKUy48OZoca8kw4ajaDPyw==} @@ -1902,7 +1897,6 @@ packages: /@babel/helper-plugin-utils/7.18.9: resolution: {integrity: sha512-aBXPT3bmtLryXaoJLyYPXPlSD4p1ld9aYeR+sJNOZjJJGiOpb+fKfh3NkcCu7J54nUJwCERPBExCCpyCOHnu/w==} engines: {node: '>=6.9.0'} - dev: true /@babel/helper-remap-async-to-generator/7.16.8: resolution: {integrity: sha512-fm0gH7Flb8H51LqJHy3HJ3wnE1+qtYR2A99K06ahwrawLdOFsCEWjZOrYricXJHoPSudNKxrMBUPEIPxiIIvBw==} @@ -1962,12 +1956,10 @@ packages: engines: {node: '>=6.9.0'} dependencies: '@babel/types': 7.18.13 - dev: true /@babel/helper-string-parser/7.18.10: resolution: {integrity: sha512-XtIfWmeNY3i4t7t4D2t02q50HvqHybPqW2ki1kosnvWCwuCMeo81Jf0gwr85jy/neUdg5XDdeFE/80DXiO+njw==} engines: {node: '>=6.9.0'} - dev: true /@babel/helper-validator-identifier/7.16.7: resolution: {integrity: sha512-hsEnFemeiW4D08A5gUAZxLBTXpZ39P+a+DGDsHw1yxqyQ/jzFEnxf5uTEGp+3bzAbNOxU1paTgYS4ECU/IgfDw==} @@ -1976,7 +1968,6 @@ packages: /@babel/helper-validator-identifier/7.18.6: resolution: {integrity: sha512-MmetCkz9ej86nJQV+sFCxoGGrUbU3q02kgLciwkrt9QqEB7cP39oKEY0PakknEO0Gu20SskMRi+AYZ3b1TpN9g==} engines: {node: '>=6.9.0'} - dev: true /@babel/helper-validator-option/7.16.7: resolution: {integrity: sha512-TRtenOuRUVo9oIQGPC5G9DgK4743cdxvtOw0weQNpZXaS16SCBi5MNjZF8vba3ETURjZpTbVn7Vvcf2eAwFozQ==} @@ -1985,7 +1976,6 @@ packages: /@babel/helper-validator-option/7.18.6: resolution: {integrity: sha512-XO7gESt5ouv/LRJdrVjkShckw6STTaB7l9BrpBaAHDeF5YZT+01PCwmR0SJHnkW6i8OwW/EVWRShfi4j2x+KQw==} engines: {node: '>=6.9.0'} - dev: true /@babel/helper-wrap-function/7.16.8: resolution: {integrity: sha512-8RpyRVIAW1RcDDGTA+GpPAwV22wXCfKOoM9bet6TLkGIFTkRQSkH1nMQ5Yet4MpoXe1ZwHPVtNasc2w0uZMqnw==} @@ -2023,7 +2013,6 @@ packages: '@babel/helper-validator-identifier': 7.18.6 chalk: 2.4.2 js-tokens: 4.0.0 - dev: true /@babel/parser/7.18.13: resolution: {integrity: sha512-dgXcIfMuQ0kgzLB2b9tRZs7TTFFaGM2AbtA4fJgUUYukzGH4jwsS7hzQHEGs67jdehpm22vkgKwvbU+aEflgwg==} @@ -2031,7 +2020,6 @@ packages: hasBin: true dependencies: '@babel/types': 7.18.13 - dev: true /@babel/parser/7.18.5: resolution: {integrity: sha512-YZWVaglMiplo7v8f1oMQ5ZPQr0vn7HPeZXxXWsxXJRjGVrzUFn9OxFQl1sb5wzfootjA/yChhW84BV+383FSOw==} @@ -2201,7 +2189,6 @@ packages: '@babel/core': 7.18.5 '@babel/helper-plugin-utils': 7.18.9 '@babel/plugin-syntax-export-default-from': 7.18.6_@babel+core@7.18.5 - dev: true /@babel/plugin-proposal-export-namespace-from/7.17.12: resolution: {integrity: sha512-j7Ye5EWdwoXOpRmo5QmRyHPsDIe6+u70ZYZrd7uz+ebPYFKfRcLcNu3Ro0vOlJ5zuv8rU7xa+GttNiRzX56snQ==} @@ -2547,7 +2534,6 @@ packages: dependencies: '@babel/core': 7.18.5 '@babel/helper-plugin-utils': 7.18.9 - dev: true /@babel/plugin-syntax-export-namespace-from/7.8.3: resolution: {integrity: sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==} @@ -2573,7 +2559,6 @@ packages: dependencies: '@babel/core': 7.18.5 '@babel/helper-plugin-utils': 7.18.9 - dev: true /@babel/plugin-syntax-import-assertions/7.17.12: resolution: {integrity: sha512-n/loy2zkq9ZEM8tEOwON9wTQSTNDTDEz6NujPtJGLU7qObzT1N4c4YZZf8E6ATB2AjNQg/Ib2AIpO03EZaCehw==} @@ -3005,7 +2990,6 @@ packages: '@babel/core': 7.18.5 '@babel/helper-plugin-utils': 7.18.9 '@babel/plugin-syntax-flow': 7.18.6_@babel+core@7.18.5 - dev: true /@babel/plugin-transform-for-of/7.18.1: resolution: {integrity: sha512-+TTB5XwvJ5hZbO8xvl2H4XaMDOAK57zF4miuC9qQJgysPNEAZZ9Z69rdF5LJkozGdZrjBIUAIyKUWRMmebI7vg==} @@ -3335,7 +3319,6 @@ packages: dependencies: '@babel/core': 7.18.5 '@babel/helper-plugin-utils': 7.18.9 - dev: true /@babel/plugin-transform-react-jsx-source/7.18.6_@babel+core@7.18.5: resolution: {integrity: sha512-utZmlASneDfdaMh0m/WausbjUjEdGrQJz0vFK93d7wD3xf5wBtX219+q6IlCNZeguIcxS2f/CvLZrlLSvSHQXw==} @@ -3345,7 +3328,6 @@ packages: dependencies: '@babel/core': 7.18.5 '@babel/helper-plugin-utils': 7.18.9 - dev: true /@babel/plugin-transform-react-jsx/7.17.12_@babel+core@7.18.5: resolution: {integrity: sha512-Lcaw8bxd1DKht3thfD4A12dqo1X16he1Lm8rIv8sTwjAYNInRS1qHa9aJoqvzpscItXvftKDCfaEQzwoVyXpEQ==} @@ -3763,7 +3745,6 @@ packages: '@babel/helper-plugin-utils': 7.18.9 '@babel/helper-validator-option': 7.18.6 '@babel/plugin-transform-flow-strip-types': 7.18.9_@babel+core@7.18.5 - dev: true /@babel/preset-modules/0.1.5: resolution: {integrity: sha512-A57th6YRG7oR3cq/yt/Y84MvGgE0eJG2F1JLhKuyG+jFxEgrd/HAMJatiFtmOiZurz+0DkrvbheCLaV5f2JfjA==} @@ -3828,7 +3809,6 @@ packages: make-dir: 2.1.0 pirates: 4.0.5 source-map-support: 0.5.21 - dev: true /@babel/runtime-corejs3/7.18.3: resolution: {integrity: sha512-l4ddFwrc9rnR+EJsHsh+TJ4A35YqQz/UqcjtlX2ov53hlJYG5CxtQmNZxyajwDVmCxwy++rtvGU5HazCK4W41Q==} @@ -3859,7 +3839,6 @@ packages: '@babel/code-frame': 7.18.6 '@babel/parser': 7.18.13 '@babel/types': 7.18.13 - dev: true /@babel/traverse/7.18.13: resolution: {integrity: sha512-N6kt9X1jRMLPxxxPYWi7tgvJRH/rtoU+dbKAPDM44RFHiMH8igdsaSBgFeskhSl/kLWLDUvIh1RXCrTmg0/zvA==} @@ -3877,7 +3856,6 @@ packages: globals: 11.12.0 transitivePeerDependencies: - supports-color - dev: true /@babel/traverse/7.18.5: resolution: {integrity: sha512-aKXj1KT66sBj0vVzk6rEeAO6Z9aiiQ68wfDgge3nHhA/my6xMM/7HGQUNumKZaoa2qUPQ5whJG9aAifsxUKfLA==} @@ -3921,7 +3899,6 @@ packages: '@babel/helper-string-parser': 7.18.10 '@babel/helper-validator-identifier': 7.18.6 to-fast-properties: 2.0.0 - dev: true /@babel/types/7.18.4: resolution: {integrity: sha512-ThN1mBcMq5pG/Vm2IcBmPPfyPXbd8S02rS+OBIDENdufvqC7Z/jHPCv9IcP01277aKtDI8g/2XysBN4hA8niiw==} @@ -5762,7 +5739,6 @@ packages: engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} dependencies: '@jest/types': 27.5.1 - dev: true /@jest/environment/27.5.1: resolution: {integrity: sha512-/WQjhPJe3/ghaol/4Bq480JKXV/Rfw8nQdN7f41fM8VDHLcxKXou6QyXAh3EFr9/bVG3x74z1NWDkP87EiY8gA==} @@ -6043,7 +6019,6 @@ packages: '@types/node': 18.0.0 '@types/yargs': 15.0.14 chalk: 4.1.2 - dev: true /@jest/types/27.5.1: resolution: {integrity: sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==} @@ -6054,7 +6029,6 @@ packages: '@types/node': 18.0.0 '@types/yargs': 16.0.4 chalk: 4.1.2 - dev: true /@jest/types/28.1.1: resolution: {integrity: sha512-vRXVqSg1VhDnB8bWcmvLzmg0Bt9CRKVgHPXqYwvWMX3TvAjeO+nRuK6+VdTKCtWOvYlmkF/HqNAL/z+N3B53Kw==} @@ -6090,7 +6064,6 @@ packages: '@jridgewell/set-array': 1.1.1 '@jridgewell/sourcemap-codec': 1.4.13 '@jridgewell/trace-mapping': 0.3.13 - dev: true /@jridgewell/resolve-uri/3.0.7: resolution: {integrity: sha512-8cXDaBBHOr2pQ7j77Y6Vp5VDT2sIqWyWQ56TjEq4ih/a4iST3dItRe8Q9fp0rrIl9DoKhWQtUQz/YpOxLkXbNA==} @@ -6581,7 +6554,6 @@ packages: prompts: 2.4.2 transitivePeerDependencies: - encoding - dev: true /@react-native-community/cli-config/8.0.6: resolution: {integrity: sha512-mjVpVvdh8AviiO8xtqeX+BkjqE//NMDnISwsLWSJUfNCwTAPmdR8PGbhgP5O4hWHyJ3WkepTopl0ya7Tfi3ifw==} @@ -6593,7 +6565,6 @@ packages: joi: 17.6.0 transitivePeerDependencies: - encoding - dev: true /@react-native-community/cli-debugger-ui/8.0.0: resolution: {integrity: sha512-u2jq06GZwZ9sRERzd9FIgpW6yv4YOW4zz7Ym/B8eSzviLmy3yI/8mxJtvlGW+J8lBsfMcQoqJpqI6Rl1nZy9yQ==} @@ -6601,7 +6572,6 @@ packages: serve-static: 1.15.0 transitivePeerDependencies: - supports-color - dev: true /@react-native-community/cli-doctor/8.0.6: resolution: {integrity: sha512-ZQqyT9mJMVeFEVIwj8rbDYGCA2xXjJfsQjWk2iTRZ1CFHfhPSUuUiG8r6mJmTinAP9t+wYcbbIYzNgdSUKnDMw==} @@ -6624,7 +6594,6 @@ packages: wcwidth: 1.0.1 transitivePeerDependencies: - encoding - dev: true /@react-native-community/cli-hermes/8.0.5: resolution: {integrity: sha512-Zm0wM6SfgYAEX1kfJ1QBvTayabvh79GzmjHyuSnEROVNPbl4PeCG4WFbwy489tGwOP9Qx9fMT5tRIFCD8bp6/g==} @@ -6636,7 +6605,6 @@ packages: ip: 1.1.8 transitivePeerDependencies: - encoding - dev: true /@react-native-community/cli-platform-android/8.0.5: resolution: {integrity: sha512-z1YNE4T1lG5o9acoQR1GBvf7mq6Tzayqo/za5sHVSOJAC9SZOuVN/gg/nkBa9a8n5U7qOMFXfwhTMNqA474gXA==} @@ -6652,7 +6620,6 @@ packages: slash: 3.0.0 transitivePeerDependencies: - encoding - dev: true /@react-native-community/cli-platform-ios/8.0.6: resolution: {integrity: sha512-CMR6mu/LVx6JVfQRDL9uULsMirJT633bODn+IrYmrwSz250pnhON16We8eLPzxOZHyDjm7JPuSgHG3a/BPiRuQ==} @@ -6667,7 +6634,6 @@ packages: plist: 3.0.6 transitivePeerDependencies: - encoding - dev: true /@react-native-community/cli-plugin-metro/8.0.4: resolution: {integrity: sha512-UWzY1eMcEr/6262R2+d0Is5M3L/7Y/xXSDIFMoc5Rv5Wucl3hJM/TxHXmByvHpuJf6fJAfqOskyt4bZCvbI+wQ==} @@ -6687,7 +6653,6 @@ packages: - encoding - supports-color - utf-8-validate - dev: true /@react-native-community/cli-server-api/8.0.4: resolution: {integrity: sha512-Orr14njx1E70CVrUA8bFdl+mrnbuXUjf1Rhhm0RxUadFpvkHuOi5dh8Bryj2MKtf8eZrpEwZ7tuQPhJEULW16A==} @@ -6706,7 +6671,6 @@ packages: - encoding - supports-color - utf-8-validate - dev: true /@react-native-community/cli-tools/8.0.4: resolution: {integrity: sha512-ePN9lGxh6LRFiotyddEkSmuqpQhnq2iw9oiXYr4EFWpIEy0yCigTuSTiDF68+c8M9B+7bTwkRpz/rMPC4ViO5Q==} @@ -6723,13 +6687,11 @@ packages: shell-quote: 1.7.3 transitivePeerDependencies: - encoding - dev: true /@react-native-community/cli-types/8.0.0: resolution: {integrity: sha512-1lZS1PEvMlFaN3Se1ksyoFWzMjk+YfKi490GgsqKJln9gvFm8tqVPdnXttI5Uf2DQf3BMse8Bk8dNH4oV6Ewow==} dependencies: joi: 17.6.0 - dev: true /@react-native-community/cli/8.0.6_react-native@0.69.4: resolution: {integrity: sha512-E36hU/if3quQCfJHGWVkpsCnwtByRCwORuAX0r6yr1ebKktpKeEO49zY9PAu/Z1gfyxCtgluXY0HfRxjKRFXTg==} @@ -6764,53 +6726,15 @@ packages: - encoding - supports-color - utf-8-validate - dev: true /@react-native/assets/1.0.0: resolution: {integrity: sha512-KrwSpS1tKI70wuKl68DwJZYEvXktDHdZMG0k2AXD/rJVSlB23/X2CB2cutVR0HwNMJIal9HOUOBB2rVfa6UGtQ==} - dev: true /@react-native/normalize-color/2.0.0: resolution: {integrity: sha512-Wip/xsc5lw8vsBlmY2MO/gFLp3MvuZ2baBZjDeTjjndMgM0h5sxz7AZR62RDPGgstp8Np7JzjvVqVT7tpFZqsw==} - dev: true /@react-native/polyfills/2.0.0: resolution: {integrity: sha512-K0aGNn1TjalKj+65D7ycc1//H9roAQ51GJVk5ZJQFb2teECGmzd86bYDC0aYdbRf7gtovescq4Zt6FR0tgXiHQ==} - dev: true - - /@react-navigation/core/6.3.0_react@18.2.0: - resolution: {integrity: sha512-nyvReUB00SAfHdL/AA+GksdaTuiC31LxHp+f1kxuPNkcGR7zSMVT+Wrq4OHe+VPFfCxJxoseQ2ElsvE+4IYFoQ==} - peerDependencies: - react: '*' - dependencies: - '@react-navigation/routers': 6.1.2 - escape-string-regexp: 4.0.0 - nanoid: 3.3.4 - query-string: 7.1.1 - react: 18.2.0 - react-is: 16.13.1 - use-latest-callback: 0.1.5 - dev: true - - /@react-navigation/native/6.0.12_5ifwsx3kh4yeq2aw7ur5frzkxu: - resolution: {integrity: sha512-23n0pDsFvFxPIkB4zrAip05uUj6Jr+5dinqrDdEU26cPoki3/iJlirvbSIs/64Om/OuTyUjFdB/zI75ng+m5Pg==} - peerDependencies: - react: '*' - react-native: '*' - dependencies: - '@react-navigation/core': 6.3.0_react@18.2.0 - escape-string-regexp: 4.0.0 - fast-deep-equal: 3.1.3 - nanoid: 3.3.4 - react: 18.2.0 - react-native: 0.69.4_27wpj6te4dzakyna6ilyljc3vq - dev: true - - /@react-navigation/routers/6.1.2: - resolution: {integrity: sha512-uJ+N7dyrZjA2L3ykyH0OyEiLNhzxDSfUqgOS4LmrLWlgly/oYFfPTqsxCD8zP0r3hv7ayLIPQPC1u1ubSO+42A==} - dependencies: - nanoid: 3.3.4 - dev: true /@sapphire/docusaurus-plugin-npm2yarn2pnpm/1.1.3: resolution: {integrity: sha512-wbTVwK3xGSD4Zu1gxHH86/XJ0HzI+jp8cB1g8Lh9+pqWN7uv3OnNwoCo/qGUBl6in5OvTVocq/lyq7Mwcrv+Eg==} @@ -7424,7 +7348,6 @@ packages: resolution: {integrity: sha512-anKkLmZZ+xm4p8JWBf4hElkM4XR+EZeA2M9BAkkTldmcyDY4mbdIJnRghDJH3Ov5ooY7/UAoENtmdMSkaAd7Cw==} dependencies: '@types/node': 18.0.0 - dev: true /@types/hast/2.3.4: resolution: {integrity: sha512-wLEm0QvaoawEDoTRwzTXp4b4jpwiJDvR5KMnFnVodm3scufTlBOWRD6N1OBf9TZMhjlNsSfcO5V+7AF4+Vy+9g==} @@ -7447,19 +7370,16 @@ packages: /@types/istanbul-lib-coverage/2.0.4: resolution: {integrity: sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g==} - dev: true /@types/istanbul-lib-report/3.0.0: resolution: {integrity: sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg==} dependencies: '@types/istanbul-lib-coverage': 2.0.4 - dev: true /@types/istanbul-reports/3.0.1: resolution: {integrity: sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw==} dependencies: '@types/istanbul-lib-report': 3.0.0 - dev: true /@types/jest/26.0.24: resolution: {integrity: sha512-E/X5Vib8BWqZNRlDxj9vYXhsDwPYbPINqKF9BsnSoon4RQ0D9moEuLD8txgyypFLH7J4+Lho9Nr/c8H0Fi+17w==} @@ -7880,19 +7800,16 @@ packages: /@types/yargs-parser/21.0.0: resolution: {integrity: sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==} - dev: true /@types/yargs/15.0.14: resolution: {integrity: sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ==} dependencies: '@types/yargs-parser': 21.0.0 - dev: true /@types/yargs/16.0.4: resolution: {integrity: sha512-T8Yc9wt/5LbJyCaLiHPReJa0kApcIgJ7Bn735GjItUfh08Z1pJvu8QZqb9s+mMvKV6WUQRV7K2R46YbjMXTTJw==} dependencies: '@types/yargs-parser': 21.0.0 - dev: true /@types/yargs/17.0.10: resolution: {integrity: sha512-gmEaFwpj/7f/ROdtIlci1R1VYU1J4j95m8T+Tj3iBgiBFKg1foE/PSl93bBd5T9LDXNPo8UlNN6W0qwD8O5OaA==} @@ -8276,11 +8193,9 @@ packages: engines: {node: '>=6.5'} dependencies: event-target-shim: 5.0.1 - dev: true /absolute-path/0.0.0: resolution: {integrity: sha512-HQiug4c+/s3WOvEnDRxXVmNtSG5s2gJM9r19BTcqjp7BWcE48PB+Y2G6jE65kqI0LpsQeMZygt/b60Gi4KxGyA==} - dev: true /abstract-leveldown/2.7.2: resolution: {integrity: sha512-+OVvxH2rHVEhWLdbudP6p0+dNMXu8JA1CbhP19T8paTYAcX7oJ4OVjT+ZUVpv7mITxXHqDMej+GdqXBmXkw09w==} @@ -8478,7 +8393,6 @@ packages: /anser/1.4.10: resolution: {integrity: sha512-hCv9AqTQ8ycjpSd3upOJd7vFwW1JaoYQ7tpham03GJ1ca8/65rqn0RpaWpItOAd6ylW9wAw6luXYPJIyPFVOww==} - dev: true /ansi-align/3.0.1: resolution: {integrity: sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==} @@ -8508,7 +8422,6 @@ packages: colorette: 1.4.0 slice-ansi: 2.1.0 strip-ansi: 5.2.0 - dev: true /ansi-html-community/0.0.8: resolution: {integrity: sha512-1APHAyr3+PCamwNw3bXCPp4HFLONZt/yIH0sZp0/469KWNTEy+qN5jQ3GVX6DMZ1UXAi34yVwtTeaG/HpBuuzw==} @@ -8524,7 +8437,6 @@ packages: /ansi-regex/4.1.1: resolution: {integrity: sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==} engines: {node: '>=6'} - dev: true /ansi-regex/5.0.1: resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} @@ -8590,7 +8502,6 @@ packages: /appdirsjs/1.2.7: resolution: {integrity: sha512-Quji6+8kLBC3NnBeo14nPDq0+2jUs5s3/xEye+udFHumHhRk4M7aAMXp/PBJqkKYGuuyR9M/6Dq7d2AViiGmhw==} - dev: true /application-config-path/0.1.0: resolution: {integrity: sha512-lljTpVvFteShrHuKRvweZfa9o/Nc34Y8r5/1Lqh/yyKaspRT2J3fkEiSSk1YLG8ZSVyU7yHysRy9zcDDS2aH1Q==} @@ -8685,12 +8596,10 @@ packages: /arr-diff/4.0.0: resolution: {integrity: sha512-YVIQ82gZPGBebQV/a8dar4AitzCQs0jjXwMPZllpXMaGjXPYVUawSxQrRsjhjupyVxEvbHgUmIhKVlND+j02kA==} engines: {node: '>=0.10.0'} - dev: true /arr-flatten/1.1.0: resolution: {integrity: sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==} engines: {node: '>=0.10.0'} - dev: true /arr-rotate/1.0.0: resolution: {integrity: sha512-yOzOZcR9Tn7enTF66bqKorGGH0F36vcPaSWg8fO0c0UYb3LX3VMXj5ZxEqQLNOecAhlRJ7wYZja5i4jTlnbIfQ==} @@ -8700,7 +8609,6 @@ packages: /arr-union/3.1.0: resolution: {integrity: sha512-sKpyeERZ02v1FeCZT8lrfJq5u6goHCtpTAzPwJYe7c8SPFOboNjNg1vz2L4VTn9T4PQxEx13TbXLmYUcS6Ug7Q==} engines: {node: '>=0.10.0'} - dev: true /array-differ/3.0.0: resolution: {integrity: sha512-THtfYS6KtME/yIAhKjZ2ul7XI96lQGHRputJQHO80LAWQnuGP4iCIN8vdMRboGbIEYBwU33q8Tch1os2+X0kMg==} @@ -8750,7 +8658,6 @@ packages: /array-unique/0.3.2: resolution: {integrity: sha512-SleRWjh9JUud2wH1hPs9rZBZ33H6T9HOiL0uwGnGx9FpE6wKGyfWugmbkEOIs6qWrZhg0LWeLziLrEwQJhs5mQ==} engines: {node: '>=0.10.0'} - dev: true /array.prototype.flat/1.3.0: resolution: {integrity: sha512-12IUEkHsAhA4DY5s0FPgNXIdc8VRSqD9Zp78a5au9abH/SOBrsp082JOWFNTjkMozh8mqcdiKuaLGhPeYztxSw==} @@ -8793,7 +8700,6 @@ packages: /assign-symbols/1.0.0: resolution: {integrity: sha512-Q+JC7Whu8HhmTdBph/Tq59IoRtoy6KAm5zzPv00WdujX82lbAL8K7WVjne7vdCsAmbF4AYaDOPyO3k0kl8qIrw==} engines: {node: '>=0.10.0'} - dev: true /ast-types/0.13.4: resolution: {integrity: sha512-x1FCFnFifvYDDzTaLII71vG5uvDwgtmDTEVWAxrgeiR8VjMONcCXJx7E+USjDtHlwFmt9MysbqgF9b9Vjr6w+w==} @@ -8807,12 +8713,10 @@ packages: engines: {node: '>=4'} dependencies: tslib: 2.4.0 - dev: true /astral-regex/1.0.0: resolution: {integrity: sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==} engines: {node: '>=4'} - dev: true /astral-regex/2.0.0: resolution: {integrity: sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==} @@ -8825,7 +8729,6 @@ packages: /async-limiter/1.0.1: resolution: {integrity: sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==} - dev: true /async/2.6.4: resolution: {integrity: sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==} @@ -8835,7 +8738,6 @@ packages: /async/3.2.4: resolution: {integrity: sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ==} - dev: true /asynckit/0.4.0: resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==} @@ -8849,7 +8751,6 @@ packages: resolution: {integrity: sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==} engines: {node: '>= 4.5.0'} hasBin: true - dev: true /autoprefixer/10.4.7_postcss@8.4.14: resolution: {integrity: sha512-ypHju4Y2Oav95SipEcCcI5J7CGPuvz8oat7sUtYj3ClK44bldfvtvcxK6IEK++7rqB7YchDGzweZIBG+SD0ZAA==} @@ -8901,7 +8802,6 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.18.5 - dev: true /babel-jest/27.5.1_@babel+core@7.18.5: resolution: {integrity: sha512-cdQ5dXjGRd0IBRATiQ4mZGlGlRE8kJpjPOixdNRdT+m3UcNqmYWN6rK6nvtXYfY3D76cb8s/O1Ss8ea24PIwcg==} @@ -9114,7 +9014,6 @@ packages: /babel-plugin-syntax-trailing-function-commas/7.0.0-beta.0: resolution: {integrity: sha512-Xj9XuRuz3nTSbaTXWv3itLOcxyF4oPD8douBBmj7U9BBC6nEBYfyOJYQMf/8PJAFotC62UY5dFfIGEPr7WswzQ==} - dev: true /babel-preset-current-node-syntax/1.0.1_@babel+core@7.18.5: resolution: {integrity: sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ==} @@ -9185,7 +9084,6 @@ packages: babel-plugin-syntax-trailing-function-commas: 7.0.0-beta.0 transitivePeerDependencies: - supports-color - dev: true /babel-preset-jest/27.5.1_@babel+core@7.18.5: resolution: {integrity: sha512-Nptf2FzlPCWYuJg41HBqXVT8ym6bXOevuCTbhxlUpjwtysGaIWFvDEjp4y+G7fl13FgOdjs7P/DmErqH7da0Ag==} @@ -9242,7 +9140,6 @@ packages: isobject: 3.0.1 mixin-deep: 1.3.2 pascalcase: 0.1.1 - dev: true /base16/1.0.0: resolution: {integrity: sha512-pNdYkNPiJUnEhnfXV56+sQy8+AaPcG3POZAUnwr4EeqCUZFz4u2PePbo3e5Gj4ziYPCWGUZT9RHisvJKnwFuBQ==} @@ -9330,7 +9227,6 @@ packages: buffer: 5.7.1 inherits: 2.0.4 readable-stream: 3.6.0 - dev: true /bl/5.0.0: resolution: {integrity: sha512-8vxFNZ0pflFfi0WXA3WQXlj6CaMEwsmh63I1CNp0q+wWv8sD0ARx1KovSQd0l2GkwrMIOyedq0EF1FxI+RCZLQ==} @@ -9504,7 +9400,6 @@ packages: to-regex: 3.0.2 transitivePeerDependencies: - supports-color - dev: true /braces/3.0.2: resolution: {integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==} @@ -9537,7 +9432,6 @@ packages: resolution: {integrity: sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==} dependencies: node-int64: 0.4.0 - dev: true /bson/4.6.4: resolution: {integrity: sha512-TdQ3FzguAu5HKPPlr0kYQCyrYUYh8tFM+CMTpxjNzVzxeiJY00Rtuj3LXLHSgiGvmaWlZ8PE+4KyM2thqE38pQ==} @@ -9589,7 +9483,6 @@ packages: dependencies: base64-js: 1.5.1 ieee754: 1.2.1 - dev: true /buffer/6.0.3: resolution: {integrity: sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==} @@ -9686,7 +9579,6 @@ packages: to-object-path: 0.3.0 union-value: 1.0.1 unset-value: 1.0.0 - dev: true /cacheable-request/6.1.0: resolution: {integrity: sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg==} @@ -9715,19 +9607,16 @@ packages: engines: {node: '>=4'} dependencies: callsites: 2.0.0 - dev: true /caller-path/2.0.0: resolution: {integrity: sha512-MCL3sf6nCSXOwCTzvPKhN18TU7AHTvdtam8DAogxcrJ8Rjfbbg7Lgng64H9Iy+vUV6VGFClN/TyxBkAebLRR4A==} engines: {node: '>=4'} dependencies: caller-callsite: 2.0.0 - dev: true /callsites/2.0.0: resolution: {integrity: sha512-ksWePWBloaWPxJYQ8TL0JHvtci6G5QTKwQ95RcWAa/lzoAKuAOflGdAK92hpHXjkwb8zLxoLNUoNYZgVsaJzvQ==} engines: {node: '>=4'} - dev: true /callsites/3.1.0: resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} @@ -9757,7 +9646,6 @@ packages: /camelcase/5.3.1: resolution: {integrity: sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==} engines: {node: '>=6'} - dev: true /camelcase/6.3.0: resolution: {integrity: sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==} @@ -9947,7 +9835,6 @@ packages: /ci-info/3.3.2: resolution: {integrity: sha512-xmDt/QIAdeZ9+nfdPsaBCpMvHNLFiLdjj59qjqn+6iPe6YmHGQ35sBnQ8uslRBXFmXkiZQOJRjvQeoGppoTjjg==} - dev: true /cjs-module-lexer/1.2.2: resolution: {integrity: sha512-cOU9usZw8/dXIXKtwa8pM0OTJQuJkxMN6w30csNRUerHfeQ5R6U3kkU/FtJeIf3M202OHfY2U8ccInBG7/xogA==} @@ -9968,7 +9855,6 @@ packages: define-property: 0.2.5 isobject: 3.0.1 static-extend: 0.1.2 - dev: true /classnames/2.3.1: resolution: {integrity: sha512-OlQdbZ7gLfGarSqxesMesDa5uz7KFbID8Kpq/SxIoNGDqY8lSYs0D+hhtBXhcdB3rcbXArFr7vlHheLk1voeNA==} @@ -10017,7 +9903,6 @@ packages: engines: {node: '>=8'} dependencies: restore-cursor: 3.1.0 - dev: true /cli-highlight/2.1.11: resolution: {integrity: sha512-9KDcoEVwyUXrjcJNvHD0NFc/hiwe/WPVYIleQh2O1N2Zro5gWJZ/K+3DGn8w8P/F6FxOgzyC5bxDyHIgCSPhGg==} @@ -10035,7 +9920,6 @@ packages: /cli-spinners/2.6.1: resolution: {integrity: sha512-x/5fWmGMnbKQAaNwN+UZlV79qBLM9JFnJuJ03gIi5whrob0xV0ofNVHy9DhwGdsMJQc2OKv0oGmLzvaqvAVv+g==} engines: {node: '>=6'} - dev: true /cli-table/0.3.11: resolution: {integrity: sha512-IqLQi4lO0nIB4tcdTpN4LCB9FI3uqrJZK7RC515EnhZ6qBaglkIgICb1wjeAqpdoOabm1+SuQtkXIPdYC93jhQ==} @@ -10072,7 +9956,6 @@ packages: string-width: 4.2.3 strip-ansi: 6.0.1 wrap-ansi: 6.2.0 - dev: true /cliui/7.0.4: resolution: {integrity: sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==} @@ -10103,7 +9986,6 @@ packages: /clone/1.0.4: resolution: {integrity: sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==} engines: {node: '>=0.8'} - dev: true /clone/2.1.2: resolution: {integrity: sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w==} @@ -10134,7 +10016,6 @@ packages: dependencies: map-visit: 1.0.0 object-visit: 1.0.1 - dev: true /color-convert/1.9.3: resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==} @@ -10177,7 +10058,6 @@ packages: /colorette/1.4.0: resolution: {integrity: sha512-Y2oEozpomLn7Q3HFP7dpww7AtMJplbM9lGZP6RDfHqmbeRjiwRg4n6VM6j4KLmRke85uWEI7JqF17f3pqdRA0g==} - dev: true /colorette/2.0.16: resolution: {integrity: sha512-hUewv7oMjCp+wkBv5Rm0v87eJhq4woh5rSR+42YSQJKecCqgIqNkZ6lAlQms/BwHPJA5NKMRlpxPRv0n8HQW6g==} @@ -10217,11 +10097,9 @@ packages: /command-exists/1.2.9: resolution: {integrity: sha512-LTQ/SGc+s0Xc0Fu5WaKnR0YiygZkm9eKFvyS+fRsU7/ZWFF8ykFM6Pc9aCVf1+xasOOZpO3BAVgVrKvsqKHV7w==} - dev: true /commander/2.13.0: resolution: {integrity: sha512-MVuS359B+YzaWqjCL/c+22gfryv+mCBPHAv3zyVI2GN8EY6IRP8VwtasXn8jyyhvvq84R4ImN1OKRtcbIasjYA==} - dev: true /commander/2.20.3: resolution: {integrity: sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==} @@ -10278,7 +10156,6 @@ packages: /component-emitter/1.3.0: resolution: {integrity: sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==} - dev: true /component-type/1.2.1: resolution: {integrity: sha512-Kgy+2+Uwr75vAi6ChWXgHuLvd+QLD7ssgpaRq2zCvt80ptvAfMc/hijcJxXkBa2wMlEZcJvC2H8Ubo+A9ATHIg==} @@ -10366,7 +10243,6 @@ packages: utils-merge: 1.0.1 transitivePeerDependencies: - supports-color - dev: true /consola/2.15.3: resolution: {integrity: sha512-9vAdYbHj6x2fLKC4+oPH0kFzY/orMZyG2Aj+kNylHxKGJ/Ed4dpNyAQYwJOdqO4zdM7XpVHmyejQDcQHrnuXbw==} @@ -10431,7 +10307,6 @@ packages: /copy-descriptor/0.1.1: resolution: {integrity: sha512-XgZ0pFcakEUlbwQEVNg3+QAis1FyTL3Qel9FYy8pSkQqoG3PNoT0bOCQtOXcOkur21r2Eq2kI+IE+gsmAEVlYw==} engines: {node: '>=0.10.0'} - dev: true /copy-text-to-clipboard/3.0.1: resolution: {integrity: sha512-rvVsHrpFcL4F2P8ihsoLdFHmd404+CMg71S756oRSeQgqk51U3kicGdnvfkrxva0xXH92SjGS62B0XIJsbh+9Q==} @@ -10503,7 +10378,6 @@ packages: is-directory: 0.3.1 js-yaml: 3.14.1 parse-json: 4.0.0 - dev: true /cosmiconfig/6.0.0: resolution: {integrity: sha512-xb3ZL6+L8b9JLLCx3ZdoZy4+2ECphCMo2PwqgP1tlfVq6M6YReyzBJtvWWtbDSpNr9hn96pkCiZqUcFEc+54Qg==} @@ -10584,7 +10458,6 @@ packages: semver: 5.7.1 shebang-command: 1.2.0 which: 1.3.1 - dev: true /cross-spawn/7.0.3: resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==} @@ -11371,7 +11244,6 @@ packages: /dayjs/1.11.5: resolution: {integrity: sha512-CAdX5Q3YW3Gclyo5Vpqkgpj8fSdLQcRuzfX6mC6Phy0nfJ0eGYOeS7m4mt2plDWLAtA4TqTakvbboHvUxfe4iA==} - dev: true /debug/2.6.9: resolution: {integrity: sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==} @@ -11465,7 +11337,6 @@ packages: /decamelize/1.2.0: resolution: {integrity: sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==} engines: {node: '>=0.10.0'} - dev: true /decimal.js/10.3.1: resolution: {integrity: sha512-V0pfhfr8suzyPGOx3nmq4aHqabehUZn6Ch9kyFpV79TGDTWFmHqUqXdabR7QHqxzrYolF4+tVmJhUG4OURg5dQ==} @@ -11474,7 +11345,6 @@ packages: /decode-uri-component/0.2.0: resolution: {integrity: sha512-hjf+xovcEn31w/EUYdTXQh/8smFL/dzYjohQGEIgjyNavaJfBY2p5F527Bo1VPATxv0VYTUC2bOcXvqFwk78Og==} engines: {node: '>=0.10'} - dev: true /decompress-response/3.3.0: resolution: {integrity: sha512-BzRPQuY1ip+qDonAOz42gRm/pg9F768C+npV/4JOsxRC2sq+Rlk+Q4ZCAsOhnIaMrgarILY+RMUIvMmmX1qAEA==} @@ -11529,7 +11399,6 @@ packages: /deepmerge/3.3.0: resolution: {integrity: sha512-GRQOafGHwMHpjPx9iCvTgpu9NojZ49q794EEL94JVEw6VaeA8XTUyBKvAkOOjBX9oJNiV6G3P+T+tihFjo2TqA==} engines: {node: '>=0.10.0'} - dev: true /deepmerge/4.2.2: resolution: {integrity: sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==} @@ -11554,7 +11423,6 @@ packages: resolution: {integrity: sha512-s82itHOnYrN0Ib8r+z7laQz3sdE+4FP3d9Q7VLO7U+KRT+CR0GsWuyHxzdAY82I7cXv0G/twrqomTJLOssO5HA==} dependencies: clone: 1.0.4 - dev: true /defer-to-connect/1.1.3: resolution: {integrity: sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ==} @@ -11583,14 +11451,12 @@ packages: engines: {node: '>=0.10.0'} dependencies: is-descriptor: 0.1.6 - dev: true /define-property/1.0.0: resolution: {integrity: sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA==} engines: {node: '>=0.10.0'} dependencies: is-descriptor: 1.0.2 - dev: true /define-property/2.0.2: resolution: {integrity: sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==} @@ -11598,7 +11464,6 @@ packages: dependencies: is-descriptor: 1.0.2 isobject: 3.0.1 - dev: true /degenerator/3.0.2: resolution: {integrity: sha512-c0mef3SNQo56t6urUU6tdQAs+ThoD0o9B9MJ8HEt7NQcGEILCRFqQb7ZbP9JAv+QF1Ky5plydhMR/IrqWDm+TQ==} @@ -11640,7 +11505,6 @@ packages: /denodeify/1.2.1: resolution: {integrity: sha512-KNTihKNmQENUZeKu5fzfpzRqR5S2VMp4gl9RFHiWzj9DfvYQPMJ6XHKNaQxaGCXwPk6y9yme3aUoaiAe+KX+vg==} - dev: true /denque/2.0.1: resolution: {integrity: sha512-tfiWc6BQLXNLpNiR5iGd0Ocu3P3VpxfzFiqubLgMfhfOw9WyvgJBd46CClNn9k3qfbjvT//0cf7AlYRX/OslMQ==} @@ -12068,7 +11932,6 @@ packages: resolution: {integrity: sha512-/o+BXHmB7ocbHEAs6F2EnG0ogybVVUdkRunTT2glZU9XAaGmhqskrvKwqXuDfNjEO0LZKWdejEEpnq8aM0tOaw==} engines: {node: '>=4'} hasBin: true - dev: true /eol/0.9.1: resolution: {integrity: sha512-Ds/TEoZjwggRoz/Q2O7SE3i4Jm66mqTDfmdHdq/7DKVk3bro9Q8h6WdXKdPqFLMoqxrDK5SVRzHVPOS6uuGtrg==} @@ -12095,7 +11958,6 @@ packages: resolution: {integrity: sha512-Sk5V6wVazPhq5MhpO+AUxJn5x7XSXGl1R93Vn7i+zS15KDVxQijejNCrz8340/2bgLBjR9GtEG8ZVKONDjcqGQ==} dependencies: stackframe: 1.3.4 - dev: true /errorhandler/1.5.1: resolution: {integrity: sha512-rcOwbfvP1WTViVoUjcfZicVzjhjTuhSMntHh6mW3IrEiyE6mJyXvsToJUJGlGlw/2xU9P5whlWNGlIDVeCiT4A==} @@ -12103,7 +11965,6 @@ packages: dependencies: accepts: 1.3.8 escape-html: 1.0.3 - dev: true /es-abstract/1.20.1: resolution: {integrity: sha512-WEm2oBhfoI2sImeM4OF2zE2V3BYdSF+KnSi9Sidz51fQHd7+JuF8Xgcj9/0o+OWeIeIS/MiuNnlruQrJf16GQA==} @@ -12631,7 +12492,6 @@ packages: /event-target-shim/5.0.1: resolution: {integrity: sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==} engines: {node: '>=6'} - dev: true /eventemitter3/4.0.7: resolution: {integrity: sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==} @@ -12660,7 +12520,6 @@ packages: p-finally: 1.0.0 signal-exit: 3.0.7 strip-eof: 1.0.0 - dev: true /execa/4.1.0: resolution: {integrity: sha512-j5W0//W7f8UxAn8hXVnwG8tLwdiUy4FJLcSupCg6maBYZDpyBvTApK7KyuI4bKj8KOh1r2YH+6ucuYtJv1bTZA==} @@ -12754,7 +12613,6 @@ packages: to-regex: 3.0.2 transitivePeerDependencies: - supports-color - dev: true /expand-range/1.8.2: resolution: {integrity: sha512-AFASGfIlnIbkKPQwX1yHaDjFvh/1gyKJODme52V6IORh69uEYgZp0o9C+qsIGNVEiuuhQU0CSSl++Rlegg1qvA==} @@ -13041,7 +12899,6 @@ packages: dependencies: assign-symbols: 1.0.0 is-extendable: 1.0.1 - dev: true /extend/3.0.2: resolution: {integrity: sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==} @@ -13076,7 +12933,6 @@ packages: to-regex: 3.0.2 transitivePeerDependencies: - supports-color - dev: true /extsprintf/1.3.0: resolution: {integrity: sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=} @@ -13165,7 +13021,6 @@ packages: resolution: {integrity: sha512-DkPJKQeY6kKwmuMretBhr7G6Vodr7bFwDYTXIkfG1gjvNpaxBTQV3PbXg6bR1c1UP4jPOX0jHUbbHANL9vRjVg==} dependencies: bser: 2.1.1 - dev: true /fbemitter/3.0.0: resolution: {integrity: sha512-KWKaceCwKQU0+HPoop6gn4eOHk50bBv/VxjJtGMfwmJt3D29JpN4H4eisCtIPA+a8GVBam+ldMMpMjJUvpDyHw==} @@ -13282,7 +13137,6 @@ packages: is-number: 3.0.0 repeat-string: 1.6.1 to-regex-range: 2.1.1 - dev: true /fill-range/7.0.1: resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==} @@ -13290,11 +13144,6 @@ packages: dependencies: to-regex-range: 5.0.1 - /filter-obj/1.1.0: - resolution: {integrity: sha512-8rXg1ZnX7xzy2NGDVkBVaAy+lSlPNwad13BtgSlLuxfIslyt5Vg64U7tFcCt4WS1R0hvtnQybT/IyCkGZ3DpXQ==} - engines: {node: '>=0.10.0'} - dev: true - /finalhandler/1.1.2: resolution: {integrity: sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==} engines: {node: '>= 0.8'} @@ -13308,7 +13157,6 @@ packages: unpipe: 1.0.0 transitivePeerDependencies: - supports-color - dev: true /finalhandler/1.2.0: resolution: {integrity: sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==} @@ -13339,7 +13187,6 @@ packages: commondir: 1.0.1 make-dir: 2.1.0 pkg-dir: 3.0.0 - dev: true /find-cache-dir/3.3.2: resolution: {integrity: sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==} @@ -13534,7 +13381,6 @@ packages: /flow-parser/0.121.0: resolution: {integrity: sha512-1gIBiWJNR0tKUNv8gZuk7l9rVX06OuLzY9AoGio7y/JT4V1IZErEMEq2TJS+PFcw/y0RshZ1J/27VfK1UQzYVg==} engines: {node: '>=0.4.0'} - dev: true /flux/4.0.3_react@18.2.0: resolution: {integrity: sha512-yKAbrp7JhZhj6uiT1FTuVMlIAT1J4jqEyBpFApi1kxpGZCvacMVc/t1pMQyotqHhAgvoE3bNvAykhCo2CLjnYw==} @@ -13591,7 +13437,6 @@ packages: /for-in/1.0.2: resolution: {integrity: sha512-7EwmXrOjyL+ChxMhmG5lnW9MPt1aIeZEwKhQzoBUdTV0N3zuwWDZYVJatDvZ2OyzPUvdIAZDsCetk3coyMfcnQ==} engines: {node: '>=0.10.0'} - dev: true /for-own/0.1.5: resolution: {integrity: sha512-SKmowqGTJoPzLO1T0BBJpkfp3EMacCMOuH40hOUbrbzElVktk4DioXVM99QkLCyKoiuOmyjgcWMpVz2xjE7LZw==} @@ -13682,7 +13527,6 @@ packages: engines: {node: '>=0.10.0'} dependencies: map-cache: 0.2.2 - dev: true /freeport-async/2.0.0: resolution: {integrity: sha512-K7od3Uw45AJg00XUmy15+Hae2hOcgKcmN3/EF6Y7i01O0gaqiRx8sUSpsb9+BRNL8RPBrhzPsVfy8q9ADlJuWQ==} @@ -13708,7 +13552,6 @@ packages: graceful-fs: 4.2.10 jsonfile: 2.4.0 klaw: 1.3.1 - dev: true /fs-extra/10.1.0: resolution: {integrity: sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==} @@ -13733,7 +13576,6 @@ packages: graceful-fs: 4.2.10 jsonfile: 4.0.0 universalify: 0.1.2 - dev: true /fs-extra/9.0.0: resolution: {integrity: sha512-pmEYSk3vYsG/bF651KPUXZ+hvjpgWYw/Gc7W9NFUe3ZVLczKKWIij3IKpOrQcdw4TILtibFslZ0UmR8Vvzig4g==} @@ -13898,7 +13740,6 @@ packages: /get-caller-file/2.0.5: resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==} engines: {node: 6.* || 8.* || >= 10.*} - dev: true /get-intrinsic/1.1.2: resolution: {integrity: sha512-Jfm3OyCxHh9DJyc28qGk+JmfkpO41A4XkneDSujN9MDXrm4oDKdHvndhZ2dN94+ERNfkYJWDclW6k2L/ZGHjXA==} @@ -13967,7 +13808,6 @@ packages: /get-value/2.0.6: resolution: {integrity: sha512-Ln0UQDlxH1BapMu3GPtf7CuYNwRZf2gwCuPqbyG6pB8WfmFpzqcy4xtAaAMUhnNqjMKTiCPZG2oMT3YSx8U2NA==} engines: {node: '>=0.10.0'} - dev: true /getenv/1.0.0: resolution: {integrity: sha512-7yetJWqbS9sbn0vIfliPsFgoXMKn/YMF+Wuiog97x+urnSRRRZ7xB+uVkwGKzRgq9CDFfMQnE9ruL5DHv9c6Xg==} @@ -14400,7 +14240,6 @@ packages: get-value: 2.0.6 has-values: 0.1.4 isobject: 2.1.0 - dev: true /has-value/1.0.0: resolution: {integrity: sha512-IBXk4GTsLYdQ7Rvt+GRBrFSVEkmuOUy4re0Xjd9kJSUQpnTrWR4/y9RpfexN9vkAPMFuQoeWKwqzPozRTlasGw==} @@ -14409,12 +14248,10 @@ packages: get-value: 2.0.6 has-values: 1.0.0 isobject: 3.0.1 - dev: true /has-values/0.1.4: resolution: {integrity: sha512-J8S0cEdWuQbqD9//tlZxiMuMNmxB8PlEwvYwuxsTmR1G5RXUePEX/SJn7aD0GMLieuZYSwNH0cQuJGwnYunXRQ==} engines: {node: '>=0.10.0'} - dev: true /has-values/1.0.0: resolution: {integrity: sha512-ODYZC64uqzmtfGMEAX/FvZiRyWLpAC3vYnNunURUnkGVTS+mI0smVsWaPydRBsE3g+ok7h960jChO8mFcWlHaQ==} @@ -14422,7 +14259,6 @@ packages: dependencies: is-number: 3.0.0 kind-of: 4.0.0 - dev: true /has-yarn/2.1.0: resolution: {integrity: sha512-UqBRqi4ju7T+TqGNdqAO0PaSVGsDGJUBQvk9eUWNGRY1CFGDzYhLWoM7JQEemnlvVcv/YEmc2wNW8BC24EnUsw==} @@ -14525,24 +14361,20 @@ packages: /hermes-engine/0.11.0: resolution: {integrity: sha512-7aMUlZja2IyLYAcZ69NBnwJAR5ZOYlSllj0oMpx08a8HzxHOys0eKCzfphrf6D0vX1JGO1QQvVsQKe6TkYherw==} - dev: true /hermes-estree/0.6.0: resolution: {integrity: sha512-2YTGzJCkhdmT6VuNprWjXnvTvw/3iPNw804oc7yknvQpNKo+vJGZmtvLLCghOZf0OwzKaNAzeIMp71zQbNl09w==} - dev: true /hermes-parser/0.6.0: resolution: {integrity: sha512-Vf58jBZca2+QBLR9h7B7mdg8oFz2g5ILz1iVouZ5DOrOrAfBmPfJjdjDT8jrO0f+iJ4/hSRrQHqHIjSnTaLUDQ==} dependencies: hermes-estree: 0.6.0 - dev: true /hermes-profile-transformer/0.0.6: resolution: {integrity: sha512-cnN7bQUm65UWOy6cbGcCcZ3rpwW8Q/j4OP5aWRhEry4Z2t2aR1cjrbp0BS+KiBN0smvP1caBgAuxutvyvJILzQ==} engines: {node: '>=8'} dependencies: source-map: 0.7.4 - dev: true /highlight.js/10.7.3: resolution: {integrity: sha512-tzcUFauisWKNHaRkN4Wjl/ZA07gENAjFl3J/c480dprkGTg5EQstgaNFqBfUqCq54kZRIEcreTsAgF/m2quD7A==} @@ -14872,7 +14704,6 @@ packages: /ieee754/1.2.1: resolution: {integrity: sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==} - dev: true /ignore/4.0.6: resolution: {integrity: sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==} @@ -14887,7 +14718,6 @@ packages: resolution: {integrity: sha512-47xSUiQioGaB96nqtp5/q55m0aBQSQdyIloMOc/x+QVTDZLNmXE892IIDrJ0hM1A5vcNUDD5tDffkSP5lCaIIA==} engines: {node: '>=4.0'} hasBin: true - dev: true /image-size/1.0.1: resolution: {integrity: sha512-VAwkvNSNGClRw9mDHhc5Efax8PLlsOGcUTh0T/LIriC8vPA3U5PdqXWqkz406MoYHMKW8Uf9gWr05T/rYB44kQ==} @@ -14915,7 +14745,6 @@ packages: dependencies: caller-path: 2.0.0 resolve-from: 3.0.0 - dev: true /import-fresh/3.3.0: resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==} @@ -15061,7 +14890,6 @@ packages: /ip/1.1.8: resolution: {integrity: sha512-PuExPYUiu6qMBQb4l06ecm6T6ujzhmh+MeJcW9wa89PoAz5pvd4zPgN5WJV104mb6S2T1AwNIAaB70JNrLQWhg==} - dev: true /ipaddr.js/1.9.1: resolution: {integrity: sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==} @@ -15081,14 +14909,12 @@ packages: engines: {node: '>=0.10.0'} dependencies: kind-of: 3.2.2 - dev: true /is-accessor-descriptor/1.0.0: resolution: {integrity: sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==} engines: {node: '>=0.10.0'} dependencies: kind-of: 6.0.3 - dev: true /is-alphabetical/1.0.4: resolution: {integrity: sha512-DwzsA04LQ10FHTZuL0/grVDk4rFoVH1pjAToYwBrHSxcrBIGQuXrQMtD5U1b0U2XVgKZCTLLP8u2Qxqhy3l2Vg==} @@ -15145,7 +14971,6 @@ packages: /is-buffer/1.1.6: resolution: {integrity: sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==} - dev: true /is-buffer/2.0.5: resolution: {integrity: sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==} @@ -15173,14 +14998,12 @@ packages: engines: {node: '>=0.10.0'} dependencies: kind-of: 3.2.2 - dev: true /is-data-descriptor/1.0.0: resolution: {integrity: sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==} engines: {node: '>=0.10.0'} dependencies: kind-of: 6.0.3 - dev: true /is-date-object/1.0.5: resolution: {integrity: sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==} @@ -15200,7 +15023,6 @@ packages: is-accessor-descriptor: 0.1.6 is-data-descriptor: 0.1.4 kind-of: 5.1.0 - dev: true /is-descriptor/1.0.2: resolution: {integrity: sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==} @@ -15209,12 +15031,10 @@ packages: is-accessor-descriptor: 1.0.0 is-data-descriptor: 1.0.0 kind-of: 6.0.3 - dev: true /is-directory/0.3.1: resolution: {integrity: sha512-yVChGzahRFvbkscn2MlwGismPO12i9+znNruC5gVEntG3qu0xQMzsGg/JFbrsqDOHtHFPci+V5aP5T9I+yeKqw==} engines: {node: '>=0.10.0'} - dev: true /is-docker/2.2.1: resolution: {integrity: sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==} @@ -15242,7 +15062,6 @@ packages: engines: {node: '>=0.10.0'} dependencies: is-plain-object: 2.0.4 - dev: true /is-extglob/1.0.0: resolution: {integrity: sha512-7Q+VbVafe6x2T+Tu6NcOf6sRklazEPmBoB3IWk3WdGZM2iGUwU/Oe3Wtq5lSEkDTTlpp8yx+5t4pzO/i9Ty1ww==} @@ -15256,7 +15075,6 @@ packages: /is-fullwidth-code-point/2.0.0: resolution: {integrity: sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==} engines: {node: '>=4'} - dev: true /is-fullwidth-code-point/3.0.0: resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} @@ -15302,7 +15120,6 @@ packages: /is-interactive/1.0.0: resolution: {integrity: sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==} engines: {node: '>=8'} - dev: true /is-invalid-path/0.1.0: resolution: {integrity: sha512-aZMG0T3F34mTg4eTdszcGXx54oiZ4NtHSft3hWNJMGJXUUqdIj3cOZuHcU0nCWWcY3jd7yRe/3AEm3vSNTpBGQ==} @@ -15357,7 +15174,6 @@ packages: engines: {node: '>=0.10.0'} dependencies: kind-of: 3.2.2 - dev: true /is-number/4.0.0: resolution: {integrity: sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ==} @@ -15458,7 +15274,6 @@ packages: /is-stream/1.1.0: resolution: {integrity: sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ==} engines: {node: '>=0.10.0'} - dev: true /is-stream/2.0.1: resolution: {integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==} @@ -15502,7 +15317,6 @@ packages: /is-unicode-supported/0.1.0: resolution: {integrity: sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==} engines: {node: '>=10'} - dev: true /is-url/1.2.4: resolution: {integrity: sha512-ITvGim8FhRiYe4IQ5uHSkj7pVaPDrCTkNd3yq3cV7iZAcJdHTUMPMEHcqSOy9xZ9qFenQCvi+2wjH9a1nXqHww==} @@ -15544,7 +15358,6 @@ packages: /is-windows/1.0.2: resolution: {integrity: sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==} engines: {node: '>=0.10.0'} - dev: true /is-word-character/1.0.4: resolution: {integrity: sha512-5SMO8RVennx3nZrqtKwCGyyetPE9VDba5ugvKLaD4KopPG5kR4mQ7tNt/r7feL5yt5h3lpuBbIUmCOG2eSzXHA==} @@ -15553,7 +15366,6 @@ packages: /is-wsl/1.1.0: resolution: {integrity: sha512-gfygJYZ2gLTDlmbWMI0CE2MwnFzSN/2SZfkMlItC4K/JBlsWVDB0bO6XhqcY13YXE7iMcAJnzTCJjPiTeJJ0Mw==} engines: {node: '>=4'} - dev: true /is-wsl/2.2.0: resolution: {integrity: sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==} @@ -15591,7 +15403,6 @@ packages: engines: {node: '>=0.10.0'} dependencies: isarray: 1.0.0 - dev: true /isobject/3.0.1: resolution: {integrity: sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==} @@ -15994,7 +15805,6 @@ packages: /jest-get-type/26.3.0: resolution: {integrity: sha512-TpfaviN1R2pQWkIihlfEanwOXK0zcxrKEE4MlU6Tn7keoXdN6/3gK/xl0yEh8DOunn5pOVGKf8hB4R9gVh04ig==} engines: {node: '>= 10.14.2'} - dev: true /jest-get-type/27.5.1: resolution: {integrity: sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==} @@ -16024,7 +15834,6 @@ packages: walker: 1.0.8 optionalDependencies: fsevents: 2.3.2 - dev: true /jest-haste-map/28.1.1: resolution: {integrity: sha512-ZrRSE2o3Ezh7sb1KmeLEZRZ4mgufbrMwolcFHNRSjKZhpLa8TdooXOOFlSwoUzlbVs1t0l7upVRW2K7RWGHzbQ==} @@ -16179,7 +15988,6 @@ packages: /jest-regex-util/27.5.1: resolution: {integrity: sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==} engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} - dev: true /jest-regex-util/28.0.2: resolution: {integrity: sha512-4s0IgyNIy0y9FK+cjoVYoxamT7Zeo7MhzqRGx7YDYmaQn1wucY9rotiGkBzzcMXTtjrCAP/f7f+E0F7+fxPNdw==} @@ -16365,7 +16173,6 @@ packages: dependencies: '@types/node': 18.0.0 graceful-fs: 4.2.10 - dev: true /jest-snapshot/27.5.1: resolution: {integrity: sha512-yYykXI5a0I31xX67mgeLw1DZ0bJB+gpq5IpSuCAoyDi0+BhgU/RIrL+RTzDmkNTchvDFWKP8lp+w/42Z3us5sA==} @@ -16438,7 +16245,6 @@ packages: ci-info: 3.3.2 graceful-fs: 4.2.10 picomatch: 2.3.1 - dev: true /jest-util/28.1.1: resolution: {integrity: sha512-FktOu7ca1DZSyhPAxgxB6hfh2+9zMoJ7aEQA759Z6p45NuO8mWcqujH+UdHlCm/V6JTWwDztM2ITCzU1ijJAfw==} @@ -16462,7 +16268,6 @@ packages: jest-get-type: 26.3.0 leven: 3.1.0 pretty-format: 26.6.2 - dev: true /jest-validate/27.5.1: resolution: {integrity: sha512-thkNli0LYTmOI1tDB3FI1S1RTp/Bqyd9pTarJwL87OIBFuqEb5Apv5EaApEudYg4g86e3CT6kM0RowkhtEnCBQ==} @@ -16606,7 +16411,6 @@ packages: /jetifier/1.6.8: resolution: {integrity: sha512-3Zi16h6L5tXDRQJTb221cnRoVG9/9OvreLdLU2/ZjRv/GILL+2Cemt0IKvkowwkDpvouAU1DQPOJ7qaiHeIdrw==} hasBin: true - dev: true /jimp-compact/0.16.1: resolution: {integrity: sha512-dZ6Ra7u1G8c4Letq/B5EzAxj4tLFHL+cGtdpR+PVm4yzPDj+lCk+AbivWt1eOM+ikzkowtyV7qSqX6qr3t71Ww==} @@ -16683,7 +16487,6 @@ packages: /jsc-android/250230.2.1: resolution: {integrity: sha512-KmxeBlRjwoqCnBBKGsihFtvsBHyUFlBxJPK4FzeYcIuBfdjv6jFys44JITAgSTbQD+vIdwMEfyZklsuQX0yI1Q==} - dev: true /jscodeshift/0.13.1_@babel+preset-env@7.18.2: resolution: {integrity: sha512-lGyiEbGOvmMRKgWk4vf+lUrCWO/8YR8sUR3FKF1Cq5fovjZDlIcw3Hu5ppLHAnEXshVffvaM0eyuY/AbOeYpnQ==} @@ -16713,7 +16516,6 @@ packages: write-file-atomic: 2.4.3 transitivePeerDependencies: - supports-color - dev: true /jsdom/16.7.0: resolution: {integrity: sha512-u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw==} @@ -16819,7 +16621,6 @@ packages: /json-parse-better-errors/1.0.2: resolution: {integrity: sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==} - dev: true /json-parse-even-better-errors/2.3.1: resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==} @@ -16891,13 +16692,11 @@ packages: resolution: {integrity: sha512-PKllAqbgLgxHaj8TElYymKCAgrASebJrWpTnEkOaTowt23VKXXN0sUeriJ+eh7y6ufb/CC5ap11pz71/cM0hUw==} optionalDependencies: graceful-fs: 4.2.10 - dev: true /jsonfile/4.0.0: resolution: {integrity: sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==} optionalDependencies: graceful-fs: 4.2.10 - dev: true /jsonfile/6.1.0: resolution: {integrity: sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==} @@ -16996,19 +16795,16 @@ packages: engines: {node: '>=0.10.0'} dependencies: is-buffer: 1.1.6 - dev: true /kind-of/4.0.0: resolution: {integrity: sha512-24XsCxmEbRwEDbz/qz3stgin8TTzZ1ESR56OMCN0ujYg+vRutNSiOj9bHH9u85DKgXguraugV5sFuvbD4FW/hw==} engines: {node: '>=0.10.0'} dependencies: is-buffer: 1.1.6 - dev: true /kind-of/5.1.0: resolution: {integrity: sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==} engines: {node: '>=0.10.0'} - dev: true /kind-of/6.0.3: resolution: {integrity: sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==} @@ -17018,7 +16814,6 @@ packages: resolution: {integrity: sha512-TED5xi9gGQjGpNnvRWknrwAB1eL5GciPfVFOt3Vk1OJCVDQbzuSfrF3hkUQKlsgKrG1F+0t5W0m+Fje1jIt8rw==} optionalDependencies: graceful-fs: 4.2.10 - dev: true /kleur/3.0.3: resolution: {integrity: sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==} @@ -17375,7 +17170,6 @@ packages: /lodash.throttle/4.1.1: resolution: {integrity: sha512-wIkUCfVKpVsWo3JSZlc+8MB5it+2AN5W8J7YVMST30UrvcQNZ1Okbj+rbVniijTWE6FGYy4XJq/rHkas8qJMLQ==} - dev: true /lodash.truncate/4.4.2: resolution: {integrity: sha512-jttmRe7bRse52OsWIMDLaXxWqRAmtIUccAQ3garviCqJjafXOfNMO0yMfNpdD6zbGaTU0P5Nz7e7gAT6cKmJRw==} @@ -17404,7 +17198,6 @@ packages: dependencies: chalk: 4.1.2 is-unicode-supported: 0.1.0 - dev: true /logform/2.4.1: resolution: {integrity: sha512-7XB/tqc3VRbri9pRjU6E97mQ8vC27ivJ3lct4jhyT+n0JNDd4YKldFl0D75NqDp46hk8RC7Ma1Vjv/UPf67S+A==} @@ -17423,7 +17216,6 @@ packages: ansi-fragments: 0.2.1 dayjs: 1.11.5 yargs: 15.4.1 - dev: true /long/4.0.0: resolution: {integrity: sha512-XsP+KhQif4bjX1kbuSiySJFNAehNxgLb6hPRGJ9QsUr8ajHkuXGdrHmFUTUUXhDwVX2R5bY4JNZEwbUiMhV+MA==} @@ -17517,7 +17309,6 @@ packages: dependencies: pify: 4.0.1 semver: 5.7.1 - dev: true /make-dir/3.1.0: resolution: {integrity: sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==} @@ -17585,12 +17376,10 @@ packages: resolution: {integrity: sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==} dependencies: tmpl: 1.0.5 - dev: true /map-cache/0.2.2: resolution: {integrity: sha512-8y/eV9QQZCiyn1SprXSrCmqJN0yNRATe+PO8ztwqrvrbdRLA3eYJF0yaR0YayLWkMbsQSKWS9N2gPcGEc4UsZg==} engines: {node: '>=0.10.0'} - dev: true /map-obj/1.0.1: resolution: {integrity: sha512-7N/q3lyZ+LVCp7PzuxrJr4KMbBE2hW7BT7YNia330OFxIf4d3r5zVpicP2650l7CPN6RM9zOJRl3NGpqSiw3Eg==} @@ -17607,7 +17396,6 @@ packages: engines: {node: '>=0.10.0'} dependencies: object-visit: 1.0.1 - dev: true /markdown-escapes/1.0.4: resolution: {integrity: sha512-8z4efJYk43E0upd0NbVXwgSTQs6cT3T06etieCMEg7dRbzCbxUCK/GHlX8mhHRDcp+OLlHkPKsvqQTCvsRl2cg==} @@ -17748,7 +17536,6 @@ packages: /memoize-one/5.2.1: resolution: {integrity: sha512-zYiwtZUcYyXKo/np96AGZAckk+FWWsUdJ3cHGGmld7+AhvcWmQyGCYUh1hc4Q/pkOhb65dQR/pqCyK0cOaHz4Q==} - dev: true /memoizee/0.4.15: resolution: {integrity: sha512-UBWmJpLZd5STPm7PMUlOw/TSy972M+z8gcyQ5veOnSDRREz/0bmpyTfKt3/51DhEBqCZQn1udM/5flcSPYhkdQ==} @@ -17826,18 +17613,15 @@ packages: nullthrows: 1.1.1 transitivePeerDependencies: - supports-color - dev: true /metro-cache-key/0.70.3: resolution: {integrity: sha512-0zpw+IcpM3hmGd5sKMdxNv3sbOIUYnMUvx1/yaM6vNRReSPmOLX0bP8fYf3CGgk8NEreZ1OHbVsuw7bdKt40Mw==} - dev: true /metro-cache/0.70.3: resolution: {integrity: sha512-iCix/+z812fUqa6KlOxaTkY6LQQDoXIe/VljXkGIvpygSCmYyhjQpfQVZEVVPezFmUBYXNdabdQ6cYx6JX3yMg==} dependencies: metro-core: 0.70.3 rimraf: 2.7.1 - dev: true /metro-config/0.70.3: resolution: {integrity: sha512-SSCDjSTygoCgzoj61DdrBeJzZDRwQxUEfcgc6t6coxWSExXNR4mOngz0q4SAam49Bmjq9J2Jft6qUKnUTPrRgA==} @@ -17853,7 +17637,6 @@ packages: - encoding - supports-color - utf-8-validate - dev: true /metro-core/0.70.3: resolution: {integrity: sha512-NzfHB/w5R7yLaOeU1tzPTbBzCRsYSvpKJkLMP0yudszKZzIAZqNdjoEJ9GZ688Wi0ynZxcU0BxukXh4my80ZBw==} @@ -17861,11 +17644,9 @@ packages: jest-haste-map: 27.5.1 lodash.throttle: 4.1.1 metro-resolver: 0.70.3 - dev: true /metro-hermes-compiler/0.70.3: resolution: {integrity: sha512-W6WttLi4E72JL/NyteQ84uxYOFMibe0PUr9aBKuJxxfCq6QRnJKOVcNY0NLW0He2tneXGk+8ZsNz8c0flEvYqg==} - dev: true /metro-inspector-proxy/0.70.3: resolution: {integrity: sha512-qQoNdPGrmyoJSWYkxSDpTaAI8xyqVdNDVVj9KRm1PG8niSuYmrCCFGLLFsMvkVYwsCWUGHoGBx0UoAzVp14ejw==} @@ -17879,13 +17660,11 @@ packages: - bufferutil - supports-color - utf-8-validate - dev: true /metro-minify-uglify/0.70.3: resolution: {integrity: sha512-oHyjV9WDqOlDE1FPtvs6tIjjeY/oP1PNUPYL1wqyYtqvjN+zzAOrcbsAAL1sv+WARaeiMsWkF2bwtNo+Hghoog==} dependencies: uglify-es: 3.3.9 - dev: true /metro-react-native-babel-preset/0.70.3: resolution: {integrity: sha512-4Nxc1zEiHEu+GTdEMEsHnRgfaBkg8f/Td3+FcQ8NTSvs+xL3LBrQy6N07idWSQZHIdGFf+tTHvRfSIWLD8u8Tg==} @@ -17931,7 +17710,6 @@ packages: react-refresh: 0.4.3 transitivePeerDependencies: - supports-color - dev: true /metro-react-native-babel-transformer/0.70.3: resolution: {integrity: sha512-WKBU6S/G50j9cfmFM4k4oRYprd8u3qjleD4so1E2zbTNILg+gYla7ZFGCAvi2G0ZcqS2XuGCR375c2hF6VVvwg==} @@ -17945,19 +17723,16 @@ packages: nullthrows: 1.1.1 transitivePeerDependencies: - supports-color - dev: true /metro-resolver/0.70.3: resolution: {integrity: sha512-5Pc5S/Gs4RlLbziuIWtvtFd9GRoILlaRC8RZDVq5JZWcWHywKy/PjNmOBNhpyvtRlzpJfy/ssIfLhu8zINt1Mw==} dependencies: absolute-path: 0.0.0 - dev: true /metro-runtime/0.70.3: resolution: {integrity: sha512-22xU7UdXZacniTIDZgN2EYtmfau2pPyh97Dcs+cWrLcJYgfMKjWBtesnDcUAQy3PHekDYvBdJZkoQUeskYTM+w==} dependencies: '@babel/runtime': 7.18.3 - dev: true /metro-source-map/0.70.3: resolution: {integrity: sha512-zsYtZGrwRbbGEFHtmMqqeCH9K9aTGNVPsurMOWCUeQA3VGyVGXPGtLMC+CdAM9jLpUyg6jw2xh0esxi+tYH7Uw==} @@ -17972,7 +17747,6 @@ packages: vlq: 1.0.1 transitivePeerDependencies: - supports-color - dev: true /metro-symbolicate/0.70.3: resolution: {integrity: sha512-JTYkF1dpeDUssQ84juE1ycnhHki2ylJBBdJE1JHtfu5oC+z1ElDbBdPHq90Uvt8HbRov/ZAnxvv7Zy6asS+WCA==} @@ -17987,7 +17761,6 @@ packages: vlq: 1.0.1 transitivePeerDependencies: - supports-color - dev: true /metro-transform-plugins/0.70.3: resolution: {integrity: sha512-dQRIJoTkWZN2IVS2KzgS1hs7ZdHDX3fS3esfifPkqFAEwHiLctCf0EsPgIknp0AjMLvmGWfSLJigdRB/dc0ASw==} @@ -17999,7 +17772,6 @@ packages: nullthrows: 1.1.1 transitivePeerDependencies: - supports-color - dev: true /metro-transform-worker/0.70.3: resolution: {integrity: sha512-MtVVsnHhhBOp9GRLCdAb2mD1dTCsIzT4+m34KMRdBDCEbDIb90YafT5prpU8qbj5uKd0o2FOQdrJ5iy5zQilHw==} @@ -18022,7 +17794,6 @@ packages: - encoding - supports-color - utf-8-validate - dev: true /metro/0.70.3: resolution: {integrity: sha512-uEWS7xg8oTetQDABYNtsyeUjdLhH3KAvLFpaFFoJqUpOk2A3iygszdqmjobFl6W4zrvKDJS+XxdMR1roYvUhTw==} @@ -18083,7 +17854,6 @@ packages: - encoding - supports-color - utf-8-validate - dev: true /micromatch/2.3.11: resolution: {integrity: sha512-LnU2XFEk9xxSJ6rfgAry/ty5qwUTyHYOBU0g4R6tIw5ljwgGIBmiKhRWLw5NpMOnrgUNcDJ4WMp8rl3sYVHLNA==} @@ -18123,7 +17893,6 @@ packages: to-regex: 3.0.2 transitivePeerDependencies: - supports-color - dev: true /micromatch/4.0.5: resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==} @@ -18168,7 +17937,6 @@ packages: resolution: {integrity: sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==} engines: {node: '>=4.0.0'} hasBin: true - dev: true /mimic-fn/1.2.0: resolution: {integrity: sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==} @@ -18345,7 +18113,6 @@ packages: dependencies: for-in: 1.0.2 is-extendable: 1.0.1 - dev: true /mkdirp-classic/0.5.3: resolution: {integrity: sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==} @@ -18357,7 +18124,6 @@ packages: hasBin: true dependencies: minimist: 1.2.6 - dev: true /mkdirp/1.0.4: resolution: {integrity: sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==} @@ -18573,7 +18339,6 @@ packages: to-regex: 3.0.2 transitivePeerDependencies: - supports-color - dev: true /napi-build-utils/1.0.2: resolution: {integrity: sha512-ONmRUqK7zj7DWX0D9ADe03wbwOBZxNAfF20PlGfCWQcD3+/MakShIHrMqx9YwPTfxDdF1zLeL+RGZiR9kGMLdg==} @@ -18731,7 +18496,6 @@ packages: /nice-try/1.0.5: resolution: {integrity: sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==} - dev: true /no-case/3.0.4: resolution: {integrity: sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==} @@ -18743,7 +18507,6 @@ packages: /nocache/3.0.4: resolution: {integrity: sha512-WDD0bdg9mbq6F4mRxEYcPWwfA1vxd0mrvKOyxI7Xj/atfRHVeutzuWByG//jfm4uPzp0y4Kj051EORCBSQMycw==} engines: {node: '>=12.0.0'} - dev: true /node-abi/3.22.0: resolution: {integrity: sha512-u4uAs/4Zzmp/jjsD9cyFYDXeISfUWaAVWshPmDZOFOv4Xl4SbzTXm53I04C2uRueYJ+0t5PEtLH/owbn2Npf/w==} @@ -18769,7 +18532,6 @@ packages: engines: {node: '>= 0.10.5'} dependencies: minimatch: 3.1.2 - dev: true /node-emoji/1.11.0: resolution: {integrity: sha512-wo2DpQkQp7Sjm2A0cq+sN7EHKO6Sl0ctXeBdFZrL9T9+UywORbufTcTZxom8YqpLQt/FqNMUkOpkZrJVYSKD3A==} @@ -18841,7 +18603,6 @@ packages: /node-int64/0.4.0: resolution: {integrity: sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==} - dev: true /node-releases/2.0.5: resolution: {integrity: sha512-U9h1NLROZTq9uE1SNffn6WuPDg8icmi3ns4rEl/oTfIle4iLjTliCzgTsbaIFMq/Xn078/lfY/BL0GWZ+psK4Q==} @@ -18849,7 +18610,6 @@ packages: /node-stream-zip/1.15.0: resolution: {integrity: sha512-LN4fydt9TqhZhThkZIVQnF9cwjU3qmUH9h78Mx/K7d3VvfRqqwthLwJEUOEL0QPZ0XQmNN7be5Ggit5+4dq3Bw==} engines: {node: '>=0.12.0'} - dev: true /nodemailer/6.4.11: resolution: {integrity: sha512-BVZBDi+aJV4O38rxsUh164Dk1NCqgh6Cm0rQSb9SK/DHGll/DrCMnycVDD7msJgZCnmVa8ASo8EZzR7jsgTukQ==} @@ -18940,7 +18700,6 @@ packages: engines: {node: '>=4'} dependencies: path-key: 2.0.1 - dev: true /npm-run-path/4.0.1: resolution: {integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==} @@ -18979,7 +18738,6 @@ packages: /nullthrows/1.1.1: resolution: {integrity: sha512-2vPPEi+Z7WqML2jZYddDIfy5Dqb0r2fze2zTxNNknZaFpVHU3mFB3R+DWeJWGVx0ecvttSGlJTI+WG+8Z4cDWw==} - dev: true /nwsapi/2.2.0: resolution: {integrity: sha512-h2AatdwYH+JHiZpv7pt/gSX1XoRGb7L/qSIeuqA6GwYoF9w1vP1cw42TO0aI2pNyshRK5893hNSl+1//vHK7hQ==} @@ -18995,7 +18753,6 @@ packages: /ob1/0.70.3: resolution: {integrity: sha512-Vy9GGhuXgDRY01QA6kdhToPd8AkLdLpX9GjH5kpqluVqTu70mgOm7tpGoJDZGaNbr9nJlJgnipqHJQRPORixIQ==} - dev: true /object-assign/4.1.1: resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} @@ -19008,7 +18765,6 @@ packages: copy-descriptor: 0.1.1 define-property: 0.2.5 kind-of: 3.2.2 - dev: true /object-hash/2.2.0: resolution: {integrity: sha512-gScRMn0bS5fH+IuwyIFgnh9zBdo4DV+6GhygmWM9HyNJSgS0hScp1f5vjtm7oIIOiT9trXrShAkLFSc2IqKNgw==} @@ -19040,7 +18796,6 @@ packages: engines: {node: '>=0.10.0'} dependencies: isobject: 3.0.1 - dev: true /object.assign/4.1.2: resolution: {integrity: sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==} @@ -19064,7 +18819,6 @@ packages: engines: {node: '>=0.10.0'} dependencies: isobject: 3.0.1 - dev: true /object.values/1.1.5: resolution: {integrity: sha512-QUZRW0ilQ3PnPpbNtgdNV1PDbEqLIiSFB3l+EnGtBQ/8SUTLj1PZwtQHABZtLgwpJZTSZhuGLOGk57Drx2IvYg==} @@ -19093,7 +18847,6 @@ packages: engines: {node: '>= 0.8'} dependencies: ee-first: 1.1.1 - dev: true /on-finished/2.4.1: resolution: {integrity: sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==} @@ -19134,7 +18887,6 @@ packages: engines: {node: '>=8'} dependencies: is-wsl: 1.1.0 - dev: true /open/7.4.2: resolution: {integrity: sha512-MVHddDVweXZF3awtlAS+6pgKLlm/JgxZ90+/NBurBoQctVOOB/zDdVjcyPzQ+0laDGbsWgrRkflI65sQeOgT9Q==} @@ -19222,7 +18974,6 @@ packages: log-symbols: 4.1.0 strip-ansi: 6.0.1 wcwidth: 1.0.1 - dev: true /os-homedir/1.0.2: resolution: {integrity: sha512-B5JU3cabzk8c67mRRd3ECmROafjYMXbuzlwtqdM8IbS8ktlTix8aFGb2bAGKrSRIlnfKwovGUUr72JUPyOb6kQ==} @@ -19232,7 +18983,6 @@ packages: /os-tmpdir/1.0.2: resolution: {integrity: sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==} engines: {node: '>=0.10.0'} - dev: true /osenv/0.1.5: resolution: {integrity: sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==} @@ -19257,7 +19007,6 @@ packages: /p-finally/1.0.0: resolution: {integrity: sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow==} engines: {node: '>=4'} - dev: true /p-limit/1.3.0: resolution: {integrity: sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==} @@ -19409,7 +19158,6 @@ packages: dependencies: error-ex: 1.3.2 json-parse-better-errors: 1.0.2 - dev: true /parse-json/5.2.0: resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==} @@ -19475,7 +19223,6 @@ packages: /pascalcase/0.1.1: resolution: {integrity: sha512-XHXfu/yOQRy9vYOtUDVMN60OEJjW013GoObG1o+xwQTpB9eYJX/BjXMsdW13ZDPruFhYYn0AG22w0xgQMwl3Nw==} engines: {node: '>=0.10.0'} - dev: true /password-prompt/1.1.2: resolution: {integrity: sha512-bpuBhROdrhuN3E7G/koAju0WjVw9/uQOG5Co5mokNj0MiOSBVZS1JTwM4zl55hu0WFmIEFvO9cU9sJQiBIYeIA==} @@ -19507,7 +19254,6 @@ packages: /path-key/2.0.1: resolution: {integrity: sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==} engines: {node: '>=4'} - dev: true /path-key/3.1.1: resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} @@ -19611,19 +19357,16 @@ packages: /pify/4.0.1: resolution: {integrity: sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==} engines: {node: '>=6'} - dev: true /pirates/4.0.5: resolution: {integrity: sha512-8V9+HQPupnaXMA23c5hvl69zXvTwTzyAYasnkb0Tts4XvO4CliqONMOnvlq26rkhLC3nWDFBJf73LU1e1VZLaQ==} engines: {node: '>= 6'} - dev: true /pkg-dir/3.0.0: resolution: {integrity: sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==} engines: {node: '>=6'} dependencies: find-up: 3.0.0 - dev: true /pkg-dir/4.2.0: resolution: {integrity: sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==} @@ -19643,7 +19386,6 @@ packages: dependencies: base64-js: 1.5.1 xmlbuilder: 15.1.1 - dev: true /pngjs/3.4.0: resolution: {integrity: sha512-NCrCHhWmnQklfH4MtJMRjZ2a8c80qXeMlQMv2uVp9ISJMTt562SbGd6n2oq0PaPgKm7Z6pL9E2UlLIhC+SHL3w==} @@ -19664,7 +19406,6 @@ packages: /posix-character-classes/0.1.1: resolution: {integrity: sha512-xTgYBc3fuo7Yt7JbiuFxSYGToMoz8fLoE6TC9Wx1P/u+LfeThMOAqmuyECnlBaaJb+u1m9hHiXUEtwW4OzfUJg==} engines: {node: '>=0.10.0'} - dev: true /postcss-calc/8.2.4_postcss@8.4.14: resolution: {integrity: sha512-SmWMSJmB8MRnnULldx0lQIyhSNvuDl9HfrZkaqqE/WHAhToYsAvDq+yAsA/kIyINDszOp3Rh0GFoNuH5Ypsm3Q==} @@ -20390,7 +20131,6 @@ packages: ansi-regex: 5.0.1 ansi-styles: 4.3.0 react-is: 17.0.2 - dev: true /pretty-format/27.5.1: resolution: {integrity: sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==} @@ -20518,7 +20258,6 @@ packages: resolution: {integrity: sha512-W04AqnILOL/sPRXziNicCjSNRruLAuIHEOVBazepu0545DDNGYHz7ar9ZgZ1fMU8/MA4mVxp5rkBWRi6OXIy3Q==} dependencies: asap: 2.0.6 - dev: true /prompts/2.4.2: resolution: {integrity: sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==} @@ -20705,16 +20444,6 @@ packages: strict-uri-encode: 1.1.0 dev: true - /query-string/7.1.1: - resolution: {integrity: sha512-MplouLRDHBZSG9z7fpuAAcI7aAYjDLhtsiVZsevsfaHWDS2IDdORKbSd1kWUA+V4zyva/HZoSfpwnYMMQDhb0w==} - engines: {node: '>=6'} - dependencies: - decode-uri-component: 0.2.0 - filter-obj: 1.1.0 - split-on-first: 1.1.0 - strict-uri-encode: 2.0.0 - dev: true - /querystringify/2.2.0: resolution: {integrity: sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==} dev: true @@ -20850,7 +20579,6 @@ packages: transitivePeerDependencies: - bufferutil - utf-8-validate - dev: true /react-dom/18.2.0_react@18.2.0: resolution: {integrity: sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==} @@ -20897,11 +20625,9 @@ packages: /react-is/17.0.2: resolution: {integrity: sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==} - dev: true /react-is/18.2.0: resolution: {integrity: sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==} - dev: true /react-json-view/1.21.3_biqbaboplfbrettd7655fr4n2y: resolution: {integrity: sha512-13p8IREj9/x/Ye4WI/JpjhoIwuzEgUAtgJZNBJckfzJt1qyh24BdTm6UQNGnyTq9dapQdrqvquZTo3dz1X6Cjw==} @@ -20954,11 +20680,18 @@ packages: transitivePeerDependencies: - '@babel/preset-env' - supports-color - dev: true /react-native-gradle-plugin/0.0.7: resolution: {integrity: sha512-+4JpbIx42zGTONhBTIXSyfyHICHC29VTvhkkoUOJAh/XHPEixpuBduYgf6Y4y9wsN1ARlQhBBoptTvXvAFQf5g==} - dev: true + + /react-native-url-polyfill/1.3.0_react-native@0.69.4: + resolution: {integrity: sha512-w9JfSkvpqqlix9UjDvJjm1EjSt652zVQ6iwCIj1cVVkwXf4jQhQgTNXY6EVTwuAmUjg6BC6k9RHCBynoLFo3IQ==} + peerDependencies: + react-native: '*' + dependencies: + react-native: 0.69.4_27wpj6te4dzakyna6ilyljc3vq + whatwg-url-without-unicode: 8.0.0-3 + dev: false /react-native/0.69.4_27wpj6te4dzakyna6ilyljc3vq: resolution: {integrity: sha512-rqNMialM/T4pHRKWqTIpOxA65B/9kUjtnepxwJqvsdCeMP9Q2YdSx4VASFR9RoEFYcPRU41yGf6EKrChNfns3g==} @@ -21007,12 +20740,10 @@ packages: - encoding - supports-color - utf-8-validate - dev: true /react-refresh/0.4.3: resolution: {integrity: sha512-Hwln1VNuGl/6bVwnd0Xdn1e84gT/8T9aYNL+HAKDArLCS7LWjwr7StE30IEYbIkx0Vi3vs+coQxe+SQDbGbbpA==} engines: {node: '>=0.10.0'} - dev: true /react-router-config/5.1.1_4gumyfmpzq3vvokmq4lwan2qpu: resolution: {integrity: sha512-DuanZjaD8mQp1ppHjgnnUnyOlqYXZVjnov/JzFhjLEwd3Z4dYjMSnqrEzzGThH47vpCOqPPwJM2FtthLeJ8Pbg==} @@ -21066,7 +20797,6 @@ packages: object-assign: 4.1.1 react: 18.2.0 react-is: 18.2.0 - dev: true /react-textarea-autosize/8.3.4_react@18.2.0: resolution: {integrity: sha512-CdtmP8Dc19xL8/R6sWvtknD/eCXkQr30dtvC4VmGInhRsfF8X/ihXCq6+9l9qbxmKRiq407/7z5fxE7cVWQNgQ==} @@ -21174,7 +20904,6 @@ packages: /readline/1.3.0: resolution: {integrity: sha512-k2d6ACCkiNYz222Fs/iNze30rRJ1iIicW7JuX/7/cozvih6YCkFZH+J6mAFDVgv0dRBaAyr4jDqC95R2y4IADg==} - dev: true /recast/0.20.5: resolution: {integrity: sha512-E5qICoPoNL4yU0H0NoBDntNB0Q5oMSNh9usFctYniLBluTthi3RsQVBXIJNbApOlvSwW/RGxIuokPcAc59J5fQ==} @@ -21184,7 +20913,6 @@ packages: esprima: 4.0.1 source-map: 0.6.1 tslib: 2.4.0 - dev: true /rechoir/0.6.2: resolution: {integrity: sha512-HFM8rkZ+i3zrV+4LQjwQ0W+ez98pApMGM3HUrN04j3CqzPOzl9nmP15Y8YXNm8QHGv/eacOVEjqhmWpkRV0NAw==} @@ -21258,7 +20986,6 @@ packages: dependencies: extend-shallow: 3.0.2 safe-regex: 1.1.0 - dev: true /regexp.prototype.flags/1.4.3: resolution: {integrity: sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==} @@ -21410,7 +21137,6 @@ packages: /repeat-element/1.1.4: resolution: {integrity: sha512-LFiNfRcSu7KK3evMyYOuCzv3L10TW7yC1G2/+StMjK8Y6Vqd2MG7r/Qjw4ghtuCOjFvlnms/iMmLqpvW/ES/WQ==} engines: {node: '>=0.10.0'} - dev: true /repeat-string/1.6.1: resolution: {integrity: sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w==} @@ -21446,7 +21172,6 @@ packages: /require-directory/2.1.1: resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==} engines: {node: '>=0.10.0'} - dev: true /require-from-string/2.0.2: resolution: {integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==} @@ -21458,7 +21183,6 @@ packages: /require-main-filename/2.0.0: resolution: {integrity: sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==} - dev: true /requireg/0.2.2: resolution: {integrity: sha512-nYzyjnFcPNGR3lx9lwPPPnuQxv6JWEZd2Ci0u9opN7N5zUEPIhY/GbL3vMGOr2UXwEg9WwSyV9X9Y/kLFgPsOg==} @@ -21494,7 +21218,6 @@ packages: /resolve-from/3.0.0: resolution: {integrity: sha512-GnlH6vxLymXJNMBo7XP1fJIzBFbdYt49CuTwmB/6N53t+kMPRMFKz783LlQ4tv28XoQfMWinAJX6WCGf2IlaIw==} engines: {node: '>=4'} - dev: true /resolve-from/4.0.0: resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} @@ -21511,7 +21234,6 @@ packages: /resolve-url/0.2.1: resolution: {integrity: sha512-ZuF55hVUQaaczgOIwqWzkEcEidmlD/xl44x1UZnhOXcYuFN2S6+rcxpG+C1N3So0wvNI3DmJICUFfu2SxhBmvg==} deprecated: https://github.com/lydell/resolve-url#deprecated - dev: true /resolve.exports/1.1.0: resolution: {integrity: sha512-J1l+Zxxp4XK3LUDZ9m60LRJF/mAe4z6a4xyabPHk7pvK5t35dACV32iIjJDFeWZFfZlO29w6SZ67knR0tHzJtQ==} @@ -21551,12 +21273,10 @@ packages: dependencies: onetime: 5.1.2 signal-exit: 3.0.7 - dev: true /ret/0.1.15: resolution: {integrity: sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==} engines: {node: '>=0.12'} - dev: true /retry-as-promised/5.0.0: resolution: {integrity: sha512-6S+5LvtTl2ggBumk04hBo/4Uf6fRJUwIgunGZ7CYEBCeufGFW1Pu6ucUf/UskHeWOIsUcLOGLFXPig5tR5V1nA==} @@ -21593,7 +21313,6 @@ packages: /rimraf/2.2.8: resolution: {integrity: sha512-R5KMKHnPAQaZMqLOsyuyUmcIjSeDm+73eoqQpaXA7AZ22BL+6C+1mcUscgOsNd8WVlJuvlgAPsegcx7pjlV0Dg==} hasBin: true - dev: true /rimraf/2.4.5: resolution: {integrity: sha512-J5xnxTyqaiw06JjMftq7L9ouA448dw/E7dKghkP9WpKNuwmARNNg+Gk8/u5ryb9N/Yo2+z3MCwuqFK/+qPOPfQ==} @@ -21608,14 +21327,12 @@ packages: hasBin: true dependencies: glob: 7.2.3 - dev: true /rimraf/2.7.1: resolution: {integrity: sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==} hasBin: true dependencies: glob: 7.2.3 - dev: true /rimraf/3.0.2: resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==} @@ -21698,7 +21415,6 @@ packages: resolution: {integrity: sha512-aJXcif4xnaNUzvUuC5gcb46oTS7zvg4jpMTnuqtrEPlR3vFr4pxtdTwaF1Qs3Enjn9HK+ZlwQui+a7z0SywIzg==} dependencies: ret: 0.1.15 - dev: true /safe-stable-stringify/2.3.1: resolution: {integrity: sha512-kYBSfT+troD9cDA85VDnHZ1rpHC50O0g1e6WlGHVCz/g+JS+9WKLj+XwFYyR8UbrZN8ll9HUpDAAddY58MGisg==} @@ -21731,7 +21447,6 @@ packages: resolution: {integrity: sha512-1r87x5fz9MXqswA2ERLo0EbOAU74DpIUO090gIasYTqlVoJeMcl+Z1Rg7WHz+qtPujhS/hGIt9kxZOYBV3faRQ==} dependencies: loose-envify: 1.4.0 - dev: true /scheduler/0.23.0: resolution: {integrity: sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==} @@ -21922,7 +21637,6 @@ packages: /serialize-error/2.1.0: resolution: {integrity: sha512-ghgmKt5o4Tly5yEG/UJp8qTd0AN7Xalw4XBtDEKP655B699qMEtra1WlXeE6WIvdEG481JvRxULKsInq/iNysw==} engines: {node: '>=0.10.0'} - dev: true /serialize-error/6.0.0: resolution: {integrity: sha512-3vmBkMZLQO+BR4RPHcyRGdE09XCF6cvxzk2N2qn8Er3F91cy8Qt7VvEbZBOpaL53qsBbe2cFOefU6tRY6WDelA==} @@ -21977,7 +21691,6 @@ packages: /set-blocking/2.0.0: resolution: {integrity: sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==} - dev: true /set-cookie-parser/2.5.0: resolution: {integrity: sha512-cHMAtSXilfyBePduZEBVPTCftTQWz6ehWJD5YNUg4mqvRosrrjKbo4WS8JkB0/RxonMoohHm7cOGH60mDkRQ9w==} @@ -21996,7 +21709,6 @@ packages: is-extendable: 0.1.1 is-plain-object: 2.0.4 split-string: 3.1.0 - dev: true /setimmediate/1.0.5: resolution: {integrity: sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==} @@ -22034,7 +21746,6 @@ packages: engines: {node: '>=0.10.0'} dependencies: shebang-regex: 1.0.0 - dev: true /shebang-command/2.0.0: resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} @@ -22045,7 +21756,6 @@ packages: /shebang-regex/1.0.0: resolution: {integrity: sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==} engines: {node: '>=0.10.0'} - dev: true /shebang-regex/3.0.0: resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} @@ -22148,7 +21858,6 @@ packages: ansi-styles: 3.2.1 astral-regex: 1.0.0 is-fullwidth-code-point: 2.0.0 - dev: true /slice-ansi/4.0.0: resolution: {integrity: sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==} @@ -22185,14 +21894,12 @@ packages: define-property: 1.0.0 isobject: 3.0.1 snapdragon-util: 3.0.1 - dev: true /snapdragon-util/3.0.1: resolution: {integrity: sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==} engines: {node: '>=0.10.0'} dependencies: kind-of: 3.2.2 - dev: true /snapdragon/0.8.2: resolution: {integrity: sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==} @@ -22208,7 +21915,6 @@ packages: use: 3.1.1 transitivePeerDependencies: - supports-color - dev: true /sockjs/0.3.24: resolution: {integrity: sha512-GJgLTZ7vYb/JtPSSZ10hsOYIvEYsjbNU+zPdIHcUaWVNUEPivzxku31865sSSud0Da0W4lEeOPlmw93zLQchuQ==} @@ -22286,7 +21992,6 @@ packages: resolve-url: 0.2.1 source-map-url: 0.4.1 urix: 0.1.0 - dev: true /source-map-resolve/0.6.0: resolution: {integrity: sha512-KXBr9d/fO/bWo97NXsPIAW1bFSBOuCnjbNTBMO7N59hsv5i9yzRDfcYwwt0l04+VqnKC+EwzvJZIP/qkuMgR/w==} @@ -22312,7 +22017,6 @@ packages: /source-map-url/0.4.1: resolution: {integrity: sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw==} deprecated: See https://github.com/lydell/source-map-url#deprecated - dev: true /source-map/0.5.7: resolution: {integrity: sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==} @@ -22325,7 +22029,6 @@ packages: /source-map/0.7.4: resolution: {integrity: sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==} engines: {node: '>= 8'} - dev: true /space-separated-tokens/1.1.5: resolution: {integrity: sha512-q/JSVd1Lptzhf5bkYm4ob4iWPjx0KiRe3sRFBNrVqbJkFaBm5vbbowy1mymoPNLRa52+oadOhJ+K49wsSeSjTA==} @@ -22398,17 +22101,11 @@ packages: - supports-color dev: false - /split-on-first/1.1.0: - resolution: {integrity: sha512-43ZssAJaMusuKWL8sKUBQXHWOpq8d6CfN/u1p4gUzfJkM05C8rxTmYrkIPTXapZpORA6LkkzcUulJ8FqA7Uudw==} - engines: {node: '>=6'} - dev: true - /split-string/3.1.0: resolution: {integrity: sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==} engines: {node: '>=0.10.0'} dependencies: extend-shallow: 3.0.2 - dev: true /split/1.0.1: resolution: {integrity: sha512-mTyOoPbrivtXnwnIxZRFYRrPNtEFKlpB2fvjSnCQUiAA6qAZzqwna5envK4uk6OIeP17CsdF3rSBGYVBsU0Tkg==} @@ -22521,14 +22218,12 @@ packages: /stackframe/1.3.4: resolution: {integrity: sha512-oeVtt7eWQS+Na6F//S4kJ2K2VbRlS9D43mAlMyVpVWovy9o+jfgH8O9agzANzaiLjclA0oYzUXEM4PurhSUChw==} - dev: true /stacktrace-parser/0.1.10: resolution: {integrity: sha512-KJP1OCML99+8fhOHxwwzyWrlUuVX5GQ0ZpJTd1DFXhdkrvg1szxfHhawXUZ3g9TkXORQd4/WG68jMlQZ2p8wlg==} engines: {node: '>=6'} dependencies: type-fest: 0.7.1 - dev: true /state-toggle/1.0.3: resolution: {integrity: sha512-d/5Z4/2iiCnHw6Xzghyhb+GcmF89bxwgXG60wjIiZaxnymbyOmI8Hk4VqHXiVVp6u2ysaskFfXg3ekCj4WNftQ==} @@ -22540,7 +22235,6 @@ packages: dependencies: define-property: 0.2.5 object-copy: 0.1.0 - dev: true /statuses/1.5.0: resolution: {integrity: sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==} @@ -22602,11 +22296,6 @@ packages: engines: {node: '>=0.10.0'} dev: true - /strict-uri-encode/2.0.0: - resolution: {integrity: sha512-QwiXZgpRcKkhTj2Scnn++4PKtWsH0kpzZ62L2R6c/LUVYv7hVnZqcg2+sMuT6R7Jusu1vviK/MFsu6kNJfWlEQ==} - engines: {node: '>=4'} - dev: true - /string-length/1.0.1: resolution: {integrity: sha512-MNCACnufWUf3pQ57O5WTBMkKhzYIaKEcUioO0XHrTMafrbBaNk4IyDOLHBv5xbXO0jLLdsYWeFjpjG2hVHRDtw==} engines: {node: '>=0.10.0'} @@ -22698,7 +22387,6 @@ packages: engines: {node: '>=6'} dependencies: ansi-regex: 4.1.1 - dev: true /strip-ansi/6.0.1: resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} @@ -22730,7 +22418,6 @@ packages: /strip-eof/1.0.0: resolution: {integrity: sha512-7FCwGGmx8mD5xQd3RPUvnSpUXHM3BWuzjtpD4TXsfcZ9EL4azvVVUscFYwD9nx8Kh+uCBC00XBtAykoMHwTh8Q==} engines: {node: '>=0.10.0'} - dev: true /strip-final-newline/2.0.0: resolution: {integrity: sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==} @@ -22868,7 +22555,6 @@ packages: /sudo-prompt/9.2.1: resolution: {integrity: sha512-Mu7R0g4ig9TUuGSxJavny5Rv0egCEtpZRNMrZaYS1vxkiIxGiGUwoezU3LazIQ+KE04hTrTfNPgxU5gzi7F5Pw==} - dev: true /superstatic/8.0.0: resolution: {integrity: sha512-PqlA2xuEwOlRZsknl58A/rZEmgCUcfWIFec0bn10wYE5/tbMhEbMXGHCYDppiXLXcuhGHyOp1IimM2hLqkLLuw==} @@ -23086,14 +22772,12 @@ packages: dependencies: os-tmpdir: 1.0.2 rimraf: 2.2.8 - dev: true /temp/0.8.4: resolution: {integrity: sha512-s0ZZzd0BzYv5tLSptZooSjK8oj6C+c19p7Vqta9+6NPOf7r+fxq0cJe6/oN4LTC79sy5NY8ucOJNgwsKCSbfqg==} engines: {node: '>=6.0.0'} dependencies: rimraf: 2.6.3 - dev: true /tempy/0.3.0: resolution: {integrity: sha512-WrH/pui8YCwmeiAoxV+lpRH9HpRtgBhSR2ViBPgpGb/wnYDzp21R4MN45fsCGvLROvY67o3byhJRYRONJyImVQ==} @@ -23201,7 +22885,6 @@ packages: /throat/5.0.0: resolution: {integrity: sha512-fcwX4mndzpLQKBS1DVYhGAcYaYt7vsHNIvQV+WXMvnow5cgjPphq5CaayLaGsjRdSCKZFNGt7/GYAuXaNOiYCA==} - dev: true /throat/6.0.1: resolution: {integrity: sha512-8hmiGIJMDlwjg7dlJ4yKGLK8EsYqKgPWbG3b4wjJddKNwc7N7Dpn08Df4szr/sZdMVeOstrdYSsqzX6BYbcB+w==} @@ -23216,7 +22899,6 @@ packages: dependencies: readable-stream: 2.3.7 xtend: 4.0.2 - dev: true /through2/3.0.2: resolution: {integrity: sha512-enaDQ4MUyP2W6ZyT6EsMzqBPZaM/avg8iuo+l2d3QCs0J+6RaqkHV/2/lOwDTueBHeJ/2LG9lrLW3d5rWPucuQ==} @@ -23274,7 +22956,6 @@ packages: /tmpl/1.0.5: resolution: {integrity: sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==} - dev: true /to-fast-properties/2.0.0: resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==} @@ -23285,7 +22966,6 @@ packages: engines: {node: '>=0.10.0'} dependencies: kind-of: 3.2.2 - dev: true /to-readable-stream/1.0.0: resolution: {integrity: sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q==} @@ -23297,7 +22977,6 @@ packages: dependencies: is-number: 3.0.0 repeat-string: 1.6.1 - dev: true /to-regex-range/5.0.1: resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} @@ -23313,7 +22992,6 @@ packages: extend-shallow: 3.0.2 regex-not: 1.0.2 safe-regex: 1.1.0 - dev: true /toidentifier/1.0.0: resolution: {integrity: sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==} @@ -23729,7 +23407,6 @@ packages: /type-fest/0.7.1: resolution: {integrity: sha512-Ne2YiiGN8bmrmJJEuTWTLJR32nh/JdL1+PSicowtNb0WFpn59GK8/lfD61bVtzguz7b3PBt74nxpv/Pw5po5Rg==} engines: {node: '>=8'} - dev: true /type-fest/0.8.1: resolution: {integrity: sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==} @@ -23958,7 +23635,6 @@ packages: dependencies: commander: 2.13.0 source-map: 0.6.1 - dev: true /ulid/2.3.0: resolution: {integrity: sha512-keqHubrlpvT6G2wH0OEfSW4mquYRcbe/J8NMmveoQOjUqmo+hXtO+ORCpWhdbZ7k72UtY61BL7haGxW6enBnjw==} @@ -24033,7 +23709,6 @@ packages: get-value: 2.0.6 is-extendable: 0.1.1 set-value: 2.0.1 - dev: true /unique-filename/1.1.1: resolution: {integrity: sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==} @@ -24122,7 +23797,6 @@ packages: /universalify/0.1.2: resolution: {integrity: sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==} engines: {node: '>= 4.0.0'} - dev: true /universalify/1.0.0: resolution: {integrity: sha512-rb6X1W158d7pRQBg5gkR8uPaSfiids68LTJQYOtEUhoJUWBdaQHsuT/EUduxXYxcrt4r5PJ4fuHW1MHT6p0qug==} @@ -24143,7 +23817,6 @@ packages: dependencies: has-value: 0.3.1 isobject: 3.0.1 - dev: true /unzipper/0.10.11: resolution: {integrity: sha512-+BrAq2oFqWod5IESRjL3S8baohbevGcVA+teAIOYWM3pDVdseogqbzhhvvmiyQrUNKFUnDMtELW3X8ykbyDCJw==} @@ -24216,7 +23889,6 @@ packages: /urix/0.1.0: resolution: {integrity: sha512-Am1ousAhSLBeB9cG/7k7r2R0zj50uDRlZHPGbazid5s9rlF1F/QKYObEKSIunSjIOkJZqwRRLpvewjEkM7pSqg==} deprecated: Please see https://github.com/lydell/urix#deprecated - dev: true /url-join/0.0.1: resolution: {integrity: sha1-HbSK1CLTQCRpqH99l73r/k+x48g=} @@ -24276,10 +23948,6 @@ packages: react: 18.2.0 dev: false - /use-latest-callback/0.1.5: - resolution: {integrity: sha512-HtHatS2U4/h32NlkhupDsPlrbiD27gSH5swBdtXbCAlc6pfOFzaj0FehW/FO12rx8j2Vy4/lJScCiJyM01E+bQ==} - dev: true - /use-latest/1.2.1_react@18.2.0: resolution: {integrity: sha512-xA+AVm/Wlg3e2P/JiItTziwS7FK92LWrDB0p+hgXloIMuVCeJJ8v6f0eeHyPZaJrM+usM1FkFfbNCrJGs8A/zw==} peerDependencies: @@ -24303,7 +23971,6 @@ packages: /use/3.1.1: resolution: {integrity: sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==} engines: {node: '>=0.10.0'} - dev: true /util-deprecate/1.0.2: resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} @@ -24417,7 +24084,6 @@ packages: /vlq/1.0.1: resolution: {integrity: sha512-gQpnTgkubC6hQgdIcRdYGDSDc+SaujOdyesZQMv6JlfQee/9Mp0Qhnys6WxDWvQnL5WZdT7o2Ul187aSt0Rq+w==} - dev: true /vm2/3.9.9: resolution: {integrity: sha512-xwTm7NLh/uOjARRBs8/95H0e8fT3Ukw5D/JJWhxMbhKzNh1Nu981jQKvkep9iKYNxzlVrdzD0mlBGkDKZWprlw==} @@ -24470,7 +24136,6 @@ packages: resolution: {integrity: sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==} dependencies: makeerror: 1.0.12 - dev: true /watchpack/2.4.0: resolution: {integrity: sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==} @@ -24489,7 +24154,6 @@ packages: resolution: {integrity: sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==} dependencies: defaults: 1.0.3 - dev: true /web-namespaces/1.1.4: resolution: {integrity: sha512-wYxSGajtmoP4WxfejAPIr4l0fVh+jeMXZb08wNc0tMg6xsfZXj3cECqIK0G7ZAqUq0PP8WlMDtaOGVBTAWztNw==} @@ -24501,7 +24165,6 @@ packages: /webidl-conversions/5.0.0: resolution: {integrity: sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA==} engines: {node: '>=8'} - dev: true /webidl-conversions/6.1.0: resolution: {integrity: sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w==} @@ -24688,7 +24351,6 @@ packages: /whatwg-fetch/3.6.2: resolution: {integrity: sha512-bJlen0FcuU/0EMLrdbJ7zOnW6ITZLrZMIarMUVmdKtsGvZna8vxKYaexICWPfZ8qwf9fzNq+UEIZrnSaApt6RA==, registry: https://registry.npmjs.com/, tarball: https://registry.npmjs.com/whatwg-fetch/-/whatwg-fetch-3.6.2.tgz} - dev: true /whatwg-mimetype/2.3.0: resolution: {integrity: sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g==} @@ -24699,6 +24361,15 @@ packages: engines: {node: '>=12'} dev: true + /whatwg-url-without-unicode/8.0.0-3: + resolution: {integrity: sha512-HoKuzZrUlgpz35YO27XgD28uh/WJH4B0+3ttFqRo//lmq+9T/mIOJ6kqmINI9HpUpz1imRC/nR/lxKpJiv0uig==} + engines: {node: '>=10'} + dependencies: + buffer: 5.7.1 + punycode: 2.1.1 + webidl-conversions: 5.0.0 + dev: false + /whatwg-url/10.0.0: resolution: {integrity: sha512-CLxxCmdUby142H5FZzn4D8ikO1cmypvXVQktsgosNy4a4BHrDHeciBBGZhb0bNoR5/MltoCatso+vFjjGx8t0w==} engines: {node: '>=12'} @@ -24751,7 +24422,6 @@ packages: /which-module/2.0.0: resolution: {integrity: sha512-B+enWhmw6cjfVC7kS8Pj9pCrKSc5txArRyaYGe088shv/FGWH+0Rjx/xPgtsWfsUtS27FkP697E4DDhgrgoc0Q==} - dev: true /which-typed-array/1.1.8: resolution: {integrity: sha512-Jn4e5PItbcAHyLoRDwvPj1ypu27DJbtdYXUa5zsinrUx77Uvfb0cXwwnGMTn7cjUfhhqgVQnVJCwF+7cgU7tpw==} @@ -24847,7 +24517,6 @@ packages: ansi-styles: 4.3.0 string-width: 4.2.3 strip-ansi: 6.0.1 - dev: true /wrap-ansi/7.0.0: resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} @@ -24875,7 +24544,6 @@ packages: graceful-fs: 4.2.10 imurmurhash: 0.1.4 signal-exit: 3.0.7 - dev: true /write-file-atomic/3.0.3: resolution: {integrity: sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==} @@ -24911,7 +24579,6 @@ packages: optional: true dependencies: async-limiter: 1.0.1 - dev: true /ws/7.5.8: resolution: {integrity: sha512-ri1Id1WinAX5Jqn9HejiGb8crfRio0Qgu8+MtL36rlTA6RLsMdWt1Az/19A2Qij6uSHUMphEFaTKa4WG+UNHNw==} @@ -24986,7 +24653,6 @@ packages: /xmlbuilder/15.1.1: resolution: {integrity: sha512-yMqGBqtXyeN1e3TGYvgNgDVZ3j84W4cwkOXQswghol6APgZWaff9lnbvN7MHYJOiXsvGPXtjTYJEiC9J2wv9Eg==} engines: {node: '>=8.0'} - dev: true /xmlchars/2.2.0: resolution: {integrity: sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==} @@ -25007,7 +24673,6 @@ packages: /y18n/4.0.3: resolution: {integrity: sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==} - dev: true /y18n/5.0.8: resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==} @@ -25035,7 +24700,6 @@ packages: dependencies: camelcase: 5.3.1 decamelize: 1.2.0 - dev: true /yargs-parser/20.2.9: resolution: {integrity: sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==} @@ -25062,7 +24726,6 @@ packages: which-module: 2.0.0 y18n: 4.0.3 yargs-parser: 18.1.3 - dev: true /yargs/16.2.0: resolution: {integrity: sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==} From c861fe168af4a711fcc0f763cc4ef09df0644712 Mon Sep 17 00:00:00 2001 From: An Hoang Date: Sun, 28 Aug 2022 13:46:16 +0700 Subject: [PATCH 04/20] some expo signin modification --- packages/next-auth/src/core/index.ts | 198 ++++++++++++++------------- packages/next-auth/src/expo/Auth.tsx | 34 ++++- 2 files changed, 137 insertions(+), 95 deletions(-) diff --git a/packages/next-auth/src/core/index.ts b/packages/next-auth/src/core/index.ts index ceaa2be73f..a9c9e1c55b 100644 --- a/packages/next-auth/src/core/index.ts +++ b/packages/next-auth/src/core/index.ts @@ -142,6 +142,87 @@ export async function NextAuthHandler< if (method === "GET") { const render = renderPage({ ...options, query: req.query, cookies }) const { pages } = options + switch (action) { + case "providers": + return (await routes.providers(options.providers)) as any + case "session": { + const session = await routes.session({ options, sessionStore }) + if (session.cookies) cookies.push(...session.cookies) + return { ...session, cookies } as any + } + case "csrf": + return { + headers: [{ key: "Content-Type", value: "application/json" }], + body: { csrfToken: options.csrfToken } as any, + cookies, + } + case "signin": + if (pages.signIn) { + let signinUrl = `${pages.signIn}${ + pages.signIn.includes("?") ? "&" : "?" + }callbackUrl=${encodeURIComponent(options.callbackUrl)}` + if (error) + signinUrl = `${signinUrl}&error=${encodeURIComponent(error)}` + return { redirect: signinUrl, cookies } + } + + return render.signin() + case "signout": + if (pages.signOut) return { redirect: pages.signOut, cookies } + + return render.signout() + case "callback": + if (options.provider) { + const callback = await routes.callback({ + body: req.body, + query: req.query, + headers: req.headers, + cookies: req.cookies, + method, + options, + sessionStore, + }) + if (callback.cookies) cookies.push(...callback.cookies) + return { ...callback, cookies } + } + break + case "verify-request": + if (pages.verifyRequest) { + return { redirect: pages.verifyRequest, cookies } + } + return render.verifyRequest() + case "error": + // These error messages are displayed in line on the sign in page + if ( + [ + "Signin", + "OAuthSignin", + "OAuthCallback", + "OAuthCreateAccount", + "EmailCreateAccount", + "Callback", + "OAuthAccountNotLinked", + "EmailSignin", + "CredentialsSignin", + "SessionRequired", + ].includes(error as string) + ) { + return { redirect: `${options.url}/signin?error=${error}`, cookies } + } + + if (pages.error) { + return { + redirect: `${pages.error}${ + pages.error.includes("?") ? "&" : "?" + }error=${error}`, + cookies, + } + } + + return render.error({ error: error as ErrorType }) + default: + } + } else if (method === "POST") { switch (action) { case "proxy": { // const getCookieFromHeader = (name: string, headers: Headers) => { @@ -166,24 +247,22 @@ export async function NextAuthHandler< if (req.body?.codeVerifier) { cookies[options.cookies.pkceCodeVerifier.name] = req.body.codeVerifier } - if (req.body?.providerId) { - req.providerId = req.body.providerId - } switch (req.body?.action) { case "signin": { // Get csrf token - // const csrfTokenRes = await fetch(`${webHost}/api/auth/csrf`) const csrfTokenRes = await NextAuthHandler({ req: { action: "csrf", }, options: userOptions, }) - // const csrfToken = (await csrfTokenRes.json()).csrfToken const csrfToken = (csrfTokenRes.body as any).csrfToken - const csrfTokenCookie = - csrfTokenRes.cookies?.[options.cookies.csrfToken.name] - cookies[options.cookies.csrfToken.name] = csrfTokenCookie + const csrfTokenCookie = csrfTokenRes.cookies?.filter( + (c) => c.name === options.cookies.csrfToken.name + )[0]?.value + if (csrfTokenCookie) { + cookies[options.cookies.csrfToken.name] = csrfTokenCookie + } // Get authorizationUrl const callbackUrl = req.body?.callbackUrl @@ -198,6 +277,7 @@ export async function NextAuthHandler< csrfToken, callbackUrl, }, + providerId: req.body?.providerId, }, options: userOptions, }) @@ -207,22 +287,35 @@ export async function NextAuthHandler< const params = new URLSearchParams(url.search) // state - const stateEncrypted = - signInRes.cookies?.[options.cookies.state.name] + const stateEncrypted = signInRes.cookies?.filter( + (c) => c.name === options.cookies.state.name + )[0]?.value const state = params.get("state") as string // pkce code verifier const codeChallenge = params.get("code_challenge") as string - const codeVerifier = - signInRes.cookies?.[options.cookies.pkceCodeVerifier.name] + const codeVerifier = signInRes.cookies?.filter( + (c) => c.name === options.cookies.pkceCodeVerifier.name + )[0]?.value + + // also return the provider client_id + const provider = options.providers.find( + ({ id }) => id === req.body?.providerId + ) + let clientId: string | undefined + if (provider?.type === "oauth") { + clientId = provider.clientId + } return { + headers: [{ key: "Content-Type", value: "application/json" }], body: { state, stateEncrypted, csrfTokenCookie, codeVerifier, codeChallenge, + clientId, } as any, } } @@ -241,87 +334,6 @@ export async function NextAuthHandler< options: userOptions, }) } - case "providers": - return (await routes.providers(options.providers)) as any - case "session": { - const session = await routes.session({ options, sessionStore }) - if (session.cookies) cookies.push(...session.cookies) - return { ...session, cookies } as any - } - case "csrf": - return { - headers: [{ key: "Content-Type", value: "application/json" }], - body: { csrfToken: options.csrfToken } as any, - cookies, - } - case "signin": - if (pages.signIn) { - let signinUrl = `${pages.signIn}${ - pages.signIn.includes("?") ? "&" : "?" - }callbackUrl=${encodeURIComponent(options.callbackUrl)}` - if (error) - signinUrl = `${signinUrl}&error=${encodeURIComponent(error)}` - return { redirect: signinUrl, cookies } - } - - return render.signin() - case "signout": - if (pages.signOut) return { redirect: pages.signOut, cookies } - - return render.signout() - case "callback": - if (options.provider) { - const callback = await routes.callback({ - body: req.body, - query: req.query, - headers: req.headers, - cookies: req.cookies, - method, - options, - sessionStore, - }) - if (callback.cookies) cookies.push(...callback.cookies) - return { ...callback, cookies } - } - break - case "verify-request": - if (pages.verifyRequest) { - return { redirect: pages.verifyRequest, cookies } - } - return render.verifyRequest() - case "error": - // These error messages are displayed in line on the sign in page - if ( - [ - "Signin", - "OAuthSignin", - "OAuthCallback", - "OAuthCreateAccount", - "EmailCreateAccount", - "Callback", - "OAuthAccountNotLinked", - "EmailSignin", - "CredentialsSignin", - "SessionRequired", - ].includes(error as string) - ) { - return { redirect: `${options.url}/signin?error=${error}`, cookies } - } - - if (pages.error) { - return { - redirect: `${pages.error}${ - pages.error.includes("?") ? "&" : "?" - }error=${error}`, - cookies, - } - } - - return render.error({ error: error as ErrorType }) - default: - } - } else if (method === "POST") { - switch (action) { case "signin": // Verified CSRF Token required for all sign in routes if (options.csrfTokenVerified && options.provider) { diff --git a/packages/next-auth/src/expo/Auth.tsx b/packages/next-auth/src/expo/Auth.tsx index 63cf6814bc..062e2c5d1e 100644 --- a/packages/next-auth/src/expo/Auth.tsx +++ b/packages/next-auth/src/expo/Auth.tsx @@ -45,7 +45,7 @@ export async function fetchData( path: string, __NEXTAUTH: NextAuthClientConfig, logger: LoggerInstance, - params?: {} // TODO: populate this + params?: Record ): Promise { const url = `${apiBaseUrl(__NEXTAUTH)}/proxy` const sessionToken = await SecureStore.getItemAsync(storageKeys.sessionToken) @@ -56,7 +56,16 @@ export async function fetchData( } const options: RequestInit = { - body: JSON.stringify({ action: path, sessionToken, csrfToken }), // TODO: populate this + method: "POST", + headers: { + "Content-Type": "application/json", + }, + body: JSON.stringify({ + action: path, + sessionToken, + csrfToken, + ...params, + }), // TODO: populate this } const res = await fetch(url, options) const data = await res.json() @@ -68,6 +77,27 @@ export async function fetchData( } } +export async function getSignInInfo({ + provider, + proxyRedirectUri, +}: { + provider: string + proxyRedirectUri: string +}) { + return await fetchData<{ + state: string + stateEncrypted: string + csrfTokenCookie: string + codeVerifier: string + codeChallenge: string + clientId: string + }>("proxy", __NEXTAUTH, logger, { + action: "signin", + providerId: provider, + callbackUrl: proxyRedirectUri, + }) +} + export function apiBaseUrl(__NEXTAUTH: NextAuthClientConfig) { return `${__NEXTAUTH.baseUrlServer}${__NEXTAUTH.basePathServer}` } From ff238520cf6b4d4f2c637440cbbdf0210d1cd8d9 Mon Sep 17 00:00:00 2001 From: An Hoang Date: Sun, 28 Aug 2022 14:00:05 +0700 Subject: [PATCH 05/20] expo signin ok --- packages/next-auth/src/core/index.ts | 48 ++++++++++++++++++---------- packages/next-auth/src/expo/Auth.tsx | 9 +++--- 2 files changed, 36 insertions(+), 21 deletions(-) diff --git a/packages/next-auth/src/core/index.ts b/packages/next-auth/src/core/index.ts index a9c9e1c55b..7a85e81acf 100644 --- a/packages/next-auth/src/core/index.ts +++ b/packages/next-auth/src/core/index.ts @@ -225,21 +225,12 @@ export async function NextAuthHandler< } else if (method === "POST") { switch (action) { case "proxy": { - // const getCookieFromHeader = (name: string, headers: Headers) => { - // return headers - // .get("set-cookie") - // ?.split(", ") - // .filter((s) => s.startsWith(`${name}=`))[0] - // ?.split("=")[1] - // ?.split(";")[0] - // } - const cookies: Record = {} if (req.body?.sessionToken) { cookies[options.cookies.sessionToken.name] = req.body.sessionToken } if (req.body?.csrfToken) { - cookies[options.cookies.csrfToken.name] = req.body.sessionToken + cookies[options.cookies.csrfToken.name] = req.body.csrfToken } if (req.body?.stateEncrypted) { cookies[options.cookies.state.name] = req.body.stateEncrypted @@ -257,9 +248,9 @@ export async function NextAuthHandler< options: userOptions, }) const csrfToken = (csrfTokenRes.body as any).csrfToken - const csrfTokenCookie = csrfTokenRes.cookies?.filter( + const csrfTokenCookie = csrfTokenRes.cookies?.find( (c) => c.name === options.cookies.csrfToken.name - )[0]?.value + )?.value if (csrfTokenCookie) { cookies[options.cookies.csrfToken.name] = csrfTokenCookie } @@ -287,16 +278,16 @@ export async function NextAuthHandler< const params = new URLSearchParams(url.search) // state - const stateEncrypted = signInRes.cookies?.filter( + const stateEncrypted = signInRes.cookies?.find( (c) => c.name === options.cookies.state.name - )[0]?.value + )?.value const state = params.get("state") as string // pkce code verifier const codeChallenge = params.get("code_challenge") as string - const codeVerifier = signInRes.cookies?.filter( + const codeVerifier = signInRes.cookies?.find( (c) => c.name === options.cookies.pkceCodeVerifier.name - )[0]?.value + )?.value // also return the provider client_id const provider = options.providers.find( @@ -320,7 +311,30 @@ export async function NextAuthHandler< } } case "callback": { - return {} // TODO: + // Callback + const callbackRes = await NextAuthHandler({ + req: { + action: "callback", + cookies, + providerId: req.body?.providerId, + query: { + state: req.body?.state, + code: req.body?.code, + }, + }, + options: userOptions, + }) + const location = callbackRes.redirect as string + const url = new URL(location) + const params = new URLSearchParams(url.search) + const error = params.get("error") + if (error) { + return { body: { error } as any } + } + const sessionToken = callbackRes.cookies?.find( + (c) => c.name === options.cookies.sessionToken.name + )?.value + return { body: { sessionToken } as any } } case "signout": { return {} // TODO: diff --git a/packages/next-auth/src/expo/Auth.tsx b/packages/next-auth/src/expo/Auth.tsx index 062e2c5d1e..2336b62495 100644 --- a/packages/next-auth/src/expo/Auth.tsx +++ b/packages/next-auth/src/expo/Auth.tsx @@ -256,7 +256,7 @@ export async function signIn< state, codeVerifier, csrfTokenCookie, - proxyRedirectUri, + // proxyRedirectUri, stateEncrypted, provider: nativeProvider, } = signinResult @@ -268,15 +268,16 @@ export async function signIn< __NEXTAUTH, logger, { - provider: nativeProvider, + providerId: nativeProvider, code: result.params.code, - csrfTokenCookie, + csrfToken: csrfTokenCookie, state, stateEncrypted, - callbackUrl: proxyRedirectUri, + // callbackUrl: proxyRedirectUri, codeVerifier, } ) + console.log("next-auth/expo callback data", data) if (!data) { Alert.alert("Error", "Callback error.") return From efd1c18db0b6258e2174bb29ddab44201f087fff Mon Sep 17 00:00:00 2001 From: An Hoang Date: Sun, 28 Aug 2022 14:04:31 +0700 Subject: [PATCH 06/20] proxyRedirectUri is not needed in callback --- packages/next-auth/src/expo/Auth.tsx | 2 -- 1 file changed, 2 deletions(-) diff --git a/packages/next-auth/src/expo/Auth.tsx b/packages/next-auth/src/expo/Auth.tsx index 2336b62495..06df44affe 100644 --- a/packages/next-auth/src/expo/Auth.tsx +++ b/packages/next-auth/src/expo/Auth.tsx @@ -216,7 +216,6 @@ export interface SigninResult { csrfTokenCookie: string stateEncrypted: string codeVerifier?: string - proxyRedirectUri: string provider: string } @@ -256,7 +255,6 @@ export async function signIn< state, codeVerifier, csrfTokenCookie, - // proxyRedirectUri, stateEncrypted, provider: nativeProvider, } = signinResult From 849aa94e3808a680709749614bdf3d7bb0a0a564 Mon Sep 17 00:00:00 2001 From: An Hoang Date: Sun, 28 Aug 2022 15:00:12 +0700 Subject: [PATCH 07/20] expo signout --- packages/next-auth/src/core/index.ts | 33 +++++++++++++++-- packages/next-auth/src/expo/Auth.tsx | 55 +--------------------------- 2 files changed, 31 insertions(+), 57 deletions(-) diff --git a/packages/next-auth/src/core/index.ts b/packages/next-auth/src/core/index.ts index 7a85e81acf..4ff047db15 100644 --- a/packages/next-auth/src/core/index.ts +++ b/packages/next-auth/src/core/index.ts @@ -229,8 +229,8 @@ export async function NextAuthHandler< if (req.body?.sessionToken) { cookies[options.cookies.sessionToken.name] = req.body.sessionToken } - if (req.body?.csrfToken) { - cookies[options.cookies.csrfToken.name] = req.body.csrfToken + if (req.body?.csrfTokenCookie) { + cookies[options.cookies.csrfToken.name] = req.body.csrfTokenCookie } if (req.body?.stateEncrypted) { cookies[options.cookies.state.name] = req.body.stateEncrypted @@ -337,7 +337,34 @@ export async function NextAuthHandler< return { body: { sessionToken } as any } } case "signout": { - return {} // TODO: + // Get csrf token + const csrfTokenRes = await NextAuthHandler({ + req: { + action: "csrf", + }, + options: userOptions, + }) + const csrfToken = (csrfTokenRes.body as any).csrfToken + const csrfTokenCookie = csrfTokenRes.cookies?.find( + (c) => c.name === options.cookies.csrfToken.name + )?.value + if (csrfTokenCookie) { + cookies[options.cookies.csrfToken.name] = csrfTokenCookie + } + + await NextAuthHandler({ + req: { + action: "signout", + method: "POST", + cookies, + body: { + csrfToken, + }, + }, + options: userOptions, + }) + + return { body: { signedOut: true } as any } } } return await NextAuthHandler({ diff --git a/packages/next-auth/src/expo/Auth.tsx b/packages/next-auth/src/expo/Auth.tsx index 06df44affe..420f6f9156 100644 --- a/packages/next-auth/src/expo/Auth.tsx +++ b/packages/next-auth/src/expo/Auth.tsx @@ -38,7 +38,6 @@ import * as AuthSession from "expo-auth-session" const storageKeys = { sessionToken: "next-auth.sessionToken", - csrfToken: "next-auth.csrfToken", } export async function fetchData( @@ -50,11 +49,6 @@ export async function fetchData( const url = `${apiBaseUrl(__NEXTAUTH)}/proxy` const sessionToken = await SecureStore.getItemAsync(storageKeys.sessionToken) try { - let csrfToken = await SecureStore.getItemAsync(storageKeys.csrfToken) - if (!csrfToken) { - csrfToken = (await getCsrfToken())?.csrfTokenCookie ?? null - } - const options: RequestInit = { method: "POST", headers: { @@ -63,7 +57,6 @@ export async function fetchData( body: JSON.stringify({ action: path, sessionToken, - csrfToken, ...params, }), // TODO: populate this } @@ -157,46 +150,11 @@ export async function getSession() { return session } -const getCookieFromHeader = (name: string, headers: Headers) => { - return headers - .get("set-cookie") - ?.split(", ") - .filter((s) => s.startsWith(`${name}=`))[0] - ?.split("=")[1] - ?.split(";")[0] -} - export const authCookies = defaultCookies( // useSecureCookies ?? __NEXTAUTH.baseUrl.startsWith("https://") ) -/** - * Returns the current Cross Site Request Forgery Token (CSRF Token) - * required to make POST requests (e.g. for signing in and signing out). - * You likely only need to use this if you are not using the built-in - * `signIn()` and `signOut()` methods. - * - * [Documentation](https://next-auth.js.org/getting-started/client#getcsrftoken) - */ -export async function getCsrfToken() { - const csrfTokenRes = await fetch(`${apiBaseUrl(__NEXTAUTH)}/csrf`) - const csrfToken = (await csrfTokenRes.json()).csrfToken - const csrfTokenCookie = getCookieFromHeader( - authCookies.csrfToken.name, - csrfTokenRes.headers - ) as string - console.log("debug getCsrfToken", { csrfToken, csrfTokenCookie }) - // const { csrfToken, csrfTokenCookie } = await trpcClient.query("auth.csrf") - - // await SafeStorage.set(storageKeys.csrfToken, csrfTokenCookie) - - return { - csrfToken, - csrfTokenCookie, - } -} - /** * It calls `/api/auth/providers` and returns * a list of the currently configured authentication providers. @@ -309,18 +267,7 @@ export async function signIn< export async function signOut( options?: SignOutParams ): Promise { - const sessionToken = await SecureStore.getItemAsync(storageKeys.sessionToken) - if (!sessionToken) throw new Error("No sessionToken") - - let csrfToken = await SecureStore.getItemAsync(storageKeys.csrfToken) - if (!csrfToken) { - csrfToken = (await getCsrfToken())?.csrfTokenCookie ?? null - } - - const data = await fetchData("signout", __NEXTAUTH, logger, { - csrfToken, - sessionToken, - }) + const data = await fetchData("signout", __NEXTAUTH, logger) console.log("debug signOut", data) if (data) { From e9db83e048bd93903fae2ee431ca5653be4f2d7d Mon Sep 17 00:00:00 2001 From: An Hoang Date: Sun, 28 Aug 2022 15:02:15 +0700 Subject: [PATCH 08/20] cleanup next-auth/expo a bit --- packages/next-auth/src/expo/Auth.tsx | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/packages/next-auth/src/expo/Auth.tsx b/packages/next-auth/src/expo/Auth.tsx index 420f6f9156..9d0b8e4093 100644 --- a/packages/next-auth/src/expo/Auth.tsx +++ b/packages/next-auth/src/expo/Auth.tsx @@ -21,7 +21,6 @@ import type { SessionProviderProps, SignInOptions, SignInResponse, - SignOutParams, UseSessionOptions, } from "./types" @@ -233,7 +232,6 @@ export async function signIn< codeVerifier, } ) - console.log("next-auth/expo callback data", data) if (!data) { Alert.alert("Error", "Callback error.") return @@ -251,7 +249,6 @@ export async function signIn< } return } - console.log("sessionToken received in Client", sessionToken) if (sessionToken) { await SecureStore.setItemAsync(storageKeys.sessionToken, sessionToken) await __NEXTAUTH._getSession({ event: "storage" }) @@ -264,12 +261,9 @@ export async function signIn< * * [Documentation](https://next-auth.js.org/getting-started/client#signout) */ -export async function signOut( - options?: SignOutParams -): Promise { +export async function signOut() { const data = await fetchData("signout", __NEXTAUTH, logger) - console.log("debug signOut", data) if (data) { await SecureStore.deleteItemAsync(storageKeys.sessionToken) From 05d784d9ccd8f385e5d4281b35b9192e6adb50a3 Mon Sep 17 00:00:00 2001 From: An Hoang Date: Sun, 28 Aug 2022 15:09:14 +0700 Subject: [PATCH 09/20] rename next-auth/expo files --- packages/next-auth/src/expo/{Auth.tsx => expo.tsx} | 0 packages/next-auth/src/expo/{Auth.web.tsx => expo.web.tsx} | 0 packages/next-auth/src/expo/index.ts | 2 +- 3 files changed, 1 insertion(+), 1 deletion(-) rename packages/next-auth/src/expo/{Auth.tsx => expo.tsx} (100%) rename packages/next-auth/src/expo/{Auth.web.tsx => expo.web.tsx} (100%) diff --git a/packages/next-auth/src/expo/Auth.tsx b/packages/next-auth/src/expo/expo.tsx similarity index 100% rename from packages/next-auth/src/expo/Auth.tsx rename to packages/next-auth/src/expo/expo.tsx diff --git a/packages/next-auth/src/expo/Auth.web.tsx b/packages/next-auth/src/expo/expo.web.tsx similarity index 100% rename from packages/next-auth/src/expo/Auth.web.tsx rename to packages/next-auth/src/expo/expo.web.tsx diff --git a/packages/next-auth/src/expo/index.ts b/packages/next-auth/src/expo/index.ts index c6e4863f5a..26a70b606c 100644 --- a/packages/next-auth/src/expo/index.ts +++ b/packages/next-auth/src/expo/index.ts @@ -1 +1 @@ -export * from "./Auth"; +export * from "./expo" From 551c079ce81abefc22018537e9db605603c59405 Mon Sep 17 00:00:00 2001 From: An Hoang Date: Sun, 28 Aug 2022 15:12:40 +0700 Subject: [PATCH 10/20] Expo Web seems different from Expo --- packages/next-auth/src/expo/expo.web.tsx | 1 - packages/next-auth/src/expo/index.ts | 1 - packages/next-auth/src/expo/{expo.tsx => index.tsx} | 0 3 files changed, 2 deletions(-) delete mode 100644 packages/next-auth/src/expo/expo.web.tsx delete mode 100644 packages/next-auth/src/expo/index.ts rename packages/next-auth/src/expo/{expo.tsx => index.tsx} (100%) diff --git a/packages/next-auth/src/expo/expo.web.tsx b/packages/next-auth/src/expo/expo.web.tsx deleted file mode 100644 index 6c407ff162..0000000000 --- a/packages/next-auth/src/expo/expo.web.tsx +++ /dev/null @@ -1 +0,0 @@ -export * from "../react" diff --git a/packages/next-auth/src/expo/index.ts b/packages/next-auth/src/expo/index.ts deleted file mode 100644 index 26a70b606c..0000000000 --- a/packages/next-auth/src/expo/index.ts +++ /dev/null @@ -1 +0,0 @@ -export * from "./expo" diff --git a/packages/next-auth/src/expo/expo.tsx b/packages/next-auth/src/expo/index.tsx similarity index 100% rename from packages/next-auth/src/expo/expo.tsx rename to packages/next-auth/src/expo/index.tsx From fe57fff7e91b62f55c9e97086f10974a9f194898 Mon Sep 17 00:00:00 2001 From: An Hoang Date: Sun, 28 Aug 2022 15:17:36 +0700 Subject: [PATCH 11/20] Fix alert message getProviders --- packages/next-auth/src/expo/index.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/next-auth/src/expo/index.tsx b/packages/next-auth/src/expo/index.tsx index 9d0b8e4093..fafa861f66 100644 --- a/packages/next-auth/src/expo/index.tsx +++ b/packages/next-auth/src/expo/index.tsx @@ -198,7 +198,7 @@ export async function signIn< > { const providers = await getProviders() if (!providers) { - Alert.alert("Error", "Provider not valid.") + Alert.alert("Error", "Unable to fetch providers.") return } if (!provider || !(provider in providers)) { From 516ca91f08114f3dcd426f1285857846210113a3 Mon Sep 17 00:00:00 2001 From: An Hoang Date: Sun, 28 Aug 2022 15:28:28 +0700 Subject: [PATCH 12/20] tidy core/index.ts --- packages/next-auth/src/core/index.ts | 43 ++++++++++++---------------- 1 file changed, 19 insertions(+), 24 deletions(-) diff --git a/packages/next-auth/src/core/index.ts b/packages/next-auth/src/core/index.ts index 4ff047db15..bbd93aeb06 100644 --- a/packages/next-auth/src/core/index.ts +++ b/packages/next-auth/src/core/index.ts @@ -226,18 +226,7 @@ export async function NextAuthHandler< switch (action) { case "proxy": { const cookies: Record = {} - if (req.body?.sessionToken) { - cookies[options.cookies.sessionToken.name] = req.body.sessionToken - } - if (req.body?.csrfTokenCookie) { - cookies[options.cookies.csrfToken.name] = req.body.csrfTokenCookie - } - if (req.body?.stateEncrypted) { - cookies[options.cookies.state.name] = req.body.stateEncrypted - } - if (req.body?.codeVerifier) { - cookies[options.cookies.pkceCodeVerifier.name] = req.body.codeVerifier - } + switch (req.body?.action) { case "signin": { // Get csrf token @@ -258,7 +247,6 @@ export async function NextAuthHandler< // Get authorizationUrl const callbackUrl = req.body?.callbackUrl cookies[options.cookies.callbackUrl.name] = callbackUrl - const signInRes = await NextAuthHandler({ req: { action: "signin", @@ -272,8 +260,8 @@ export async function NextAuthHandler< }, options: userOptions, }) - const authorizationUrl = signInRes.redirect as string + const url = new URL(authorizationUrl) const params = new URLSearchParams(url.search) @@ -289,7 +277,7 @@ export async function NextAuthHandler< (c) => c.name === options.cookies.pkceCodeVerifier.name )?.value - // also return the provider client_id + // provider client_id const provider = options.providers.find( ({ id }) => id === req.body?.providerId ) @@ -303,7 +291,6 @@ export async function NextAuthHandler< body: { state, stateEncrypted, - csrfTokenCookie, codeVerifier, codeChallenge, clientId, @@ -311,7 +298,14 @@ export async function NextAuthHandler< } } case "callback": { - // Callback + if (req.body?.codeVerifier) { + cookies[options.cookies.pkceCodeVerifier.name] = + req.body.codeVerifier + } + if (req.body?.stateEncrypted) { + cookies[options.cookies.state.name] = req.body.stateEncrypted + } + const callbackRes = await NextAuthHandler({ req: { action: "callback", @@ -331,12 +325,18 @@ export async function NextAuthHandler< if (error) { return { body: { error } as any } } + const sessionToken = callbackRes.cookies?.find( (c) => c.name === options.cookies.sessionToken.name )?.value + return { body: { sessionToken } as any } } case "signout": { + if (req.body?.sessionToken) { + cookies[options.cookies.sessionToken.name] = req.body.sessionToken + } + // Get csrf token const csrfTokenRes = await NextAuthHandler({ req: { @@ -367,13 +367,8 @@ export async function NextAuthHandler< return { body: { signedOut: true } as any } } } - return await NextAuthHandler({ - req: { - cookies, - action: req.body?.action, - }, - options: userOptions, - }) + // No proxy action handled, so bad request it is. + return { status: 400 } } case "signin": // Verified CSRF Token required for all sign in routes From 704965317677c1497bb1beb39fd1395a6a590e96 Mon Sep 17 00:00:00 2001 From: An Hoang Date: Sun, 28 Aug 2022 15:46:04 +0700 Subject: [PATCH 13/20] proxy "session" and "providers" --- packages/next-auth/src/core/index.ts | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/packages/next-auth/src/core/index.ts b/packages/next-auth/src/core/index.ts index bbd93aeb06..323994e251 100644 --- a/packages/next-auth/src/core/index.ts +++ b/packages/next-auth/src/core/index.ts @@ -366,6 +366,27 @@ export async function NextAuthHandler< return { body: { signedOut: true } as any } } + case "session": { + if (req.body?.sessionToken) { + cookies[options.cookies.sessionToken.name] = req.body.sessionToken + } + + return await NextAuthHandler({ + req: { + cookies, + action: "session", + }, + options: userOptions, + }) + } + case "providers": { + return await NextAuthHandler({ + req: { + action: "providers", + }, + options: userOptions, + }) + } } // No proxy action handled, so bad request it is. return { status: 400 } From a029fc5f2e8f8ea88a82a21e58c6d92ed35fd436 Mon Sep 17 00:00:00 2001 From: An Hoang Date: Sun, 28 Aug 2022 15:46:27 +0700 Subject: [PATCH 14/20] clean next-auth/expo --- packages/next-auth/src/expo/index.tsx | 29 +++++++++------------------ 1 file changed, 9 insertions(+), 20 deletions(-) diff --git a/packages/next-auth/src/expo/index.tsx b/packages/next-auth/src/expo/index.tsx index fafa861f66..b57c4af701 100644 --- a/packages/next-auth/src/expo/index.tsx +++ b/packages/next-auth/src/expo/index.tsx @@ -8,12 +8,11 @@ // // We use HTTP POST requests with CSRF Tokens to protect against CSRF attacks. +import * as React from "react" import { Session } from ".." import { NextAuthClientConfig, now } from "../client/_utils" import _logger, { LoggerInstance, proxyLogger } from "../utils/logger" import parseUrl from "../utils/parse-url" -import * as React from "react" -import "react-native-url-polyfill/auto" import type { ClientSafeProvider, @@ -29,16 +28,20 @@ import type { RedirectableProviderType, } from "../providers" -import * as SecureStore from "expo-secure-store" +import * as AuthSession from "expo-auth-session" import Constants from "expo-constants" +import * as SecureStore from "expo-secure-store" import { Alert } from "react-native" -import { defaultCookies } from "../core/lib/cookie" -import * as AuthSession from "expo-auth-session" +import "react-native-url-polyfill/auto" const storageKeys = { sessionToken: "next-auth.sessionToken", } +export function apiBaseUrl(__NEXTAUTH: NextAuthClientConfig) { + return `${__NEXTAUTH.baseUrlServer}${__NEXTAUTH.basePathServer}` +} + export async function fetchData( path: string, __NEXTAUTH: NextAuthClientConfig, @@ -57,7 +60,7 @@ export async function fetchData( action: path, sessionToken, ...params, - }), // TODO: populate this + }), } const res = await fetch(url, options) const data = await res.json() @@ -79,7 +82,6 @@ export async function getSignInInfo({ return await fetchData<{ state: string stateEncrypted: string - csrfTokenCookie: string codeVerifier: string codeChallenge: string clientId: string @@ -90,10 +92,6 @@ export async function getSignInInfo({ }) } -export function apiBaseUrl(__NEXTAUTH: NextAuthClientConfig) { - return `${__NEXTAUTH.baseUrlServer}${__NEXTAUTH.basePathServer}` -} - const nextAuthUrl = Constants.manifest?.extra?.nextAuthUrl const __NEXTAUTH: NextAuthClientConfig = { @@ -149,11 +147,6 @@ export async function getSession() { return session } -export const authCookies = defaultCookies( - // useSecureCookies ?? - __NEXTAUTH.baseUrl.startsWith("https://") -) - /** * It calls `/api/auth/providers` and returns * a list of the currently configured authentication providers. @@ -170,7 +163,6 @@ export async function getProviders() { export interface SigninResult { result: AuthSession.AuthSessionResult state: string - csrfTokenCookie: string stateEncrypted: string codeVerifier?: string provider: string @@ -211,7 +203,6 @@ export async function signIn< result, state, codeVerifier, - csrfTokenCookie, stateEncrypted, provider: nativeProvider, } = signinResult @@ -225,10 +216,8 @@ export async function signIn< { providerId: nativeProvider, code: result.params.code, - csrfToken: csrfTokenCookie, state, stateEncrypted, - // callbackUrl: proxyRedirectUri, codeVerifier, } ) From 7ddd7fc3e5ed47207e25ad995a31d07950f09b0a Mon Sep 17 00:00:00 2001 From: An Hoang Date: Sun, 28 Aug 2022 15:50:06 +0700 Subject: [PATCH 15/20] remove used types from expo/types.ts --- packages/next-auth/src/expo/types.ts | 19 ------------------- 1 file changed, 19 deletions(-) diff --git a/packages/next-auth/src/expo/types.ts b/packages/next-auth/src/expo/types.ts index 3f5f7c3c84..fe287acbd6 100644 --- a/packages/next-auth/src/expo/types.ts +++ b/packages/next-auth/src/expo/types.ts @@ -39,25 +39,6 @@ export interface SignInResponse { url: string | null } -/** Match `inputType` of `new URLSearchParams(inputType)` */ -export type SignInAuthorizationParams = - | string - | string[][] - | Record - | URLSearchParams - -/** @docs https://next-auth.js.org/getting-started/client#using-the-redirect-false-option-1 */ -export interface SignOutResponse { - url: string -} - -export interface SignOutParams { - /** @docs https://next-auth.js.org/getting-started/client#specifying-a-callbackurl-1 */ - callbackUrl?: string - /** @docs https://next-auth.js.org/getting-started/client#using-the-redirect-false-option-1 */ - redirect?: R -} - /** @docs: https://next-auth.js.org/getting-started/client#options */ export interface SessionProviderProps { children: React.ReactNode From f84732e71cded81bcf7f2910dbde5c59a9d694ed Mon Sep 17 00:00:00 2001 From: An Hoang Date: Mon, 29 Aug 2022 01:49:18 +0700 Subject: [PATCH 16/20] move "signin" action to the path parameter --- packages/next-auth/src/expo/index.tsx | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/packages/next-auth/src/expo/index.tsx b/packages/next-auth/src/expo/index.tsx index b57c4af701..d22d1f0aab 100644 --- a/packages/next-auth/src/expo/index.tsx +++ b/packages/next-auth/src/expo/index.tsx @@ -85,8 +85,7 @@ export async function getSignInInfo({ codeVerifier: string codeChallenge: string clientId: string - }>("proxy", __NEXTAUTH, logger, { - action: "signin", + }>("signin", __NEXTAUTH, logger, { providerId: provider, callbackUrl: proxyRedirectUri, }) From ec8468ccc14e1ef4a6c04c38b05dda65ade4de5a Mon Sep 17 00:00:00 2001 From: An Hoang Date: Fri, 2 Sep 2022 01:42:01 +0700 Subject: [PATCH 17/20] allow `initiateExpoAuthFlow` to return null --- packages/next-auth/src/expo/index.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/next-auth/src/expo/index.tsx b/packages/next-auth/src/expo/index.tsx index d22d1f0aab..00f913ed01 100644 --- a/packages/next-auth/src/expo/index.tsx +++ b/packages/next-auth/src/expo/index.tsx @@ -182,7 +182,7 @@ export async function signIn< ? P | BuiltInProviderType : BuiltInProviderType >, - initiateExpoAuthFlow: () => Promise, + initiateExpoAuthFlow: () => Promise, options?: SignInOptions // TODO: use this ): Promise< P extends RedirectableProviderType ? SignInResponse | undefined : undefined From 437bc1fbe2453c3e56fbcff2284a5127e8e9a10f Mon Sep 17 00:00:00 2001 From: An Hoang Date: Fri, 2 Sep 2022 11:07:19 +0700 Subject: [PATCH 18/20] change signIn signature --- packages/next-auth/src/expo/index.tsx | 27 +++++---------------------- 1 file changed, 5 insertions(+), 22 deletions(-) diff --git a/packages/next-auth/src/expo/index.tsx b/packages/next-auth/src/expo/index.tsx index 00f913ed01..207e26b1b7 100644 --- a/packages/next-auth/src/expo/index.tsx +++ b/packages/next-auth/src/expo/index.tsx @@ -177,34 +177,17 @@ export interface SigninResult { export async function signIn< P extends RedirectableProviderType | undefined = undefined >( - provider: LiteralUnion< - P extends RedirectableProviderType - ? P | BuiltInProviderType - : BuiltInProviderType - >, initiateExpoAuthFlow: () => Promise, options?: SignInOptions // TODO: use this ): Promise< P extends RedirectableProviderType ? SignInResponse | undefined : undefined > { - const providers = await getProviders() - if (!providers) { - Alert.alert("Error", "Unable to fetch providers.") - return - } - if (!provider || !(provider in providers)) { - Alert.alert("Error", "Provider not valid.") + const signinResult = await initiateExpoAuthFlow() + if (signinResult === null) { + // The initiate function should show the error themselves return } - - const signinResult = await initiateExpoAuthFlow() - const { - result, - state, - codeVerifier, - stateEncrypted, - provider: nativeProvider, - } = signinResult + const { result, state, codeVerifier, stateEncrypted, provider } = signinResult if (result.type !== "success") return // TODO: handle other results @@ -213,7 +196,7 @@ export async function signIn< __NEXTAUTH, logger, { - providerId: nativeProvider, + providerId: provider, code: result.params.code, state, stateEncrypted, From a25561551687418c0106bc01a822a7da53976f0f Mon Sep 17 00:00:00 2001 From: An Hoang Date: Sun, 4 Sep 2022 02:40:18 +0700 Subject: [PATCH 19/20] Fix expo constants --- packages/next-auth/src/expo/index.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/next-auth/src/expo/index.tsx b/packages/next-auth/src/expo/index.tsx index 207e26b1b7..836642a4f8 100644 --- a/packages/next-auth/src/expo/index.tsx +++ b/packages/next-auth/src/expo/index.tsx @@ -91,7 +91,7 @@ export async function getSignInInfo({ }) } -const nextAuthUrl = Constants.manifest?.extra?.nextAuthUrl +const nextAuthUrl = Constants.expoConfig?.extra?.nextAuthUrl const __NEXTAUTH: NextAuthClientConfig = { baseUrl: parseUrl(nextAuthUrl).origin, From f5667ce837a783efd1e32b65c02180a137f4a049 Mon Sep 17 00:00:00 2001 From: An Hoang Date: Sun, 4 Sep 2022 03:46:23 +0700 Subject: [PATCH 20/20] include req.host to detect secure cookies --- packages/next-auth/src/core/index.ts | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/packages/next-auth/src/core/index.ts b/packages/next-auth/src/core/index.ts index 323994e251..aec049348b 100644 --- a/packages/next-auth/src/core/index.ts +++ b/packages/next-auth/src/core/index.ts @@ -232,6 +232,7 @@ export async function NextAuthHandler< // Get csrf token const csrfTokenRes = await NextAuthHandler({ req: { + host: req.host, // To detect secure cookies action: "csrf", }, options: userOptions, @@ -249,6 +250,7 @@ export async function NextAuthHandler< cookies[options.cookies.callbackUrl.name] = callbackUrl const signInRes = await NextAuthHandler({ req: { + host: req.host, // To detect secure cookies action: "signin", method: "POST", cookies, @@ -308,6 +310,7 @@ export async function NextAuthHandler< const callbackRes = await NextAuthHandler({ req: { + host: req.host, // To detect secure cookies action: "callback", cookies, providerId: req.body?.providerId, @@ -340,6 +343,7 @@ export async function NextAuthHandler< // Get csrf token const csrfTokenRes = await NextAuthHandler({ req: { + host: req.host, // To detect secure cookies action: "csrf", }, options: userOptions, @@ -354,6 +358,7 @@ export async function NextAuthHandler< await NextAuthHandler({ req: { + host: req.host, // To detect secure cookies action: "signout", method: "POST", cookies, @@ -373,6 +378,7 @@ export async function NextAuthHandler< return await NextAuthHandler({ req: { + host: req.host, // To detect secure cookies cookies, action: "session", },