From c9f0b62bdd1c7ea764be5973ea724862762a0409 Mon Sep 17 00:00:00 2001 From: Patrick Demers Date: Sat, 27 Jan 2024 14:03:42 -0600 Subject: [PATCH] add web client --- .github/workflows/client.yml | 52 + client/.assets/configuration_page.png | Bin 0 -> 328379 bytes client/.assets/vehicle_dashboard.png | Bin 0 -> 19036 bytes client/.eslintrc.json | 22 + client/.gitignore | 34 + client/README.md | 15 + client/api/config.ts | 12 + client/api/data.ts | 36 + client/api/methods.ts | 16 + client/api/types.d.ts | 16 + client/app/configure/page.tsx | 150 + client/app/favicon.ico | Bin 0 -> 5430 bytes client/app/fleet/[id]/page.tsx | 76 + client/app/fleet/page.tsx | 37 + client/app/fleet/template.tsx | 148 + client/app/layout.tsx | 40 + client/app/page.tsx | 22 + client/components/AppBar/AppBar.tsx | 61 + client/components/SingleCharacterButton.tsx | 27 + client/components/SnackbarContext.tsx | 83 + client/components/tiles/GearShift.tsx | 93 + client/components/tiles/TileWrapper.tsx | 25 + client/components/vehicle/Form.tsx | 79 + client/components/vehicle/Modal.tsx | 66 + client/components/vehicle/ModalContext.tsx | 84 + client/constants/paths.ts | 3 + client/context/ApplicationProvider.tsx | 54 + client/context/Context.tsx | 126 + client/context/localStorage.tsx | 26 + client/context/types.d.ts | 47 + client/jest.config.js | 17 + client/next.config.js | 9 + client/package-lock.json | 9115 +++++++++++++++++ client/package.json | 42 + client/public/fleet.jpeg | Bin 0 -> 174287 bytes client/spec/api/config.spec.ts | 30 + client/spec/api/data.spec.ts | 48 + client/spec/api/methods.spec.ts | 22 + client/spec/app/configure/page.spec.tsx | 63 + client/spec/app/fleet/[id]/page.spec.tsx | 85 + client/spec/app/fleet/page.spec.tsx | 44 + client/spec/app/fleet/template.spec.tsx | 22 + client/spec/app/layout.spec.tsx | 10 + client/spec/app/page.spec.tsx | 32 + client/spec/components/AppBar/AppBar.spec.tsx | 14 + .../components/SingleCharacterButton.spec.tsx | 17 + .../spec/components/SnackbarContext.spec.tsx | 58 + .../spec/components/tiles/GearShift.spec.tsx | 95 + .../components/tiles/TileWrapper.spec.tsx | 10 + client/spec/components/vehicle/Form.spec.tsx | 69 + client/spec/components/vehicle/Modal.spec.tsx | 97 + client/spec/constants.tsx | 8 + client/spec/context/Context.spec.tsx | 180 + client/spec/context/localStorage.spec.tsx | 31 + client/spec/helper.tsx | 31 + client/spec/setup.ts | 26 + client/tsconfig.json | 33 + cmd/phantom-fleet/internal/mode/api/api.go | 1 + .../internal/mode/api/handlers/config.go | 43 +- .../internal/mode/api/handlers/config_test.go | 23 +- .../internal/mode/api/handlers/cors.go | 11 + .../internal/mode/api/handlers/send_data.go | 5 + ft-config.json | 15 + 63 files changed, 11747 insertions(+), 9 deletions(-) create mode 100644 .github/workflows/client.yml create mode 100644 client/.assets/configuration_page.png create mode 100644 client/.assets/vehicle_dashboard.png create mode 100644 client/.eslintrc.json create mode 100644 client/.gitignore create mode 100644 client/README.md create mode 100644 client/api/config.ts create mode 100644 client/api/data.ts create mode 100644 client/api/methods.ts create mode 100644 client/api/types.d.ts create mode 100644 client/app/configure/page.tsx create mode 100644 client/app/favicon.ico create mode 100644 client/app/fleet/[id]/page.tsx create mode 100644 client/app/fleet/page.tsx create mode 100644 client/app/fleet/template.tsx create mode 100644 client/app/layout.tsx create mode 100644 client/app/page.tsx create mode 100644 client/components/AppBar/AppBar.tsx create mode 100644 client/components/SingleCharacterButton.tsx create mode 100644 client/components/SnackbarContext.tsx create mode 100644 client/components/tiles/GearShift.tsx create mode 100644 client/components/tiles/TileWrapper.tsx create mode 100644 client/components/vehicle/Form.tsx create mode 100644 client/components/vehicle/Modal.tsx create mode 100644 client/components/vehicle/ModalContext.tsx create mode 100644 client/constants/paths.ts create mode 100644 client/context/ApplicationProvider.tsx create mode 100644 client/context/Context.tsx create mode 100644 client/context/localStorage.tsx create mode 100644 client/context/types.d.ts create mode 100644 client/jest.config.js create mode 100644 client/next.config.js create mode 100644 client/package-lock.json create mode 100644 client/package.json create mode 100644 client/public/fleet.jpeg create mode 100644 client/spec/api/config.spec.ts create mode 100644 client/spec/api/data.spec.ts create mode 100644 client/spec/api/methods.spec.ts create mode 100644 client/spec/app/configure/page.spec.tsx create mode 100644 client/spec/app/fleet/[id]/page.spec.tsx create mode 100644 client/spec/app/fleet/page.spec.tsx create mode 100644 client/spec/app/fleet/template.spec.tsx create mode 100644 client/spec/app/layout.spec.tsx create mode 100644 client/spec/app/page.spec.tsx create mode 100644 client/spec/components/AppBar/AppBar.spec.tsx create mode 100644 client/spec/components/SingleCharacterButton.spec.tsx create mode 100644 client/spec/components/SnackbarContext.spec.tsx create mode 100644 client/spec/components/tiles/GearShift.spec.tsx create mode 100644 client/spec/components/tiles/TileWrapper.spec.tsx create mode 100644 client/spec/components/vehicle/Form.spec.tsx create mode 100644 client/spec/components/vehicle/Modal.spec.tsx create mode 100644 client/spec/constants.tsx create mode 100644 client/spec/context/Context.spec.tsx create mode 100644 client/spec/context/localStorage.spec.tsx create mode 100644 client/spec/helper.tsx create mode 100644 client/spec/setup.ts create mode 100644 client/tsconfig.json create mode 100644 cmd/phantom-fleet/internal/mode/api/handlers/cors.go create mode 100644 ft-config.json diff --git a/.github/workflows/client.yml b/.github/workflows/client.yml new file mode 100644 index 0000000..5a0c60a --- /dev/null +++ b/.github/workflows/client.yml @@ -0,0 +1,52 @@ +name: Client Checks + +on: [push, pull_request] + +jobs: + build: + runs-on: ubuntu-latest + steps: + - name: Checkout code + uses: actions/checkout@v4 + - name: Setup Node.js + uses: actions/setup-node@v4 + with: + node-version: '20' + - name: Install dependencies + run: npm install + working-directory: client + - name: Build + run: npm run build + working-directory: client + + lint: + runs-on: ubuntu-latest + steps: + - name: Checkout code + uses: actions/checkout@v4 + - name: Setup Node.js + uses: actions/setup-node@v4 + with: + node-version: '20' + - name: Install dependencies + run: npm install + working-directory: client + - name: Lint + run: npm run lint + working-directory: client + + test: + runs-on: ubuntu-latest + steps: + - name: Checkout code + uses: actions/checkout@v4 + - name: Setup Node.js + uses: actions/setup-node@v4 + with: + node-version: '20' + - name: Install dependencies + run: npm install + working-directory: client + - name: Test + run: npm run test + working-directory: client diff --git a/client/.assets/configuration_page.png b/client/.assets/configuration_page.png new file mode 100644 index 0000000000000000000000000000000000000000..649cded1274a9f77dd356e3a2fd928d4b89920ed GIT binary patch literal 328379 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 z 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

D*C+kl=_{yOaxrf>Ja!d|pvWY^87Q=!$ODf0xXO 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

  • Y4Lm^Q^ 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
    {~-I1xFKSSw*=4e1Ie}Rg6Gs)}S=S;-wYeT`O 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
  • Smjbr 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 literal 0 HcmV?d00001 diff --git a/client/.eslintrc.json b/client/.eslintrc.json new file mode 100644 index 0000000..fe309f5 --- /dev/null +++ b/client/.eslintrc.json @@ -0,0 +1,22 @@ +{ + "extends": ["next/core-web-vitals", "airbnb", "airbnb-typescript"], + "rules": { + "import/extensions": "off", + "react/react-in-jsx-scope": "off", + "react/require-default-props": "off", + "react/jsx-props-no-spreading": "off", + "react-hooks/exhaustive-deps": "off" + }, + "parserOptions": { + "project": ["./tsconfig.json"] + }, + "overrides": [ + { + "files": ["./spec/**/*"], + "rules": { + "jsx-a11y/click-events-have-key-events": "off", + "jsx-a11y/no-static-element-interactions": "off" + } + } + ] +} diff --git a/client/.gitignore b/client/.gitignore new file mode 100644 index 0000000..f27dbbb --- /dev/null +++ b/client/.gitignore @@ -0,0 +1,34 @@ +# See https://help.github.com/articles/ignoring-files/ for more about ignoring files. + +# dependencies +/node_modules +/.pnp +.pnp.js +.yarn/install-state.gz + +# testing +/coverage + +# next.js +/.next/ +/out/ + +# production +/build + +# misc +.DS_Store +*.pem + +# debug +npm-debug.log* +yarn-debug.log* +yarn-error.log* + +# local env files +.env*.local +.env + +# typescript +*.tsbuildinfo +next-env.d.ts diff --git a/client/README.md b/client/README.md new file mode 100644 index 0000000..5e2148d --- /dev/null +++ b/client/README.md @@ -0,0 +1,15 @@ +# Phantom Fleet Client + +This web client allows sending data to a fleet-telemetry server. It is in its early stages and only has minimal functionality at this time. + +More documentation to come. + +![](./.assets/configuration_page.png) + +![](./.assets/vehicle_dashboard.png) + +## Configuration + +**Environment Variables**: + +- `NEXT_PUBLIC_PHANTOM_FLEET_API_URL`: the URL the phantom-fleet API is exposed on diff --git a/client/api/config.ts b/client/api/config.ts new file mode 100644 index 0000000..a32421b --- /dev/null +++ b/client/api/config.ts @@ -0,0 +1,12 @@ +import Methods from "./methods"; + +export const setConfig = async (host: string, port: number) => { + try { + const res = await Methods.post("/config", { + body: JSON.stringify({ host, port }), + }); + return res.json(); + } catch (e) { + return { reason: `Unexpected error: ${(e as Error).message}` }; + } +}; diff --git a/client/api/data.ts b/client/api/data.ts new file mode 100644 index 0000000..65d51b7 --- /dev/null +++ b/client/api/data.ts @@ -0,0 +1,36 @@ +import { KeyData, Vehicle } from "@/context/types"; +import Methods from "./methods"; +import { Data, VehicleData } from "./types.d"; + +let msgCount = 0; + +const createData = (data: KeyData) => { + return Object.entries(data).reduce((arr, [key, value]) => { + arr.push({ key, value }); + return arr; + }, [] as Data[]); +}; + +const sendData = async (vin: string, data: Vehicle) => { + const id = `msg-${msgCount++}`; + const payload: VehicleData = { + cert: data.cert, + key: data.key, + data: createData(data.data), + messageId: id, + createdAt: Date.now(), + txid: id, + topic: "V", + vin, + device_type: "vehicle_device", + }; + + const res = await Methods.post("/data", { + body: JSON.stringify(payload), + }); + if (!res.ok) { + throw new Error("Failed to send data"); + } +}; + +export default sendData; diff --git a/client/api/methods.ts b/client/api/methods.ts new file mode 100644 index 0000000..ca1aa26 --- /dev/null +++ b/client/api/methods.ts @@ -0,0 +1,16 @@ +class Methods { + static async post(path: string, init?: RequestInit) { + return fetch( + `${process.env.NEXT_PUBLIC_PHANTOM_FLEET_API_URL as string}${path}`, + { + method: "POST", + headers: { + "Content-Type": "application/json", + ...(init?.headers ?? {}), + }, + ...(init ?? {}), + } + ); + } +} +export default Methods; diff --git a/client/api/types.d.ts b/client/api/types.d.ts new file mode 100644 index 0000000..a223ebf --- /dev/null +++ b/client/api/types.d.ts @@ -0,0 +1,16 @@ +export type VehicleData = { + txid: string; + key: string; + cert: string; + topic: string; + vin: string; + device_type: string; + createdAt: number; + messageId: string; + data: Data[]; +}; + +export type Data = { + key: string; + value: unknown; +}; diff --git a/client/app/configure/page.tsx b/client/app/configure/page.tsx new file mode 100644 index 0000000..b3a9e67 --- /dev/null +++ b/client/app/configure/page.tsx @@ -0,0 +1,150 @@ +'use client'; + +import { setConfig } from '@/api/config'; +import AppBar from '@/components/AppBar/AppBar'; +import { useApp } from '@/context/ApplicationProvider'; +import { useSnackbar } from '@/components/SnackbarContext'; +import { FLEET } from '@/constants/paths'; +import { + Box, + Button, + Grid, + Skeleton, + TextField, + Typography, +} from '@mui/material'; +import Image from 'next/image'; +import { useRouter } from 'next/navigation'; +import { FormEventHandler, useRef, useState } from 'react'; +import Link from 'next/link'; + +const validateFormInput = (host?: string, port?: string) => { + const helpText = { host: '', port: '' }; + let isValid = true; + if (host?.trim() === '') { + helpText.host = 'Host cannot be empty'; + isValid = false; + } + if (port?.trim() === '') { + helpText.port = 'Port cannot be empty'; + isValid = false; + } else if (port?.match(/^\d+$/) === null) { + helpText.port = 'Port must be a number'; + isValid = false; + } + + return { isValid, helpText }; +}; + +export default function ConfigurePage() { + const { server, isLoading, configureServer } = useApp(); + const [helpText, setHelpText] = useState({ + host: '', + port: '', + }); + const hostRef = useRef(null); + const portRef = useRef(null); + const snackbar = useSnackbar(); + const router = useRouter(); + + const handleSubmit: FormEventHandler = async (e) => { + e.preventDefault(); + const host = hostRef.current?.value as string; + const port = portRef.current?.value as string; + const validation = validateFormInput(host, port); + if (!validation.isValid) { + setHelpText(validation.helpText); + return; + } + + const { valid, reason } = await setConfig(host, Number.parseInt(port, 10)); + if (!valid) { + snackbar.openSnackbar( + `Unable to connect to fleet-telemetry server: ${reason}`, + 'error', + ); + } else { + snackbar.openSnackbar('Connection successful', 'success'); + configureServer(host, port); + router.push(FLEET); + } + }; + + return ( + + + + fleet + + + Welcome to Phantom Fleet + + To get started, enter your fleet-telemetry server information. + + + {isLoading ? ( + <> + + + + + + + + ) : ( + <> + + + + )} + + + + Skip connection setup + + + + + + + ); +} diff --git a/client/app/favicon.ico b/client/app/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..83b8977676bfe7394dc21f6e8047dad333c064db GIT binary patch literal 5430 zcmdT|TT@zB6h2A%kf$_1!KY4tMxXmj`Ug7gw9^^ehfb$$Vq%oUc!?JbL=*%?yo-p6 zcTuAv3W@{}Qn?sMjgDW}+R32=4!4LhT{CO;*=w)0*V^aoz4o_`B;As3OZV?f)K*B} zeIZF-Ns?4i@u9CJ`9qR@O)`2UjSq5a6bZm>;vb0v#Dx;;vW;w8s9m~Vv3}F-i-|ei zRNEdObVX_w6Bi_zyzCfZ(H}glPTydzhP< z#?r!EhFz+_LB5T89b6l)1xF%btU8xqGIZkn{5(}v@tNPBzC(jSi&?Cl*YB9Jg5(!1ST*CFW71(W75&NuTGM8$`7{_d)^_Wct`VO{?@qB{I%S#b=JRZxYdX+us zr%Cw?d@iM)!D8Y_o?q)7Nvgc1m>O~l*@kU7&r}e9L(KUoAJIbZ5r0c;A`TOmns`p0 zn|<6%jfeVoi5rOD5??p55B7DJW1yDT&HbAu_9?&fn^<@H`q-!Zz0=2Ts()R3t2}-`oSf-%3Hz!$WA=nz6OHA$)ge z+CISmvX3427KR5b@X(#iF>2J!h(-_P;iB7kEGq7HRrLc5^z|g|cfC8%s$0PR`g*#P zY&Pk|{VprAjjH;gzzp$N);mg8&uF{5Ixs``v!1ZY=um%heAnwiH@)K^;fRH~nIzY% zsQkAZrx8G~j6F%q^dgt%o3yd*g9Tk`$GaxPygY)oXQG=9QW`*9~S3l6-M)m)||`YTeIfdNCeKMg$(AsetdlV ziQGCegctQsQB(C7;k{m*(tG$^YN}J=^z;;s&uY=qSSRo%V@{dJM~B2Ylly=C_6wfZ zJ_h45#XM1DAdFevu1$;$4-(d&$Z5^{Qs1E!doHJ95rg4_5Of+fY-1y+ee}1e9o$=+ z$Y6?*v25UtAKPx1*nj+8Ny~`=Q7K~Ny!5iQ2@TI`#2MxM#dQ|n2dOn%DSRo-!RLe5%z2sXB=#K&1nAqf zU1|R-`BIV%(K)aB^LMnjG=c93&Ot2=bxNuwm&Kw{Sj;AopZVUYr9HyuK6Zusub3b& zE-tXVI1ih31S`%Zk&lY8FSBkrF`$pu&KS5{B-dl*tUt { + if (vehicle.cert === '') { + snackbar.openSnackbar('Vehicle certificate is required.', 'error'); + } + if (vehicle.key === '') { + snackbar.openSnackbar('Vehicle key is required.', 'error'); + } + sendData(vin, vehicle).catch(() => { + snackbar.openSnackbar('Failed to send data.', 'error'); + }); + }; + + if (!vehicle && !isLoading) { + return ( + + + Vehicle not found. + + + ); + } + + return ( + <> + + + {vin} + + + + {isLoading ? ( + + + + ) : ( + + + {/* TODO: abstract out rendering of tiles */} + + + + )} + + ); +} + +export default FleetIdPage; diff --git a/client/app/fleet/page.tsx b/client/app/fleet/page.tsx new file mode 100644 index 0000000..0901ef0 --- /dev/null +++ b/client/app/fleet/page.tsx @@ -0,0 +1,37 @@ +'use client'; + +import { useApp } from '@/context/ApplicationProvider'; +import { FLEET } from '@/constants/paths'; +import { Box, Typography } from '@mui/material'; +import { redirect } from 'next/navigation'; +import { useEffect } from 'react'; + +function FleetPage() { + const { fleetData, isLoading } = useApp(); + + useEffect(() => { + if (isLoading) return; + if (Object.keys(fleetData).length > 0) { + redirect(`${FLEET}/${Object.keys(fleetData)[0]}`); + } + }, [isLoading, fleetData]); + + if (isLoading) return null; + + return ( + + + To get started, add a vehicle to your fleet. + + + ); +} + +export default FleetPage; diff --git a/client/app/fleet/template.tsx b/client/app/fleet/template.tsx new file mode 100644 index 0000000..ed250a2 --- /dev/null +++ b/client/app/fleet/template.tsx @@ -0,0 +1,148 @@ +'use client'; + +import AppBar from '@/components/AppBar/AppBar'; +import { + Box, + IconButton, + List, + ListItem, + ListItemButton, + ListItemText, + ListSubheader, + Tooltip, +} from '@mui/material'; +import SettingsIcon from '@mui/icons-material/Settings'; +import AddIcon from '@mui/icons-material/Add'; +import { useParams, useRouter } from 'next/navigation'; +import { CONFIGURE, FLEET } from '@/constants/paths'; +import { + VehicleModalProvider, + useModal as useVehicleModal, +} from '@/components/vehicle/ModalContext'; +import EditIcon from '@mui/icons-material/Edit'; +import { useApp } from '@/context/ApplicationProvider'; +import { VehicleFormData } from '@/components/vehicle/Form'; +import { Error } from '@mui/icons-material'; + +type FleetProps = { + children: React.ReactNode; +}; + +const hideSecondaryActionUntilHover = { + '.secondaryAction': { + visibility: 'hidden', + }, + '&:hover': { + '& .secondaryAction': { + visibility: 'visible', + }, + }, +}; + +function VehicleListDrawer() { + const router = useRouter(); + const params = useParams(); + const vehicleModal = useVehicleModal(); + const app = useApp(); + const vins = Object.keys(app.fleetData); + const fleetVehicles = vins.map((vin) => ({ + vin, + cert: app.fleetData[vin].cert, + key: app.fleetData[vin].key, + nickname: app.fleetData[vin].data.VehicleName?.stringValue || '', + })); + + const onSubmit = (data: VehicleFormData) => { + if (params.vin !== data.vin) router.push(`${FLEET}/${data.vin}`); + }; + + return ( + + Your Fleet + + + vehicleModal.newVehicle()} + disabled={app.isLoading} + > + + + + + + )} + > + {fleetVehicles.map((vehicle) => ( + + + vehicleModal.editVehicle(vehicle, onSubmit)} + > + + + + {(vehicle.cert === '' || vehicle.key === '') && ( + + + + )} + + )} + > + router.push(`${FLEET}/${vehicle.vin}`)} + > + + + + ))} + + ); +} + +function Fleet({ children }: FleetProps) { + const router = useRouter(); + const redirectToConfigure = () => { + router.push(CONFIGURE); + }; + return ( + + + + + , + ]} + drawerContent={( + + + + )} + > + {children} + + ); +} + +export default Fleet; diff --git a/client/app/layout.tsx b/client/app/layout.tsx new file mode 100644 index 0000000..420e420 --- /dev/null +++ b/client/app/layout.tsx @@ -0,0 +1,40 @@ +import type { Metadata } from 'next'; +import '@fontsource/roboto/300.css'; +import '@fontsource/roboto/400.css'; +import '@fontsource/roboto/500.css'; +import '@fontsource/roboto/700.css'; +import { CssBaseline } from '@mui/material'; +import { SnackbarProvider } from '@/components/SnackbarContext'; +import { AppRouterCacheProvider } from '@mui/material-nextjs/v13-appRouter'; +import ApplicationProvider from '@/context/ApplicationProvider'; + +export const metadata: Metadata = { + title: 'Phantom Fleet', + description: 'Generated by create next app', +}; + +const provider = 'localStorage'; + +export default function RootLayout({ + children, +}: { + children: React.ReactNode; +}) { + return ( + + + + + + + + + + {children} + + + + + + ); +} diff --git a/client/app/page.tsx b/client/app/page.tsx new file mode 100644 index 0000000..1d5224b --- /dev/null +++ b/client/app/page.tsx @@ -0,0 +1,22 @@ +'use client'; + +import { useApp } from '@/context/ApplicationProvider'; +import { CONFIGURE, FLEET } from '@/constants/paths'; +import { useRouter } from 'next/navigation'; +import { useEffect } from 'react'; + +export default function Home() { + const router = useRouter(); + const data = useApp(); + + // prevent multiple pushes if page rerenders + useEffect(() => { + router.push( + data.server && data.server.host !== '' && data.server.port !== '' + ? FLEET + : CONFIGURE, + ); + }, []); + + return null; +} diff --git a/client/components/AppBar/AppBar.tsx b/client/components/AppBar/AppBar.tsx new file mode 100644 index 0000000..610d7d6 --- /dev/null +++ b/client/components/AppBar/AppBar.tsx @@ -0,0 +1,61 @@ +'use client'; + +import React from 'react'; + +import { + AppBar as MuiAppBar, + Box, + CssBaseline, + Toolbar, + Typography, +} from '@mui/material'; +import Drawer from '@mui/material/Drawer'; + +const drawerWidth = 240; + +type AppBarProps = { + right?: React.ReactNode[]; + children: React.ReactNode; + drawerContent?: React.ReactNode; +}; + +function AppBar({ right = [], drawerContent, children }: AppBarProps) { + return ( + + + theme.zIndex.drawer + 1 }} + > + + + Phantom Fleet + + {right} + + + {drawerContent ? ( + + + {drawerContent} + + ) : null} + + + {children} + + + ); +} + +export default AppBar; diff --git a/client/components/SingleCharacterButton.tsx b/client/components/SingleCharacterButton.tsx new file mode 100644 index 0000000..a28ab44 --- /dev/null +++ b/client/components/SingleCharacterButton.tsx @@ -0,0 +1,27 @@ +import { Button, ButtonProps } from '@mui/material'; + +type SingleCharacterButtonProps = ButtonProps & { character: string }; + +function SingleCharacterButton({ + character, + sx, + ...props +}: SingleCharacterButtonProps) { + return ( + + ); +} + +export default SingleCharacterButton; diff --git a/client/components/SnackbarContext.tsx b/client/components/SnackbarContext.tsx new file mode 100644 index 0000000..9591770 --- /dev/null +++ b/client/components/SnackbarContext.tsx @@ -0,0 +1,83 @@ +'use client'; + +import { + Alert, + AlertColor, + Snackbar, + SnackbarCloseReason, +} from '@mui/material'; +import React, { + createContext, + useContext, + useState, + ReactNode, + useMemo, +} from 'react'; + +interface SnackbarContextProps { + openSnackbar: (message: string, severity: AlertColor) => void; + closeSnackbar: ( + e: React.SyntheticEvent, + reason: SnackbarCloseReason + ) => void; +} + +const SnackbarContext = createContext( + undefined, +); + +interface SnackbarProviderProps { + children: ReactNode; +} + +type SnackbarState = { + open: boolean; + message: string; + severity: AlertColor; +}; + +const closedSnackbar: SnackbarState = { + open: false, + message: '', + severity: 'success', +}; + +export function SnackbarProvider({ children }: SnackbarProviderProps) { + const [snackbar, setSnackbar] = useState(closedSnackbar); + + const openSnackbar = (message: string, severity: AlertColor) => { + setSnackbar({ open: true, message, severity }); + }; + + const closeSnackbar = ( + _: Event | React.SyntheticEvent, + reason: SnackbarCloseReason, + ) => { + if (reason === 'clickaway') return; + setSnackbar(closedSnackbar); + }; + + return ( + ({ openSnackbar, closeSnackbar }), [])} + > + {children} + + {snackbar.message} + + + ); +} + +export const useSnackbar = (): SnackbarContextProps => { + const context = useContext(SnackbarContext); + if (!context) { + throw new Error('useSnackbar must be used within a SnackbarProvider'); + } + return context; +}; diff --git a/client/components/tiles/GearShift.tsx b/client/components/tiles/GearShift.tsx new file mode 100644 index 0000000..b8452d1 --- /dev/null +++ b/client/components/tiles/GearShift.tsx @@ -0,0 +1,93 @@ +'use client'; + +import { + Grid, Menu, MenuItem, Tooltip, +} from '@mui/material'; +import { useRef, useState } from 'react'; +import { KeyData } from '@/context/types'; +import SingleCharacterButton from '../SingleCharacterButton'; +import TileWrapper from './TileWrapper'; +import { useApp } from '../../context/ApplicationProvider'; + +type Gear = { + name: string; + shortName?: string; + value: number; +}; + +const primaryGears = [ + { name: 'Park', shortName: 'P', value: 2 }, + { name: 'Reverse', shortName: 'R', value: 3 }, + { name: 'Drive', shortName: 'D', value: 4 }, + { name: 'More', shortName: '+', value: -1 }, +]; + +const secondaryGears = [ + { name: 'Neutral', value: 5 }, + { name: 'Unknown', value: 0 }, + { name: 'Invalid', value: 1 }, + { name: 'SNA', value: 6 }, +]; + +function GearShift({ vin }: { vin: string }) { + const [menuOpen, setMenuOpen] = useState(false); + const menuAnchor = useRef(null); + const fleet = useApp(); + const vehicleData = fleet?.fleetData[vin]?.data as KeyData; + + if (!vehicleData.Gear) return null; + const selected = vehicleData.Gear?.intValue; + + let selectedIndex = primaryGears.findIndex((gear) => gear.value === selected); + if (selectedIndex === -1) selectedIndex = 3; + + const closeMenu = () => setMenuOpen(false); + + const onClick = (gear: Gear) => { + if (gear.name === 'More') { + setMenuOpen(true); + return; + } + + closeMenu(); + fleet?.setIntData(vin, 'Gear', gear.value); + }; + + return ( + + + {primaryGears.map((gear, i) => ( + + +
    + onClick(gear)} + variant={i === selectedIndex ? 'contained' : 'text'} + character={gear.shortName} + /> +
    +
    +
    + ))} +
    + + {secondaryGears.map((gear) => ( + onClick(gear)} + selected={gear.value === selected} + > + {gear.name} + + ))} + +
    + ); +} + +export default GearShift; diff --git a/client/components/tiles/TileWrapper.tsx b/client/components/tiles/TileWrapper.tsx new file mode 100644 index 0000000..ff9e3fe --- /dev/null +++ b/client/components/tiles/TileWrapper.tsx @@ -0,0 +1,25 @@ +'use client'; + +import { + Card, CardContent, Grid, Typography, +} from '@mui/material'; + +type TileWrapperProps = { + children: React.ReactNode; + title: string; +}; + +function TileWrapper({ children, title }: TileWrapperProps) { + return ( + + + + {title} + {children} + + + + ); +} + +export default TileWrapper; diff --git a/client/components/vehicle/Form.tsx b/client/components/vehicle/Form.tsx new file mode 100644 index 0000000..c652962 --- /dev/null +++ b/client/components/vehicle/Form.tsx @@ -0,0 +1,79 @@ +'use client'; + +import { Box, Button, TextField } from '@mui/material'; + +export type VehicleFormData = { + vin: string; + cert: string; + key: string; +}; + +type VehicleFormProps = { + onChange: (field: string, value: string) => void; + onSubmit: (data: VehicleFormData) => void; + onDelete?: () => void; + onClose: () => void; + data: VehicleFormData; + btnText: string; +}; + +const fields: { + name: keyof VehicleFormData; + label: string; + multiline: boolean; +}[] = [ + { name: 'vin', label: 'VIN', multiline: false }, + { name: 'cert', label: 'Certificate', multiline: true }, + { name: 'key', label: 'Private Key', multiline: true }, +]; + +function VehicleForm({ + onDelete, + onChange, + onClose, + onSubmit, + btnText, + data, +}: VehicleFormProps) { + const handleSubmit = () => { + onSubmit(data); + onClose(); + }; + const handleDelete = () => { + onDelete?.(); + onClose(); + }; + return ( + + {fields.map((field) => ( + onChange(field.name, e.target.value)} + multiline + maxRows={4} + sx={{ pb: 2 }} + /> + ))} + + + {onDelete && ( + + )} + + + + + + ); +} + +export default VehicleForm; diff --git a/client/components/vehicle/Modal.tsx b/client/components/vehicle/Modal.tsx new file mode 100644 index 0000000..c940a82 --- /dev/null +++ b/client/components/vehicle/Modal.tsx @@ -0,0 +1,66 @@ +'use client'; + +import { Box, Modal, Typography } from '@mui/material'; +import { useEffect, useState } from 'react'; +import VehicleForm, { VehicleFormData } from './Form'; + +type VehicleModalProps = { + open: boolean; + onClose: () => void; + vehicle: VehicleFormData | null; + onSubmit: (data: VehicleFormData) => void; +}; + +const emptyForm: VehicleFormData = { + vin: '', + cert: '', + key: '', +}; + +const style = { + position: 'absolute', + top: '50%', + left: '50%', + transform: 'translate(-50%, -50%)', + width: 400, + bgcolor: 'background.paper', + boxShadow: 24, + p: 4, +}; + +function VehicleModal(props: VehicleModalProps) { + const { + vehicle, open, onClose, onSubmit, + } = props; + const [data, setData] = useState(vehicle ?? emptyForm); + const isUpdate = !!vehicle; + + useEffect(() => { + if (!open) setData(emptyForm); + else setData(vehicle ?? emptyForm); + }, [open, vehicle]); + + const onChange = (field: string, value: string) => { + setData((d) => ({ ...d, [field]: value })); + }; + + return ( + + + + {isUpdate ? `Update ${data.vin}` : 'Create a vehicle'} + + + + + ); +} + +export default VehicleModal; diff --git a/client/components/vehicle/ModalContext.tsx b/client/components/vehicle/ModalContext.tsx new file mode 100644 index 0000000..1f5c036 --- /dev/null +++ b/client/components/vehicle/ModalContext.tsx @@ -0,0 +1,84 @@ +import { + createContext, useContext, useMemo, useState, +} from 'react'; +import { useApp } from '@/context/ApplicationProvider'; +import { VehicleFormData } from './Form'; +import VehicleModal from './Modal'; + +const noop = () => {}; + +type OnSubmitFn = (v: VehicleFormData) => void; + +interface ModalContextProps { + isModalOpen: boolean; + editVehicle: (vehicleData: VehicleFormData, onSubmit?: OnSubmitFn) => void; + newVehicle: (onSubmit?: OnSubmitFn) => void; + closeVehicle: () => void; +} + +const ModalContext = createContext(undefined); + +type VehicleModalProviderProps = { + children: React.ReactNode; +}; + +export function VehicleModalProvider({ children }: VehicleModalProviderProps) { + const [isModalOpen, setModalOpen] = useState(false); + const [initialData, setModalData] = useState(null); + const [submitFn, setSubmitFn] = useState<(v: VehicleFormData) => void>( + () => null); + const fleet = useApp(); + const editVehicle = (vehicleData: VehicleFormData, onSubmit?: OnSubmitFn) => { + setModalOpen(true); + setModalData(vehicleData); + setSubmitFn(() => onSubmit ?? noop); + }; + + const newVehicle = (onSubmit?: OnSubmitFn) => { + setModalOpen(true); + setModalData(null); + setSubmitFn(() => onSubmit ?? noop); + }; + + const closeVehicle = () => { + setModalOpen(false); + setModalData(null); + }; + const onSubmit = (data: VehicleFormData) => { + if (initialData?.vin !== data.vin) fleet.changeVin(initialData?.vin as string, data.vin); + if (initialData?.key !== data.key) fleet.setKey(data.vin, data.key); + if (initialData?.cert !== data.cert) fleet.setCert(data.vin, data.cert); + submitFn(data); + closeVehicle(); + }; + + return ( + ({ + isModalOpen, + editVehicle, + newVehicle, + closeVehicle, + }), + [isModalOpen], + )} + > + + {children} + + ); +} + +export const useModal = () => { + const context = useContext(ModalContext); + if (!context) { + throw new Error('useModal must be used within a ModalProvider'); + } + return context; +}; diff --git a/client/constants/paths.ts b/client/constants/paths.ts new file mode 100644 index 0000000..9724d40 --- /dev/null +++ b/client/constants/paths.ts @@ -0,0 +1,3 @@ +export const HOME = "/"; +export const FLEET = "/fleet"; +export const CONFIGURE = "/configure"; diff --git a/client/context/ApplicationProvider.tsx b/client/context/ApplicationProvider.tsx new file mode 100644 index 0000000..201c86e --- /dev/null +++ b/client/context/ApplicationProvider.tsx @@ -0,0 +1,54 @@ +"use client"; +import { createContext, useContext } from "react"; +import { AppContext, DataStore } from "./types"; +import LocalStorage from "./localStorage"; +import ContextProvider from "./Context"; + +const context = createContext(undefined); + +const contextProviders = { + localStorage: LocalStorage, +}; + +type ContextProvider = "localStorage" | "mock"; + +const ApplicationProvider = ({ + contextProvider, + children, + dataStore, +}: { + contextProvider: ContextProvider; + children: React.ReactNode; + dataStore?: DataStore; +}) => { + if (contextProvider === "mock") { + if (!dataStore) { + throw new Error( + "dataStore must be provided when using mock context provider" + ); + } + return ( + + {children} + + ); + } + return ( + + {children} + + ); +}; + +export const useApp = () => { + const c = useContext(context); + if (!c) { + throw new Error("useData must be used within a LocalstorageProvider"); + } + return c; +}; + +export default ApplicationProvider; diff --git a/client/context/Context.tsx b/client/context/Context.tsx new file mode 100644 index 0000000..27990be --- /dev/null +++ b/client/context/Context.tsx @@ -0,0 +1,126 @@ +"use client"; +import { useEffect, useState } from "react"; +import { AppContext, DataStore, FleetData, KeyData, ServerData } from "./types"; + +type ContextProviderProps = { + children: React.ReactNode; + Context: React.Context; + dataStore: DataStore; +}; + +const defaultData = { + Gear: { intValue: 2 }, + VehicleName: { stringValue: "First Vehicle" }, +}; + +const ContextProvider = ({ + Context, + children, + dataStore, +}: ContextProviderProps) => { + const [fleetData, setFleetData] = useState({}); + const [serverData, setServerData] = useState({ + host: "", + port: "", + }); + const [isLoading, setIsLoading] = useState(true); + const [isInitialLoad, setIsInitialLoad] = useState(true); + + // useEffect never uses ssr. localStorage only available on client + useEffect(() => { + (async () => { + const data = await dataStore.loadData(); + setFleetData(data.fleetData); + setServerData(data.serverData); + setIsLoading(false); + })(); + }, []); + + useEffect(() => { + if (isLoading) return; + + // first time isLoading turns false don't save + if (isInitialLoad) { + setIsInitialLoad(false); + return; + } + + (async () => { + await dataStore.saveData(fleetData, serverData); + })(); + }, [fleetData, serverData]); + + const setData = (vin: string, updated: KeyData) => { + setFleetData((d) => { + return { + ...d, + [vin]: { + ...d[vin], + data: { ...(d[vin].data || {}), ...updated }, + }, + }; + }); + }; + + const setStringData = (vin: string, field: string, value: string) => { + setData(vin, { [field]: { stringValue: value } }); + }; + + const setIntData = (vin: string, field: string, value: number) => { + setData(vin, { [field]: { intValue: value } }); + }; + + const newVehicle = (vin: string) => { + setFleetData((d) => ({ + ...d, + [vin]: { data: defaultData, key: "", cert: "" }, + })); + }; + + const setKey = (vin: string, key: string) => { + setFleetData((d) => ({ + ...d, + [vin]: { ...d[vin], key }, + })); + }; + const setCert = (vin: string, cert: string) => { + setFleetData((d) => ({ + ...d, + [vin]: { ...d[vin], cert }, + })); + }; + + const changeVin = (oldVin: string, newVin: string) => { + setFleetData((d) => { + const newFleetData = { ...d }; + newFleetData[newVin] = newFleetData[oldVin]; + delete newFleetData[oldVin]; + return newFleetData; + }); + }; + + const configureServer = (host: string, port: string) => { + setServerData({ host, port }); + }; + + return ( + + {children} + + ); +}; + +export default ContextProvider; diff --git a/client/context/localStorage.tsx b/client/context/localStorage.tsx new file mode 100644 index 0000000..fde9fe5 --- /dev/null +++ b/client/context/localStorage.tsx @@ -0,0 +1,26 @@ +import { FleetData, ServerData } from "./types"; + +const KEY = "appData"; + +const LocalStorage = { + loadData: async () => { + const d = localStorage.getItem(KEY); + if (d) { + const parsed = JSON.parse(d); + return { fleetData: parsed.fleetData, serverData: parsed.serverData }; + } + return { fleetData: {}, serverData: { host: "", port: "" } }; + }, + + saveData: async (fleetData: FleetData, serverData: ServerData) => { + localStorage.setItem( + KEY, + JSON.stringify({ + fleetData, + serverData, + }) + ); + }, +}; + +export default LocalStorage; diff --git a/client/context/types.d.ts b/client/context/types.d.ts new file mode 100644 index 0000000..2e91768 --- /dev/null +++ b/client/context/types.d.ts @@ -0,0 +1,47 @@ +interface AppContext { + fleetData: FleetData; + setStringData: (vin: vin, field: string, value: string) => void; + setIntData: (vin: vin, field: string, value: number) => void; + newVehicle: (vin: vin) => void; + setKey: (vin: vin, key: string) => void; + setCert: (vin: vin, cert: string) => void; + changeVin: (oldVin: vin, newVin: vin) => void; + configureServer: (host: string, port: string) => void; + server: ServerData | null; + isLoading: boolean; +} + +export type InitialState = { + fleetData: FleetData; + serverData: ServerData; + loading: boolean; +}; + +interface DataStore { + loadData: () => Promise<{ fleetData: FleetData; serverData: ServerData }>; + saveData: (fleetData: FleetData, serverData: ServerData) => Promise; +} + +export type vin = string; + +export type KeyData = { + [key: string]: { + stringValue?: string; + intValue?: number; + }; +}; + +export type Vehicle = { + data: KeyData; + key: string; + cert: string; +}; + +export type FleetData = { + [key: vin]: Vehicle; +}; + +export type ServerData = { + host: string; + port: string; +}; diff --git a/client/jest.config.js b/client/jest.config.js new file mode 100644 index 0000000..7680723 --- /dev/null +++ b/client/jest.config.js @@ -0,0 +1,17 @@ +const nextJest = require('next/jest'); + +/** @type {import('jest').Config} */ +const createJestConfig = nextJest({ + dir: './', +}); + +const config = { + coverageProvider: 'v8', + testEnvironment: 'jsdom', + moduleNameMapper: { + sinon: '/node_modules/sinon/pkg/sinon.js', + }, + setupFilesAfterEnv: ['/spec/setup.ts'], +}; + +module.exports = createJestConfig(config); diff --git a/client/next.config.js b/client/next.config.js new file mode 100644 index 0000000..ce014b9 --- /dev/null +++ b/client/next.config.js @@ -0,0 +1,9 @@ +/** @type {import('next').NextConfig} */ +const nextConfig = { + eslint: { + // specify dirs to include spec + dirs: ["pages", "app", "components", "lib", "src", "spec"], + }, +}; + +module.exports = nextConfig; diff --git a/client/package-lock.json b/client/package-lock.json new file mode 100644 index 0000000..653f7b6 --- /dev/null +++ b/client/package-lock.json @@ -0,0 +1,9115 @@ +{ + "name": "client", + "version": "0.1.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "client", + "version": "0.1.0", + "dependencies": { + "@emotion/react": "^11.11.3", + "@emotion/styled": "^11.11.0", + "@fontsource/roboto": "^5.0.8", + "@mui/icons-material": "^5.15.3", + "@mui/material": "^5.15.3", + "@mui/material-nextjs": "^5.15.6", + "next": "14.0.4", + "react": "^18", + "react-dom": "^18" + }, + "devDependencies": { + "@testing-library/jest-dom": "^6.3.0", + "@testing-library/react": "^14.1.2", + "@types/jest": "^29.5.11", + "@types/node": "^20", + "@types/react": "^18", + "@types/react-dom": "^18", + "@types/sinon": "^17.0.3", + "eslint": "^8", + "eslint-config-airbnb": "^19.0.4", + "eslint-config-airbnb-typescript": "^17.1.0", + "eslint-config-next": "14.0.4", + "jest": "^29.7.0", + "jest-environment-jsdom": "^29.7.0", + "jest-fetch-mock": "^3.0.3", + "next-router-mock": "^0.9.11", + "sinon": "^17.0.1", + "typescript": "^5" + } + }, + "node_modules/@aashutoshrathi/word-wrap": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz", + "integrity": "sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@adobe/css-tools": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/@adobe/css-tools/-/css-tools-4.3.2.tgz", + "integrity": "sha512-DA5a1C0gD/pLOvhv33YMrbf2FK3oUzwNl9oOJqE4XVjuEtt6XIakRcsd7eLiOSPkp1kTRQGICTA8cKra/vFbjw==", + "dev": true + }, + "node_modules/@ampproject/remapping": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.1.tgz", + "integrity": "sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==", + "dev": true, + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.0", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/code-frame": { + "version": "7.23.5", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.23.5.tgz", + "integrity": "sha512-CgH3s1a96LipHCmSUmYFPwY7MNx8C3avkq7i4Wl3cfa662ldtUe4VM1TPXX70pfmrlWTb6jLqTYrZyT2ZTJBgA==", + "dependencies": { + "@babel/highlight": "^7.23.4", + "chalk": "^2.4.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/code-frame/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/code-frame/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/code-frame/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/@babel/code-frame/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" + }, + "node_modules/@babel/code-frame/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/@babel/code-frame/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/code-frame/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/compat-data": { + "version": "7.23.5", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.23.5.tgz", + "integrity": "sha512-uU27kfDRlhfKl+w1U6vp16IuvSLtjAxdArVXPa9BvLkrr7CYIsxH5adpHObeAGY/41+syctUWOZ140a2Rvkgjw==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core": { + "version": "7.23.7", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.23.7.tgz", + "integrity": "sha512-+UpDgowcmqe36d4NwqvKsyPMlOLNGMsfMmQ5WGCu+siCe3t3dfe9njrzGfdN4qq+bcNUt0+Vw6haRxBOycs4dw==", + "dev": true, + "dependencies": { + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.23.5", + "@babel/generator": "^7.23.6", + "@babel/helper-compilation-targets": "^7.23.6", + "@babel/helper-module-transforms": "^7.23.3", + "@babel/helpers": "^7.23.7", + "@babel/parser": "^7.23.6", + "@babel/template": "^7.22.15", + "@babel/traverse": "^7.23.7", + "@babel/types": "^7.23.6", + "convert-source-map": "^2.0.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.3", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@babel/core/node_modules/convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "dev": true + }, + "node_modules/@babel/core/node_modules/json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "dev": true, + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@babel/core/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/generator": { + "version": "7.23.6", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.23.6.tgz", + "integrity": "sha512-qrSfCYxYQB5owCmGLbl8XRpX1ytXlpueOb0N0UmQwA073KZxejgQTzAmJezxvpwQD9uGtK2shHdi55QT+MbjIw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.23.6", + "@jridgewell/gen-mapping": "^0.3.2", + "@jridgewell/trace-mapping": "^0.3.17", + "jsesc": "^2.5.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets": { + "version": "7.23.6", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.23.6.tgz", + "integrity": "sha512-9JB548GZoQVmzrFgp8o7KxdgkTGm6xs9DW0o/Pim72UDjzr5ObUQ6ZzYPqA+g9OTS2bBQoctLJrky0RDCAWRgQ==", + "dev": true, + "dependencies": { + "@babel/compat-data": "^7.23.5", + "@babel/helper-validator-option": "^7.23.5", + "browserslist": "^4.22.2", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets/node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/@babel/helper-compilation-targets/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/helper-compilation-targets/node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true + }, + "node_modules/@babel/helper-environment-visitor": { + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz", + "integrity": "sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-function-name": { + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.23.0.tgz", + "integrity": "sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==", + "dev": true, + "dependencies": { + "@babel/template": "^7.22.15", + "@babel/types": "^7.23.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-hoist-variables": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz", + "integrity": "sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.22.15.tgz", + "integrity": "sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w==", + "dependencies": { + "@babel/types": "^7.22.15" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.23.3.tgz", + "integrity": "sha512-7bBs4ED9OmswdfDzpz4MpWgSrV7FXlc3zIagvLFjS5H+Mk7Snr21vQ6QwrsoCGMfNC4e4LQPdoULEt4ykz0SRQ==", + "dev": true, + "dependencies": { + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-module-imports": "^7.22.15", + "@babel/helper-simple-access": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.6", + "@babel/helper-validator-identifier": "^7.22.20" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-plugin-utils": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.22.5.tgz", + "integrity": "sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-simple-access": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.22.5.tgz", + "integrity": "sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-split-export-declaration": { + "version": "7.22.6", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz", + "integrity": "sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.23.4", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.23.4.tgz", + "integrity": "sha512-803gmbQdqwdf4olxrX4AJyFBV/RTr3rSmOj0rKwesmzlfhYNDEs+/iOcznzpNWlJlIlTJC2QfPFcHB6DlzdVLQ==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz", + "integrity": "sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-option": { + "version": "7.23.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.23.5.tgz", + "integrity": "sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers": { + "version": "7.23.8", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.23.8.tgz", + "integrity": "sha512-KDqYz4PiOWvDFrdHLPhKtCThtIcKVy6avWD2oG4GEvyQ+XDZwHD4YQd+H2vNMnq2rkdxsDkU82T+Vk8U/WXHRQ==", + "dev": true, + "dependencies": { + "@babel/template": "^7.22.15", + "@babel/traverse": "^7.23.7", + "@babel/types": "^7.23.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/highlight": { + "version": "7.23.4", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.23.4.tgz", + "integrity": "sha512-acGdbYSfp2WheJoJm/EBBBLh/ID8KDc64ISZ9DYtBmC8/Q204PZJLHyzeB5qMzJ5trcOkybd78M4x2KWsUq++A==", + "dependencies": { + "@babel/helper-validator-identifier": "^7.22.20", + "chalk": "^2.4.2", + "js-tokens": "^4.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/highlight/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/@babel/highlight/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" + }, + "node_modules/@babel/highlight/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/@babel/highlight/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/parser": { + "version": "7.23.6", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.23.6.tgz", + "integrity": "sha512-Z2uID7YJ7oNvAI20O9X0bblw7Qqs8Q2hFy0R9tAfnfLkp5MW0UH9eUvnDSnFwKZ0AvgS1ucqR4KzvVHgnke1VQ==", + "dev": true, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/plugin-syntax-async-generators": { + "version": "7.8.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", + "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-bigint": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz", + "integrity": "sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-class-properties": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", + "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.12.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-meta": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", + "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-json-strings": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", + "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-jsx": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.23.3.tgz", + "integrity": "sha512-EB2MELswq55OHUoRZLGg/zC7QWUKfNLpE57m/S2yr1uEneIgsTgrSzXP3NXEsMkVn76OlaVVnzN+ugObuYGwhg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-logical-assignment-operators": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", + "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", + "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-numeric-separator": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", + "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-object-rest-spread": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", + "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-optional-catch-binding": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", + "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-optional-chaining": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", + "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-top-level-await": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", + "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-typescript": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.23.3.tgz", + "integrity": "sha512-9EiNjVJOMwCO+43TqoTrgQ8jMwcAd0sWyXi9RPfIsLTj4R2MADDDQXELhffaUx/uJv2AYcxBgPwH6j4TIA4ytQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/runtime": { + "version": "7.23.7", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.23.7.tgz", + "integrity": "sha512-w06OXVOFso7LcbzMiDGt+3X7Rh7Ho8MmgPoWU3rarH+8upf+wSU/grlGbWzQyr3DkdN6ZeuMFjpdwW0Q+HxobA==", + "dependencies": { + "regenerator-runtime": "^0.14.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/template": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.15.tgz", + "integrity": "sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.22.13", + "@babel/parser": "^7.22.15", + "@babel/types": "^7.22.15" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse": { + "version": "7.23.7", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.23.7.tgz", + "integrity": "sha512-tY3mM8rH9jM0YHFGyfC0/xf+SB5eKUu7HPj7/k3fpi9dAlsMc5YbQvDi0Sh2QTPXqMhyaAtzAr807TIyfQrmyg==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.23.5", + "@babel/generator": "^7.23.6", + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-function-name": "^7.23.0", + "@babel/helper-hoist-variables": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.6", + "@babel/parser": "^7.23.6", + "@babel/types": "^7.23.6", + "debug": "^4.3.1", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse/node_modules/globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/types": { + "version": "7.23.6", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.23.6.tgz", + "integrity": "sha512-+uarb83brBzPKN38NX1MkB6vb6+mwvR6amUulqAE7ccQw1pEl+bCia9TbdG1lsnFP7lZySvUn37CHyXQdfTwzg==", + "dependencies": { + "@babel/helper-string-parser": "^7.23.4", + "@babel/helper-validator-identifier": "^7.22.20", + "to-fast-properties": "^2.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@bcoe/v8-coverage": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", + "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", + "dev": true + }, + "node_modules/@emotion/babel-plugin": { + "version": "11.11.0", + "resolved": "https://registry.npmjs.org/@emotion/babel-plugin/-/babel-plugin-11.11.0.tgz", + "integrity": "sha512-m4HEDZleaaCH+XgDDsPF15Ht6wTLsgDTeR3WYj9Q/k76JtWhrJjcP4+/XlG8LGT/Rol9qUfOIztXeA84ATpqPQ==", + "dependencies": { + "@babel/helper-module-imports": "^7.16.7", + "@babel/runtime": "^7.18.3", + "@emotion/hash": "^0.9.1", + "@emotion/memoize": "^0.8.1", + "@emotion/serialize": "^1.1.2", + "babel-plugin-macros": "^3.1.0", + "convert-source-map": "^1.5.0", + "escape-string-regexp": "^4.0.0", + "find-root": "^1.1.0", + "source-map": "^0.5.7", + "stylis": "4.2.0" + } + }, + "node_modules/@emotion/cache": { + "version": "11.11.0", + "resolved": "https://registry.npmjs.org/@emotion/cache/-/cache-11.11.0.tgz", + "integrity": "sha512-P34z9ssTCBi3e9EI1ZsWpNHcfY1r09ZO0rZbRO2ob3ZQMnFI35jB536qoXbkdesr5EUhYi22anuEJuyxifaqAQ==", + "dependencies": { + "@emotion/memoize": "^0.8.1", + "@emotion/sheet": "^1.2.2", + "@emotion/utils": "^1.2.1", + "@emotion/weak-memoize": "^0.3.1", + "stylis": "4.2.0" + } + }, + "node_modules/@emotion/hash": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/@emotion/hash/-/hash-0.9.1.tgz", + "integrity": "sha512-gJB6HLm5rYwSLI6PQa+X1t5CFGrv1J1TWG+sOyMCeKz2ojaj6Fnl/rZEspogG+cvqbt4AE/2eIyD2QfLKTBNlQ==" + }, + "node_modules/@emotion/is-prop-valid": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-1.2.1.tgz", + "integrity": "sha512-61Mf7Ufx4aDxx1xlDeOm8aFFigGHE4z+0sKCa+IHCeZKiyP9RLD0Mmx7m8b9/Cf37f7NAvQOOJAbQQGVr5uERw==", + "dependencies": { + "@emotion/memoize": "^0.8.1" + } + }, + "node_modules/@emotion/memoize": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.8.1.tgz", + "integrity": "sha512-W2P2c/VRW1/1tLox0mVUalvnWXxavmv/Oum2aPsRcoDJuob75FC3Y8FbpfLwUegRcxINtGUMPq0tFCvYNTBXNA==" + }, + "node_modules/@emotion/react": { + "version": "11.11.3", + "resolved": "https://registry.npmjs.org/@emotion/react/-/react-11.11.3.tgz", + "integrity": "sha512-Cnn0kuq4DoONOMcnoVsTOR8E+AdnKFf//6kUWc4LCdnxj31pZWn7rIULd6Y7/Js1PiPHzn7SKCM9vB/jBni8eA==", + "dependencies": { + "@babel/runtime": "^7.18.3", + "@emotion/babel-plugin": "^11.11.0", + "@emotion/cache": "^11.11.0", + "@emotion/serialize": "^1.1.3", + "@emotion/use-insertion-effect-with-fallbacks": "^1.0.1", + "@emotion/utils": "^1.2.1", + "@emotion/weak-memoize": "^0.3.1", + "hoist-non-react-statics": "^3.3.1" + }, + "peerDependencies": { + "react": ">=16.8.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@emotion/serialize": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/@emotion/serialize/-/serialize-1.1.3.tgz", + "integrity": "sha512-iD4D6QVZFDhcbH0RAG1uVu1CwVLMWUkCvAqqlewO/rxf8+87yIBAlt4+AxMiiKPLs5hFc0owNk/sLLAOROw3cA==", + "dependencies": { + "@emotion/hash": "^0.9.1", + "@emotion/memoize": "^0.8.1", + "@emotion/unitless": "^0.8.1", + "@emotion/utils": "^1.2.1", + "csstype": "^3.0.2" + } + }, + "node_modules/@emotion/sheet": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/@emotion/sheet/-/sheet-1.2.2.tgz", + "integrity": "sha512-0QBtGvaqtWi+nx6doRwDdBIzhNdZrXUppvTM4dtZZWEGTXL/XE/yJxLMGlDT1Gt+UHH5IX1n+jkXyytE/av7OA==" + }, + "node_modules/@emotion/styled": { + "version": "11.11.0", + "resolved": "https://registry.npmjs.org/@emotion/styled/-/styled-11.11.0.tgz", + "integrity": "sha512-hM5Nnvu9P3midq5aaXj4I+lnSfNi7Pmd4EWk1fOZ3pxookaQTNew6bp4JaCBYM4HVFZF9g7UjJmsUmC2JlxOng==", + "dependencies": { + "@babel/runtime": "^7.18.3", + "@emotion/babel-plugin": "^11.11.0", + "@emotion/is-prop-valid": "^1.2.1", + "@emotion/serialize": "^1.1.2", + "@emotion/use-insertion-effect-with-fallbacks": "^1.0.1", + "@emotion/utils": "^1.2.1" + }, + "peerDependencies": { + "@emotion/react": "^11.0.0-rc.0", + "react": ">=16.8.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@emotion/unitless": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.8.1.tgz", + "integrity": "sha512-KOEGMu6dmJZtpadb476IsZBclKvILjopjUii3V+7MnXIQCYh8W3NgNcgwo21n9LXZX6EDIKvqfjYxXebDwxKmQ==" + }, + "node_modules/@emotion/use-insertion-effect-with-fallbacks": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@emotion/use-insertion-effect-with-fallbacks/-/use-insertion-effect-with-fallbacks-1.0.1.tgz", + "integrity": "sha512-jT/qyKZ9rzLErtrjGgdkMBn2OP8wl0G3sQlBb3YPryvKHsjvINUhVaPFfP+fpBcOkmrVOVEEHQFJ7nbj2TH2gw==", + "peerDependencies": { + "react": ">=16.8.0" + } + }, + "node_modules/@emotion/utils": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@emotion/utils/-/utils-1.2.1.tgz", + "integrity": "sha512-Y2tGf3I+XVnajdItskUCn6LX+VUDmP6lTL4fcqsXAv43dnlbZiuW4MWQW38rW/BVWSE7Q/7+XQocmpnRYILUmg==" + }, + "node_modules/@emotion/weak-memoize": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/@emotion/weak-memoize/-/weak-memoize-0.3.1.tgz", + "integrity": "sha512-EsBwpc7hBUJWAsNPBmJy4hxWx12v6bshQsldrVmjxJoc3isbxhOrF2IcCpaXxfvq03NwkI7sbsOLXbYuqF/8Ww==" + }, + "node_modules/@eslint-community/eslint-utils": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz", + "integrity": "sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==", + "dev": true, + "dependencies": { + "eslint-visitor-keys": "^3.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" + } + }, + "node_modules/@eslint-community/regexpp": { + "version": "4.10.0", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.10.0.tgz", + "integrity": "sha512-Cu96Sd2By9mCNTx2iyKOmq10v22jUVQv0lQnlGNy16oE9589yE+QADPbrMGCkA51cKZSg3Pu/aTJVTGfL/qjUA==", + "dev": true, + "engines": { + "node": "^12.0.0 || ^14.0.0 || >=16.0.0" + } + }, + "node_modules/@eslint/eslintrc": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.4.tgz", + "integrity": "sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==", + "dev": true, + "dependencies": { + "ajv": "^6.12.4", + "debug": "^4.3.2", + "espree": "^9.6.0", + "globals": "^13.19.0", + "ignore": "^5.2.0", + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "minimatch": "^3.1.2", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@eslint/js": { + "version": "8.56.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.56.0.tgz", + "integrity": "sha512-gMsVel9D7f2HLkBma9VbtzZRehRogVRfbr++f06nL2vnCGCNlzOD+/MUov/F4p8myyAHspEhVobgjpX64q5m6A==", + "dev": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/@floating-ui/core": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-1.5.2.tgz", + "integrity": "sha512-Ii3MrfY/GAIN3OhXNzpCKaLxHQfJF9qvwq/kEJYdqDxeIHa01K8sldugal6TmeeXl+WMvhv9cnVzUTaFFJF09A==", + "dependencies": { + "@floating-ui/utils": "^0.1.3" + } + }, + "node_modules/@floating-ui/dom": { + "version": "1.5.3", + "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.5.3.tgz", + "integrity": "sha512-ClAbQnEqJAKCJOEbbLo5IUlZHkNszqhuxS4fHAVxRPXPya6Ysf2G8KypnYcOTpx6I8xcgF9bbHb6g/2KpbV8qA==", + "dependencies": { + "@floating-ui/core": "^1.4.2", + "@floating-ui/utils": "^0.1.3" + } + }, + "node_modules/@floating-ui/react-dom": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@floating-ui/react-dom/-/react-dom-2.0.4.tgz", + "integrity": "sha512-CF8k2rgKeh/49UrnIBs4BdxPUV6vize/Db1d/YbCLyp9GiVZ0BEwf5AiDSxJRCr6yOkGqTFHtmrULxkEfYZ7dQ==", + "dependencies": { + "@floating-ui/dom": "^1.5.1" + }, + "peerDependencies": { + "react": ">=16.8.0", + "react-dom": ">=16.8.0" + } + }, + "node_modules/@floating-ui/utils": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/@floating-ui/utils/-/utils-0.1.6.tgz", + "integrity": "sha512-OfX7E2oUDYxtBvsuS4e/jSn4Q9Qb6DzgeYtsAdkPZ47znpoNsMgZw0+tVijiv3uGNR6dgNlty6r9rzIzHjtd/A==" + }, + "node_modules/@fontsource/roboto": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/@fontsource/roboto/-/roboto-5.0.8.tgz", + "integrity": "sha512-XxPltXs5R31D6UZeLIV1td3wTXU3jzd3f2DLsXI8tytMGBkIsGcc9sIyiupRtA8y73HAhuSCeweOoBqf6DbWCA==" + }, + "node_modules/@humanwhocodes/config-array": { + "version": "0.11.13", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.13.tgz", + "integrity": "sha512-JSBDMiDKSzQVngfRjOdFXgFfklaXI4K9nLF49Auh21lmBWRLIK3+xTErTWD4KU54pb6coM6ESE7Awz/FNU3zgQ==", + "dev": true, + "dependencies": { + "@humanwhocodes/object-schema": "^2.0.1", + "debug": "^4.1.1", + "minimatch": "^3.0.5" + }, + "engines": { + "node": ">=10.10.0" + } + }, + "node_modules/@humanwhocodes/module-importer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", + "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", + "dev": true, + "engines": { + "node": ">=12.22" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, + "node_modules/@humanwhocodes/object-schema": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.1.tgz", + "integrity": "sha512-dvuCeX5fC9dXgJn9t+X5atfmgQAzUOWqS1254Gh0m6i8wKd10ebXkfNKiRK+1GWi/yTvvLDHpoxLr0xxxeslWw==", + "dev": true + }, + "node_modules/@istanbuljs/load-nyc-config": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", + "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", + "dev": true, + "dependencies": { + "camelcase": "^5.3.1", + "find-up": "^4.1.0", + "get-package-type": "^0.1.0", + "js-yaml": "^3.13.1", + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "dev": true, + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/schema": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", + "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/console": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/console/-/console-29.7.0.tgz", + "integrity": "sha512-5Ni4CU7XHQi32IJ398EEP4RrB8eV09sXP2ROqD4bksHrnTree52PsxvX8tpL8LvTZ3pFzXyPbNQReSN41CAhOg==", + "dev": true, + "dependencies": { + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "jest-message-util": "^29.7.0", + "jest-util": "^29.7.0", + "slash": "^3.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/core": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/core/-/core-29.7.0.tgz", + "integrity": "sha512-n7aeXWKMnGtDA48y8TLWJPJmLmmZ642Ceo78cYWEpiD7FzDgmNDV/GCVRorPABdXLJZ/9wzzgZAlHjXjxDHGsg==", + "dev": true, + "dependencies": { + "@jest/console": "^29.7.0", + "@jest/reporters": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "exit": "^0.1.2", + "graceful-fs": "^4.2.9", + "jest-changed-files": "^29.7.0", + "jest-config": "^29.7.0", + "jest-haste-map": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-regex-util": "^29.6.3", + "jest-resolve": "^29.7.0", + "jest-resolve-dependencies": "^29.7.0", + "jest-runner": "^29.7.0", + "jest-runtime": "^29.7.0", + "jest-snapshot": "^29.7.0", + "jest-util": "^29.7.0", + "jest-validate": "^29.7.0", + "jest-watcher": "^29.7.0", + "micromatch": "^4.0.4", + "pretty-format": "^29.7.0", + "slash": "^3.0.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/@jest/core/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@jest/core/node_modules/pretty-format": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", + "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==", + "dev": true, + "dependencies": { + "@jest/schemas": "^29.6.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/core/node_modules/react-is": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", + "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==", + "dev": true + }, + "node_modules/@jest/environment": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-29.7.0.tgz", + "integrity": "sha512-aQIfHDq33ExsN4jP1NWGXhxgQ/wixs60gDiKO+XVMd8Mn0NWPWgc34ZQDTb2jKaUWQ7MuwoitXAsN2XVXNMpAw==", + "dev": true, + "dependencies": { + "@jest/fake-timers": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "jest-mock": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/expect": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/expect/-/expect-29.7.0.tgz", + "integrity": "sha512-8uMeAMycttpva3P1lBHB8VciS9V0XAr3GymPpipdyQXbBcuhkLQOSe8E/p92RyAdToS6ZD1tFkX+CkhoECE0dQ==", + "dev": true, + "dependencies": { + "expect": "^29.7.0", + "jest-snapshot": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/expect-utils": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-29.7.0.tgz", + "integrity": "sha512-GlsNBWiFQFCVi9QVSx7f5AgMeLxe9YCCs5PuP2O2LdjDAA8Jh9eX7lA1Jq/xdXw3Wb3hyvlFNfZIfcRetSzYcA==", + "dev": true, + "dependencies": { + "jest-get-type": "^29.6.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/fake-timers": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-29.7.0.tgz", + "integrity": "sha512-q4DH1Ha4TTFPdxLsqDXK1d3+ioSL7yL5oCMJZgDYm6i+6CygW5E5xVr/D1HdsGxjt1ZWSfUAs9OxSB/BNelWrQ==", + "dev": true, + "dependencies": { + "@jest/types": "^29.6.3", + "@sinonjs/fake-timers": "^10.0.2", + "@types/node": "*", + "jest-message-util": "^29.7.0", + "jest-mock": "^29.7.0", + "jest-util": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/globals": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-29.7.0.tgz", + "integrity": "sha512-mpiz3dutLbkW2MNFubUGUEVLkTGiqW6yLVTA+JbP6fI6J5iL9Y0Nlg8k95pcF8ctKwCS7WVxteBs29hhfAotzQ==", + "dev": true, + "dependencies": { + "@jest/environment": "^29.7.0", + "@jest/expect": "^29.7.0", + "@jest/types": "^29.6.3", + "jest-mock": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/reporters": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-29.7.0.tgz", + "integrity": "sha512-DApq0KJbJOEzAFYjHADNNxAE3KbhxQB1y5Kplb5Waqw6zVbuWatSnMjE5gs8FUgEPmNsnZA3NCWl9NG0ia04Pg==", + "dev": true, + "dependencies": { + "@bcoe/v8-coverage": "^0.2.3", + "@jest/console": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", + "@jridgewell/trace-mapping": "^0.3.18", + "@types/node": "*", + "chalk": "^4.0.0", + "collect-v8-coverage": "^1.0.0", + "exit": "^0.1.2", + "glob": "^7.1.3", + "graceful-fs": "^4.2.9", + "istanbul-lib-coverage": "^3.0.0", + "istanbul-lib-instrument": "^6.0.0", + "istanbul-lib-report": "^3.0.0", + "istanbul-lib-source-maps": "^4.0.0", + "istanbul-reports": "^3.1.3", + "jest-message-util": "^29.7.0", + "jest-util": "^29.7.0", + "jest-worker": "^29.7.0", + "slash": "^3.0.0", + "string-length": "^4.0.1", + "strip-ansi": "^6.0.0", + "v8-to-istanbul": "^9.0.1" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/@jest/schemas": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.3.tgz", + "integrity": "sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==", + "dev": true, + "dependencies": { + "@sinclair/typebox": "^0.27.8" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/source-map": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-29.6.3.tgz", + "integrity": "sha512-MHjT95QuipcPrpLM+8JMSzFx6eHp5Bm+4XeFDJlwsvVBjmKNiIAvasGK2fxz2WbGRlnvqehFbh07MMa7n3YJnw==", + "dev": true, + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.18", + "callsites": "^3.0.0", + "graceful-fs": "^4.2.9" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/test-result": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-29.7.0.tgz", + "integrity": "sha512-Fdx+tv6x1zlkJPcWXmMDAG2HBnaR9XPSd5aDWQVsfrZmLVT3lU1cwyxLgRmXR9yrq4NBoEm9BMsfgFzTQAbJYA==", + "dev": true, + "dependencies": { + "@jest/console": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/istanbul-lib-coverage": "^2.0.0", + "collect-v8-coverage": "^1.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/test-sequencer": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-29.7.0.tgz", + "integrity": "sha512-GQwJ5WZVrKnOJuiYiAF52UNUJXgTZx1NHjFSEB0qEMmSZKAkdMoIzw/Cj6x6NF4AvV23AUqDpFzQkN/eYCYTxw==", + "dev": true, + "dependencies": { + "@jest/test-result": "^29.7.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.7.0", + "slash": "^3.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/transform": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-29.7.0.tgz", + "integrity": "sha512-ok/BTPFzFKVMwO5eOHRrvnBVHdRy9IrsrW1GpMaQ9MCnilNLXQKmAX8s1YXDFaai9xJpac2ySzV0YeRRECr2Vw==", + "dev": true, + "dependencies": { + "@babel/core": "^7.11.6", + "@jest/types": "^29.6.3", + "@jridgewell/trace-mapping": "^0.3.18", + "babel-plugin-istanbul": "^6.1.1", + "chalk": "^4.0.0", + "convert-source-map": "^2.0.0", + "fast-json-stable-stringify": "^2.1.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.7.0", + "jest-regex-util": "^29.6.3", + "jest-util": "^29.7.0", + "micromatch": "^4.0.4", + "pirates": "^4.0.4", + "slash": "^3.0.0", + "write-file-atomic": "^4.0.2" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/transform/node_modules/convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "dev": true + }, + "node_modules/@jest/types": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.6.3.tgz", + "integrity": "sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw==", + "dev": true, + "dependencies": { + "@jest/schemas": "^29.6.3", + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^17.0.8", + "chalk": "^4.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz", + "integrity": "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==", + "dev": true, + "dependencies": { + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz", + "integrity": "sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==", + "dev": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/set-array": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", + "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", + "dev": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.15", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", + "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==", + "dev": true + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.22", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.22.tgz", + "integrity": "sha512-Wf963MzWtA2sjrNt+g18IAln9lKnlRp+K2eH4jjIoF1wYeq3aMREpG09xhlhdzS0EjwU7qmUJYangWa+151vZw==", + "dev": true, + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@mui/base": { + "version": "5.0.0-beta.30", + "resolved": "https://registry.npmjs.org/@mui/base/-/base-5.0.0-beta.30.tgz", + "integrity": "sha512-dc38W4W3K42atE9nSaOeoJ7/x9wGIfawdwC/UmMxMLlZ1iSsITQ8dQJaTATCbn98YvYPINK/EH541YA5enQIPQ==", + "dependencies": { + "@babel/runtime": "^7.23.6", + "@floating-ui/react-dom": "^2.0.4", + "@mui/types": "^7.2.12", + "@mui/utils": "^5.15.3", + "@popperjs/core": "^2.11.8", + "clsx": "^2.0.0", + "prop-types": "^15.8.1" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui-org" + }, + "peerDependencies": { + "@types/react": "^17.0.0 || ^18.0.0", + "react": "^17.0.0 || ^18.0.0", + "react-dom": "^17.0.0 || ^18.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@mui/core-downloads-tracker": { + "version": "5.15.3", + "resolved": "https://registry.npmjs.org/@mui/core-downloads-tracker/-/core-downloads-tracker-5.15.3.tgz", + "integrity": "sha512-sWeihiVyxdJjpLkp8SHkTy9kt2M/o11M60G1MzwljGL2BXdM3Ktzqv5QaQHdi00y7Y1ulvtI3GOSxP2xU8mQJw==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui-org" + } + }, + "node_modules/@mui/icons-material": { + "version": "5.15.3", + "resolved": "https://registry.npmjs.org/@mui/icons-material/-/icons-material-5.15.3.tgz", + "integrity": "sha512-7LEs8AnO2Se/XYH+CcJndRsGAE+M8KAExiiQHf0V11poqmPVGcbbY82Ry2IUYf9+rOilCVnWI18ErghZ625BPQ==", + "dependencies": { + "@babel/runtime": "^7.23.6" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui-org" + }, + "peerDependencies": { + "@mui/material": "^5.0.0", + "@types/react": "^17.0.0 || ^18.0.0", + "react": "^17.0.0 || ^18.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@mui/material": { + "version": "5.15.3", + "resolved": "https://registry.npmjs.org/@mui/material/-/material-5.15.3.tgz", + "integrity": "sha512-DODBBMouyq1B5f3YkEWL9vO8pGCxuEGqtfpltF6peMJzz/78tJFyLQsDas9MNLC/8AdFu2BQdkK7wox5UBPTAA==", + "dependencies": { + "@babel/runtime": "^7.23.6", + "@mui/base": "5.0.0-beta.30", + "@mui/core-downloads-tracker": "^5.15.3", + "@mui/system": "^5.15.3", + "@mui/types": "^7.2.12", + "@mui/utils": "^5.15.3", + "@types/react-transition-group": "^4.4.10", + "clsx": "^2.0.0", + "csstype": "^3.1.2", + "prop-types": "^15.8.1", + "react-is": "^18.2.0", + "react-transition-group": "^4.4.5" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui-org" + }, + "peerDependencies": { + "@emotion/react": "^11.5.0", + "@emotion/styled": "^11.3.0", + "@types/react": "^17.0.0 || ^18.0.0", + "react": "^17.0.0 || ^18.0.0", + "react-dom": "^17.0.0 || ^18.0.0" + }, + "peerDependenciesMeta": { + "@emotion/react": { + "optional": true + }, + "@emotion/styled": { + "optional": true + }, + "@types/react": { + "optional": true + } + } + }, + "node_modules/@mui/material-nextjs": { + "version": "5.15.6", + "resolved": "https://registry.npmjs.org/@mui/material-nextjs/-/material-nextjs-5.15.6.tgz", + "integrity": "sha512-lVMstlHb1cWwdf3LeIxxa1wd2UiUCSRXdFVlopCiifhADFgNK3d05vDyDnwbOj82ZypPz+PxV8I53rp6MmeM3w==", + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui-org" + }, + "peerDependencies": { + "@emotion/cache": "^11.11.0", + "@emotion/server": "^11.11.0", + "@mui/material": "^5.0.0", + "@types/react": "^17.0.0 || ^18.0.0", + "next": "^13.0.0 || ^14.0.0", + "react": "^17.0.0 || ^18.0.0" + }, + "peerDependenciesMeta": { + "@emotion/cache": { + "optional": true + }, + "@emotion/server": { + "optional": true + }, + "@types/react": { + "optional": true + } + } + }, + "node_modules/@mui/material/node_modules/react-is": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", + "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==" + }, + "node_modules/@mui/private-theming": { + "version": "5.15.3", + "resolved": "https://registry.npmjs.org/@mui/private-theming/-/private-theming-5.15.3.tgz", + "integrity": "sha512-Q79MhVMmywC1l5bMsMZq5PsIudr1MNPJnx9/EqdMP0vpz5iNvFpnLmxsD7d8/hqTWgFAljI+LH3jX8MxlZH9Gw==", + "dependencies": { + "@babel/runtime": "^7.23.6", + "@mui/utils": "^5.15.3", + "prop-types": "^15.8.1" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui-org" + }, + "peerDependencies": { + "@types/react": "^17.0.0 || ^18.0.0", + "react": "^17.0.0 || ^18.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@mui/styled-engine": { + "version": "5.15.3", + "resolved": "https://registry.npmjs.org/@mui/styled-engine/-/styled-engine-5.15.3.tgz", + "integrity": "sha512-+d5XZCTeemOO/vBfWGEeHgTm8fjU1Psdgm+xAw+uegycO2EnoA/EfGSaG5UwZ6g3b66y48Mkxi35AggShMr88w==", + "dependencies": { + "@babel/runtime": "^7.23.6", + "@emotion/cache": "^11.11.0", + "csstype": "^3.1.2", + "prop-types": "^15.8.1" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui-org" + }, + "peerDependencies": { + "@emotion/react": "^11.4.1", + "@emotion/styled": "^11.3.0", + "react": "^17.0.0 || ^18.0.0" + }, + "peerDependenciesMeta": { + "@emotion/react": { + "optional": true + }, + "@emotion/styled": { + "optional": true + } + } + }, + "node_modules/@mui/system": { + "version": "5.15.3", + "resolved": "https://registry.npmjs.org/@mui/system/-/system-5.15.3.tgz", + "integrity": "sha512-ewVU4eRgo4VfNMGpO61cKlfWmH7l9s6rA8EknRzuMX3DbSLfmtW2WJJg6qPwragvpPIir0Pp/AdWVSDhyNy5Tw==", + "dependencies": { + "@babel/runtime": "^7.23.6", + "@mui/private-theming": "^5.15.3", + "@mui/styled-engine": "^5.15.3", + "@mui/types": "^7.2.12", + "@mui/utils": "^5.15.3", + "clsx": "^2.0.0", + "csstype": "^3.1.2", + "prop-types": "^15.8.1" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui-org" + }, + "peerDependencies": { + "@emotion/react": "^11.5.0", + "@emotion/styled": "^11.3.0", + "@types/react": "^17.0.0 || ^18.0.0", + "react": "^17.0.0 || ^18.0.0" + }, + "peerDependenciesMeta": { + "@emotion/react": { + "optional": true + }, + "@emotion/styled": { + "optional": true + }, + "@types/react": { + "optional": true + } + } + }, + "node_modules/@mui/types": { + "version": "7.2.12", + "resolved": "https://registry.npmjs.org/@mui/types/-/types-7.2.12.tgz", + "integrity": "sha512-3kaHiNm9khCAo0pVe0RenketDSFoZGAlVZ4zDjB/QNZV0XiCj+sh1zkX0VVhQPgYJDlBEzAag+MHJ1tU3vf0Zw==", + "peerDependencies": { + "@types/react": "^17.0.0 || ^18.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@mui/utils": { + "version": "5.15.3", + "resolved": "https://registry.npmjs.org/@mui/utils/-/utils-5.15.3.tgz", + "integrity": "sha512-mT3LiSt9tZWCdx1pl7q4Q5tNo6gdZbvJel286ZHGuj6LQQXjWNAh8qiF9d+LogvNUI+D7eLkTnj605d1zoazfg==", + "dependencies": { + "@babel/runtime": "^7.23.6", + "@types/prop-types": "^15.7.11", + "prop-types": "^15.8.1", + "react-is": "^18.2.0" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui-org" + }, + "peerDependencies": { + "@types/react": "^17.0.0 || ^18.0.0", + "react": "^17.0.0 || ^18.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@mui/utils/node_modules/react-is": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", + "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==" + }, + "node_modules/@next/env": { + "version": "14.0.4", + "resolved": "https://registry.npmjs.org/@next/env/-/env-14.0.4.tgz", + "integrity": "sha512-irQnbMLbUNQpP1wcE5NstJtbuA/69kRfzBrpAD7Gsn8zm/CY6YQYc3HQBz8QPxwISG26tIm5afvvVbu508oBeQ==" + }, + "node_modules/@next/eslint-plugin-next": { + "version": "14.0.4", + "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.0.4.tgz", + "integrity": "sha512-U3qMNHmEZoVmHA0j/57nRfi3AscXNvkOnxDmle/69Jz/G0o/gWjXTDdlgILZdrxQ0Lw/jv2mPW8PGy0EGIHXhQ==", + "dev": true, + "dependencies": { + "glob": "7.1.7" + } + }, + "node_modules/@next/swc-darwin-arm64": { + "version": "14.0.4", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.0.4.tgz", + "integrity": "sha512-mF05E/5uPthWzyYDyptcwHptucf/jj09i2SXBPwNzbgBNc+XnwzrL0U6BmPjQeOL+FiB+iG1gwBeq7mlDjSRPg==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-darwin-x64": { + "version": "14.0.4", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.0.4.tgz", + "integrity": "sha512-IZQ3C7Bx0k2rYtrZZxKKiusMTM9WWcK5ajyhOZkYYTCc8xytmwSzR1skU7qLgVT/EY9xtXDG0WhY6fyujnI3rw==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-linux-arm64-gnu": { + "version": "14.0.4", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.0.4.tgz", + "integrity": "sha512-VwwZKrBQo/MGb1VOrxJ6LrKvbpo7UbROuyMRvQKTFKhNaXjUmKTu7wxVkIuCARAfiI8JpaWAnKR+D6tzpCcM4w==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-linux-arm64-musl": { + "version": "14.0.4", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.0.4.tgz", + "integrity": "sha512-8QftwPEW37XxXoAwsn+nXlodKWHfpMaSvt81W43Wh8dv0gkheD+30ezWMcFGHLI71KiWmHK5PSQbTQGUiidvLQ==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-linux-x64-gnu": { + "version": "14.0.4", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.0.4.tgz", + "integrity": "sha512-/s/Pme3VKfZAfISlYVq2hzFS8AcAIOTnoKupc/j4WlvF6GQ0VouS2Q2KEgPuO1eMBwakWPB1aYFIA4VNVh667A==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-linux-x64-musl": { + "version": "14.0.4", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.0.4.tgz", + "integrity": "sha512-m8z/6Fyal4L9Bnlxde5g2Mfa1Z7dasMQyhEhskDATpqr+Y0mjOBZcXQ7G5U+vgL22cI4T7MfvgtrM2jdopqWaw==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-win32-arm64-msvc": { + "version": "14.0.4", + "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.0.4.tgz", + "integrity": "sha512-7Wv4PRiWIAWbm5XrGz3D8HUkCVDMMz9igffZG4NB1p4u1KoItwx9qjATHz88kwCEal/HXmbShucaslXCQXUM5w==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-win32-ia32-msvc": { + "version": "14.0.4", + "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.0.4.tgz", + "integrity": "sha512-zLeNEAPULsl0phfGb4kdzF/cAVIfaC7hY+kt0/d+y9mzcZHsMS3hAS829WbJ31DkSlVKQeHEjZHIdhN+Pg7Gyg==", + "cpu": [ + "ia32" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-win32-x64-msvc": { + "version": "14.0.4", + "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.0.4.tgz", + "integrity": "sha512-yEh2+R8qDlDCjxVpzOTEpBLQTEFAcP2A8fUFLaWNap9GitYKkKv1//y2S6XY6zsR4rCOPRpU7plYDR+az2n30A==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "dev": true, + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "dev": true, + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@popperjs/core": { + "version": "2.11.8", + "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.8.tgz", + "integrity": "sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/popperjs" + } + }, + "node_modules/@rushstack/eslint-patch": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/@rushstack/eslint-patch/-/eslint-patch-1.6.1.tgz", + "integrity": "sha512-UY+FGM/2jjMkzQLn8pxcHGMaVLh9aEitG3zY2CiY7XHdLiz3bZOwa6oDxNqEMv7zZkV+cj5DOdz0cQ1BP5Hjgw==", + "dev": true + }, + "node_modules/@sinclair/typebox": { + "version": "0.27.8", + "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.8.tgz", + "integrity": "sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==", + "dev": true + }, + "node_modules/@sinonjs/commons": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.1.tgz", + "integrity": "sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ==", + "dev": true, + "dependencies": { + "type-detect": "4.0.8" + } + }, + "node_modules/@sinonjs/fake-timers": { + "version": "10.3.0", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-10.3.0.tgz", + "integrity": "sha512-V4BG07kuYSUkTCSBHG8G8TNhM+F19jXFWnQtzj+we8DrkpSBCee9Z3Ms8yiGer/dlmhe35/Xdgyo3/0rQKg7YA==", + "dev": true, + "dependencies": { + "@sinonjs/commons": "^3.0.0" + } + }, + "node_modules/@sinonjs/samsam": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-8.0.0.tgz", + "integrity": "sha512-Bp8KUVlLp8ibJZrnvq2foVhP0IVX2CIprMJPK0vqGqgrDa0OHVKeZyBykqskkrdxV6yKBPmGasO8LVjAKR3Gew==", + "dev": true, + "dependencies": { + "@sinonjs/commons": "^2.0.0", + "lodash.get": "^4.4.2", + "type-detect": "^4.0.8" + } + }, + "node_modules/@sinonjs/samsam/node_modules/@sinonjs/commons": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-2.0.0.tgz", + "integrity": "sha512-uLa0j859mMrg2slwQYdO/AkrOfmH+X6LTVmNTS9CqexuE2IvVORIkSpJLqePAbEnKJ77aMmCwr1NUZ57120Xcg==", + "dev": true, + "dependencies": { + "type-detect": "4.0.8" + } + }, + "node_modules/@sinonjs/text-encoding": { + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/@sinonjs/text-encoding/-/text-encoding-0.7.2.tgz", + "integrity": "sha512-sXXKG+uL9IrKqViTtao2Ws6dy0znu9sOaP1di/jKGW1M6VssO8vlpXCQcpZ+jisQ1tTFAC5Jo/EOzFbggBagFQ==", + "dev": true + }, + "node_modules/@swc/helpers": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.2.tgz", + "integrity": "sha512-E4KcWTpoLHqwPHLxidpOqQbcrZVgi0rsmmZXUle1jXmJfuIf/UWpczUJ7MZZ5tlxytgJXyp0w4PGkkeLiuIdZw==", + "dependencies": { + "tslib": "^2.4.0" + } + }, + "node_modules/@testing-library/dom": { + "version": "9.3.4", + "resolved": "https://registry.npmjs.org/@testing-library/dom/-/dom-9.3.4.tgz", + "integrity": "sha512-FlS4ZWlp97iiNWig0Muq8p+3rVDjRiYE+YKGbAqXOu9nwJFFOdL00kFpz42M+4huzYi86vAK1sOOfyOG45muIQ==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.10.4", + "@babel/runtime": "^7.12.5", + "@types/aria-query": "^5.0.1", + "aria-query": "5.1.3", + "chalk": "^4.1.0", + "dom-accessibility-api": "^0.5.9", + "lz-string": "^1.5.0", + "pretty-format": "^27.0.2" + }, + "engines": { + "node": ">=14" + } + }, + "node_modules/@testing-library/dom/node_modules/aria-query": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-5.1.3.tgz", + "integrity": "sha512-R5iJ5lkuHybztUfuOAznmboyjWq8O6sqNqtK7CLOqdydi54VNbORp49mb14KbWgG1QD3JFO9hJdZ+y4KutfdOQ==", + "dev": true, + "dependencies": { + "deep-equal": "^2.0.5" + } + }, + "node_modules/@testing-library/dom/node_modules/dom-accessibility-api": { + "version": "0.5.16", + "resolved": "https://registry.npmjs.org/dom-accessibility-api/-/dom-accessibility-api-0.5.16.tgz", + "integrity": "sha512-X7BJ2yElsnOJ30pZF4uIIDfBEVgF4XEBxL9Bxhy6dnrm5hkzqmsWHGTiHqRiITNhMyFLyAiWndIJP7Z1NTteDg==", + "dev": true + }, + "node_modules/@testing-library/jest-dom": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/@testing-library/jest-dom/-/jest-dom-6.3.0.tgz", + "integrity": "sha512-hJVIrkFizEQxoWsGBlycTcQhrpoCH4DhXfrnHFFXgkx3Xdm15zycsq5Ep+vpw4W8S0NJa8cxDHcuJib+1tEbhg==", + "dev": true, + "dependencies": { + "@adobe/css-tools": "^4.3.2", + "@babel/runtime": "^7.9.2", + "aria-query": "^5.0.0", + "chalk": "^3.0.0", + "css.escape": "^1.5.1", + "dom-accessibility-api": "^0.6.3", + "lodash": "^4.17.15", + "redent": "^3.0.0" + }, + "engines": { + "node": ">=14", + "npm": ">=6", + "yarn": ">=1" + }, + "peerDependencies": { + "@jest/globals": ">= 28", + "@types/bun": "latest", + "@types/jest": ">= 28", + "jest": ">= 28", + "vitest": ">= 0.32" + }, + "peerDependenciesMeta": { + "@jest/globals": { + "optional": true + }, + "@types/bun": { + "optional": true + }, + "@types/jest": { + "optional": true + }, + "jest": { + "optional": true + }, + "vitest": { + "optional": true + } + } + }, + "node_modules/@testing-library/jest-dom/node_modules/chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@testing-library/react": { + "version": "14.1.2", + "resolved": "https://registry.npmjs.org/@testing-library/react/-/react-14.1.2.tgz", + "integrity": "sha512-z4p7DVBTPjKM5qDZ0t5ZjzkpSNb+fZy1u6bzO7kk8oeGagpPCAtgh4cx1syrfp7a+QWkM021jGqjJaxJJnXAZg==", + "dev": true, + "dependencies": { + "@babel/runtime": "^7.12.5", + "@testing-library/dom": "^9.0.0", + "@types/react-dom": "^18.0.0" + }, + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "react": "^18.0.0", + "react-dom": "^18.0.0" + } + }, + "node_modules/@tootallnate/once": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz", + "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==", + "dev": true, + "engines": { + "node": ">= 10" + } + }, + "node_modules/@types/aria-query": { + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/@types/aria-query/-/aria-query-5.0.4.tgz", + "integrity": "sha512-rfT93uj5s0PRL7EzccGMs3brplhcrghnDoV26NqKhCAS1hVo+WdNsPvE/yb6ilfr5hi2MEk6d5EWJTKdxg8jVw==", + "dev": true + }, + "node_modules/@types/babel__core": { + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz", + "integrity": "sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==", + "dev": true, + "dependencies": { + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7", + "@types/babel__generator": "*", + "@types/babel__template": "*", + "@types/babel__traverse": "*" + } + }, + "node_modules/@types/babel__generator": { + "version": "7.6.8", + "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.8.tgz", + "integrity": "sha512-ASsj+tpEDsEiFr1arWrlN6V3mdfjRMZt6LtK/Vp/kreFLnr5QH5+DhvD5nINYZXzwJvXeGq+05iUXcAzVrqWtw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__template": { + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.4.tgz", + "integrity": "sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==", + "dev": true, + "dependencies": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__traverse": { + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.5.tgz", + "integrity": "sha512-WXCyOcRtH37HAUkpXhUduaxdm82b4GSlyTqajXviN4EfiuPgNYR109xMCKvpl6zPIpua0DGlMEDCq+g8EdoheQ==", + "dev": true, + "dependencies": { + "@babel/types": "^7.20.7" + } + }, + "node_modules/@types/graceful-fs": { + "version": "4.1.9", + "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.9.tgz", + "integrity": "sha512-olP3sd1qOEe5dXTSaFvQG+02VdRXcdytWLAZsAq1PecU8uqQAhkrnbli7DagjtXKW/Bl7YJbUsa8MPcuc8LHEQ==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/istanbul-lib-coverage": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.6.tgz", + "integrity": "sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==", + "dev": true + }, + "node_modules/@types/istanbul-lib-report": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.3.tgz", + "integrity": "sha512-NQn7AHQnk/RSLOxrBbGyJM/aVQ+pjj5HCgasFxc0K/KhoATfQ/47AyUl15I2yBUpihjmas+a+VJBOqecrFH+uA==", + "dev": true, + "dependencies": { + "@types/istanbul-lib-coverage": "*" + } + }, + "node_modules/@types/istanbul-reports": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.4.tgz", + "integrity": "sha512-pk2B1NWalF9toCRu6gjBzR69syFjP4Od8WRAX+0mmf9lAjCRicLOWc+ZrxZHx/0XRjotgkF9t6iaMJ+aXcOdZQ==", + "dev": true, + "dependencies": { + "@types/istanbul-lib-report": "*" + } + }, + "node_modules/@types/jest": { + "version": "29.5.11", + "resolved": "https://registry.npmjs.org/@types/jest/-/jest-29.5.11.tgz", + "integrity": "sha512-S2mHmYIVe13vrm6q4kN6fLYYAka15ALQki/vgDC3mIukEOx8WJlv0kQPM+d4w8Gp6u0uSdKND04IlTXBv0rwnQ==", + "dev": true, + "dependencies": { + "expect": "^29.0.0", + "pretty-format": "^29.0.0" + } + }, + "node_modules/@types/jest/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@types/jest/node_modules/pretty-format": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", + "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==", + "dev": true, + "dependencies": { + "@jest/schemas": "^29.6.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@types/jest/node_modules/react-is": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", + "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==", + "dev": true + }, + "node_modules/@types/jsdom": { + "version": "20.0.1", + "resolved": "https://registry.npmjs.org/@types/jsdom/-/jsdom-20.0.1.tgz", + "integrity": "sha512-d0r18sZPmMQr1eG35u12FZfhIXNrnsPU/g5wvRKCUf/tOGilKKwYMYGqh33BNR6ba+2gkHw1EUiHoN3mn7E5IQ==", + "dev": true, + "dependencies": { + "@types/node": "*", + "@types/tough-cookie": "*", + "parse5": "^7.0.0" + } + }, + "node_modules/@types/json-schema": { + "version": "7.0.15", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", + "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", + "dev": true, + "peer": true + }, + "node_modules/@types/json5": { + "version": "0.0.29", + "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", + "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==", + "dev": true + }, + "node_modules/@types/node": { + "version": "20.10.6", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.6.tgz", + "integrity": "sha512-Vac8H+NlRNNlAmDfGUP7b5h/KA+AtWIzuXy0E6OyP8f1tCLYAtPvKRRDJjAPqhpCb0t6U2j7/xqAuLEebW2kiw==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, + "node_modules/@types/parse-json": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.2.tgz", + "integrity": "sha512-dISoDXWWQwUquiKsyZ4Ng+HX2KsPL7LyHKHQwgGFEA3IaKac4Obd+h2a/a6waisAoepJlBcx9paWqjA8/HVjCw==" + }, + "node_modules/@types/prop-types": { + "version": "15.7.11", + "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.11.tgz", + "integrity": "sha512-ga8y9v9uyeiLdpKddhxYQkxNDrfvuPrlFb0N1qnZZByvcElJaXthF1UhvCh9TLWJBEHeNtdnbysW7Y6Uq8CVng==" + }, + "node_modules/@types/react": { + "version": "18.2.46", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.46.tgz", + "integrity": "sha512-nNCvVBcZlvX4NU1nRRNV/mFl1nNRuTuslAJglQsq+8ldXe5Xv0Wd2f7WTE3jOxhLH2BFfiZGC6GCp+kHQbgG+w==", + "dependencies": { + "@types/prop-types": "*", + "@types/scheduler": "*", + "csstype": "^3.0.2" + } + }, + "node_modules/@types/react-dom": { + "version": "18.2.18", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.2.18.tgz", + "integrity": "sha512-TJxDm6OfAX2KJWJdMEVTwWke5Sc/E/RlnPGvGfS0W7+6ocy2xhDVQVh/KvC2Uf7kACs+gDytdusDSdWfWkaNzw==", + "dev": true, + "dependencies": { + "@types/react": "*" + } + }, + "node_modules/@types/react-transition-group": { + "version": "4.4.10", + "resolved": "https://registry.npmjs.org/@types/react-transition-group/-/react-transition-group-4.4.10.tgz", + "integrity": "sha512-hT/+s0VQs2ojCX823m60m5f0sL5idt9SO6Tj6Dg+rdphGPIeJbJ6CxvBYkgkGKrYeDjvIpKTR38UzmtHJOGW3Q==", + "dependencies": { + "@types/react": "*" + } + }, + "node_modules/@types/scheduler": { + "version": "0.16.8", + "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.8.tgz", + "integrity": "sha512-WZLiwShhwLRmeV6zH+GkbOFT6Z6VklCItrDioxUnv+u4Ll+8vKeFySoFyK/0ctcRpOmwAicELfmys1sDc/Rw+A==" + }, + "node_modules/@types/semver": { + "version": "7.5.6", + "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.6.tgz", + "integrity": "sha512-dn1l8LaMea/IjDoHNd9J52uBbInB796CDffS6VdIxvqYCPSG0V0DzHp76GpaWnlhg88uYyPbXCDIowa86ybd5A==", + "dev": true, + "peer": true + }, + "node_modules/@types/sinon": { + "version": "17.0.3", + "resolved": "https://registry.npmjs.org/@types/sinon/-/sinon-17.0.3.tgz", + "integrity": "sha512-j3uovdn8ewky9kRBG19bOwaZbexJu/XjtkHyjvUgt4xfPFz18dcORIMqnYh66Fx3Powhcr85NT5+er3+oViapw==", + "dev": true, + "dependencies": { + "@types/sinonjs__fake-timers": "*" + } + }, + "node_modules/@types/sinonjs__fake-timers": { + "version": "8.1.5", + "resolved": "https://registry.npmjs.org/@types/sinonjs__fake-timers/-/sinonjs__fake-timers-8.1.5.tgz", + "integrity": "sha512-mQkU2jY8jJEF7YHjHvsQO8+3ughTL1mcnn96igfhONmR+fUPSKIkefQYpSe8bsly2Ep7oQbn/6VG5/9/0qcArQ==", + "dev": true + }, + "node_modules/@types/stack-utils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.3.tgz", + "integrity": "sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw==", + "dev": true + }, + "node_modules/@types/tough-cookie": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/@types/tough-cookie/-/tough-cookie-4.0.5.tgz", + "integrity": "sha512-/Ad8+nIOV7Rl++6f1BdKxFSMgmoqEoYbHRpPcx3JEfv8VRsQe9Z4mCXeJBzxs7mbHY/XOZZuXlRNfhpVPbs6ZA==", + "dev": true + }, + "node_modules/@types/yargs": { + "version": "17.0.32", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.32.tgz", + "integrity": "sha512-xQ67Yc/laOG5uMfX/093MRlGGCIBzZMarVa+gfNKJxWAIgykYpVGkBdbqEzGDDfCrVUj6Hiff4mTZ5BA6TmAog==", + "dev": true, + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/@types/yargs-parser": { + "version": "21.0.3", + "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.3.tgz", + "integrity": "sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==", + "dev": true + }, + "node_modules/@typescript-eslint/eslint-plugin": { + "version": "6.19.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.19.1.tgz", + "integrity": "sha512-roQScUGFruWod9CEyoV5KlCYrubC/fvG8/1zXuT0WTcxX87GnMMmnksMwSg99lo1xiKrBzw2icsJPMAw1OtKxg==", + "dev": true, + "peer": true, + "dependencies": { + "@eslint-community/regexpp": "^4.5.1", + "@typescript-eslint/scope-manager": "6.19.1", + "@typescript-eslint/type-utils": "6.19.1", + "@typescript-eslint/utils": "6.19.1", + "@typescript-eslint/visitor-keys": "6.19.1", + "debug": "^4.3.4", + "graphemer": "^1.4.0", + "ignore": "^5.2.4", + "natural-compare": "^1.4.0", + "semver": "^7.5.4", + "ts-api-utils": "^1.0.1" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "@typescript-eslint/parser": "^6.0.0 || ^6.0.0-alpha", + "eslint": "^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/scope-manager": { + "version": "6.19.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.19.1.tgz", + "integrity": "sha512-4CdXYjKf6/6aKNMSly/BP4iCSOpvMmqtDzRtqFyyAae3z5kkqEjKndR5vDHL8rSuMIIWP8u4Mw4VxLyxZW6D5w==", + "dev": true, + "peer": true, + "dependencies": { + "@typescript-eslint/types": "6.19.1", + "@typescript-eslint/visitor-keys": "6.19.1" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/types": { + "version": "6.19.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.19.1.tgz", + "integrity": "sha512-6+bk6FEtBhvfYvpHsDgAL3uo4BfvnTnoge5LrrCj2eJN8g3IJdLTD4B/jK3Q6vo4Ql/Hoip9I8aB6fF+6RfDqg==", + "dev": true, + "peer": true, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/visitor-keys": { + "version": "6.19.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.19.1.tgz", + "integrity": "sha512-gkdtIO+xSO/SmI0W68DBg4u1KElmIUo3vXzgHyGPs6cxgB0sa3TlptRAAE0hUY1hM6FcDKEv7aIwiTGm76cXfQ==", + "dev": true, + "peer": true, + "dependencies": { + "@typescript-eslint/types": "6.19.1", + "eslint-visitor-keys": "^3.4.1" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/parser": { + "version": "6.17.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.17.0.tgz", + "integrity": "sha512-C4bBaX2orvhK+LlwrY8oWGmSl4WolCfYm513gEccdWZj0CwGadbIADb0FtVEcI+WzUyjyoBj2JRP8g25E6IB8A==", + "dev": true, + "dependencies": { + "@typescript-eslint/scope-manager": "6.17.0", + "@typescript-eslint/types": "6.17.0", + "@typescript-eslint/typescript-estree": "6.17.0", + "@typescript-eslint/visitor-keys": "6.17.0", + "debug": "^4.3.4" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/scope-manager": { + "version": "6.17.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.17.0.tgz", + "integrity": "sha512-RX7a8lwgOi7am0k17NUO0+ZmMOX4PpjLtLRgLmT1d3lBYdWH4ssBUbwdmc5pdRX8rXon8v9x8vaoOSpkHfcXGA==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "6.17.0", + "@typescript-eslint/visitor-keys": "6.17.0" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/type-utils": { + "version": "6.19.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-6.19.1.tgz", + "integrity": "sha512-0vdyld3ecfxJuddDjACUvlAeYNrHP/pDeQk2pWBR2ESeEzQhg52DF53AbI9QCBkYE23lgkhLCZNkHn2hEXXYIg==", + "dev": true, + "peer": true, + "dependencies": { + "@typescript-eslint/typescript-estree": "6.19.1", + "@typescript-eslint/utils": "6.19.1", + "debug": "^4.3.4", + "ts-api-utils": "^1.0.1" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/types": { + "version": "6.19.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.19.1.tgz", + "integrity": "sha512-6+bk6FEtBhvfYvpHsDgAL3uo4BfvnTnoge5LrrCj2eJN8g3IJdLTD4B/jK3Q6vo4Ql/Hoip9I8aB6fF+6RfDqg==", + "dev": true, + "peer": true, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/typescript-estree": { + "version": "6.19.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.19.1.tgz", + "integrity": "sha512-aFdAxuhzBFRWhy+H20nYu19+Km+gFfwNO4TEqyszkMcgBDYQjmPJ61erHxuT2ESJXhlhrO7I5EFIlZ+qGR8oVA==", + "dev": true, + "peer": true, + "dependencies": { + "@typescript-eslint/types": "6.19.1", + "@typescript-eslint/visitor-keys": "6.19.1", + "debug": "^4.3.4", + "globby": "^11.1.0", + "is-glob": "^4.0.3", + "minimatch": "9.0.3", + "semver": "^7.5.4", + "ts-api-utils": "^1.0.1" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/visitor-keys": { + "version": "6.19.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.19.1.tgz", + "integrity": "sha512-gkdtIO+xSO/SmI0W68DBg4u1KElmIUo3vXzgHyGPs6cxgB0sa3TlptRAAE0hUY1hM6FcDKEv7aIwiTGm76cXfQ==", + "dev": true, + "peer": true, + "dependencies": { + "@typescript-eslint/types": "6.19.1", + "eslint-visitor-keys": "^3.4.1" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/type-utils/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "peer": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/@typescript-eslint/type-utils/node_modules/minimatch": { + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", + "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", + "dev": true, + "peer": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@typescript-eslint/types": { + "version": "6.17.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.17.0.tgz", + "integrity": "sha512-qRKs9tvc3a4RBcL/9PXtKSehI/q8wuU9xYJxe97WFxnzH8NWWtcW3ffNS+EWg8uPvIerhjsEZ+rHtDqOCiH57A==", + "dev": true, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/typescript-estree": { + "version": "6.17.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.17.0.tgz", + "integrity": "sha512-gVQe+SLdNPfjlJn5VNGhlOhrXz4cajwFd5kAgWtZ9dCZf4XJf8xmgCTLIqec7aha3JwgLI2CK6GY1043FRxZwg==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "6.17.0", + "@typescript-eslint/visitor-keys": "6.17.0", + "debug": "^4.3.4", + "globby": "^11.1.0", + "is-glob": "^4.0.3", + "minimatch": "9.0.3", + "semver": "^7.5.4", + "ts-api-utils": "^1.0.1" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/minimatch": { + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", + "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@typescript-eslint/utils": { + "version": "6.19.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.19.1.tgz", + "integrity": "sha512-JvjfEZuP5WoMqwh9SPAPDSHSg9FBHHGhjPugSRxu5jMfjvBpq5/sGTD+9M9aQ5sh6iJ8AY/Kk/oUYVEMAPwi7w==", + "dev": true, + "peer": true, + "dependencies": { + "@eslint-community/eslint-utils": "^4.4.0", + "@types/json-schema": "^7.0.12", + "@types/semver": "^7.5.0", + "@typescript-eslint/scope-manager": "6.19.1", + "@typescript-eslint/types": "6.19.1", + "@typescript-eslint/typescript-estree": "6.19.1", + "semver": "^7.5.4" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^7.0.0 || ^8.0.0" + } + }, + "node_modules/@typescript-eslint/utils/node_modules/@typescript-eslint/scope-manager": { + "version": "6.19.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.19.1.tgz", + "integrity": "sha512-4CdXYjKf6/6aKNMSly/BP4iCSOpvMmqtDzRtqFyyAae3z5kkqEjKndR5vDHL8rSuMIIWP8u4Mw4VxLyxZW6D5w==", + "dev": true, + "peer": true, + "dependencies": { + "@typescript-eslint/types": "6.19.1", + "@typescript-eslint/visitor-keys": "6.19.1" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/utils/node_modules/@typescript-eslint/types": { + "version": "6.19.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.19.1.tgz", + "integrity": "sha512-6+bk6FEtBhvfYvpHsDgAL3uo4BfvnTnoge5LrrCj2eJN8g3IJdLTD4B/jK3Q6vo4Ql/Hoip9I8aB6fF+6RfDqg==", + "dev": true, + "peer": true, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/utils/node_modules/@typescript-eslint/typescript-estree": { + "version": "6.19.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.19.1.tgz", + "integrity": "sha512-aFdAxuhzBFRWhy+H20nYu19+Km+gFfwNO4TEqyszkMcgBDYQjmPJ61erHxuT2ESJXhlhrO7I5EFIlZ+qGR8oVA==", + "dev": true, + "peer": true, + "dependencies": { + "@typescript-eslint/types": "6.19.1", + "@typescript-eslint/visitor-keys": "6.19.1", + "debug": "^4.3.4", + "globby": "^11.1.0", + "is-glob": "^4.0.3", + "minimatch": "9.0.3", + "semver": "^7.5.4", + "ts-api-utils": "^1.0.1" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/utils/node_modules/@typescript-eslint/visitor-keys": { + "version": "6.19.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.19.1.tgz", + "integrity": "sha512-gkdtIO+xSO/SmI0W68DBg4u1KElmIUo3vXzgHyGPs6cxgB0sa3TlptRAAE0hUY1hM6FcDKEv7aIwiTGm76cXfQ==", + "dev": true, + "peer": true, + "dependencies": { + "@typescript-eslint/types": "6.19.1", + "eslint-visitor-keys": "^3.4.1" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/utils/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "peer": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/@typescript-eslint/utils/node_modules/minimatch": { + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", + "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", + "dev": true, + "peer": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@typescript-eslint/visitor-keys": { + "version": "6.17.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.17.0.tgz", + "integrity": "sha512-H6VwB/k3IuIeQOyYczyyKN8wH6ed8EwliaYHLxOIhyF0dYEIsN8+Bk3GE19qafeMKyZJJHP8+O1HiFhFLUNKSg==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "6.17.0", + "eslint-visitor-keys": "^3.4.1" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@ungap/structured-clone": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.2.0.tgz", + "integrity": "sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==", + "dev": true + }, + "node_modules/abab": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz", + "integrity": "sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==", + "deprecated": "Use your platform's native atob() and btoa() methods instead", + "dev": true + }, + "node_modules/acorn": { + "version": "8.11.3", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.3.tgz", + "integrity": "sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-globals": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-7.0.1.tgz", + "integrity": "sha512-umOSDSDrfHbTNPuNpC2NSnnA3LUrqpevPb4T9jRx4MagXNS0rs+gwiTcAvqCRmsD6utzsrzNt+ebm00SNWiC3Q==", + "dev": true, + "dependencies": { + "acorn": "^8.1.0", + "acorn-walk": "^8.0.2" + } + }, + "node_modules/acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "dev": true, + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/acorn-walk": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.2.tgz", + "integrity": "sha512-cjkyv4OtNCIeqhHrfS81QWXoCBPExR/J62oyEqepVw8WaQeSqpW2uhuLPh1m9eWhDuOo/jUXVTlifvesOWp/4A==", + "dev": true, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/agent-base": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", + "dev": true, + "dependencies": { + "debug": "4" + }, + "engines": { + "node": ">= 6.0.0" + } + }, + "node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ansi-escapes": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", + "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", + "dev": true, + "dependencies": { + "type-fest": "^0.21.3" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ansi-escapes/node_modules/type-fest": { + "version": "0.21.3", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", + "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "dev": true, + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true + }, + "node_modules/aria-query": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-5.3.0.tgz", + "integrity": "sha512-b0P0sZPKtyu8HkeRAfCq0IfURZK+SuwMjY1UXGBU27wpAiTwQAIlq56IbIO+ytk/JjS1fMR14ee5WBBfKi5J6A==", + "dev": true, + "dependencies": { + "dequal": "^2.0.3" + } + }, + "node_modules/array-buffer-byte-length": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.0.tgz", + "integrity": "sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "is-array-buffer": "^3.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array-includes": { + "version": "3.1.7", + "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.7.tgz", + "integrity": "sha512-dlcsNBIiWhPkHdOEEKnehA+RNUWDc4UqFtnIXU4uuYDPtA4LDkr7qip2p0VvFAEXNDr0yWZ9PJyIRiGjRLQzwQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "get-intrinsic": "^1.2.1", + "is-string": "^1.0.7" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array-union": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", + "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/array.prototype.findlastindex": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.3.tgz", + "integrity": "sha512-LzLoiOMAxvy+Gd3BAq3B7VeIgPdo+Q8hthvKtXybMvRV0jrXfJM/t8mw7nNlpEcVlVUnCnM2KSX4XU5HmpodOA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "es-shim-unscopables": "^1.0.0", + "get-intrinsic": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.flat": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.2.tgz", + "integrity": "sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "es-shim-unscopables": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.flatmap": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.2.tgz", + "integrity": "sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "es-shim-unscopables": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.tosorted": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/array.prototype.tosorted/-/array.prototype.tosorted-1.1.2.tgz", + "integrity": "sha512-HuQCHOlk1Weat5jzStICBCd83NxiIMwqDg/dHEsoefabn/hJRj5pVdWcPUSpRrwhwxZOsQassMpgN/xRYFBMIg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "es-shim-unscopables": "^1.0.0", + "get-intrinsic": "^1.2.1" + } + }, + "node_modules/arraybuffer.prototype.slice": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.2.tgz", + "integrity": "sha512-yMBKppFur/fbHu9/6USUe03bZ4knMYiwFBcyiaXB8Go0qNehwX6inYPzK9U0NeQvGxKthcmHcaR8P5MStSRBAw==", + "dev": true, + "dependencies": { + "array-buffer-byte-length": "^1.0.0", + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "get-intrinsic": "^1.2.1", + "is-array-buffer": "^3.0.2", + "is-shared-array-buffer": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/ast-types-flow": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/ast-types-flow/-/ast-types-flow-0.0.8.tgz", + "integrity": "sha512-OH/2E5Fg20h2aPrbe+QL8JZQFko0YZaF+j4mnQ7BGhfavO7OpSLa8a0y9sBwomHdSbkhTS8TQNayBfnW5DwbvQ==", + "dev": true + }, + "node_modules/asynciterator.prototype": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/asynciterator.prototype/-/asynciterator.prototype-1.0.0.tgz", + "integrity": "sha512-wwHYEIS0Q80f5mosx3L/dfG5t5rjEa9Ft51GTaNt862EnpyGHpgz2RkZvLPp1oF5TnAiTohkEKVEu8pQPJI7Vg==", + "dev": true, + "dependencies": { + "has-symbols": "^1.0.3" + } + }, + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", + "dev": true + }, + "node_modules/available-typed-arrays": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz", + "integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/axe-core": { + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.7.0.tgz", + "integrity": "sha512-M0JtH+hlOL5pLQwHOLNYZaXuhqmvS8oExsqB1SBYgA4Dk7u/xx+YdGHXaK5pyUfed5mYXdlYiphWq3G8cRi5JQ==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/axobject-query": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-3.2.1.tgz", + "integrity": "sha512-jsyHu61e6N4Vbz/v18DHwWYKK0bSWLqn47eeDSKPB7m8tqMHF9YJ+mhIk2lVteyZrY8tnSj/jHOv4YiTCuCJgg==", + "dev": true, + "dependencies": { + "dequal": "^2.0.3" + } + }, + "node_modules/babel-jest": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-29.7.0.tgz", + "integrity": "sha512-BrvGY3xZSwEcCzKvKsCi2GgHqDqsYkOP4/by5xCgIwGXQxIEh+8ew3gmrE1y7XRR6LHZIj6yLYnUi/mm2KXKBg==", + "dev": true, + "dependencies": { + "@jest/transform": "^29.7.0", + "@types/babel__core": "^7.1.14", + "babel-plugin-istanbul": "^6.1.1", + "babel-preset-jest": "^29.6.3", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "slash": "^3.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.8.0" + } + }, + "node_modules/babel-plugin-istanbul": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", + "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.0.0", + "@istanbuljs/load-nyc-config": "^1.0.0", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-instrument": "^5.0.4", + "test-exclude": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-plugin-istanbul/node_modules/istanbul-lib-instrument": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz", + "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==", + "dev": true, + "dependencies": { + "@babel/core": "^7.12.3", + "@babel/parser": "^7.14.7", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-plugin-istanbul/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/babel-plugin-jest-hoist": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.6.3.tgz", + "integrity": "sha512-ESAc/RJvGTFEzRwOTT4+lNDk/GNHMkKbNzsvT0qKRfDyyYTskxB5rnU2njIDYVxXCBHHEI1c0YwHob3WaYujOg==", + "dev": true, + "dependencies": { + "@babel/template": "^7.3.3", + "@babel/types": "^7.3.3", + "@types/babel__core": "^7.1.14", + "@types/babel__traverse": "^7.0.6" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/babel-plugin-macros": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/babel-plugin-macros/-/babel-plugin-macros-3.1.0.tgz", + "integrity": "sha512-Cg7TFGpIr01vOQNODXOOaGz2NpCU5gl8x1qJFbb6hbZxR7XrcE2vtbAsTAbJ7/xwJtUuJEw8K8Zr/AE0LHlesg==", + "dependencies": { + "@babel/runtime": "^7.12.5", + "cosmiconfig": "^7.0.0", + "resolve": "^1.19.0" + }, + "engines": { + "node": ">=10", + "npm": ">=6" + } + }, + "node_modules/babel-preset-current-node-syntax": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz", + "integrity": "sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ==", + "dev": true, + "dependencies": { + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-bigint": "^7.8.3", + "@babel/plugin-syntax-class-properties": "^7.8.3", + "@babel/plugin-syntax-import-meta": "^7.8.3", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.8.3", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.8.3", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", + "@babel/plugin-syntax-optional-chaining": "^7.8.3", + "@babel/plugin-syntax-top-level-await": "^7.8.3" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/babel-preset-jest": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-29.6.3.tgz", + "integrity": "sha512-0B3bhxR6snWXJZtR/RliHTDPRgn1sNHOR0yVtq/IiQFyuOVjFS+wuio/R4gSNkyYmKmJB4wGZv2NZanmKmTnNA==", + "dev": true, + "dependencies": { + "babel-plugin-jest-hoist": "^29.6.3", + "babel-preset-current-node-syntax": "^1.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "dependencies": { + "fill-range": "^7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/browserslist": { + "version": "4.22.2", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.22.2.tgz", + "integrity": "sha512-0UgcrvQmBDvZHFGdYUehrCNIazki7/lUP3kkoi/r3YB2amZbFM9J43ZRkJTXBUZK4gmx56+Sqk9+Vs9mwZx9+A==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "caniuse-lite": "^1.0.30001565", + "electron-to-chromium": "^1.4.601", + "node-releases": "^2.0.14", + "update-browserslist-db": "^1.0.13" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "node_modules/bser": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz", + "integrity": "sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==", + "dev": true, + "dependencies": { + "node-int64": "^0.4.0" + } + }, + "node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", + "dev": true + }, + "node_modules/busboy": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/busboy/-/busboy-1.6.0.tgz", + "integrity": "sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==", + "dependencies": { + "streamsearch": "^1.1.0" + }, + "engines": { + "node": ">=10.16.0" + } + }, + "node_modules/call-bind": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.5.tgz", + "integrity": "sha512-C3nQxfFZxFRVoJoGKKI8y3MOEo129NQ+FgQ08iye+Mk4zNZZGdjfs06bVTr+DBSlA66Q2VEcMki/cUCP4SercQ==", + "dev": true, + "dependencies": { + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.1", + "set-function-length": "^1.1.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "engines": { + "node": ">=6" + } + }, + "node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001574", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001574.tgz", + "integrity": "sha512-BtYEK4r/iHt/txm81KBudCUcTy7t+s9emrIaHqjYurQ10x71zJ5VQ9x1dYPcz/b+pKSp4y/v1xSI67A+LzpNyg==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ] + }, + "node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/char-regex": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz", + "integrity": "sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/ci-info": { + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz", + "integrity": "sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/sibiraj-s" + } + ], + "engines": { + "node": ">=8" + } + }, + "node_modules/cjs-module-lexer": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.2.3.tgz", + "integrity": "sha512-0TNiGstbQmCFwt4akjjBg5pLRTSyj/PkWQ1ZoO2zntmg9yLqSRxwEa4iCfQLGjqhiqBfOJa7W/E8wfGrTDmlZQ==", + "dev": true + }, + "node_modules/client-only": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/client-only/-/client-only-0.0.1.tgz", + "integrity": "sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA==" + }, + "node_modules/cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "dev": true, + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/clsx": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/clsx/-/clsx-2.1.0.tgz", + "integrity": "sha512-m3iNNWpd9rl3jvvcBnu70ylMdrXt8Vlq4HYadnU5fwcOtvkSQWPmj7amUcDT2qYI7risszBjI5AUIUox9D16pg==", + "engines": { + "node": ">=6" + } + }, + "node_modules/co": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", + "integrity": "sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==", + "dev": true, + "engines": { + "iojs": ">= 1.0.0", + "node": ">= 0.12.0" + } + }, + "node_modules/collect-v8-coverage": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.2.tgz", + "integrity": "sha512-lHl4d5/ONEbLlJvaJNtsF/Lz+WvB07u2ycqTYbdrq7UypDXailES4valYb2eWiJFxZlVmpGekfqoxQhzyFdT4Q==", + "dev": true + }, + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "dev": true, + "dependencies": { + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true + }, + "node_modules/confusing-browser-globals": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/confusing-browser-globals/-/confusing-browser-globals-1.0.11.tgz", + "integrity": "sha512-JsPKdmh8ZkmnHxDk55FZ1TqVLvEQTvoByJZRN9jzI0UjxK/QgAmsphz7PGtqgPieQZ/CQcHWXCR7ATDNhGe+YA==", + "dev": true + }, + "node_modules/convert-source-map": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", + "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==" + }, + "node_modules/cosmiconfig": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz", + "integrity": "sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==", + "dependencies": { + "@types/parse-json": "^4.0.0", + "import-fresh": "^3.2.1", + "parse-json": "^5.0.0", + "path-type": "^4.0.0", + "yaml": "^1.10.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/create-jest": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/create-jest/-/create-jest-29.7.0.tgz", + "integrity": "sha512-Adz2bdH0Vq3F53KEMJOoftQFutWCukm6J24wbPWRO4k1kMY7gS7ds/uoJkNuV8wDCtWWnuwGcJwpWcih+zEW1Q==", + "dev": true, + "dependencies": { + "@jest/types": "^29.6.3", + "chalk": "^4.0.0", + "exit": "^0.1.2", + "graceful-fs": "^4.2.9", + "jest-config": "^29.7.0", + "jest-util": "^29.7.0", + "prompts": "^2.0.1" + }, + "bin": { + "create-jest": "bin/create-jest.js" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/cross-fetch": { + "version": "3.1.8", + "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-3.1.8.tgz", + "integrity": "sha512-cvA+JwZoU0Xq+h6WkMvAUqPEYy92Obet6UdKLfW60qn99ftItKjB5T+BkyWOFWe2pUyfQ+IJHmpOTznqk1M6Kg==", + "dev": true, + "dependencies": { + "node-fetch": "^2.6.12" + } + }, + "node_modules/cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dev": true, + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/css.escape": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/css.escape/-/css.escape-1.5.1.tgz", + "integrity": "sha512-YUifsXXuknHlUsmlgyY0PKzgPOr7/FjCePfHNt0jxm83wHZi44VDMQ7/fGNkjY3/jV1MC+1CmZbaHzugyeRtpg==", + "dev": true + }, + "node_modules/cssom": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.5.0.tgz", + "integrity": "sha512-iKuQcq+NdHqlAcwUY0o/HL69XQrUaQdMjmStJ8JFmUaiiQErlhrmuigkg/CU4E2J0IyUKUrMAgl36TvN67MqTw==", + "dev": true + }, + "node_modules/cssstyle": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-2.3.0.tgz", + "integrity": "sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==", + "dev": true, + "dependencies": { + "cssom": "~0.3.6" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cssstyle/node_modules/cssom": { + "version": "0.3.8", + "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.3.8.tgz", + "integrity": "sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==", + "dev": true + }, + "node_modules/csstype": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz", + "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==" + }, + "node_modules/damerau-levenshtein": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/damerau-levenshtein/-/damerau-levenshtein-1.0.8.tgz", + "integrity": "sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==", + "dev": true + }, + "node_modules/data-urls": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-3.0.2.tgz", + "integrity": "sha512-Jy/tj3ldjZJo63sVAvg6LHt2mHvl4V6AgRAmNDtLdm7faqtsx+aJG42rsyCo9JCoRVKwPFzKlIPx3DIibwSIaQ==", + "dev": true, + "dependencies": { + "abab": "^2.0.6", + "whatwg-mimetype": "^3.0.0", + "whatwg-url": "^11.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dev": true, + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/decimal.js": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.4.3.tgz", + "integrity": "sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==", + "dev": true + }, + "node_modules/dedent": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/dedent/-/dedent-1.5.1.tgz", + "integrity": "sha512-+LxW+KLWxu3HW3M2w2ympwtqPrqYRzU8fqi6Fhd18fBALe15blJPI/I4+UHveMVG6lJqB4JNd4UG0S5cnVHwIg==", + "dev": true, + "peerDependencies": { + "babel-plugin-macros": "^3.1.0" + }, + "peerDependenciesMeta": { + "babel-plugin-macros": { + "optional": true + } + } + }, + "node_modules/deep-equal": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-2.2.3.tgz", + "integrity": "sha512-ZIwpnevOurS8bpT4192sqAowWM76JDKSHYzMLty3BZGSswgq6pBaH3DhCSW5xVAZICZyKdOBPjwww5wfgT/6PA==", + "dev": true, + "dependencies": { + "array-buffer-byte-length": "^1.0.0", + "call-bind": "^1.0.5", + "es-get-iterator": "^1.1.3", + "get-intrinsic": "^1.2.2", + "is-arguments": "^1.1.1", + "is-array-buffer": "^3.0.2", + "is-date-object": "^1.0.5", + "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.2", + "isarray": "^2.0.5", + "object-is": "^1.1.5", + "object-keys": "^1.1.1", + "object.assign": "^4.1.4", + "regexp.prototype.flags": "^1.5.1", + "side-channel": "^1.0.4", + "which-boxed-primitive": "^1.0.2", + "which-collection": "^1.0.1", + "which-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/deep-is": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", + "dev": true + }, + "node_modules/deepmerge": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", + "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/define-data-property": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.1.tgz", + "integrity": "sha512-E7uGkTzkk1d0ByLeSc6ZsFS79Axg+m1P/VsgYsxHgiuc3tFSj+MjMIwe90FC4lOAZzNBdY7kkO2P2wKdsQ1vgQ==", + "dev": true, + "dependencies": { + "get-intrinsic": "^1.2.1", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/define-properties": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz", + "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==", + "dev": true, + "dependencies": { + "define-data-property": "^1.0.1", + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", + "dev": true, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/dequal": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/dequal/-/dequal-2.0.3.tgz", + "integrity": "sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/detect-newline": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz", + "integrity": "sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/diff": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-5.1.0.tgz", + "integrity": "sha512-D+mk+qE8VC/PAUrlAU34N+VfXev0ghe5ywmpqrawphmVZc1bEfn56uo9qpyGp1p4xpzOHkSW4ztBd6L7Xx4ACw==", + "dev": true, + "engines": { + "node": ">=0.3.1" + } + }, + "node_modules/diff-sequences": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-29.6.3.tgz", + "integrity": "sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==", + "dev": true, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/dir-glob": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "dev": true, + "dependencies": { + "path-type": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "dev": true, + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/dom-accessibility-api": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/dom-accessibility-api/-/dom-accessibility-api-0.6.3.tgz", + "integrity": "sha512-7ZgogeTnjuHbo+ct10G9Ffp0mif17idi0IyWNVA/wcwcm7NPOD/WEHVP3n7n3MhXqxoIYm8d6MuZohYWIZ4T3w==", + "dev": true + }, + "node_modules/dom-helpers": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/dom-helpers/-/dom-helpers-5.2.1.tgz", + "integrity": "sha512-nRCa7CK3VTrM2NmGkIy4cbK7IZlgBE/PYMn55rrXefr5xXDP0LdtfPnblFDoVdcAfslJ7or6iqAUnx0CCGIWQA==", + "dependencies": { + "@babel/runtime": "^7.8.7", + "csstype": "^3.0.2" + } + }, + "node_modules/domexception": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/domexception/-/domexception-4.0.0.tgz", + "integrity": "sha512-A2is4PLG+eeSfoTMA95/s4pvAoSo2mKtiM5jlHkAVewmiO8ISFTFKZjH7UAM1Atli/OT/7JHOrJRJiMKUZKYBw==", + "deprecated": "Use your platform's native DOMException instead", + "dev": true, + "dependencies": { + "webidl-conversions": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/electron-to-chromium": { + "version": "1.4.643", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.643.tgz", + "integrity": "sha512-QHscvvS7gt155PtoRC0dR2ilhL8E9LHhfTQEq1uD5AL0524rBLAwpAREFH06f87/e45B9XkR6Ki5dbhbCsVEIg==", + "dev": true + }, + "node_modules/emittery": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.13.1.tgz", + "integrity": "sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sindresorhus/emittery?sponsor=1" + } + }, + "node_modules/emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", + "dev": true + }, + "node_modules/enhanced-resolve": { + "version": "5.15.0", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.15.0.tgz", + "integrity": "sha512-LXYT42KJ7lpIKECr2mAXIaMldcNCh/7E0KBKOu4KSfkHmP+mZmSs+8V5gBAqisWBy0OO4W5Oyys0GO1Y8KtdKg==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.2.4", + "tapable": "^2.2.0" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/entities": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", + "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", + "dev": true, + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "dependencies": { + "is-arrayish": "^0.2.1" + } + }, + "node_modules/es-abstract": { + "version": "1.22.3", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.22.3.tgz", + "integrity": "sha512-eiiY8HQeYfYH2Con2berK+To6GrK2RxbPawDkGq4UiCQQfZHb6wX9qQqkbpPqaxQFcl8d9QzZqo0tGE0VcrdwA==", + "dev": true, + "dependencies": { + "array-buffer-byte-length": "^1.0.0", + "arraybuffer.prototype.slice": "^1.0.2", + "available-typed-arrays": "^1.0.5", + "call-bind": "^1.0.5", + "es-set-tostringtag": "^2.0.1", + "es-to-primitive": "^1.2.1", + "function.prototype.name": "^1.1.6", + "get-intrinsic": "^1.2.2", + "get-symbol-description": "^1.0.0", + "globalthis": "^1.0.3", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.0", + "has-proto": "^1.0.1", + "has-symbols": "^1.0.3", + "hasown": "^2.0.0", + "internal-slot": "^1.0.5", + "is-array-buffer": "^3.0.2", + "is-callable": "^1.2.7", + "is-negative-zero": "^2.0.2", + "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.2", + "is-string": "^1.0.7", + "is-typed-array": "^1.1.12", + "is-weakref": "^1.0.2", + "object-inspect": "^1.13.1", + "object-keys": "^1.1.1", + "object.assign": "^4.1.4", + "regexp.prototype.flags": "^1.5.1", + "safe-array-concat": "^1.0.1", + "safe-regex-test": "^1.0.0", + "string.prototype.trim": "^1.2.8", + "string.prototype.trimend": "^1.0.7", + "string.prototype.trimstart": "^1.0.7", + "typed-array-buffer": "^1.0.0", + "typed-array-byte-length": "^1.0.0", + "typed-array-byte-offset": "^1.0.0", + "typed-array-length": "^1.0.4", + "unbox-primitive": "^1.0.2", + "which-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/es-get-iterator": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/es-get-iterator/-/es-get-iterator-1.1.3.tgz", + "integrity": "sha512-sPZmqHBe6JIiTfN5q2pEi//TwxmAFHwj/XEuYjTuse78i8KxaqMTTzxPoFKuzRpDpTJ+0NAbpfenkmH2rePtuw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.3", + "has-symbols": "^1.0.3", + "is-arguments": "^1.1.1", + "is-map": "^2.0.2", + "is-set": "^2.0.2", + "is-string": "^1.0.7", + "isarray": "^2.0.5", + "stop-iteration-iterator": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/es-iterator-helpers": { + "version": "1.0.15", + "resolved": "https://registry.npmjs.org/es-iterator-helpers/-/es-iterator-helpers-1.0.15.tgz", + "integrity": "sha512-GhoY8uYqd6iwUl2kgjTm4CZAf6oo5mHK7BPqx3rKgx893YSsy0LGHV6gfqqQvZt/8xM8xeOnfXBCfqclMKkJ5g==", + "dev": true, + "dependencies": { + "asynciterator.prototype": "^1.0.0", + "call-bind": "^1.0.2", + "define-properties": "^1.2.1", + "es-abstract": "^1.22.1", + "es-set-tostringtag": "^2.0.1", + "function-bind": "^1.1.1", + "get-intrinsic": "^1.2.1", + "globalthis": "^1.0.3", + "has-property-descriptors": "^1.0.0", + "has-proto": "^1.0.1", + "has-symbols": "^1.0.3", + "internal-slot": "^1.0.5", + "iterator.prototype": "^1.1.2", + "safe-array-concat": "^1.0.1" + } + }, + "node_modules/es-set-tostringtag": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.2.tgz", + "integrity": "sha512-BuDyupZt65P9D2D2vA/zqcI3G5xRsklm5N3xCwuiy+/vKy8i0ifdsQP1sLgO4tZDSCaQUSnmC48khknGMV3D2Q==", + "dev": true, + "dependencies": { + "get-intrinsic": "^1.2.2", + "has-tostringtag": "^1.0.0", + "hasown": "^2.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-shim-unscopables": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.2.tgz", + "integrity": "sha512-J3yBRXCzDu4ULnQwxyToo/OjdMx6akgVC7K6few0a7F/0wLtmKKN7I73AH5T2836UuXRqN7Qg+IIUw/+YJksRw==", + "dev": true, + "dependencies": { + "hasown": "^2.0.0" + } + }, + "node_modules/es-to-primitive": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", + "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", + "dev": true, + "dependencies": { + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/escalade": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/escodegen": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-2.1.0.tgz", + "integrity": "sha512-2NlIDTwUWJN0mRPQOdtQBzbUHvdGY2P1VXSyU83Q3xKxM7WHX2Ql8dKq782Q9TgQUNOLEzEYu9bzLNj1q88I5w==", + "dev": true, + "dependencies": { + "esprima": "^4.0.1", + "estraverse": "^5.2.0", + "esutils": "^2.0.2" + }, + "bin": { + "escodegen": "bin/escodegen.js", + "esgenerate": "bin/esgenerate.js" + }, + "engines": { + "node": ">=6.0" + }, + "optionalDependencies": { + "source-map": "~0.6.1" + } + }, + "node_modules/escodegen/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "optional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/eslint": { + "version": "8.56.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.56.0.tgz", + "integrity": "sha512-Go19xM6T9puCOWntie1/P997aXxFsOi37JIHRWI514Hc6ZnaHGKY9xFhrU65RT6CcBEzZoGG1e6Nq+DT04ZtZQ==", + "dev": true, + "dependencies": { + "@eslint-community/eslint-utils": "^4.2.0", + "@eslint-community/regexpp": "^4.6.1", + "@eslint/eslintrc": "^2.1.4", + "@eslint/js": "8.56.0", + "@humanwhocodes/config-array": "^0.11.13", + "@humanwhocodes/module-importer": "^1.0.1", + "@nodelib/fs.walk": "^1.2.8", + "@ungap/structured-clone": "^1.2.0", + "ajv": "^6.12.4", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.3.2", + "doctrine": "^3.0.0", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^7.2.2", + "eslint-visitor-keys": "^3.4.3", + "espree": "^9.6.1", + "esquery": "^1.4.2", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^6.0.1", + "find-up": "^5.0.0", + "glob-parent": "^6.0.2", + "globals": "^13.19.0", + "graphemer": "^1.4.0", + "ignore": "^5.2.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "is-path-inside": "^3.0.3", + "js-yaml": "^4.1.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.1.2", + "natural-compare": "^1.4.0", + "optionator": "^0.9.3", + "strip-ansi": "^6.0.1", + "text-table": "^0.2.0" + }, + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-config-airbnb": { + "version": "19.0.4", + "resolved": "https://registry.npmjs.org/eslint-config-airbnb/-/eslint-config-airbnb-19.0.4.tgz", + "integrity": "sha512-T75QYQVQX57jiNgpF9r1KegMICE94VYwoFQyMGhrvc+lB8YF2E/M/PYDaQe1AJcWaEgqLE+ErXV1Og/+6Vyzew==", + "dev": true, + "dependencies": { + "eslint-config-airbnb-base": "^15.0.0", + "object.assign": "^4.1.2", + "object.entries": "^1.1.5" + }, + "engines": { + "node": "^10.12.0 || ^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "peerDependencies": { + "eslint": "^7.32.0 || ^8.2.0", + "eslint-plugin-import": "^2.25.3", + "eslint-plugin-jsx-a11y": "^6.5.1", + "eslint-plugin-react": "^7.28.0", + "eslint-plugin-react-hooks": "^4.3.0" + } + }, + "node_modules/eslint-config-airbnb-base": { + "version": "15.0.0", + "resolved": "https://registry.npmjs.org/eslint-config-airbnb-base/-/eslint-config-airbnb-base-15.0.0.tgz", + "integrity": "sha512-xaX3z4ZZIcFLvh2oUNvcX5oEofXda7giYmuplVxoOg5A7EXJMrUyqRgR+mhDhPK8LZ4PttFOBvCYDbX3sUoUig==", + "dev": true, + "dependencies": { + "confusing-browser-globals": "^1.0.10", + "object.assign": "^4.1.2", + "object.entries": "^1.1.5", + "semver": "^6.3.0" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + }, + "peerDependencies": { + "eslint": "^7.32.0 || ^8.2.0", + "eslint-plugin-import": "^2.25.2" + } + }, + "node_modules/eslint-config-airbnb-base/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/eslint-config-airbnb-typescript": { + "version": "17.1.0", + "resolved": "https://registry.npmjs.org/eslint-config-airbnb-typescript/-/eslint-config-airbnb-typescript-17.1.0.tgz", + "integrity": "sha512-GPxI5URre6dDpJ0CtcthSZVBAfI+Uw7un5OYNVxP2EYi3H81Jw701yFP7AU+/vCE7xBtFmjge7kfhhk4+RAiig==", + "dev": true, + "dependencies": { + "eslint-config-airbnb-base": "^15.0.0" + }, + "peerDependencies": { + "@typescript-eslint/eslint-plugin": "^5.13.0 || ^6.0.0", + "@typescript-eslint/parser": "^5.0.0 || ^6.0.0", + "eslint": "^7.32.0 || ^8.2.0", + "eslint-plugin-import": "^2.25.3" + } + }, + "node_modules/eslint-config-next": { + "version": "14.0.4", + "resolved": "https://registry.npmjs.org/eslint-config-next/-/eslint-config-next-14.0.4.tgz", + "integrity": "sha512-9/xbOHEQOmQtqvQ1UsTQZpnA7SlDMBtuKJ//S4JnoyK3oGLhILKXdBgu/UO7lQo/2xOykQULS1qQ6p2+EpHgAQ==", + "dev": true, + "dependencies": { + "@next/eslint-plugin-next": "14.0.4", + "@rushstack/eslint-patch": "^1.3.3", + "@typescript-eslint/parser": "^5.4.2 || ^6.0.0", + "eslint-import-resolver-node": "^0.3.6", + "eslint-import-resolver-typescript": "^3.5.2", + "eslint-plugin-import": "^2.28.1", + "eslint-plugin-jsx-a11y": "^6.7.1", + "eslint-plugin-react": "^7.33.2", + "eslint-plugin-react-hooks": "^4.5.0 || 5.0.0-canary-7118f5dd7-20230705" + }, + "peerDependencies": { + "eslint": "^7.23.0 || ^8.0.0", + "typescript": ">=3.3.1" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/eslint-import-resolver-node": { + "version": "0.3.9", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.9.tgz", + "integrity": "sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==", + "dev": true, + "dependencies": { + "debug": "^3.2.7", + "is-core-module": "^2.13.0", + "resolve": "^1.22.4" + } + }, + "node_modules/eslint-import-resolver-node/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/eslint-import-resolver-typescript": { + "version": "3.6.1", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-typescript/-/eslint-import-resolver-typescript-3.6.1.tgz", + "integrity": "sha512-xgdptdoi5W3niYeuQxKmzVDTATvLYqhpwmykwsh7f6HIOStGWEIL9iqZgQDF9u9OEzrRwR8no5q2VT+bjAujTg==", + "dev": true, + "dependencies": { + "debug": "^4.3.4", + "enhanced-resolve": "^5.12.0", + "eslint-module-utils": "^2.7.4", + "fast-glob": "^3.3.1", + "get-tsconfig": "^4.5.0", + "is-core-module": "^2.11.0", + "is-glob": "^4.0.3" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/unts/projects/eslint-import-resolver-ts" + }, + "peerDependencies": { + "eslint": "*", + "eslint-plugin-import": "*" + } + }, + "node_modules/eslint-module-utils": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.8.0.tgz", + "integrity": "sha512-aWajIYfsqCKRDgUfjEXNN/JlrzauMuSEy5sbd7WXbtW3EH6A6MpwEh42c7qD+MqQo9QMJ6fWLAeIJynx0g6OAw==", + "dev": true, + "dependencies": { + "debug": "^3.2.7" + }, + "engines": { + "node": ">=4" + }, + "peerDependenciesMeta": { + "eslint": { + "optional": true + } + } + }, + "node_modules/eslint-module-utils/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/eslint-plugin-import": { + "version": "2.29.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.29.1.tgz", + "integrity": "sha512-BbPC0cuExzhiMo4Ff1BTVwHpjjv28C5R+btTOGaCRC7UEz801up0JadwkeSk5Ued6TG34uaczuVuH6qyy5YUxw==", + "dev": true, + "dependencies": { + "array-includes": "^3.1.7", + "array.prototype.findlastindex": "^1.2.3", + "array.prototype.flat": "^1.3.2", + "array.prototype.flatmap": "^1.3.2", + "debug": "^3.2.7", + "doctrine": "^2.1.0", + "eslint-import-resolver-node": "^0.3.9", + "eslint-module-utils": "^2.8.0", + "hasown": "^2.0.0", + "is-core-module": "^2.13.1", + "is-glob": "^4.0.3", + "minimatch": "^3.1.2", + "object.fromentries": "^2.0.7", + "object.groupby": "^1.0.1", + "object.values": "^1.1.7", + "semver": "^6.3.1", + "tsconfig-paths": "^3.15.0" + }, + "engines": { + "node": ">=4" + }, + "peerDependencies": { + "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8" + } + }, + "node_modules/eslint-plugin-import/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/eslint-plugin-import/node_modules/doctrine": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", + "dev": true, + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/eslint-plugin-import/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/eslint-plugin-jsx-a11y": { + "version": "6.8.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.8.0.tgz", + "integrity": "sha512-Hdh937BS3KdwwbBaKd5+PLCOmYY6U4f2h9Z2ktwtNKvIdIEu137rjYbcb9ApSbVJfWxANNuiKTD/9tOKjK9qOA==", + "dev": true, + "dependencies": { + "@babel/runtime": "^7.23.2", + "aria-query": "^5.3.0", + "array-includes": "^3.1.7", + "array.prototype.flatmap": "^1.3.2", + "ast-types-flow": "^0.0.8", + "axe-core": "=4.7.0", + "axobject-query": "^3.2.1", + "damerau-levenshtein": "^1.0.8", + "emoji-regex": "^9.2.2", + "es-iterator-helpers": "^1.0.15", + "hasown": "^2.0.0", + "jsx-ast-utils": "^3.3.5", + "language-tags": "^1.0.9", + "minimatch": "^3.1.2", + "object.entries": "^1.1.7", + "object.fromentries": "^2.0.7" + }, + "engines": { + "node": ">=4.0" + }, + "peerDependencies": { + "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8" + } + }, + "node_modules/eslint-plugin-react": { + "version": "7.33.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.33.2.tgz", + "integrity": "sha512-73QQMKALArI8/7xGLNI/3LylrEYrlKZSb5C9+q3OtOewTnMQi5cT+aE9E41sLCmli3I9PGGmD1yiZydyo4FEPw==", + "dev": true, + "dependencies": { + "array-includes": "^3.1.6", + "array.prototype.flatmap": "^1.3.1", + "array.prototype.tosorted": "^1.1.1", + "doctrine": "^2.1.0", + "es-iterator-helpers": "^1.0.12", + "estraverse": "^5.3.0", + "jsx-ast-utils": "^2.4.1 || ^3.0.0", + "minimatch": "^3.1.2", + "object.entries": "^1.1.6", + "object.fromentries": "^2.0.6", + "object.hasown": "^1.1.2", + "object.values": "^1.1.6", + "prop-types": "^15.8.1", + "resolve": "^2.0.0-next.4", + "semver": "^6.3.1", + "string.prototype.matchall": "^4.0.8" + }, + "engines": { + "node": ">=4" + }, + "peerDependencies": { + "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8" + } + }, + "node_modules/eslint-plugin-react-hooks": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.6.0.tgz", + "integrity": "sha512-oFc7Itz9Qxh2x4gNHStv3BqJq54ExXmfC+a1NjAta66IAN87Wu0R/QArgIS9qKzX3dXKPI9H5crl9QchNMY9+g==", + "dev": true, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "eslint": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0" + } + }, + "node_modules/eslint-plugin-react/node_modules/doctrine": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", + "dev": true, + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/eslint-plugin-react/node_modules/resolve": { + "version": "2.0.0-next.5", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.5.tgz", + "integrity": "sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==", + "dev": true, + "dependencies": { + "is-core-module": "^2.13.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/eslint-plugin-react/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/eslint-scope": { + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", + "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", + "dev": true, + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "dev": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/espree": { + "version": "9.6.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", + "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", + "dev": true, + "dependencies": { + "acorn": "^8.9.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^3.4.1" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "dev": true, + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/esquery": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", + "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", + "dev": true, + "dependencies": { + "estraverse": "^5.1.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dev": true, + "dependencies": { + "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/execa": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", + "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", + "dev": true, + "dependencies": { + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.0", + "human-signals": "^2.1.0", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.1", + "onetime": "^5.1.2", + "signal-exit": "^3.0.3", + "strip-final-newline": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, + "node_modules/exit": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", + "integrity": "sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==", + "dev": true, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/expect": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/expect/-/expect-29.7.0.tgz", + "integrity": "sha512-2Zks0hf1VLFYI1kbh0I5jP3KHHyCHpkfyHBzsSXRFgl/Bg9mWYfMW8oD+PdMPlEwy5HNsR9JutYy6pMeOh61nw==", + "dev": true, + "dependencies": { + "@jest/expect-utils": "^29.7.0", + "jest-get-type": "^29.6.3", + "jest-matcher-utils": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-util": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true + }, + "node_modules/fast-glob": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz", + "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==", + "dev": true, + "dependencies": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.4" + }, + "engines": { + "node": ">=8.6.0" + } + }, + "node_modules/fast-glob/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true + }, + "node_modules/fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", + "dev": true + }, + "node_modules/fastq": { + "version": "1.16.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.16.0.tgz", + "integrity": "sha512-ifCoaXsDrsdkWTtiNJX5uzHDsrck5TzfKKDcuFFTIrrc/BS076qgEIfoIy1VeZqViznfKiysPYTh/QeHtnIsYA==", + "dev": true, + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/fb-watchman": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.2.tgz", + "integrity": "sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==", + "dev": true, + "dependencies": { + "bser": "2.1.1" + } + }, + "node_modules/file-entry-cache": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", + "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", + "dev": true, + "dependencies": { + "flat-cache": "^3.0.4" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/find-root": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/find-root/-/find-root-1.1.0.tgz", + "integrity": "sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==" + }, + "node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dev": true, + "dependencies": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/flat-cache": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.2.0.tgz", + "integrity": "sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==", + "dev": true, + "dependencies": { + "flatted": "^3.2.9", + "keyv": "^4.5.3", + "rimraf": "^3.0.2" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/flatted": { + "version": "3.2.9", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.9.tgz", + "integrity": "sha512-36yxDn5H7OFZQla0/jFJmbIKTdZAQHngCedGxiMmpNfEZM0sdEeT+WczLQrjK6D7o2aiyLYDnkw0R3JK0Qv1RQ==", + "dev": true + }, + "node_modules/for-each": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", + "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", + "dev": true, + "dependencies": { + "is-callable": "^1.1.3" + } + }, + "node_modules/form-data": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", + "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", + "dev": true, + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "dev": true + }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "dev": true, + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/function.prototype.name": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.6.tgz", + "integrity": "sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "functions-have-names": "^1.2.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/functions-have-names": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", + "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true, + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/get-intrinsic": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.2.tgz", + "integrity": "sha512-0gSo4ml/0j98Y3lngkFEot/zhiCeWsbYIlZ+uZOVgzLyLaUw7wxUL+nCTP0XJvJg1AXulJRI3UJi8GsbDuxdGA==", + "dev": true, + "dependencies": { + "function-bind": "^1.1.2", + "has-proto": "^1.0.1", + "has-symbols": "^1.0.3", + "hasown": "^2.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-package-type": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", + "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", + "dev": true, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/get-stream": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", + "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/get-symbol-description": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", + "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-tsconfig": { + "version": "4.7.2", + "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.7.2.tgz", + "integrity": "sha512-wuMsz4leaj5hbGgg4IvDU0bqJagpftG5l5cXIAvo8uZrqn0NJqwtfupTN00VnkQJPcIRrxYrm1Ue24btpCha2A==", + "dev": true, + "dependencies": { + "resolve-pkg-maps": "^1.0.0" + }, + "funding": { + "url": "https://github.com/privatenumber/get-tsconfig?sponsor=1" + } + }, + "node_modules/glob": { + "version": "7.1.7", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", + "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==", + "dev": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/glob-to-regexp": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", + "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==" + }, + "node_modules/globals": { + "version": "13.24.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", + "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", + "dev": true, + "dependencies": { + "type-fest": "^0.20.2" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/globalthis": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.3.tgz", + "integrity": "sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==", + "dev": true, + "dependencies": { + "define-properties": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/globby": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", + "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", + "dev": true, + "dependencies": { + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.9", + "ignore": "^5.2.0", + "merge2": "^1.4.1", + "slash": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/gopd": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", + "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", + "dev": true, + "dependencies": { + "get-intrinsic": "^1.1.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==" + }, + "node_modules/graphemer": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", + "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", + "dev": true + }, + "node_modules/has-bigints": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", + "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/has-property-descriptors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.1.tgz", + "integrity": "sha512-VsX8eaIewvas0xnvinAe9bw4WfIeODpGYikiWYLH+dma0Jw6KHYqWiWfhQlgOVK8D6PvjubK5Uc4P0iIhIcNVg==", + "dev": true, + "dependencies": { + "get-intrinsic": "^1.2.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz", + "integrity": "sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-symbols": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-tostringtag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", + "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", + "dev": true, + "dependencies": { + "has-symbols": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/hasown": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.0.tgz", + "integrity": "sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==", + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/hoist-non-react-statics": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz", + "integrity": "sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==", + "dependencies": { + "react-is": "^16.7.0" + } + }, + "node_modules/html-encoding-sniffer": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-3.0.0.tgz", + "integrity": "sha512-oWv4T4yJ52iKrufjnyZPkrN0CH3QnrUqdB6In1g5Fe1mia8GmF36gnfNySxoZtxD5+NmYw1EElVXiBk93UeskA==", + "dev": true, + "dependencies": { + "whatwg-encoding": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/html-escaper": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", + "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", + "dev": true + }, + "node_modules/http-proxy-agent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz", + "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==", + "dev": true, + "dependencies": { + "@tootallnate/once": "2", + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/https-proxy-agent": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", + "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", + "dev": true, + "dependencies": { + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/human-signals": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", + "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", + "dev": true, + "engines": { + "node": ">=10.17.0" + } + }, + "node_modules/iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "dev": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ignore": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.0.tgz", + "integrity": "sha512-g7dmpshy+gD7mh88OC9NwSGTKoc3kyLAZQRU1mt53Aw/vnvfXnbC+F/7F7QoYVKbV+KNvJx8wArewKy1vXMtlg==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/import-local": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz", + "integrity": "sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==", + "dev": true, + "dependencies": { + "pkg-dir": "^4.2.0", + "resolve-cwd": "^3.0.0" + }, + "bin": { + "import-local-fixture": "fixtures/cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "dev": true, + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "dev": true, + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true + }, + "node_modules/internal-slot": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.6.tgz", + "integrity": "sha512-Xj6dv+PsbtwyPpEflsejS+oIZxmMlV44zAhG479uYu89MsjcYOhCFnNyKrkJrihbsiasQyY0afoCl/9BLR65bg==", + "dev": true, + "dependencies": { + "get-intrinsic": "^1.2.2", + "hasown": "^2.0.0", + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/is-arguments": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz", + "integrity": "sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-array-buffer": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.2.tgz", + "integrity": "sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.2.0", + "is-typed-array": "^1.1.10" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==" + }, + "node_modules/is-async-function": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-async-function/-/is-async-function-2.0.0.tgz", + "integrity": "sha512-Y1JXKrfykRJGdlDwdKlLpLyMIiWqWvuSd17TvZk68PLAOGOoF4Xyav1z0Xhoi+gCYjZVeC5SI+hYFOfvXmGRCA==", + "dev": true, + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-bigint": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", + "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", + "dev": true, + "dependencies": { + "has-bigints": "^1.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-boolean-object": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", + "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-callable": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", + "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-core-module": { + "version": "2.13.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz", + "integrity": "sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==", + "dependencies": { + "hasown": "^2.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-date-object": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", + "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", + "dev": true, + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-finalizationregistry": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-finalizationregistry/-/is-finalizationregistry-1.0.2.tgz", + "integrity": "sha512-0by5vtUJs8iFQb5TYUHHPudOR+qXYIMKtiUzvLIZITZUjknFmziyBJuLhVRc+Ds0dREFlskDNJKYIdIzu/9pfw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-generator-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz", + "integrity": "sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/is-generator-function": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.10.tgz", + "integrity": "sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==", + "dev": true, + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dev": true, + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-map": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.2.tgz", + "integrity": "sha512-cOZFQQozTha1f4MxLFzlgKYPTyj26picdZTx82hbc/Xf4K/tZOOXSCkMvU4pKioRXGDLJRn0GM7Upe7kR721yg==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-negative-zero": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz", + "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-number-object": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", + "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", + "dev": true, + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-path-inside": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", + "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-potential-custom-element-name": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz", + "integrity": "sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==", + "dev": true + }, + "node_modules/is-regex": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", + "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-set": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.2.tgz", + "integrity": "sha512-+2cnTEZeY5z/iXGbLhPrOAaK/Mau5k5eXq9j14CpRTftq0pAJu2MwVRSZhyZWBzx3o6X795Lz6Bpb6R0GKf37g==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-shared-array-buffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", + "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-string": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", + "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", + "dev": true, + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-symbol": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", + "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", + "dev": true, + "dependencies": { + "has-symbols": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-typed-array": { + "version": "1.1.12", + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.12.tgz", + "integrity": "sha512-Z14TF2JNG8Lss5/HMqt0//T9JeHXttXy5pH/DBU4vi98ozO2btxzq9MwYDZYnKwU8nRsz/+GVFVRDq3DkVuSPg==", + "dev": true, + "dependencies": { + "which-typed-array": "^1.1.11" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-weakmap": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.1.tgz", + "integrity": "sha512-NSBR4kH5oVj1Uwvv970ruUkCV7O1mzgVFO4/rev2cLRda9Tm9HrL70ZPut4rOHgY0FNrUu9BCbXA2sdQ+x0chA==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-weakref": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", + "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-weakset": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.2.tgz", + "integrity": "sha512-t2yVvttHkQktwnNNmBQ98AhENLdPUTDTE21uPqAQ0ARwQfGeQKRVS0NNurH7bTf7RrvcVn1OOge45CnBeHCSmg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/isarray": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", + "dev": true + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true + }, + "node_modules/istanbul-lib-coverage": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz", + "integrity": "sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-instrument": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-6.0.1.tgz", + "integrity": "sha512-EAMEJBsYuyyztxMxW3g7ugGPkrZsV57v0Hmv3mm1uQsmB+QnZuepg731CRaIgeUVSdmsTngOkSnauNF8p7FIhA==", + "dev": true, + "dependencies": { + "@babel/core": "^7.12.3", + "@babel/parser": "^7.14.7", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^7.5.4" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-lib-report": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz", + "integrity": "sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==", + "dev": true, + "dependencies": { + "istanbul-lib-coverage": "^3.0.0", + "make-dir": "^4.0.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-lib-source-maps": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", + "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", + "dev": true, + "dependencies": { + "debug": "^4.1.1", + "istanbul-lib-coverage": "^3.0.0", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-lib-source-maps/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/istanbul-reports": { + "version": "3.1.6", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.6.tgz", + "integrity": "sha512-TLgnMkKg3iTDsQ9PbPTdpfAK2DzjF9mqUG7RMgcQl8oFjad8ob4laGxv5XV5U9MAfx8D6tSJiUyuAwzLicaxlg==", + "dev": true, + "dependencies": { + "html-escaper": "^2.0.0", + "istanbul-lib-report": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/iterator.prototype": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/iterator.prototype/-/iterator.prototype-1.1.2.tgz", + "integrity": "sha512-DR33HMMr8EzwuRL8Y9D3u2BMj8+RqSE850jfGu59kS7tbmPLzGkZmVSfyCFSDxuZiEY6Rzt3T2NA/qU+NwVj1w==", + "dev": true, + "dependencies": { + "define-properties": "^1.2.1", + "get-intrinsic": "^1.2.1", + "has-symbols": "^1.0.3", + "reflect.getprototypeof": "^1.0.4", + "set-function-name": "^2.0.1" + } + }, + "node_modules/jest": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest/-/jest-29.7.0.tgz", + "integrity": "sha512-NIy3oAFp9shda19hy4HK0HRTWKtPJmGdnvywu01nOqNC2vZg+Z+fvJDxpMQA88eb2I9EcafcdjYgsDthnYTvGw==", + "dev": true, + "dependencies": { + "@jest/core": "^29.7.0", + "@jest/types": "^29.6.3", + "import-local": "^3.0.2", + "jest-cli": "^29.7.0" + }, + "bin": { + "jest": "bin/jest.js" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/jest-changed-files": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-29.7.0.tgz", + "integrity": "sha512-fEArFiwf1BpQ+4bXSprcDc3/x4HSzL4al2tozwVpDFpsxALjLYdyiIK4e5Vz66GQJIbXJ82+35PtysofptNX2w==", + "dev": true, + "dependencies": { + "execa": "^5.0.0", + "jest-util": "^29.7.0", + "p-limit": "^3.1.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-circus": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-29.7.0.tgz", + "integrity": "sha512-3E1nCMgipcTkCocFwM90XXQab9bS+GMsjdpmPrlelaxwD93Ad8iVEjX/vvHPdLPnFf+L40u+5+iutRdA1N9myw==", + "dev": true, + "dependencies": { + "@jest/environment": "^29.7.0", + "@jest/expect": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "co": "^4.6.0", + "dedent": "^1.0.0", + "is-generator-fn": "^2.0.0", + "jest-each": "^29.7.0", + "jest-matcher-utils": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-runtime": "^29.7.0", + "jest-snapshot": "^29.7.0", + "jest-util": "^29.7.0", + "p-limit": "^3.1.0", + "pretty-format": "^29.7.0", + "pure-rand": "^6.0.0", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-circus/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-circus/node_modules/pretty-format": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", + "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==", + "dev": true, + "dependencies": { + "@jest/schemas": "^29.6.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-circus/node_modules/react-is": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", + "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==", + "dev": true + }, + "node_modules/jest-cli": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-29.7.0.tgz", + "integrity": "sha512-OVVobw2IubN/GSYsxETi+gOe7Ka59EFMR/twOU3Jb2GnKKeMGJB5SGUUrEz3SFVmJASUdZUzy83sLNNQ2gZslg==", + "dev": true, + "dependencies": { + "@jest/core": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/types": "^29.6.3", + "chalk": "^4.0.0", + "create-jest": "^29.7.0", + "exit": "^0.1.2", + "import-local": "^3.0.2", + "jest-config": "^29.7.0", + "jest-util": "^29.7.0", + "jest-validate": "^29.7.0", + "yargs": "^17.3.1" + }, + "bin": { + "jest": "bin/jest.js" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/jest-config": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-29.7.0.tgz", + "integrity": "sha512-uXbpfeQ7R6TZBqI3/TxCU4q4ttk3u0PJeC+E0zbfSoSjq6bJ7buBPxzQPL0ifrkY4DNu4JUdk0ImlBUYi840eQ==", + "dev": true, + "dependencies": { + "@babel/core": "^7.11.6", + "@jest/test-sequencer": "^29.7.0", + "@jest/types": "^29.6.3", + "babel-jest": "^29.7.0", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "deepmerge": "^4.2.2", + "glob": "^7.1.3", + "graceful-fs": "^4.2.9", + "jest-circus": "^29.7.0", + "jest-environment-node": "^29.7.0", + "jest-get-type": "^29.6.3", + "jest-regex-util": "^29.6.3", + "jest-resolve": "^29.7.0", + "jest-runner": "^29.7.0", + "jest-util": "^29.7.0", + "jest-validate": "^29.7.0", + "micromatch": "^4.0.4", + "parse-json": "^5.2.0", + "pretty-format": "^29.7.0", + "slash": "^3.0.0", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "@types/node": "*", + "ts-node": ">=9.0.0" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "ts-node": { + "optional": true + } + } + }, + "node_modules/jest-config/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-config/node_modules/pretty-format": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", + "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==", + "dev": true, + "dependencies": { + "@jest/schemas": "^29.6.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-config/node_modules/react-is": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", + "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==", + "dev": true + }, + "node_modules/jest-diff": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-29.7.0.tgz", + "integrity": "sha512-LMIgiIrhigmPrs03JHpxUh2yISK3vLFPkAodPeo0+BuF7wA2FoQbkEg1u8gBYBThncu7e1oEDUfIXVuTqLRUjw==", + "dev": true, + "dependencies": { + "chalk": "^4.0.0", + "diff-sequences": "^29.6.3", + "jest-get-type": "^29.6.3", + "pretty-format": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-diff/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-diff/node_modules/pretty-format": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", + "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==", + "dev": true, + "dependencies": { + "@jest/schemas": "^29.6.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-diff/node_modules/react-is": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", + "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==", + "dev": true + }, + "node_modules/jest-docblock": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-29.7.0.tgz", + "integrity": "sha512-q617Auw3A612guyaFgsbFeYpNP5t2aoUNLwBUbc/0kD1R4t9ixDbyFTHd1nok4epoVFpr7PmeWHrhvuV3XaJ4g==", + "dev": true, + "dependencies": { + "detect-newline": "^3.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-each": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-29.7.0.tgz", + "integrity": "sha512-gns+Er14+ZrEoC5fhOfYCY1LOHHr0TI+rQUHZS8Ttw2l7gl+80eHc/gFf2Ktkw0+SIACDTeWvpFcv3B04VembQ==", + "dev": true, + "dependencies": { + "@jest/types": "^29.6.3", + "chalk": "^4.0.0", + "jest-get-type": "^29.6.3", + "jest-util": "^29.7.0", + "pretty-format": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-each/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-each/node_modules/pretty-format": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", + "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==", + "dev": true, + "dependencies": { + "@jest/schemas": "^29.6.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-each/node_modules/react-is": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", + "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==", + "dev": true + }, + "node_modules/jest-environment-jsdom": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-29.7.0.tgz", + "integrity": "sha512-k9iQbsf9OyOfdzWH8HDmrRT0gSIcX+FLNW7IQq94tFX0gynPwqDTW0Ho6iMVNjGz/nb+l/vW3dWM2bbLLpkbXA==", + "dev": true, + "dependencies": { + "@jest/environment": "^29.7.0", + "@jest/fake-timers": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/jsdom": "^20.0.0", + "@types/node": "*", + "jest-mock": "^29.7.0", + "jest-util": "^29.7.0", + "jsdom": "^20.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "canvas": "^2.5.0" + }, + "peerDependenciesMeta": { + "canvas": { + "optional": true + } + } + }, + "node_modules/jest-environment-node": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-29.7.0.tgz", + "integrity": "sha512-DOSwCRqXirTOyheM+4d5YZOrWcdu0LNZ87ewUoywbcb2XR4wKgqiG8vNeYwhjFMbEkfju7wx2GYH0P2gevGvFw==", + "dev": true, + "dependencies": { + "@jest/environment": "^29.7.0", + "@jest/fake-timers": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "jest-mock": "^29.7.0", + "jest-util": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-fetch-mock": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/jest-fetch-mock/-/jest-fetch-mock-3.0.3.tgz", + "integrity": "sha512-Ux1nWprtLrdrH4XwE7O7InRY6psIi3GOsqNESJgMJ+M5cv4A8Lh7SN9d2V2kKRZ8ebAfcd1LNyZguAOb6JiDqw==", + "dev": true, + "dependencies": { + "cross-fetch": "^3.0.4", + "promise-polyfill": "^8.1.3" + } + }, + "node_modules/jest-get-type": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-29.6.3.tgz", + "integrity": "sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw==", + "dev": true, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-haste-map": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-29.7.0.tgz", + "integrity": "sha512-fP8u2pyfqx0K1rGn1R9pyE0/KTn+G7PxktWidOBTqFPLYX0b9ksaMFkhK5vrS3DVun09pckLdlx90QthlW7AmA==", + "dev": true, + "dependencies": { + "@jest/types": "^29.6.3", + "@types/graceful-fs": "^4.1.3", + "@types/node": "*", + "anymatch": "^3.0.3", + "fb-watchman": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-regex-util": "^29.6.3", + "jest-util": "^29.7.0", + "jest-worker": "^29.7.0", + "micromatch": "^4.0.4", + "walker": "^1.0.8" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "optionalDependencies": { + "fsevents": "^2.3.2" + } + }, + "node_modules/jest-leak-detector": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-29.7.0.tgz", + "integrity": "sha512-kYA8IJcSYtST2BY9I+SMC32nDpBT3J2NvWJx8+JCuCdl/CR1I4EKUJROiP8XtCcxqgTTBGJNdbB1A8XRKbTetw==", + "dev": true, + "dependencies": { + "jest-get-type": "^29.6.3", + "pretty-format": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-leak-detector/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-leak-detector/node_modules/pretty-format": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", + "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==", + "dev": true, + "dependencies": { + "@jest/schemas": "^29.6.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-leak-detector/node_modules/react-is": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", + "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==", + "dev": true + }, + "node_modules/jest-matcher-utils": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-29.7.0.tgz", + "integrity": "sha512-sBkD+Xi9DtcChsI3L3u0+N0opgPYnCRPtGcQYrgXmR+hmt/fYfWAL0xRXYU8eWOdfuLgBe0YCW3AFtnRLagq/g==", + "dev": true, + "dependencies": { + "chalk": "^4.0.0", + "jest-diff": "^29.7.0", + "jest-get-type": "^29.6.3", + "pretty-format": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-matcher-utils/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-matcher-utils/node_modules/pretty-format": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", + "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==", + "dev": true, + "dependencies": { + "@jest/schemas": "^29.6.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-matcher-utils/node_modules/react-is": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", + "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==", + "dev": true + }, + "node_modules/jest-message-util": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.7.0.tgz", + "integrity": "sha512-GBEV4GRADeP+qtB2+6u61stea8mGcOT4mCtrYISZwfu9/ISHFJ/5zOMXYbpBE9RsS5+Gb63DW4FgmnKJ79Kf6w==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.12.13", + "@jest/types": "^29.6.3", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^29.7.0", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-message-util/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-message-util/node_modules/pretty-format": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", + "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==", + "dev": true, + "dependencies": { + "@jest/schemas": "^29.6.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-message-util/node_modules/react-is": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", + "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==", + "dev": true + }, + "node_modules/jest-mock": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-29.7.0.tgz", + "integrity": "sha512-ITOMZn+UkYS4ZFh83xYAOzWStloNzJFO2s8DWrE4lhtGD+AorgnbkiKERe4wQVBydIGPx059g6riW5Btp6Llnw==", + "dev": true, + "dependencies": { + "@jest/types": "^29.6.3", + "@types/node": "*", + "jest-util": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-pnp-resolver": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz", + "integrity": "sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==", + "dev": true, + "engines": { + "node": ">=6" + }, + "peerDependencies": { + "jest-resolve": "*" + }, + "peerDependenciesMeta": { + "jest-resolve": { + "optional": true + } + } + }, + "node_modules/jest-regex-util": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-29.6.3.tgz", + "integrity": "sha512-KJJBsRCyyLNWCNBOvZyRDnAIfUiRJ8v+hOBQYGn8gDyF3UegwiP4gwRR3/SDa42g1YbVycTidUF3rKjyLFDWbg==", + "dev": true, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-resolve": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-29.7.0.tgz", + "integrity": "sha512-IOVhZSrg+UvVAshDSDtHyFCCBUl/Q3AAJv8iZ6ZjnZ74xzvwuzLXid9IIIPgTnY62SJjfuupMKZsZQRsCvxEgA==", + "dev": true, + "dependencies": { + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.7.0", + "jest-pnp-resolver": "^1.2.2", + "jest-util": "^29.7.0", + "jest-validate": "^29.7.0", + "resolve": "^1.20.0", + "resolve.exports": "^2.0.0", + "slash": "^3.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-resolve-dependencies": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-29.7.0.tgz", + "integrity": "sha512-un0zD/6qxJ+S0et7WxeI3H5XSe9lTBBR7bOHCHXkKR6luG5mwDDlIzVQ0V5cZCuoTgEdcdwzTghYkTWfubi+nA==", + "dev": true, + "dependencies": { + "jest-regex-util": "^29.6.3", + "jest-snapshot": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-runner": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-29.7.0.tgz", + "integrity": "sha512-fsc4N6cPCAahybGBfTRcq5wFR6fpLznMg47sY5aDpsoejOcVYFb07AHuSnR0liMcPTgBsA3ZJL6kFOjPdoNipQ==", + "dev": true, + "dependencies": { + "@jest/console": "^29.7.0", + "@jest/environment": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "emittery": "^0.13.1", + "graceful-fs": "^4.2.9", + "jest-docblock": "^29.7.0", + "jest-environment-node": "^29.7.0", + "jest-haste-map": "^29.7.0", + "jest-leak-detector": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-resolve": "^29.7.0", + "jest-runtime": "^29.7.0", + "jest-util": "^29.7.0", + "jest-watcher": "^29.7.0", + "jest-worker": "^29.7.0", + "p-limit": "^3.1.0", + "source-map-support": "0.5.13" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-runtime": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-29.7.0.tgz", + "integrity": "sha512-gUnLjgwdGqW7B4LvOIkbKs9WGbn+QLqRQQ9juC6HndeDiezIwhDP+mhMwHWCEcfQ5RUXa6OPnFF8BJh5xegwwQ==", + "dev": true, + "dependencies": { + "@jest/environment": "^29.7.0", + "@jest/fake-timers": "^29.7.0", + "@jest/globals": "^29.7.0", + "@jest/source-map": "^29.6.3", + "@jest/test-result": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "cjs-module-lexer": "^1.0.0", + "collect-v8-coverage": "^1.0.0", + "glob": "^7.1.3", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-mock": "^29.7.0", + "jest-regex-util": "^29.6.3", + "jest-resolve": "^29.7.0", + "jest-snapshot": "^29.7.0", + "jest-util": "^29.7.0", + "slash": "^3.0.0", + "strip-bom": "^4.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-runtime/node_modules/strip-bom": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", + "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-snapshot": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-29.7.0.tgz", + "integrity": "sha512-Rm0BMWtxBcioHr1/OX5YCP8Uov4riHvKPknOGs804Zg9JGZgmIBkbtlxJC/7Z4msKYVbIJtfU+tKb8xlYNfdkw==", + "dev": true, + "dependencies": { + "@babel/core": "^7.11.6", + "@babel/generator": "^7.7.2", + "@babel/plugin-syntax-jsx": "^7.7.2", + "@babel/plugin-syntax-typescript": "^7.7.2", + "@babel/types": "^7.3.3", + "@jest/expect-utils": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", + "babel-preset-current-node-syntax": "^1.0.0", + "chalk": "^4.0.0", + "expect": "^29.7.0", + "graceful-fs": "^4.2.9", + "jest-diff": "^29.7.0", + "jest-get-type": "^29.6.3", + "jest-matcher-utils": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-util": "^29.7.0", + "natural-compare": "^1.4.0", + "pretty-format": "^29.7.0", + "semver": "^7.5.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-snapshot/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-snapshot/node_modules/pretty-format": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", + "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==", + "dev": true, + "dependencies": { + "@jest/schemas": "^29.6.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-snapshot/node_modules/react-is": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", + "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==", + "dev": true + }, + "node_modules/jest-util": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.7.0.tgz", + "integrity": "sha512-z6EbKajIpqGKU56y5KBUgy1dt1ihhQJgWzUlZHArA/+X2ad7Cb5iF+AK1EWVL/Bo7Rz9uurpqw6SiBCefUbCGA==", + "dev": true, + "dependencies": { + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-validate": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-29.7.0.tgz", + "integrity": "sha512-ZB7wHqaRGVw/9hST/OuFUReG7M8vKeq0/J2egIGLdvjHCmYqGARhzXmtgi+gVeZ5uXFF219aOc3Ls2yLg27tkw==", + "dev": true, + "dependencies": { + "@jest/types": "^29.6.3", + "camelcase": "^6.2.0", + "chalk": "^4.0.0", + "jest-get-type": "^29.6.3", + "leven": "^3.1.0", + "pretty-format": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-validate/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-validate/node_modules/camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/jest-validate/node_modules/pretty-format": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", + "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==", + "dev": true, + "dependencies": { + "@jest/schemas": "^29.6.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-validate/node_modules/react-is": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", + "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==", + "dev": true + }, + "node_modules/jest-watcher": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-29.7.0.tgz", + "integrity": "sha512-49Fg7WXkU3Vl2h6LbLtMQ/HyB6rXSIX7SqvBLQmssRBGN9I0PNvPmAmCWSOY6SOvrjhI/F7/bGAv9RtnsPA03g==", + "dev": true, + "dependencies": { + "@jest/test-result": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "emittery": "^0.13.1", + "jest-util": "^29.7.0", + "string-length": "^4.0.1" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-worker": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-29.7.0.tgz", + "integrity": "sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw==", + "dev": true, + "dependencies": { + "@types/node": "*", + "jest-util": "^29.7.0", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-worker/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" + }, + "node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dev": true, + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/jsdom": { + "version": "20.0.3", + "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-20.0.3.tgz", + "integrity": "sha512-SYhBvTh89tTfCD/CRdSOm13mOBa42iTaTyfyEWBdKcGdPxPtLFBXuHR8XHb33YNYaP+lLbmSvBTsnoesCNJEsQ==", + "dev": true, + "dependencies": { + "abab": "^2.0.6", + "acorn": "^8.8.1", + "acorn-globals": "^7.0.0", + "cssom": "^0.5.0", + "cssstyle": "^2.3.0", + "data-urls": "^3.0.2", + "decimal.js": "^10.4.2", + "domexception": "^4.0.0", + "escodegen": "^2.0.0", + "form-data": "^4.0.0", + "html-encoding-sniffer": "^3.0.0", + "http-proxy-agent": "^5.0.0", + "https-proxy-agent": "^5.0.1", + "is-potential-custom-element-name": "^1.0.1", + "nwsapi": "^2.2.2", + "parse5": "^7.1.1", + "saxes": "^6.0.0", + "symbol-tree": "^3.2.4", + "tough-cookie": "^4.1.2", + "w3c-xmlserializer": "^4.0.0", + "webidl-conversions": "^7.0.0", + "whatwg-encoding": "^2.0.0", + "whatwg-mimetype": "^3.0.0", + "whatwg-url": "^11.0.0", + "ws": "^8.11.0", + "xml-name-validator": "^4.0.0" + }, + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "canvas": "^2.5.0" + }, + "peerDependenciesMeta": { + "canvas": { + "optional": true + } + } + }, + "node_modules/jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "dev": true, + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/json-buffer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", + "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", + "dev": true + }, + "node_modules/json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==" + }, + "node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "node_modules/json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", + "dev": true + }, + "node_modules/json5": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", + "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", + "dev": true, + "dependencies": { + "minimist": "^1.2.0" + }, + "bin": { + "json5": "lib/cli.js" + } + }, + "node_modules/jsx-ast-utils": { + "version": "3.3.5", + "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.3.5.tgz", + "integrity": "sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==", + "dev": true, + "dependencies": { + "array-includes": "^3.1.6", + "array.prototype.flat": "^1.3.1", + "object.assign": "^4.1.4", + "object.values": "^1.1.6" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/just-extend": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/just-extend/-/just-extend-6.2.0.tgz", + "integrity": "sha512-cYofQu2Xpom82S6qD778jBDpwvvy39s1l/hrYij2u9AMdQcGRpaBu6kY4mVhuno5kJVi1DAz4aiphA2WI1/OAw==", + "dev": true + }, + "node_modules/keyv": { + "version": "4.5.4", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", + "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", + "dev": true, + "dependencies": { + "json-buffer": "3.0.1" + } + }, + "node_modules/kleur": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", + "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/language-subtag-registry": { + "version": "0.3.22", + "resolved": "https://registry.npmjs.org/language-subtag-registry/-/language-subtag-registry-0.3.22.tgz", + "integrity": "sha512-tN0MCzyWnoz/4nHS6uxdlFWoUZT7ABptwKPQ52Ea7URk6vll88bWBVhodtnlfEuCcKWNGoc+uGbw1cwa9IKh/w==", + "dev": true + }, + "node_modules/language-tags": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/language-tags/-/language-tags-1.0.9.tgz", + "integrity": "sha512-MbjN408fEndfiQXbFQ1vnd+1NoLDsnQW41410oQBXiyXDMYH5z505juWa4KUE1LqxRC7DgOgZDbKLxHIwm27hA==", + "dev": true, + "dependencies": { + "language-subtag-registry": "^0.3.20" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/leven": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", + "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "dev": true, + "dependencies": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==" + }, + "node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dev": true, + "dependencies": { + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "dev": true + }, + "node_modules/lodash.get": { + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", + "integrity": "sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ==", + "dev": true + }, + "node_modules/lodash.merge": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", + "dev": true + }, + "node_modules/loose-envify": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", + "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", + "dependencies": { + "js-tokens": "^3.0.0 || ^4.0.0" + }, + "bin": { + "loose-envify": "cli.js" + } + }, + "node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/lz-string": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/lz-string/-/lz-string-1.5.0.tgz", + "integrity": "sha512-h5bgJWpxJNswbU7qCrV0tIKQCaS3blPDrqKWx+QxzuzL1zGUzij9XCWLrSLsJPu5t+eWA/ycetzYAO5IOMcWAQ==", + "dev": true, + "bin": { + "lz-string": "bin/bin.js" + } + }, + "node_modules/make-dir": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz", + "integrity": "sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==", + "dev": true, + "dependencies": { + "semver": "^7.5.3" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/makeerror": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz", + "integrity": "sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==", + "dev": true, + "dependencies": { + "tmpl": "1.0.5" + } + }, + "node_modules/merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "dev": true + }, + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/micromatch": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", + "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", + "dev": true, + "dependencies": { + "braces": "^3.0.2", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "dev": true, + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/min-indent": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", + "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/nanoid": { + "version": "3.3.7", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz", + "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", + "dev": true + }, + "node_modules/next": { + "version": "14.0.4", + "resolved": "https://registry.npmjs.org/next/-/next-14.0.4.tgz", + "integrity": "sha512-qbwypnM7327SadwFtxXnQdGiKpkuhaRLE2uq62/nRul9cj9KhQ5LhHmlziTNqUidZotw/Q1I9OjirBROdUJNgA==", + "dependencies": { + "@next/env": "14.0.4", + "@swc/helpers": "0.5.2", + "busboy": "1.6.0", + "caniuse-lite": "^1.0.30001406", + "graceful-fs": "^4.2.11", + "postcss": "8.4.31", + "styled-jsx": "5.1.1", + "watchpack": "2.4.0" + }, + "bin": { + "next": "dist/bin/next" + }, + "engines": { + "node": ">=18.17.0" + }, + "optionalDependencies": { + "@next/swc-darwin-arm64": "14.0.4", + "@next/swc-darwin-x64": "14.0.4", + "@next/swc-linux-arm64-gnu": "14.0.4", + "@next/swc-linux-arm64-musl": "14.0.4", + "@next/swc-linux-x64-gnu": "14.0.4", + "@next/swc-linux-x64-musl": "14.0.4", + "@next/swc-win32-arm64-msvc": "14.0.4", + "@next/swc-win32-ia32-msvc": "14.0.4", + "@next/swc-win32-x64-msvc": "14.0.4" + }, + "peerDependencies": { + "@opentelemetry/api": "^1.1.0", + "react": "^18.2.0", + "react-dom": "^18.2.0", + "sass": "^1.3.0" + }, + "peerDependenciesMeta": { + "@opentelemetry/api": { + "optional": true + }, + "sass": { + "optional": true + } + } + }, + "node_modules/next-router-mock": { + "version": "0.9.11", + "resolved": "https://registry.npmjs.org/next-router-mock/-/next-router-mock-0.9.11.tgz", + "integrity": "sha512-3w7DdXDtjsBbPvHk3kBtmzyvn5BwRh133JM4G3gdjqt8zBzs08dvdU6EEPMZIiQv3mgxZwp7nFKGYEmUnMV/rQ==", + "dev": true, + "peerDependencies": { + "next": ">=10.0.0", + "react": ">=17.0.0" + } + }, + "node_modules/nise": { + "version": "5.1.7", + "resolved": "https://registry.npmjs.org/nise/-/nise-5.1.7.tgz", + "integrity": "sha512-wWtNUhkT7k58uvWTB/Gy26eA/EJKtPZFVAhEilN5UYVmmGRYOURbejRUyKm0Uu9XVEW7K5nBOZfR8VMB4QR2RQ==", + "dev": true, + "dependencies": { + "@sinonjs/commons": "^3.0.0", + "@sinonjs/fake-timers": "^11.2.2", + "@sinonjs/text-encoding": "^0.7.2", + "just-extend": "^6.2.0", + "path-to-regexp": "^6.2.1" + } + }, + "node_modules/nise/node_modules/@sinonjs/fake-timers": { + "version": "11.2.2", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-11.2.2.tgz", + "integrity": "sha512-G2piCSxQ7oWOxwGSAyFHfPIsyeJGXYtc6mFbnFA+kRXkiEnTl8c/8jul2S329iFBnDI9HGoeWWAZvuvOkZccgw==", + "dev": true, + "dependencies": { + "@sinonjs/commons": "^3.0.0" + } + }, + "node_modules/node-fetch": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz", + "integrity": "sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==", + "dev": true, + "dependencies": { + "whatwg-url": "^5.0.0" + }, + "engines": { + "node": "4.x || >=6.0.0" + }, + "peerDependencies": { + "encoding": "^0.1.0" + }, + "peerDependenciesMeta": { + "encoding": { + "optional": true + } + } + }, + "node_modules/node-fetch/node_modules/tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", + "dev": true + }, + "node_modules/node-fetch/node_modules/webidl-conversions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", + "dev": true + }, + "node_modules/node-fetch/node_modules/whatwg-url": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", + "dev": true, + "dependencies": { + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" + } + }, + "node_modules/node-int64": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", + "integrity": "sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==", + "dev": true + }, + "node_modules/node-releases": { + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", + "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", + "dev": true + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/npm-run-path": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", + "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", + "dev": true, + "dependencies": { + "path-key": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/nwsapi": { + "version": "2.2.7", + "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.7.tgz", + "integrity": "sha512-ub5E4+FBPKwAZx0UwIQOjYWGHTEq5sPqHQNRN8Z9e4A7u3Tj1weLJsL59yH9vmvqEtBHaOmT6cYQKIZOxp35FQ==", + "dev": true + }, + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-inspect": { + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.1.tgz", + "integrity": "sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object-is": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.5.tgz", + "integrity": "sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "dev": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.assign": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.5.tgz", + "integrity": "sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.5", + "define-properties": "^1.2.1", + "has-symbols": "^1.0.3", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.entries": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.7.tgz", + "integrity": "sha512-jCBs/0plmPsOnrKAfFQXRG2NFjlhZgjjcBLSmTnEhU8U6vVTsVe8ANeQJCHTl3gSsI4J+0emOoCgoKlmQPMgmA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.fromentries": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.7.tgz", + "integrity": "sha512-UPbPHML6sL8PI/mOqPwsH4G6iyXcCGzLin8KvEPenOZN5lpCNBZZQ+V62vdjB1mQHrmqGQt5/OJzemUA+KJmEA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.groupby": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/object.groupby/-/object.groupby-1.0.1.tgz", + "integrity": "sha512-HqaQtqLnp/8Bn4GL16cj+CUYbnpe1bh0TtEaWvybszDG4tgxCJuRpV8VGuvNaI1fAnI4lUJzDG55MXcOH4JZcQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "get-intrinsic": "^1.2.1" + } + }, + "node_modules/object.hasown": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/object.hasown/-/object.hasown-1.1.3.tgz", + "integrity": "sha512-fFI4VcYpRHvSLXxP7yiZOMAd331cPfd2p7PFDVbgUsYOfCT3tICVqXWngbjr4m49OvsBwUBQ6O2uQoJvy3RexA==", + "dev": true, + "dependencies": { + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.values": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.7.tgz", + "integrity": "sha512-aU6xnDFYT3x17e/f0IiiwlGPTy2jzMySGfUB4fq6z7CV8l85CWHDk5ErhyhpfDHhrOMwGFhSQkhMGHaIotA6Ng==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dev": true, + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "dev": true, + "dependencies": { + "mimic-fn": "^2.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/optionator": { + "version": "0.9.3", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.3.tgz", + "integrity": "sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==", + "dev": true, + "dependencies": { + "@aashutoshrathi/word-wrap": "^1.2.3", + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dev": true, + "dependencies": { + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/parse-json": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "dependencies": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/parse5": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.1.2.tgz", + "integrity": "sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==", + "dev": true, + "dependencies": { + "entities": "^4.4.0" + }, + "funding": { + "url": "https://github.com/inikulin/parse5?sponsor=1" + } + }, + "node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" + }, + "node_modules/path-to-regexp": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-6.2.1.tgz", + "integrity": "sha512-JLyh7xT1kizaEvcaXOQwOc2/Yhw6KZOvPf1S8401UyLk86CU79LN3vl7ztXGm/pZ+YjoyAJ4rxmHwbkBXJX+yw==", + "dev": true + }, + "node_modules/path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "engines": { + "node": ">=8" + } + }, + "node_modules/picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==" + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true, + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/pirates": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.6.tgz", + "integrity": "sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "dev": true, + "dependencies": { + "find-up": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pkg-dir/node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pkg-dir/node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pkg-dir/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/pkg-dir/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/postcss": { + "version": "8.4.31", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz", + "integrity": "sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "nanoid": "^3.3.6", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", + "dev": true, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/pretty-format": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz", + "integrity": "sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1", + "ansi-styles": "^5.0.0", + "react-is": "^17.0.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/pretty-format/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/pretty-format/node_modules/react-is": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", + "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==", + "dev": true + }, + "node_modules/promise-polyfill": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/promise-polyfill/-/promise-polyfill-8.3.0.tgz", + "integrity": "sha512-H5oELycFml5yto/atYqmjyigJoAo3+OXwolYiH7OfQuYlAqhxNvTfiNMbV9hsC6Yp83yE5r2KTVmtrG6R9i6Pg==", + "dev": true + }, + "node_modules/prompts": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", + "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==", + "dev": true, + "dependencies": { + "kleur": "^3.0.3", + "sisteransi": "^1.0.5" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/prop-types": { + "version": "15.8.1", + "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", + "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==", + "dependencies": { + "loose-envify": "^1.4.0", + "object-assign": "^4.1.1", + "react-is": "^16.13.1" + } + }, + "node_modules/psl": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz", + "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==", + "dev": true + }, + "node_modules/punycode": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/pure-rand": { + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/pure-rand/-/pure-rand-6.0.4.tgz", + "integrity": "sha512-LA0Y9kxMYv47GIPJy6MI84fqTd2HmYZI83W/kM/SkKfDlajnZYfmXFTxkbY+xSBPkLJxltMa9hIkmdc29eguMA==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/dubzzz" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/fast-check" + } + ] + }, + "node_modules/querystringify": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz", + "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==", + "dev": true + }, + "node_modules/queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/react": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react/-/react-18.2.0.tgz", + "integrity": "sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==", + "dependencies": { + "loose-envify": "^1.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/react-dom": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.2.0.tgz", + "integrity": "sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==", + "dependencies": { + "loose-envify": "^1.1.0", + "scheduler": "^0.23.0" + }, + "peerDependencies": { + "react": "^18.2.0" + } + }, + "node_modules/react-is": { + "version": "16.13.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", + "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" + }, + "node_modules/react-transition-group": { + "version": "4.4.5", + "resolved": "https://registry.npmjs.org/react-transition-group/-/react-transition-group-4.4.5.tgz", + "integrity": "sha512-pZcd1MCJoiKiBR2NRxeCRg13uCXbydPnmB4EOeRrY7480qNWO8IIgQG6zlDkm6uRMsURXPuKq0GWtiM59a5Q6g==", + "dependencies": { + "@babel/runtime": "^7.5.5", + "dom-helpers": "^5.0.1", + "loose-envify": "^1.4.0", + "prop-types": "^15.6.2" + }, + "peerDependencies": { + "react": ">=16.6.0", + "react-dom": ">=16.6.0" + } + }, + "node_modules/redent": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/redent/-/redent-3.0.0.tgz", + "integrity": "sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==", + "dev": true, + "dependencies": { + "indent-string": "^4.0.0", + "strip-indent": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/reflect.getprototypeof": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reflect.getprototypeof/-/reflect.getprototypeof-1.0.4.tgz", + "integrity": "sha512-ECkTw8TmJwW60lOTR+ZkODISW6RQ8+2CL3COqtiJKLd6MmB45hN51HprHFziKLGkAuTGQhBb91V8cy+KHlaCjw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "get-intrinsic": "^1.2.1", + "globalthis": "^1.0.3", + "which-builtin-type": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/regenerator-runtime": { + "version": "0.14.1", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz", + "integrity": "sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==" + }, + "node_modules/regexp.prototype.flags": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.1.tgz", + "integrity": "sha512-sy6TXMN+hnP/wMy+ISxg3krXx7BAtWVO4UouuCN/ziM9UEne0euamVNafDfvC83bRNr95y0V5iijeDQFUNpvrg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "set-function-name": "^2.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/requires-port": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", + "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==", + "dev": true + }, + "node_modules/resolve": { + "version": "1.22.8", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", + "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", + "dependencies": { + "is-core-module": "^2.13.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve-cwd": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", + "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", + "dev": true, + "dependencies": { + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/resolve-cwd/node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "engines": { + "node": ">=4" + } + }, + "node_modules/resolve-pkg-maps": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/resolve-pkg-maps/-/resolve-pkg-maps-1.0.0.tgz", + "integrity": "sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==", + "dev": true, + "funding": { + "url": "https://github.com/privatenumber/resolve-pkg-maps?sponsor=1" + } + }, + "node_modules/resolve.exports": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-2.0.2.tgz", + "integrity": "sha512-X2UW6Nw3n/aMgDVy+0rSqgHlv39WZAlZrXCdnbyEiKm17DSqHX4MmQMaST3FbeWR5FTuRcUwYAziZajji0Y7mg==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "dev": true, + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "queue-microtask": "^1.2.2" + } + }, + "node_modules/safe-array-concat": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.0.1.tgz", + "integrity": "sha512-6XbUAseYE2KtOuGueyeobCySj9L4+66Tn6KQMOPQJrAJEowYKW/YR/MGJZl7FdydUdaFu4LYyDZjxf4/Nmo23Q==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.2.1", + "has-symbols": "^1.0.3", + "isarray": "^2.0.5" + }, + "engines": { + "node": ">=0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/safe-regex-test": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.0.tgz", + "integrity": "sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.3", + "is-regex": "^1.1.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "dev": true + }, + "node_modules/saxes": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/saxes/-/saxes-6.0.0.tgz", + "integrity": "sha512-xAg7SOnEhrm5zI3puOOKyy1OMcMlIJZYNJY7xLBwSze0UjhPLnWfj2GF2EpT0jmzaJKIWKHLsaSSajf35bcYnA==", + "dev": true, + "dependencies": { + "xmlchars": "^2.2.0" + }, + "engines": { + "node": ">=v12.22.7" + } + }, + "node_modules/scheduler": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.0.tgz", + "integrity": "sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==", + "dependencies": { + "loose-envify": "^1.1.0" + } + }, + "node_modules/semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/set-function-length": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.1.1.tgz", + "integrity": "sha512-VoaqjbBJKiWtg4yRcKBQ7g7wnGnLV3M8oLvVWwOk2PdYY6PEFegR1vezXR0tw6fZGF9csVakIRjrJiy2veSBFQ==", + "dev": true, + "dependencies": { + "define-data-property": "^1.1.1", + "get-intrinsic": "^1.2.1", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/set-function-name": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.1.tgz", + "integrity": "sha512-tMNCiqYVkXIZgc2Hnoy2IvC/f8ezc5koaRFkCjrpWzGpCd3qbZXPzVy9MAZzK1ch/X0jvSkojys3oqJN0qCmdA==", + "dev": true, + "dependencies": { + "define-data-property": "^1.0.1", + "functions-have-names": "^1.2.3", + "has-property-descriptors": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/side-channel": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", + "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.0", + "get-intrinsic": "^1.0.2", + "object-inspect": "^1.9.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "dev": true + }, + "node_modules/sinon": { + "version": "17.0.1", + "resolved": "https://registry.npmjs.org/sinon/-/sinon-17.0.1.tgz", + "integrity": "sha512-wmwE19Lie0MLT+ZYNpDymasPHUKTaZHUH/pKEubRXIzySv9Atnlw+BUMGCzWgV7b7wO+Hw6f1TEOr0IUnmU8/g==", + "dev": true, + "dependencies": { + "@sinonjs/commons": "^3.0.0", + "@sinonjs/fake-timers": "^11.2.2", + "@sinonjs/samsam": "^8.0.0", + "diff": "^5.1.0", + "nise": "^5.1.5", + "supports-color": "^7.2.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/sinon" + } + }, + "node_modules/sinon/node_modules/@sinonjs/fake-timers": { + "version": "11.2.2", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-11.2.2.tgz", + "integrity": "sha512-G2piCSxQ7oWOxwGSAyFHfPIsyeJGXYtc6mFbnFA+kRXkiEnTl8c/8jul2S329iFBnDI9HGoeWWAZvuvOkZccgw==", + "dev": true, + "dependencies": { + "@sinonjs/commons": "^3.0.0" + } + }, + "node_modules/sisteransi": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", + "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==", + "dev": true + }, + "node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-js": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", + "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-support": { + "version": "0.5.13", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.13.tgz", + "integrity": "sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w==", + "dev": true, + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "node_modules/source-map-support/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", + "dev": true + }, + "node_modules/stack-utils": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz", + "integrity": "sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==", + "dev": true, + "dependencies": { + "escape-string-regexp": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/stack-utils/node_modules/escape-string-regexp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", + "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/stop-iteration-iterator": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/stop-iteration-iterator/-/stop-iteration-iterator-1.0.0.tgz", + "integrity": "sha512-iCGQj+0l0HOdZ2AEeBADlsRC+vsnDsZsbdSiH1yNSjcfKM7fdpCMfqAL/dwF5BLiw/XhRft/Wax6zQbhq2BcjQ==", + "dev": true, + "dependencies": { + "internal-slot": "^1.0.4" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/streamsearch": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/streamsearch/-/streamsearch-1.1.0.tgz", + "integrity": "sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==", + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/string-length": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz", + "integrity": "sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==", + "dev": true, + "dependencies": { + "char-regex": "^1.0.2", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "node_modules/string.prototype.matchall": { + "version": "4.0.10", + "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.10.tgz", + "integrity": "sha512-rGXbGmOEosIQi6Qva94HUjgPs9vKW+dkG7Y8Q5O2OYkWL6wFaTRZO8zM4mhP94uX55wgyrXzfS2aGtGzUL7EJQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "get-intrinsic": "^1.2.1", + "has-symbols": "^1.0.3", + "internal-slot": "^1.0.5", + "regexp.prototype.flags": "^1.5.0", + "set-function-name": "^2.0.0", + "side-channel": "^1.0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trim": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.8.tgz", + "integrity": "sha512-lfjY4HcixfQXOfaqCvcBuOIapyaroTXhbkfJN3gcB1OtyupngWK4sEET9Knd0cXd28kTUqu/kHoV4HKSJdnjiQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimend": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.7.tgz", + "integrity": "sha512-Ni79DqeB72ZFq1uH/L6zJ+DKZTkOtPIHovb3YZHQViE+HDouuU4mBrLOLDn5Dde3RF8qw5qVETEjhu9locMLvA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimstart": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.7.tgz", + "integrity": "sha512-NGhtDFu3jCEm7B4Fy0DpLewdJQOZcQ0rGbwQ/+stjnrp2i+rlKeCvos9hOIeCmqwratM47OBxY7uFZzjxHXmrg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/strip-final-newline": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", + "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/strip-indent": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz", + "integrity": "sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==", + "dev": true, + "dependencies": { + "min-indent": "^1.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/styled-jsx": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/styled-jsx/-/styled-jsx-5.1.1.tgz", + "integrity": "sha512-pW7uC1l4mBZ8ugbiZrcIsiIvVx1UmTfw7UkC3Um2tmfUq9Bhk8IiyEIPl6F8agHgjzku6j0xQEZbfA5uSgSaCw==", + "dependencies": { + "client-only": "0.0.1" + }, + "engines": { + "node": ">= 12.0.0" + }, + "peerDependencies": { + "react": ">= 16.8.0 || 17.x.x || ^18.0.0-0" + }, + "peerDependenciesMeta": { + "@babel/core": { + "optional": true + }, + "babel-plugin-macros": { + "optional": true + } + } + }, + "node_modules/stylis": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/stylis/-/stylis-4.2.0.tgz", + "integrity": "sha512-Orov6g6BB1sDfYgzWfTHDOxamtX1bE/zo104Dh9e6fqJ3PooipYyfJ0pUmrZO2wAvO8YbEyeFrkV91XTsGMSrw==" + }, + "node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/symbol-tree": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz", + "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==", + "dev": true + }, + "node_modules/tapable": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", + "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/test-exclude": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", + "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", + "dev": true, + "dependencies": { + "@istanbuljs/schema": "^0.1.2", + "glob": "^7.1.4", + "minimatch": "^3.0.4" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", + "dev": true + }, + "node_modules/tmpl": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz", + "integrity": "sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==", + "dev": true + }, + "node_modules/to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", + "engines": { + "node": ">=4" + } + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/tough-cookie": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.1.3.tgz", + "integrity": "sha512-aX/y5pVRkfRnfmuX+OdbSdXvPe6ieKX/G2s7e98f4poJHnqH3281gDPm/metm6E/WRamfx7WC4HUqkWHfQHprw==", + "dev": true, + "dependencies": { + "psl": "^1.1.33", + "punycode": "^2.1.1", + "universalify": "^0.2.0", + "url-parse": "^1.5.3" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/tr46": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-3.0.0.tgz", + "integrity": "sha512-l7FvfAHlcmulp8kr+flpQZmVwtu7nfRV7NZujtN0OqES8EL4O4e0qqzL0DC5gAvx/ZC/9lk6rhcUwYvkBnBnYA==", + "dev": true, + "dependencies": { + "punycode": "^2.1.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/ts-api-utils": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.0.3.tgz", + "integrity": "sha512-wNMeqtMz5NtwpT/UZGY5alT+VoKdSsOOP/kqHFcUW1P/VRhH2wJ48+DN2WwUliNbQ976ETwDL0Ifd2VVvgonvg==", + "dev": true, + "engines": { + "node": ">=16.13.0" + }, + "peerDependencies": { + "typescript": ">=4.2.0" + } + }, + "node_modules/tsconfig-paths": { + "version": "3.15.0", + "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.15.0.tgz", + "integrity": "sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==", + "dev": true, + "dependencies": { + "@types/json5": "^0.0.29", + "json5": "^1.0.2", + "minimist": "^1.2.6", + "strip-bom": "^3.0.0" + } + }, + "node_modules/tslib": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", + "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==" + }, + "node_modules/type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "dev": true, + "dependencies": { + "prelude-ls": "^1.2.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/type-detect": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", + "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/typed-array-buffer": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.0.tgz", + "integrity": "sha512-Y8KTSIglk9OZEr8zywiIHG/kmQ7KWyjseXs1CbSo8vC42w7hg2HgYTxSWwP0+is7bWDc1H+Fo026CpHFwm8tkw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.2.1", + "is-typed-array": "^1.1.10" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/typed-array-byte-length": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.0.tgz", + "integrity": "sha512-Or/+kvLxNpeQ9DtSydonMxCx+9ZXOswtwJn17SNLvhptaXYDJvkFFP5zbfU/uLmvnBJlI4yrnXRxpdWH/M5tNA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "for-each": "^0.3.3", + "has-proto": "^1.0.1", + "is-typed-array": "^1.1.10" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typed-array-byte-offset": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.0.tgz", + "integrity": "sha512-RD97prjEt9EL8YgAgpOkf3O4IF9lhJFr9g0htQkm0rchFp/Vx7LW5Q8fSXXub7BXAODyUQohRMyOc3faCPd0hg==", + "dev": true, + "dependencies": { + "available-typed-arrays": "^1.0.5", + "call-bind": "^1.0.2", + "for-each": "^0.3.3", + "has-proto": "^1.0.1", + "is-typed-array": "^1.1.10" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typed-array-length": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.4.tgz", + "integrity": "sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "for-each": "^0.3.3", + "is-typed-array": "^1.1.9" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typescript": { + "version": "5.3.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.3.3.tgz", + "integrity": "sha512-pXWcraxM0uxAS+tN0AG/BF2TyqmHO014Z070UsJ+pFvYuRSq8KH8DmWpnbXe0pEPDHXZV3FcAbJkijJ5oNEnWw==", + "dev": true, + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, + "node_modules/unbox-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", + "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "has-bigints": "^1.0.2", + "has-symbols": "^1.0.3", + "which-boxed-primitive": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/undici-types": { + "version": "5.26.5", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz", + "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==", + "dev": true + }, + "node_modules/universalify": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.2.0.tgz", + "integrity": "sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==", + "dev": true, + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/update-browserslist-db": { + "version": "1.0.13", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz", + "integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "escalade": "^3.1.1", + "picocolors": "^1.0.0" + }, + "bin": { + "update-browserslist-db": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } + }, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/url-parse": { + "version": "1.5.10", + "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.5.10.tgz", + "integrity": "sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==", + "dev": true, + "dependencies": { + "querystringify": "^2.1.1", + "requires-port": "^1.0.0" + } + }, + "node_modules/v8-to-istanbul": { + "version": "9.2.0", + "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-9.2.0.tgz", + "integrity": "sha512-/EH/sDgxU2eGxajKdwLCDmQ4FWq+kpi3uCmBGpw1xJtnAxEjlD8j8PEiGWpCIMIs3ciNAgH0d3TTJiUkYzyZjA==", + "dev": true, + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.12", + "@types/istanbul-lib-coverage": "^2.0.1", + "convert-source-map": "^2.0.0" + }, + "engines": { + "node": ">=10.12.0" + } + }, + "node_modules/v8-to-istanbul/node_modules/convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "dev": true + }, + "node_modules/w3c-xmlserializer": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-4.0.0.tgz", + "integrity": "sha512-d+BFHzbiCx6zGfz0HyQ6Rg69w9k19nviJspaj4yNscGjrHu94sVP+aRm75yEbCh+r2/yR+7q6hux9LVtbuTGBw==", + "dev": true, + "dependencies": { + "xml-name-validator": "^4.0.0" + }, + "engines": { + "node": ">=14" + } + }, + "node_modules/walker": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz", + "integrity": "sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==", + "dev": true, + "dependencies": { + "makeerror": "1.0.12" + } + }, + "node_modules/watchpack": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz", + "integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==", + "dependencies": { + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.1.2" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/webidl-conversions": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", + "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==", + "dev": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/whatwg-encoding": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-2.0.0.tgz", + "integrity": "sha512-p41ogyeMUrw3jWclHWTQg1k05DSVXPLcVxRTYsXUk+ZooOCZLcoYgPZ/HL/D/N+uQPOtcp1me1WhBEaX02mhWg==", + "dev": true, + "dependencies": { + "iconv-lite": "0.6.3" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/whatwg-mimetype": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-3.0.0.tgz", + "integrity": "sha512-nt+N2dzIutVRxARx1nghPKGv1xHikU7HKdfafKkLNLindmPU/ch3U31NOCGGA/dmPcmb1VlofO0vnKAcsm0o/Q==", + "dev": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/whatwg-url": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-11.0.0.tgz", + "integrity": "sha512-RKT8HExMpoYx4igMiVMY83lN6UeITKJlBQ+vR/8ZJ8OCdSiN3RwCq+9gH0+Xzj0+5IrM6i4j/6LuvzbZIQgEcQ==", + "dev": true, + "dependencies": { + "tr46": "^3.0.0", + "webidl-conversions": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/which-boxed-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", + "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", + "dev": true, + "dependencies": { + "is-bigint": "^1.0.1", + "is-boolean-object": "^1.1.0", + "is-number-object": "^1.0.4", + "is-string": "^1.0.5", + "is-symbol": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-builtin-type": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/which-builtin-type/-/which-builtin-type-1.1.3.tgz", + "integrity": "sha512-YmjsSMDBYsM1CaFiayOVT06+KJeXf0o5M/CAd4o1lTadFAtacTUM49zoYxr/oroopFDfhvN6iEcBxUyc3gvKmw==", + "dev": true, + "dependencies": { + "function.prototype.name": "^1.1.5", + "has-tostringtag": "^1.0.0", + "is-async-function": "^2.0.0", + "is-date-object": "^1.0.5", + "is-finalizationregistry": "^1.0.2", + "is-generator-function": "^1.0.10", + "is-regex": "^1.1.4", + "is-weakref": "^1.0.2", + "isarray": "^2.0.5", + "which-boxed-primitive": "^1.0.2", + "which-collection": "^1.0.1", + "which-typed-array": "^1.1.9" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-collection": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.1.tgz", + "integrity": "sha512-W8xeTUwaln8i3K/cY1nGXzdnVZlidBcagyNFtBdD5kxnb4TvGKR7FfSIS3mYpwWS1QUCutfKz8IY8RjftB0+1A==", + "dev": true, + "dependencies": { + "is-map": "^2.0.1", + "is-set": "^2.0.1", + "is-weakmap": "^2.0.1", + "is-weakset": "^2.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-typed-array": { + "version": "1.1.13", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.13.tgz", + "integrity": "sha512-P5Nra0qjSncduVPEAr7xhoF5guty49ArDTwzJ/yNuPIbZppyRxFQsRCWrocxIY+CnMVG+qfbU2FmDKyvSGClow==", + "dev": true, + "dependencies": { + "available-typed-arrays": "^1.0.5", + "call-bind": "^1.0.4", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "dev": true + }, + "node_modules/write-file-atomic": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.2.tgz", + "integrity": "sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==", + "dev": true, + "dependencies": { + "imurmurhash": "^0.1.4", + "signal-exit": "^3.0.7" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/ws": { + "version": "8.16.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.16.0.tgz", + "integrity": "sha512-HS0c//TP7Ina87TfiPUz1rQzMhHrl/SG2guqRcTOIUYD2q8uhUdNHZYJUaQ8aTGPzCh+c6oawMKW35nFl1dxyQ==", + "dev": true, + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": ">=5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/xml-name-validator": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-4.0.0.tgz", + "integrity": "sha512-ICP2e+jsHvAj2E2lIHxa5tjXRlKDJo4IdvPvCXbXQGdzSfmSpNVyIKMvoZHjDY9DP0zV17iI85o90vRFXNccRw==", + "dev": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/xmlchars": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz", + "integrity": "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==", + "dev": true + }, + "node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/yaml": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", + "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", + "engines": { + "node": ">= 6" + } + }, + "node_modules/yargs": { + "version": "17.7.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", + "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", + "dev": true, + "dependencies": { + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "dev": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + } + } +} diff --git a/client/package.json b/client/package.json new file mode 100644 index 0000000..3b18e2d --- /dev/null +++ b/client/package.json @@ -0,0 +1,42 @@ +{ + "name": "client", + "version": "0.1.0", + "private": true, + "scripts": { + "dev": "next dev", + "build": "next build", + "start": "next start", + "lint": "next lint", + "test": "jest" + }, + "dependencies": { + "@emotion/react": "^11.11.3", + "@emotion/styled": "^11.11.0", + "@fontsource/roboto": "^5.0.8", + "@mui/icons-material": "^5.15.3", + "@mui/material": "^5.15.3", + "@mui/material-nextjs": "^5.15.6", + "next": "14.0.4", + "react": "^18", + "react-dom": "^18" + }, + "devDependencies": { + "@testing-library/jest-dom": "^6.3.0", + "@testing-library/react": "^14.1.2", + "@types/jest": "^29.5.11", + "@types/node": "^20", + "@types/react": "^18", + "@types/react-dom": "^18", + "@types/sinon": "^17.0.3", + "eslint": "^8", + "eslint-config-airbnb": "^19.0.4", + "eslint-config-airbnb-typescript": "^17.1.0", + "eslint-config-next": "14.0.4", + "jest": "^29.7.0", + "jest-environment-jsdom": "^29.7.0", + "jest-fetch-mock": "^3.0.3", + "next-router-mock": "^0.9.11", + "sinon": "^17.0.1", + "typescript": "^5" + } +} diff --git a/client/public/fleet.jpeg b/client/public/fleet.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..3b47b1a1ea9d6781ec7e32c7d5fddb817ca1238e GIT binary patch literal 174287 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≷&9A>Ntc%z0|$&O#YGhdi*y_?3eTX^^$~YYF|X3 zdBkr^e7;nMRCAR=f1YEI=?({p2Pf*A%&uw2iS$$tQkh!~AqVESAw_q)Wzr>|)C(N= z7tIWZ?cHB>%djU}BMGH0-w(Cw2m^A|RPRS7`M@&_ifYmx!8RhU1E9-xsyXkCUoy^F zeWTsWL>#u|Vm$lfaAT=VySwiQ;UUEf${ne&Mr6qhLzEuLM*w>yKpey5%coPuG$Jle zJr-gYWYGoll*XL>P{cc}Fio3u0{S?xv9_!N4tirD2U#a=LM-rmzpQ6=mk#fWpE!)z z53?o&8OEMWyqn5oY^}%p&{ik^ifG)2HS8X7g=~ZIdHu42l9+yklFg zsX&>~AWt(zqoq=xTOoM+8^OJ{1?S*zxQ_s>)%7^}!_2Y9U3+F%)rR5eb@((lL#xrR z(2GbMQI@yz0Ia2@J*mVQ*<$0`rWEg=Dk?zmwq^%{-4B)6+b^n!PvaJV=xYogIx*Td5h1Shp+&2Hbu+}`!!geD(BRcM&K3tNbT2i!J zPqSpGsvWMmSI5KN010V;C@xMh0)Z5fybk`QswCmQvd=IncB9({k@xOlrfmiIXc-qT zfSMh>%Yx18IOW7Qdh5~Q3Cpkjgw%t$PXlL@7`DUM1iNNly7~)1(F9D#wBI$-Zj_E$ zuOPe-qaeJOK1uh$+CRTct3;c(_fpPv8ob!TH|5RT9S!%iZYE-V_4x#w^zXq)PjmlR*=GYCZ8Um?Wsm$CynO2 zoKhKfA}2LS3wn*aDQeG{d z@U3Ol#vXH$U;jVdL7L{rgeN=cm2gYwla0LP(=V4z0R3_ z3w_WNqi;U*YcxG4WjiYvz`fD@hZ3S)sUpOQAxKb1Q zU#pqrQ+_f`LYnDXjRm9dm6v?+s{-|cPL02qMZbmJR}mhteInxeizrquOicZpfhQk$ zyy!t-NW>CYF|9>*$A(q3*Yz8nvnRu=r%fc!;_q-sy-;|B5 zE9Qm%14rT+C>r*!cDsge;ceH*_j-XCY22pYSyvV8H%-E8_VXw>NNK1*cE?d|&bsp~ z&V5Sp7YYTHIZN6?Oy)cS+QVDgN1k=k(RwQHvRwbzRbS|DzF#n2RX&jvN4=q*d%*mR zzNi4nCf_GsafdDQ2mnED^i%xMOXZhfuQq>BV6az!$TcY7*=;ah!6Tq+tML(#B>}v? zc?5i?{nt&Aoo5%4n*qK7U-Y%*X`dy8gwV8TmD%$f88Ge@9o-8Zyy2pzzr|sN5BLP&pis=OU3c4 zM*!NOpd8?7#jbLkseXE%?inHfr)r_TjQ7a@cEhM=}1wb6~sxi)Q9K*06)t6#yW&7!bLR&H~hY zCs&fEkSn;ce4l$x^1b}V+eYRyTiwb4%lp&J-RX}pYF(}n$Q z99e&B{V3o=zw6oho*o-#{B~h%v*X_Wl)Y%gIgbtTpPWj&o^&$r@cO)(pRjDk)vxum z~Yjd4;TaNxBgM2?JPHWxC{5J|_E}PH|hp%{mjJgu}I8 zDTb|~qp+i-N+v|(mTO;yn*qP}WxgziWHEv?(!H0Css4jPM|qk;SmI{Y(NP**tO-{R zEU_p_ix>mil@}-5YZ807SZqHV;5k%ebBBM{s;?DyZX1wQA<2< z+mxuLQw2fKeus-7_aOsjrVlo;F$@FGB5}5&J5JW`DK>n?)+1Z>&KC`!l&q5?gTn(Q zVe}|-(A|Mx=)ac~D`2=AhG*<*nSB$LJ`vC2TMGe50w~H~_!rE`u=vQ&dY5iUngh{6 zqO)HVC{v`_y}|XxvtN5*&*$n9U>&_9@{)niqVx?Fn*@R?n5?8=^D7=6dP}oMz(bT* zFlqf{?ioSLHAPUf(uhu@^x)_EOw-oG5u|4x&yNOXKcyK~jFazf6M_Nof2D6_ zyVYzQ$>sbDf2$+8-lAU~eUu95N-%db&UX@m!UkOl?X23J*a!BaQJK=X=}r>Fa#FsR zX&f1f=GZZT_Y`h783m}%R-mQ+|K0*8D*x%ig?(jH_%_6HxrXbLqoIm#4iAgp=Rb8v z=CN}mxyHL+j>tBp#cC+Dx^Iss`VE1N#duitKz@&2EMWxNjD32?Yv= zU(RDfGhcoNo^L(^uF(;4nX&v&GaAOG;|pB{Sik>nX}Y!5Xc3HcB_kn2?0ft6Xg?DD zK9_0pL~ghwRXhTM=6?5!T$aSDw0Lk3+6zs$DO`zfojGwm0=SQW>$?0mQ07NK68dY9 zJ^^v}Y*|0=Wx;X5vT>}q?AdeGM*t^eSBty zoQ2t~&D!q|t4!ZP+rNUn#|GUb9ZJy+CmR;H7c%C%lDuy<2i@=K@W9F5piI&q0Uh5x z;>KFe+0&~bh7d=oZ4dd%`FGKDX189T`yf2(nngo|4Na|@!Q8awF$;1n z=9Y2(l<6kQ4&xCZoq%qp*HRYV;CxDBX-iMA^aYM6ms8Zg?a| z`5doJRM_H8Tp}m6u;d&kL_*^t|3b})Q*$CGFl3qSvT*X_LzJP>mOqW}*aT-w)j#_A zh--Z(CQ@8%R?~Es<5SEWiub0E?qzhJEpiYm6*FePz_sYdFXmVEXoCC{T9FQHr!)s~`-#jYO2?G((G$hqK4iXv>e^sj9Sbrle6TCXg>%+;4Amf5_4+9E#e#(!4(hO~c#(AC$^ zr8|ER?~+(?gEB&gvnfrr{-nD1f@hP!&eF<7k!C3+pQC}SQlD}#=kZiU4GkkC1j%1D>gxsh}g@<9=-r$|* zoxiF4j1Xd^-m3pMV7I`3jd#G7!$Rw0HliK!8`LxnAYwfv1Ij4wSe`NxcKzN}kV44+ z%l&U@e#vo33<%Y^?7Svnh*^1(_xi(1KU_Zf)jnh_<~9C#`>(aL`}{{h!`fu)$B%d` z9#Uuww0R!u3ESG;2JIV+7ZjCAu4V7|^8NUBLKPjJdG+Z%*0AaCUZ%AJ%6;t$zQ{ZL zg?W;Jz@MO9C`!kV_Yp8Ige+brEfN0=V|xT(j4F6drE@MIZv9a;Z-c`c-%ArBFVydM zAj~|sJMGt_b|C9^)N>xKo+*|#(~xtAnZK1Tbb7bW%PL? zpzT65Y;q74+}Es29()A&M9a@}Yo7myR}|5Af;F*07lXjlSiQDxmh1MjMV!bVH{%ay z%86Ic5?g-$UwiQbzfgV!59jQAQ)?)H5WJ>+VKl?)5zue%5xvdBfHn)=S?LmN;jX@IUiLO(@)f=jgLkkATAorzgO} z_Oqe17u(XVgvfLBcoU4e|L=y95B(_UBLH5@`MzD4jCN`z!D1@^^qgnh#N~bUt&;O~Ho8n0-l8 zTPu3OK{g~zH^%nPUBRBf?)@^RRdB(twkrw*@#N-qjls(jI?t4q$55jH);rW&(B z>?&QN>b2y&(IGidG7fSsD0Ei4dm@ST2k*R`VYkN@jb?v@cZ9P}*IZZh%}^^KXv;iL zh3Yfwo>)zDqaSuzLY(nE*T>?*eQKqsH(aJa3VD7CawIK~mN^+s#I+X{7{A?m!cxs9 z!4ezoc{7(d!p+rHmz#?n6^+3s=yyjkHRVmY@|qr$vs{y8T{nuI{#`0k@}BoPucS3! zySr?2Y=?(P{+V-AJ>Q?h*k0#PHwCI9obv0Asi9ZHJw9?f6F9M;xetC;!0CY5fc**F zv60|J=b^dC$Z5-JJ=?rY@_oHM{HXpvqZSSsT#YlG;cM4!ci^o_Y?&@_O|(AD<^;v~ zG0u?UJj;YsVc5JGYdlaNt0bxkoXOh&z{psgnNj!TF#5e5(oycHU&Gt~99B4qp6+p{k94NnW@fcJLgm zauv>?a9COW2&kSZar_C>;~OZqbS|r{Mn6Hbh>4(z?mLp97~yJqscqs%z)`JGs?Ix! z!X@cdV&K15N?hyvTWD+(2(EKhKnVdu(6LBV&iwKpq=0e1=Ce+`xSkJRk0rj7IB;TP zyvM@K0$rku`-&_@G`0F5cK-n5Va~u+(8KdNwUSX!GeUh7Yl+OkBxuj331&$DFI9ch zqSWgVz^WZ<|G*ZbZ}-n$m)*IM7`wB;je!HK!LF4B{*aQ#ha+hpnjbE}Xzq35@aeC_ zt5m{!#-fsM-_^u)%uDS( zZp&##1oj9}pgqal*ER__T1@VW`na^9e_p~DBThI}on-t9+)BaMKLTWjZ#TA1^2l}H zm)z#gy_0msg{%@ zrb$knui)WAcZG4BuVPz|MoKh(4W`XAxGUtq&`3K_kIf!(9yZx*7H;(}0`lPDx^K+b zeus9TUi$X``c%H;9uk3+hF`b#9<&SE6S(e;TXy@nPD0Xs^Kg@eR-*ySsA*S_w4B{Q z@yoQO`x?I=_ce{Vf`B#jV&nC9hxP<&j22_JpubG(tI6gS;C%xQbKWnW+G;E$2nLzSW>ZhiX{5oDw%vaFRF9mz4V2Rj9y zDs^gzrXe=LHQAy&FmyRUbS)>LaJ(XF=FEDr>nM(M0h`MF5da|p{(uXEUfI;g|CrZp z9mCOqXvR@{oZAf=tEg=w-A9>Y{Rw+mPiVAqq(diZTD(vRMNZ(~r;O8;V6llOjC5fN zszw4Iu1bf0#yHkhnY(t9_Y1+GMedZ8^KbDLK6ru?8|_*ZRbOYHLdwMH5DY1}Y}5Ff zXvqc_7ab!X{Z>w9SK5|*W-}za2wj~p@Qu#PhBnF%(mV0-&QvW}|L{h?2wiP~p1!}} z*G>9=(K0++sSMcE@&(%?V7h*?K>gAYLGt_&@E-u^N0kMK){!&4hlj1!l;zrJJhkwg ztS-BoQ!kKhSLOz6G{N@`r{>2#{@NHd{tBvg6(xTJXgmTo)G1yR0(Zy*`t$IR9L3es z&i&!L)k%wrJWSHtYD_?uia<-u>d9?5t_L&UzpN4wN{C8kzGIt4E>SdpnPePN#q20x z%QaKA6+IX8nRK-5>z^;&6D&ShmUk_l?`#@Kb$gv|^)r2YD9wp!*m9xEXcbFGz~Xx- zihJHhpB&S#{rQvnlZCnplvyT!a!+`D>?M->ne`En9FPIr|Bc(H+9*5+@J~7X%jF%= zD0m-XHCv9IvjP?A8Ey8F!vjJpG!1-KS!QU?uny{wYAtow zHjuDW4A(^r&B#1&9FXguY&Nm%xl7zmh!HMw_k6}-#pm=Y^AVu$zePj7b(`#tmxTqK ztSsJ)+m=I2qZW*YVn77I0k@X*08bQg@U5BDk1!*`0H0YxAD1Mi2sp$wdCtvpn#Z|y zEJz?M+LzIhoXzEa&ZE-!qQ+B+6DFzoqk^Qw)xF3hSJByXhux}f!XG0eCFkVeWY#?N z*lbJA39Hi@k5+T)U(t>}O}=?maDfkS1&v*%C;)hd`=z__*B*6DmXXWeQlsQpQ(G1BT$I=7`EzNLMlWWPua0bDLH#OMN=vqMV7X0IT#tp^ zZ&8#LFFqS4bp!gne5+njnD5HQ^a9dNJOlDNzx$ft0Y5AP6hMG9+6MBix}$i6U5vDl;~h0E>GoIxNU}hD}XY(rSzjcaT&34MpEC9 zxwkWiKSz@IAtxK{JgCZ2%f{;YGWHKwgAz=bYSesFt2tWYx>}>O!|^p2V5{Uom!T~3 zw=SfDTk-k>t7v(-~N|GG@M)IC`vo{A(0OQg|uC9|Yc_McXA-UCOz_O;Gyvh(7zeL-xj+N32`H^D2F4n^b@+>5B67wNc*lIHQG+F}D$sQp?rp2#KUEw*VV(Qe93# zu=8`}fWs&bor@zF-$3Mh1Y-kZ!&Nz4eYVW|=d~R6J31Q$fxC+O1E6-7QP0$JHO(8K zcp?*>gjI<4L)^jG7gLoYb84pVVeSXK{t&g?R$For=n%VnKia@`wpcNxp*CB5ghm%X>-!#|XlcbunRg2kx3lWM!^uNBk9$oZ z3~CDGlIjj~XKfitiz=kCD~qdw(&>t>%tvesUxRo(Z=u6J3-;$Q;(C!`X5%cI#TOV% zUggOOX>a(BfIVUljtSrYWJS-k<`37|jW-D8eNg`J2>6jQe{*kENz1OHvL0}PZTZjB z1kLoq??K%GzEo+-QT-PjXov>B*v63Jl&0%jD)CU?c-4Q9(<-38vue&gjYQvBlA zwzcS&deF71GOe^GnxLT>KdhOK4f-oH4>!u#_;;F#weSdNWkH2I7HjSsw|B=r0*ECu z@BfF={;#(`vf}L}V;><_b_nOHd2rn)19%x2b2zAoVMrxPKS~ofV~ zHt>#QXtRljWs^Oy!+JM#*Ndd4+1`t$YIagXwlxMjwseMlMtaiC36-LE5W|#m04&ix z_9@kQAD_k#p5K@YlXpr@+8B|JKoCjE2O0EqoHTm)Ytr5YZ|)h*_)EKQ8a$3lSUUlq zw2=&eHkh3(A2d;kgJ9)_3f_+imxd=JQeJh4Ih$3Jr{ zDr5H|-$wnM^wU7BzKHKpYTI<6IPd;|nTEm4Rc7g=~m{m2@@$RV*&O=6jqw6ok{ z)4%AF;CyS^^Cd)~&2K|tZ8mnf7o_?4@|46nT1$$2ohdo~EZ8W)*-+bz9WcQ=YVrFy zzacIzW;S`O_}fX0_b`;Vvc@cz;6UI~GQ3W-+(_f>`@{7Kf=kMWpfe$RGynJqtSJ^G zqf`WbNXo*pvH%!+Bo1bX)B=I?gH-t8T@f_frg zkW25qRg?^Gzva}e&V3$rNR~w=uQy=Qm9dz%D|sY%&+Yq>ls-uC~Gdl`_ zP^ydDopN#VVbA=j+Db=9Z+oG{gdMwC*6rV)1etin6N;$dbCP&Yp|jJj4A#QO-`^i# z?#3L3)BfE21D_#5Z|p%>Ye-QG-ruGmMC7cOHb)ctTNcy;BMhpHm#H_ST3K|PtL$gR zzdUUQD^Mxox5->|FovbmNaAQTH?`K+@nyV%EVHY5fY`^wOuw9H>6~9s;?i>a;Y}7y zw`kq{dOs7e1M&tkKq>U|Naa#X zuM2J779>(@bmrdKc^(9v6+vz^pCpTDMz=O0N(Y#9QziO1$U6dQRt^Gwn;Z9`^Mmg1 z4KbccScjOu@T2_WhgDH)bDRDgJfx&*0G%k}xKJcLQEhDZsadA889Lbt*;lyM7Y18M zJ2MF!doa~2N}a4fS$;7!?7?1`>H2RojF%-A8Z9@I+6?vBQR)djFcS!-r+NjUe~+vL zL!YI7XvV_)Apxn*W;yF8F|l6kD0R;uBY;cF0mb5&X%tOzMb~#>wyXww4*3~-^Hpup zi<@|f9zQ$K!G!G^xPG(DW>`1gJIz#-Q!$|a`TRO7d>)i;)A%r7_`8He-6-RtUrtkz zD-rCAcfI29RLue@tH}3ox}nh=d|GjazmP$-=;_q%u*NVq<8MTGWJHufkmHMvWXv8M zZsq2YIc@oqYhrI>;3!GPaazPsBfE=c8RPH2{;ue#IeJ>J%EG{Nx$*%czZrG@s{gL{ z7}ZgHH5q(+XNiYS)Rw#Pf7*rdLO=6+UaP}ZS68Oag$~kHVlHNL?WQj^<)Px?wBK2v zKW-{7^Xc>79x2>W*#Erp)N;XV5DfoHXO}i(bimeTM7Tj4(yM0A_Othls&B13`DDRt znRhHmj-yj(ZY3W+Yb^;{0K!dI;I}OmPglPBS!1CWbj=6H9+hDc1vf?h0?8(xM}TQ< zetFN;JL`wuVmi3hXZIV6Kf9t1({0I-gh~UVaqo-yKdloQdM>k-J*zB;&E35@$=9Vl zK_`FAgo68)S4ZmpuDA3L8>c_7$6`Y4WKDN~4`ydx=&efZqSxBH-nX!BqpGIYrFkzq z*24^BFNJKZwkmHWdS3X!bomir=b*l; zbXupN^Yy$DJM?`&p6f_=X3tJ-tzZbCuKLqL7r(;x8&{D5(=32AAbL5{mPBu7;t}9D zQW=7ZduqnznS5CJ{zRb4=$sGjJCpAG@!hrOrT!kjRA}xrJjy#Q#RA9NC>$T-xFKYG64qQ( z8@Ybj0xpfA_2VQTn(1)N-r9MdN?+PH0A8waac()lwBytw`Y) zJ%BRp?syB53Y*sRiG4zfYrVz!jaM=nSL(O>X{JMCaY?Twb)_*Mepnt_ zZ)5a%Wu)M*d&E1Z?2nD9DX|yNW8Cl>q!O$1TUR34>p^XGbU&AA^vU3tB)QuoNuMnn zJYO?UlTo_ixrnD{_T^NEA1J6VAa@iJ6MtiLP>Vq>My*ft9lz9=HrK{Iizst3hf@C3 z_lg-NV$AAbWcS;XzN46)M8HtPetAiMXYXD;cjp=s9O?;u8u_{-uwf9Zu(W|lJHwBA z(`dnk>g7d|$JVQ`q{At2D#Nrh^98J~376{iIAvh!ew@EewR_Gy1tkP?E(hR@M0-s6Z; zN9N7HUM2;kmdg&-f@#AT6p2u)n9BQ(@{Rt7OXDc`NvfmTj+}t$p7W0g8- z#9vP&0XZ+ab$?Z6qH{cz2UOqTNCTr4%pPl#`2}668p{*>q&~Y;G$2|B&o+{Xex{4a z8BaQL(e@g!I7bh-}mb$|AEAh*T?wJP5gpm8&k@XrRp%l%( zo1DL-B2*MS7(yb_SRiN13^}0$a1J#!h2vK&;lR<)mCLJY6il z+slPqOUuafslG>@y1UAo3$F20O7oZi|5@|tN^%)8`lhM&+Rzj*^A!1*=k)aX&}_p= zMZlYvqBiXAHC7k8+veOp&CYb^LG0w-u6(~E%}GV~CyPwXYNk@3boMGomR_>+XkCtW z#7_Ht{Z58QVrYw>Rf4-qo@+l^J2qfEdQ8T(RdsivuDJTv&Nh`0I6lGkU9>-V7F zvTu<;nEGF+Kk%FVD}-uLvZvB~gMtlY(tpl;*?Wr0&*c1hEnnNo8LUhD9`C&H+GS8G zweZ))00~jOu{)w9(!1duESBIX#n`r0V{H=F1WGFPlrFj+0sE?`b(Bpj-UeEm)T{Lfxa@6*d2A-Gx9aai?O!55vB%FCX`8{p*9hVf ztZ|To8l6x--B2mN#H4z*#?z_vwuUKB8YOUmQ*A5LRbkb@m$3VYm zhiWghXR`KEEGLuV(bb!{ta;2(E6r(CO~=LSsq6DO6t;tK8g1|nA8Kz@@k$|}2&kpX z8ZNX?0qJUv{!p1D3_Q#OUCZ*zYqY;Doy@#SBMHE&C)U8F-mbZ>B+D2i6*%Z-s92I` zcwc+~?yi~{u}K3vzW0xHa@mDSR0V8J&*$}*ar~+5FoI1(SB{cm{a|LhyV%d~d<&2B z>?Qo1C4N%+Y zLbV3H9g=%5p@+t5PBj-DnCI29LLpX-CDRL4ht0y`#M#t;ZiA7NMv;HnDGTuqRd{8i zHG*}S-4!#tVn$f$zkM0nGQYrtXQa<=gwcA>2Mc`*qhU=7tXyZo3NgVA*eN;6=31al zX5FU)YAQEEZzkAOEXnVR%)F${oLhGQlKY$tx{@M|ta5n2kTCb{xvj0dPucCT0NQN@Y+(xz%5cq@A)v>>h>19&gm8<$n9vFW6&l5#rP;(iH z+~~a4)@IjDMv8GMK~bqLLCVT;%d#}kO5QOlwJp@g%_6_b%%*RUvUf-S;&?~V|BLpi zzM4l&_T``lv5N>fbCo-E`LCj6ECoN&h*_E8tB>>srnpZ=zjn~nJjkdvOkO_aET6&t z`&DgrK$M&cB~)o&Vm7>iGx2(OwWdS@i@IgrlmaPNfbEKGVGGX-My|kbf-0DZm#9@ za>D#B*A`JCCbazeAg0=?n7YR@gM$FmoN$w+9iX=Y%Q3*VJNcYGOlEUlADI3y6(b6- zleO7er~zkrfIwQtJJUB8SC@Hi32glOCIyD%UT4RcI{u!B* zHK8U7nXxX)CLAg=mKR=dPZxTVvthTxI1Q_9zk@I3daFhO&YvFv?$3L(tT1J5Fu>{W zGzTOi&khKcj!wM@EH(UW>uRHQBH4MB82>L~^sP3mJbn>4qHB;hR z5;cDM$3OW|?fo^j`TdktRnsS$w?FKx=o4tVchGr_4u_0PkE zXR5B*>X!I7Xz(%Q%1bne?X}b7%=jUcnnqIZ+7h#az3PM`vkBbZbDVyMQJ|RVz&-pa$?nwnSPgi{9Wuwju00gxl0HKmkq;f1K{iF3OX$sR2uy$xK zZX)CD2O<2)?tYCV+`f=I z7sR3940aV~3WV^M1F)aBGnt1hLAQhql1}wnl9+j3db~>6O2h_yx$0$mfxDBQQdujT zKmyhJ#6yM^N4N##(_cKdEGb*2mtQd3vcRAW8Fu>u{6g4OxUcUnpJ(J^2E}qit5)97 z76N}8{<}((%6{9zn<%g>&S`gA?@47@fd%AYnT$fb(HmvE6pB~B7pbiINZU_c<6gNZ zXP`q-QgA?P-2m~1)%Iu%QS}S@8Sn=0Gvd)kDHkoM+VrjbnGEk{Jqi-gTC~%T|M*>M zC}a%i=l42u;7{I64I`A#aF4I{ZGe4_v)DunOlb%^EvIwWZmm8eJ?t19VTE@pONQhy zL%rgd!SY`Dfy6ywMyWV_UO&veketb)_PqM(c}tE_x||H^>D(+tB=2}O#h2LA=TW`i z#rA(EeH(T=3z*6MNl@8LJJjr~{edDV%`chHSeAjm>El`T3;0R3zjrzQgKEhwW!y*3 zC9+p>{BlZ{+H1Jw{8MsXnnn1PI}v5hy7LgbfrZIhOI ztIb;Urw5MX$2=oAS|YwLrLo)(#HjRhz65hD-H;v`HhAF-L_O`GMkN%mSk@CLs^zqS z?;=VT-X?BDk^g$Fj47rM^zB*u?y@>`J`mV>fhj%EYraCYoSDyVp2^-=$2I8#zK`ECr{LqkxCw+8>X&k94$)`RwXoh9 ziA-9vEZu^)>4K$2==e^LP0W725Hx_GJ?`FzhG8EG^NfOm2~FTeg=Y7rU|3w9X9pZ> z0{-t%tD2ZAqvb4QU-wnVN*vz>jeNspfkgK2X2P^3aL4p{t8V+It2^ZOU^T40ovop1ejqrp)@C7& z2sMH7e)@*de{pd+i$8gg2>^W16*Up{%;cqkqb0;9VvCAaAJ<7lgGO-0Y|C`pCM$5Z z3SK#J#mM#qLhcWmatXZ+sLtbde60&f`wU1((p@gmw*|lwTr@}0se(??c=H+C#C8TB zL=gjJP>`nI!Q)ABF@3uGpI&TOYC!*ory=mDKHi=mBh+&TtzD^_=AI?LeP+4(9t6|4 zr>8x?1q?9$egq&@<(xVI&r%?}D3TWf98l`vKBJch{7Tmh>Zn?sq)*7c^FIB0A=(Av z%*%gaCx~$BsCth-mwE%G+oVbPvG%Pv{Ge(`UtR=F(5kW8J#n>@mQTnuG&;bKZei!S zE4i7wUQOywecKA=iF3iT7UoS+sx4p4#;vW~FDLdu&&`R7CVqhih(&&O+^3i8!{hl= zdbZWgQNzzH(NzL6AVw{RdW!N2u~BbZj;g-O@*X-IYOx@@>m|7twL)`u_am2>E|z+q zr|2EX6Z*D4@iG=#cjE1vyhtrD7KT~|Nok=zf6jQa?gLaBX{_U08>Tv#XsUcmEhisn zJ{xgpqbn*_y&W0!!XL5W5Pp)W)EM0DXjy9$z8=J312%llg-Td{1OU)+0@j9L%9+6+ z8E-wJLW~Q&UDyfXj^l(BQC#3Bx8}-c*LV8dZv%eK1luj9t^Li|szS%u`%81P#pS2B zTe*iyM$~#@^V^N$#F7fg12(2}_*=8AaTc(>tE~D^(ONR8C+|(P)Kt~BNRM8#) zt~}VsVHWm;OiZ?gi4ahTa#y%?5hiZar-SHakCgF#9laEAk&|Ugzm~ke%$tncX4G`L zG03wqmpUWAJYu`6ZEY=Yht=RHx>YcQL<;+rz|OQjPODv#@3BjnbtUELk|EiA2$i&! z87tqICM3Q~VvEluGnT&|fJ@clylRQ$Oz~=JC`m>JQ-)zV}Clp(6H3(dXx5Ai|PdH z1W|szx+;zD7s~G@f?3;s@|WPPuoPtj%OgOSpHDJOXW6@SX_)R@mhK0R@oOEQQ++HM zB#UdEgPc0*OI|(z_V4*XQ4;}qq0Dr-ECeZ;yM&>=2zsA~{eTC3XORx!tR2Ar` zHofVMy64DSw0Z$eUuest%77~**l3!6&%v&JrrH#D50T` zUxZ-J0ZcCwEjZWf^Xy#!|cT)09IR6!BR6!dW$Mo zOwW43hoiL3cE7B7#o_HjgCILT^0(E9BBD>J44>vOWNhhiK~goRq#VNmG!YwVt(c3H zB__d39;44Ap8xA3&-IKdn?DQd1L5~F%o_QGD|E&*aPWWi;TC&!qHx;Bks{Xf&D(V- z{@y)wWB66Z0p4Yaab4}mQnKZgpkfV~grvKx*Jq=v`i2Gi3%@{?gm$*YVDlB}Jpp5c zQnK(7OWX>KKZYdR_&aTHv+G>;v2o^ASN%tpe`pcju{7k;mim^&K~s5?#k3!^N&B=j z|AutQIDVLUDSTVoYT;A~^uJ8%)BkQWFQ&EYFZw)g2>yb|hE$sxEBL-#^}=v#{YejzS}Q7D zOQr@Y31dwG6FrsQ_%_mvrTJFo3l1B2>9V4!KK^eQ0)PA5TV4OS4GsYCI1L21n;}`Z#HVMPtU?WF{`&Pbe z=@8K(JTGa-@-tJ%C$rK}lH+L2OF?55&--9aGZj02$c;QF`Olp`PR!*}xCV*z?$q-txeL42aiZbNB6eKZu@);>}Mxxjfs zkYSmCB7k11VeVWZ@b>K1qKh5!7k(&$_@o^}9;Q@ea~ZA&kgTf(H{W$Hwy7<~CnhPg zf{`DCi7{Nu1TQXyFo&N4SAdCDUm$v<6ak#Ci8wooFRtZ1AAn*GT+Q^tNu`}<(G5I$ zCj1K*&Xam(w|4&UedOWS%#Y!EL)OCEb!cu!{m}a!jRoVuD~&NM=MNo(x>#|1@zLs3R%d#|g^9@QZ{tH4<0Q5DH~tsKXQs(C z(6MBOZ3CG4tu;lA!7b`k^Kh!D^jM8`efD%S43qVQTAwB)%CCHRRvcdHqN9Fu3)Dm& zmQ66}21W1XlH)|<`EO~&iolUOwG0iEf28{)ITT_AV9j=Gz1Q(VBMd@NdBs73mQVwQ zyYyi1@tai3c&ExC@-P~mEBe+})lZ7^BmWyyq+>Knzw{c%Ko*6D~9!}<<~p+62OC6g>Vy^J@YLrl zo&S%fw+d*h>!P)x&?2R!P~3~VyQR3hLvSbrcZUGQ-HV2z!71+U?(XjH`ks9Mf6nF3 z#lF}pYwtDYe8!m1nG*=Dm;Ei~D7{9*kt5!_o4(d29uJDl1fUQ04EW}&(gv9plc@P; z#hG<(Brm@@K4>CX{Z5eL%5nVqha{YIaj%g-t$D;DmkmQ~GRC`6_j_-3YcWO~juRF>)iS%U&OfBtsUjU9h^G?d@ zgSazgUVQw`53;+vBEQbys{2|}4Vq_V&c_9T3Xa>@SI~8Sm~8K}S07jMjNttdc}cA` zwTN>IBHE7wq*+atu(PvrCX)m%P(dPX3!H>%BPB$J1`WyhqW^26UU&597z`0{K|fLF zD*c>hdsad5i`#oIc-8R+TUF#a%1<&YBKj$!`BQqs{oqXf&O_wx0c1UNf$P`+6|y1T z5oi>$St#<|CO?(C;qXo>=gTN+!KPi>(l1 z=)GWPj`0vWNq2N~<2PnDcd8qB^&WyT(I$eZAzaEUl|0#mwOK__--v2bgP>rM&Q|Qas)3m3Llip1UWd>i#LQTGA zHLj7c+Uy3;mR)jso71=U9aWe zU26&#R|W@=O^C|ISVhPkgrlGWXF1MaJ2iFf?p$LpKNcZg?sXyL7=SlL8)+%wDuq^_ zHRK)**`#*3#E64-qhk0UUg^%_2<^N`_Dk(Z3_fuLWSTAz(~Z$;*z832{OznTH63=v zfkm?##(-^Fgr&xDn3 z!`L}O4LWoWh^wJTx^apWu50m!RyJxD=3Jdkvx~VwH~ucb=54YjrN(2)7NH7z*j zS3OB7yZy$>hCEYeB1o%xxEI!!vXK}``0cu=?FRNF`>Hk2*6qpP~`02+f{_`E{l1^XF0;f3e2A$WUumQDbcP1;f5;k40hi2c=u!L3%{PEJQK~2mk~}5 zsU-+l+t)5{U=&l8O%*z6&a+o%?nE(L^_QEPv{NO_lU7Hnwj>21e*NT0vfqf+tSqdP z>Pxp_XHLr0b8rlD?&PC#uAaG#l#4uw@YobWO-4ehtekEt%|pYzmdd1Wg7f1tAhx=n zYv^($Z+Q6a{O(zHbZ!8G$SCfcCMY@Us5>UvM1!0~ffH)F*0YVYH1wiTAO0dl1c5CC zRU`jo@V>2gqw@-Zi8NLI5KA3NWda%*{={n^mg>y9TQ(54XK_tSQJx_xE;6gRP2FN^ zFr5)-sL`J>JuDiT3W3^KO!|{zEzmVF@ztlR)OYpTYTYErHKk9 zj&zEF9h4hlf|Xa2z|M!1p8spYDne=yI#{7WL+`Y&q*{KP@jKohMNs3T9ev*pm_mK7 zBiUxSZE^HJxcrWn+&1(r67)#YV`mXXW<(9w*zHiAazDC*XSvO|(_7yw zcdLMT3+;(E!FsWya2jtcM*mO52YfO$aLt7r8(L}hHU)J}-5UKn6SYkA7JY$J0IZN$ zSI2ch8Fg@3U6}1lom`w(e4{b@yYUWtQO}xN3l1MW#h0LULw=@`xsG=`;l@h3rP>r9 z7L-^q&Vo+Kdvk}vDnK8QzE?a(kiZkm5ZE-G*LjSJO|dxhASsaja$I$0YirUeLuuo} ztOQ85gv;*EyDo{e{dNion%EsIFhqkE(QwXPlLIA7@+O%$AORpzzWWl&?bm>FFoDt! zUwR*92{&M8=rF>+JWJvdU3q0h?fhct!sNfmSIYWXDNgl{btrH2^UDQgY>^TzVCjq} zRqro$j?EaBTTiA>dXz)2N$R@04q|1?C9>D7L$JzPDH4+X(|d9;)=v;O>(XG0TZrXL zjj2G*(;VO%kWsXM(2-F*W%%}4^J=;P@aL5;ah^k9F~mgeOch>5mv}y&rv!aZZQl7Y zP5Dtd6_)5egqLrlmGJ3j*$8n&G1&KGR!f?>IGNce!Su1{i^?rbIk)=5fuLy5*D=k; zsq!^sbI2y-+;L(ng0cH>*N!W=vHj*NylM}j*Y1LE-pMyBoFbh-Ie&ba3m|2)ek(zc z_1=NQ&;!@v(Xv8OZB!kkf0kJ zo)4@%x_tvjT7*h7)H4Jqbqsy6(Nj+%i9)gKZ&p$1)ENh7FTk#(ONk=Dix7x!;f92FTzF$OO zf(DXWHaB&~V_eD1z4K@r0PFFQV%<+Ob{n(Ut$>d2tpNAs7G4mEW#oB%t)6M%m*{Aj&l<}n)JuZJ^?zn0%RVm@PA+kj5<@E_^=yr6$b&j6oPK}43g(Jit-tw zdAmk>A5&ui8O7GboV}Be6&;;sNJd(gPmEWOqVIKJr+>)Y^L|dRwK26Ep~;%z6L6rj zvC+N0rv1(r9~kI3n?9~k;7KS!SBFO)Ne=lWwWC{Zn%k2v;zBb^oiU2S{zOY57U*H; zJb8~bW-4RLqMkms;u#B<2@a9?wy~}aDje)1T;U9q{H{k4y~xW)F#{+UP4bE?qmJ47D)R`^BTy4pfV+@Z7>(I$)t&b^r>J{6QusSKG#;c6XYL*ppKbqp z^zzW_=WnrcTmS;&Pw8tnj{k@7*LlO1$>K-@_K#Ec%X?Z76ZWY?IWm+yWdC^Co;j{X z-3Jc46rQ-IjX*5;r_fg@%F3>CCbQGm1O;m556a8O6d=b&-SvGjGmL)Q`jIo z_J8|A0=ghXy+aoi{L2s9K_byjz0r@GlNKrq6vuRehZB-moj_SYw9>4q-@{80n83l6 zqNreyvsc{RcAxDLmM8Pg;H^?UuJ~=4IDEob|2@a?USHU=W>`}C`M#1VDaHA2zuDoc z#il=Rx<|#GAX3$+g`D{3o7F8c(x?YQqKKipZ@hfOlvEo9i!kt z_g)}X=gB!^J9Z~TlPe7&vHSD-P!TItEtjzy-7jKVpwV#o(Fh0{nXPbFs92tT4omBDe%SM>N7BN-*zi6N> z73ZVY?*$|~uU~1~SkiYof1~rO={-S|a;b|D@Vq3vK^u32AdyLt-VwxRd-+(~G;P5} zhNAfUS4owD;f-tq{woz`*HS7;Dy7dS?q2eL9JJS3(eiOTHbA@rj<89g*VsRYA9Uv? zmh*cC9mYF}GAm7f()^wcSWP!C=&HIx{Jv!h$}!gv86K)Fn#f`N`}RdO@Lb1^#&oo= zUr2_zfp1v4{ald|WmX-<3mKYu^dH6UowQ}CkQ<&D_n#PlVE)v{x40m1V1bW(%+ zr@M6gkYFXHBmII5yKrqSs?wDVVkgVNfpG;FFUob>=2+R&Jci6VEw%c~wHNJUPW*`6IQw_ovJ9j-VeOX|OA|Lbdonxy36mN@zda_dhtH(^2u4Jn+4` zmcHoknyUR9($$Wa!h+EA*zUg>Z*u>^HCtHq!H4}7xxY|8 zvz;=;J=%=G;DL`JN2oV6VzEz_a}A|qXkIo!zIXQ%)B?MR&TFoq%kY5ts1; zh=}v&0%EtK{F22}&>{d~=>0XWElK*!%7h85^egPS34O}mSK7Mw1-AFx!KBXIY_(>t zcZKBdk**X+Rd%YPQ3xlxw#<8-1`HXKT++sM>hbs4J~#T5?yS;(Lsf;~i}bKY!QVNu z(Z}(n@eQ2cCo4!kjWDC*+dZB#v|j1OK1$lvZ~Cso>TswxBOvZ!XuBT7V^cHX9d}ga zaZGwKm@0fxYvW~OODXNQ9og;LYGUlo8-4ploM~c|PafqKtnx{n@{61s)*!(plp=Z< zb0&o7_$|#+0nQq3N{YbK9h;={1?@KLgT63b#9tBm#_$gRW?h_!InqG%tXccBHUf!8 z=%Y!CgJ1F_XprO{Tj(<^RHK0?dX0UaFf;<6JZgA+$%16*wFKp&%qX?rrI!)iT*e zC7|NElBi90r3+`)P(!Y){tRo5+)}&f416+@zcIV>vPUWJMr_Bpv^{Z}KVaUFSoO+Z z!urp1Fv=9A4rar+gHzVI-3jXT1Q5zyg#7jVSY0VRlOA%53@$eaPAMiL+m-P?2=&Aqz$$U zK`xrmN7q+HuUA`2B9{`fOZxjlNj*~8F{C|G*%NP4&bh3x-{1lOOk925qL6|W0Rz~h zN>-XE779EE?Qe^P17Um@1Go<;g~SRVO?EcHK3aP6GoSH(osgYn>3NLl?XuIrh^2Ri zd~s3P=s(z(GAt_lqUQvwU?}q0{a$V;f3ZNETkNWybz-OxDeL%t^>^f4>ZV+t#T9$v zv0X}m!;0t=#a_83bUdo$6|Hlsy7{iU-R+bJBj)aqjsU$m@4Axr9}7|h)3lU{+uJ{W#u2Nm`sb$UQ6v4F)9}`G5-Jw-l z3vr)?p<$Voo5Nz^-^I)_3)_4;$!8C~^3kw+*uX{D)V@aTP+J~bMRjG($l!=QYlhxx zMq%O>iEB`F<^@UgNn-mEDwQHAZbr>I0XQZu~R{h$0yyJ4Miyr2TH8%$jDueJ6XnaB3EW z>6xxj1D@e}*KjZR<>A<1>GpICPg-0K^wM-qF5%kO=kfSaJI#)KrbHgyIxiV)S+4pc z2X{!_9n~aa$PZzIcaRKmZJ%RcGrJ!z=7)u=6#_B?&;*g z9ynM%ML2oU^7^S6D1HYQJ6~(qE#9%sJ|h}6tm8E7#Cs&G`Uk*MAi$O81{*Rtp_|BQ zF&`Nm7O{}_Y77)9Aid9iLcK#UFujU>7rM=U*myz>ce!IGgs8FnKdEzzjn#3SacCvo zF-P-~+bphx(r;ZnxsP$!5P`g^BYSZ2jy==|an!}R8Nutu!52dEDr&)?a;~3gl_=9b z;%OFD1k_w;_$=xp6j2~zBb`Iwc4lTjP}R>StdEsvE7Y{G#F1=&!~eQUhlEc?MC10n z3?5wOS7-HKZ7Bl9`*neMx$O89{<-|UE$tddzZXgP&KVL3dh^O!!7cy6EkK!D7RU3B zv){bx%G6hihiz?~T_$FTobX=6m_hje5p zRN(y{HU5rQwbID4m`8;EY~*|doKv7^s^dVo2RHSW#=hLQ(PuTVe3N+fe?Re>otBpE z%IbX@$^P@6R-haZ^2lyVugI>I)3X2&6I~o%2EJo!12tbVAVsF0Epc9NyX)?Sn5g!wjh1k0J~}5}!IM z&kI$Lm*ZA3tPkF zbic3$EHJ0(nV7Qv;Efqj?nXe=y}W+x_;5*~$Zt_h>OZgpbP)tX=bJqWu1|Brt`f|Q z50yv<(Z}oaD;et1mnwXs$BSq*5IGqz>KVo5FhDzs2nQ5u3 z1go~X+#Wp5znA6=xY`(Zieyc(ksePtz8}4z3pedGb5oq`*cb#X^ zPiBZ*$+j;hkE4?E%$p=-*j(x4Lom&e1uIZ0swZTo&u#yP>f(M|Q?jXE@=g5!jQ1~a zOwcasM0#v5Y}~h<=7>Qtk)Dt}qqz!6c3Ec3zKk6r9*2;}jz!!=`e!&GqhxNHlI>cw ziMzQoYc>D-_h>3p6S92fihlso@hMv7O)`U&*K3;Zv`tRq$y3{_ysC=gQiSmbdn!ZJRT#^2R%$UsqDj zrX_aZ-vLB_o&T3N<|~s^6LT=iI)S5$H6lknhxC;dfS9M0g6v9Y-V`-tk3BJt8>f!8 z`wo{rax<&HgvG|sbMCT0W*_pKxjh0{SB6?ePa9Tg@1quxk?JJI~R>U_UA{7 zZgfBTSGvsa(=B<(UE148Fo52>A18a+4`HT~`0Cy|H2jHApws>>rBUBWh#k51@iyg7f zObsnp)xF4BFjwE|t-ZG%3Vs^CZT0x&mOomZaM;ik4VI1Ef~%4&vryZwnxv2U-oDM)x^&aUOhQm4MdK#w&pK~fiA`qqx)jkg&!SQGdbyYpUP z{-EQPH;l*M<(m6u-<9-ss?=RG^qs0Q0ZB2isUx&G6Q={c_CGk*gw8=$q&H5hno^Gt zowH@EhVBMu2m{^^nJlU@qm_Xcq&?yi8RK8EHY|HDMHOJB1vIzgKi>u$;mnx9$<`~! z^)*E+w67i|lmWHj#18_Dp>soA8D&R220)|1U>-ACp!b4wP4O-(AlmfAz5F1bw$p^i z29k*i0%~#GGBG|G*f^Q)5A8mj=}9Sk6|rX_{+CZW!6nswU7Hf4hY;U+q_+|*5y7{C zx%}B4eRSO{Iw6lRM)>j!$ccV~=GA~l^RMEipC$I|(8N{cO(lPWeRd9I;>;m~)GJGB z-c`EnjWpb+ct_7ZOd)?UV>Wv=E z4JZqUy(t+4PlNxbPg+gvV!U?mioU_j8>A0_a+hj~Dgg)p^^kL^m*?N$0ctfJ%?j6e z({>%%FPc5orCY27x|#|FEAzSb6@)J*Y{}fQNk+SxAq8F!UU?fUoz+7Q>((hz4l+ZC zBpi^&?Iz^(UGx;1*N@ULe`qfzseFK*D0_Waw`ThRIR7zHaYpxt?^dLBU9{VUQOk;8 zf`>qibJQ&!b^_NgTM_23S$0$T?UoH}MXH}1pl=YVh3g74B|q?9P~PRI^ab6B+Ys=} zuI5Ioms6Tk|3lO2;X9=qlM2n;t(-t3@fA5$=1*EdGdKY>$C(@IBAL><_ZNwORk3H^ z?X|8oIY_+VR*n5yU7r`||L{a-4euN$6`t>b_cBO*cAizOa@RgY=`0znb7z-HMH0#l zrBYgdY--3NG7Gqtg5-D}2tScGwq&#|C?1yLQN~5E;zInD7uZ>Q3WWi20rL%fOR zHNIPo5llT$jYfXcNR%ru8Hqc9Y|$)0Nu{GdGG zg${<@pA@}~uQr+9@fFHY7=7>{=1{fizBW@8z%HWRbfvk>PiR`W3%}k_&05*}YLzOe zz5sT=D(Sq^<(Oz&8-$1bFA`yNaoeK?d(ZaSHLJ!qVHtqzCdYd`&DQHl)1!goc6pzB zaB$2d2P8SzKJ@%`1iG;A#oe$?2tHdOWumkVf+bWz7;K5Uh99oYAz!15IVb8|sZbn2|;sJq{b$k|}ovuC>hdHjss8 z&B8B9GGt$Ib&ua4;dO^>LhcHvE`Z~C4>qPft_&U#b9+I(xWSYMu3ot5$dy8~86)$I z(iLlF!<9n8)Rj8V=e1Q0PG_Gl@uYKxUWBlB8{V7yrJ90XC!7Wfa&71kOuum%8~(wVx57qI+y zp~mkalvEC%_)aqSo9)qsUFLTkcF_wznpi0_S{J4W5xqjA92hLbPFPjy@XitV%6DF2 zX6hX-DK9Za;n^9TbQDR@7ithP5XPTsrN5f+)lGM7fcFey6g(^YZZdos-VWYHbM-&R z9Hhv-m$!%HN4}|oo9X$$a}ATT@!%4r2MHH=MpEzjW_|i^&prvZG@vftL*D=32=;Se z_0`G!&$(+9-|MR4P)PgIrv*6ZvY^4xDRPD8S@$pa!GWBF8K$No^yoj~h3J@EiG}q% z&1bm?N95uFZlxb&tGR!o@&VnCz5TF53r-?I&<(vIJ2Up4-Oj5r%c&|D+lRLU>mWeV z@W)g<`Zs5Mw){+xc?C_&T{L>R|1fw{JrYe7CZD@$x@$Hp=jjj|o_6{4TZfmMpj2U1 znXoIZsXA~dM?1}_h#8I(LI5>?`EC(D{X2b?eEwC;bsmqjL?H2`HM(A+=ND6G~JC*5zIy&~5HW%MRqt4&;!axs|=;?P-Xy%}KotA?kV2U^az zV_dx5spLv?-IhD_$@(MT`@7?t)X7S$yr!TqrLniKqoXN^v!OoPZg1usr;DBTkd)&0 zq#Jey*QlRCucTUh2)hN*8?CEge{M`Vj5NlL7h^Ag3Q5su{=XkBtrrUT>beYAijh@8oG3+mr4#1 z@UO1k&IfN zYmxRzJJ(@bry?CHDHw;Mrxz3V2C))x8X3h8p6Fby_Tg+U>ldSwz%lW5PN=+0z&bo~2RJT8doo9^9F4~-)H0>=}mG1s2LwG$bPI`4t z3u9OhER;WzQ8syWBjhGH(a7IF#V>wbl$_50z;PzQTgL!-r@_YG%9HWLcW(u5KBJcN zJpYE#XJrONtKZN5zXlB${Xn;7P$F#1dp?+q1g9Ea>s?4Kfp21IqT>mBGyZM)!4|Rd zmHgg3;>sEi@UZ!!C1fgnZY>vZZ-YfKDsNl`OUa$7(+u^n^aHUId#-W}XJ0`D^CO+R zKK%5%Ji~-ZIIZ9=3^NwYqT`O$XYU2}#i?`VciJ@-gzHK40xu{;t~t@M@K@ABA!0zW zShj8?0IG`?NV~MUrH%s-`59x_%aL{$3fvVf#RC+-Df|-5U0#>T$o(o@dqfE`0~uZn z?#1rt=)R2)PS2r}nTNKy554fa@g*F@PmG#3w|pi@qfYLWAl6Rovwr*|qmLuRKlp8$ zk!sKJRdFEkb_Zcmb0EM4z;0T)S~;9w&`8lCX@B%IYl!iQ%bMc^>3!6C!W(#|q(@}- z`@!~>^YEEvIzg#%LrhVm^I1Lp`x4@d54Ex`>yo)z;LlxuZz9y?re^Dtkhqd!(}bc% zjaxW3gumGSLE&mdX4~2B2LpHs>lQjvA`8NcrBO}NNuJStXdSLKr&eaE#rsWRK5{}W zh_mG~q#K4w*`1fxRvT({ZLzLpUE_ReJ?P!drm8Ha5aoo`MY&p+B^I%b=_((woQeV~ zJEjo39AY>a+TNaRs5CNz&H?93uU)ZDjTU6)CNxmMLwO5JzG~(zr8DKAbVuyvAsQ6G zWJRAOB8av#yD>70V_y19hmb4?4!xQ-3_5yn9}dxBY15EPLbr>lm1ecE?4Q z4r;{LC|k5+V%lL}8!swhml2{5zUXCQo|6U5mpf_2vW?Fb(7BskH(chmT~0(&PgbPh z$3yFB_QeLf1Y-}hAr#j7-yiC6>aQ0YJ&m*SM0K3t@r~!?K6W15R46H3eJ$TcNiCBw z1}3Cjrl9^cOYjY)t~hSaI?JE1w&xIP)DM_i(){Ulb?Cq!)7?a`;W$tDhgMk0Lv33p zALsygh>Zo7*T|{ZkSOT#niT($A|>wmBWSl`^-dKWrU|%D+C4x;x$p-UXbV%!7SzNl zrP$tIB~0~R=AbI6vI~{cJ0~T&vN%(Hw#8^@?wb2+X=l=)Dyf{0kuwfhQU<@d4oipN z557vc%&aSLJjD#-MVXtb@67l!5UPawm`L>Ro> zu7}Vugao-1i)f|y;`d}qq+P?mO3W23FL30{Rf9%PHbF0KY;;D=7{>h%Kyed)A=R))AEbpZpIgpdNKrsbZ(FlJk_OP*G2WP(nZ`Temo2Mi zu%-S^p*AW|E&b91twbmUOkC@w{S5nkv2gOJVU`pX=mAS34W=6Tj?wQ$@^o;lG z+q~QZENf(RoiD9!rGLEIx`ACh>GByA9;;+(*AR5#YnW;(v#@NrWlOTBv{^cNK6@08 zIlkIAUnQ5Mj2{Bf-ea4p%-x;wOWT^aH0l`8W@8L4Jtc7?pZeLDE;m{071Y?X<;d*D z8-7w=Ph_a~RybW(!1;cX`*yFA;gAq_-7PEa38W(t|yW`HlpJ#>M{Q z>&?(XMAH6@GVA8x`cg-bZK({SwJ@ecd>8`+Ag{$|TL#oS?on~MBf$xq1fMx zo_r#q$j&-;KSfCUmA0+!A@@__)5ipV7IU>Ex{EDrdw2bj$Jt=3w@@&fGFKS^nxN=} zgU=51IC!3;@y?J}u%O7p)OxUS2DZLVDS(^{>j?_0^aXIib&P+MSFqns=U1GR{`@4ZjZINRscY^3!C}j(cf=~Uc;*H$ zExddF-PCkm6)e9of&?bxyZMaOW=~gS5}$i>v4M=+l4QMNQQP;65&CpyQ;CcN4vI>Q zE*U&YRLRu-Cy`*WTHUcvgs{;gh3Ib#6ASOcl&=i!kFdHRg&X(?wpC>h$}itG((?Hs zp~W)Mq7Hy&Yb!!%0wPW!TK>`SmbPMikx`ENqHD3zQ%}}VjBs@Um)xq8s zow=_?v;6OFa9-}k^3P=Aa>Hjw;M*}_x$_94I=RJfEo>7rljHg!Td>V>Z;G8~#Wu|- zEqDpL|0JbdJmr+A-mvLN-@FN68g}=DbX~x*{TdN_IWX}k_5mG|tVc9s zBKljpXAfF(P{$CPP=EzGD@-1cO^q=9dRGvJ$6Jgu;%HW+FBMT4_><~zh;0; zW9eBZh@ulZX6qita%t3op1#YKP?+E5uc#8pb}q)+nmtCHO~d$o&(88h?dD7N&mLD< z6PXwbSPl5GC7p$G3ZsUM?09JKN4lEqj9#_z0|EFzxI8#bztRSq&zLr-O2gh7r5?cr zb1eZ4qk<7fhn4##WAmKdp#D?|6HCr?u|B%O$q(NRtgk%YcVHcH&;Q`!DrErg%{Smk z|F>+|FR(s(T+tuVoTfb(I$UC(1MPb+2CQK%f#-N8XL7f>U|6u`4yEE2Z z8u|}B-c6%}^e%}Ziut}0G8iAvOz zQQ2T;%4br@)X|LvALsR}uIwG}^O>;qVCBB_X4DV`|Cc-{{@s32_Qyp#`sGPANGi<} z>YVZZdRVsx-JO}3Mm^8em{4vl^06+Qj$j|6nVAzi$KYLlq-L$YjGgdksok%&dm9e_ zmYN!-1WDfgd=m6vJ(Qw;kIgFZUWAv2M2}@Dj}t*KxzEu?iO zInRL+2Z-N`{%iN8*6S)HASI}9T ziT7-|o@x@R@phh@<2*MH1Rr9D&3EYp{NbfRq}%^fyZpNPrlv*=-IX!Md?HH66w^mksSxc0%YyJ}ab7c5dRVs2gb2uq&n!Vl zzDD@Lbf^>mwFIA%<;O3<#4%lO3kpgH{ud4R-;dQGau|c<+cnw|ECN#+k6?btt_iG9 z$blvf(;2EG;-%AVJz|N%1T}BJMTO*8TNDj-2%Ao^;Sog zobvxlg+zLZUhZ5T>74+7J-uB(Hyi>bksu$wmKLUlcyKm;!Rv* zUH05<6;!PjUj(iWvar&TscmLyxO*wX@NGaCN(g{Px6 ztYEBjx$57KyeN{LDqbWKfA5I-atWRs*582(&N&Tr5%bFe-YzIaRv5UG@Iabg$7t1& zhI91yV1tO#h?|RWgm>x`!@FLXHCAJM%(SVe@rm$lMhT`uP-Tz?H^ek;$*jXo!r7W7 z)eVbb!+sJ~do@{?mj;TDr#ZR%!a`sf#q+E2v(z4NF3cVzQIZS-%Ci?-(#rytc{8UO zxsvST9IuLg7Dw;rQgCXnXUbOTx6>60Wn?1O7T=e~f5WjgP+@bI1ynDze8V*x~WkGosfnV7k7iv6O zwh9VD{m)o7;}i8_rtHos)PLyXC9ZC=2duybV9MA0tO;KE;ltCkGE`KISSOiu?3^dr zqZQZK&^|2p$|%WkS8krt6nP{*f}2t66NUgk2xlwwR-;)vCO#+_uIF62X7jcsBXf!w zu||x=qbfq1f=hcc8ByiH84Wz2JsssiD!U}IdyW{?p%nX-s8pWs{N}&h3p1tP*RR<-(`t!tJTne|I9SpDY=?gy^r(h1|`7NrnBtpDJG270@f zwOj((_J@_Xs^Z`fZz&;d{zYD;*y?*v!4VLlvgEG{cgOxbwd0SzR<4k9FT^L@q3 z9ut&e*fIYOP))jfoM4Rxid?=^Nvy;{{4q-d4<7l9-aqNK(d9FG%S|%S@TCM2X?!Y0 zPgw1y>oG&T{ZcBTVCKM{O*B+WC4kd*@;^AXQ<2hSE^Ln)<|L2Lj8?&Pbpu>C)u}KgEm{9mmAnbpIezpJ5kIh*0RR ze8k;o^29$ZI)L_JpXnwYQZv{PTV1 zRjtkK%`86erjV{1z`b6n=tv3=;0c8Qbn9`k;97>xbhQ4~XS313H4P5v&YfCg|6X0L z!R`LwfaI)zTnGIav-RNvd?bWz%=%ZAjh|kTu#=xCt2IzP$^0?tKfI9)@cA|`Y zPg3)BOq9#R>#1e#g6QSeOCtB-6tRA5qqw|BG;{eh@ugzQ%z%~Eulrr5ezr{wl(+dWKVcTMv6}3m$DB&!wwfgHNDo zR1y(XCG77tyRd9~7d@l5p{roa+GTkV9`7$akj}ZNDIsG=4f%P~A^;y%0~>7e2qTD2 zS;%o>_fh$t6f{!4w8`Y?-V<-va-6S_S{;1&9!X5Qc^ijTnS>RhSY?=l5=1Bjb zyMJXnl&1E}8$%%J)g>&%@v`D%EA%zWX>;e{%WI$W{G$RWYrn`qZ%MXdcVg_2!CKyS z*+=RvUi-nh)k#*x-E9!NJol!c50cw#xOB_AvoPDLV9eigoLEid7!_M?7vE>zM>@e7 z`4G8XnZr0ZPZpmWom$m%`Nf4>ir)utjyl#MBM;!kyDw+J^y?z=rIYaz1Y2q0OlOL0wc&}A zY3jBZ15ptDs_DP2vBO6H5FY#vx6At5RnGvhX#oE+&Ocm7_~kAlQmBSTq<;X>BGw6a)B(yoI=g*&jf1Hym#2+v-3)y!GThd=R4uHQcwB#+N^;^&SXOL#=C_ z21-uxWb;d9Eg|gtv7?Z@niNh$8(z4&hoBWXbUMUl>{twSDC5piXcmY>x5U;+N^PxG zay903L93#Z(xP;$Q6dzOEdCf!Mk=l4h^+w%ss~_KW88MYS4KtV*i9I>CDkgBSWZ;m zXdkHivnueSt6$^uHze~NlDX*OV^YiSZwYG@^`M|Yt|*z^3I{AcW$yq8$9hd}OOyXo zF-LyB@1+|g_2jltc60?e;W<$)P@(c)^9(}A7@3FsV@uk8rVOv_FjB3V*J92y{$=SAzLfPTBd4ZK zpZrgxmqb?!<&FvV7M(Q2rG?Ei_BK0??xZO=n45NLO)~VzUAq<(6cGb6mE&2(D{J{6 z3NiXYjQ0~;8(1hf<{$QE&itG)yAZEpB1n5(f$I*Fq#@eMqnq3ku2MsMzP1M32&T+X zzY^uF`yZtuD-M1B5~1F53VMGyMj77w{o)a*eOmS}ccQ!eX7=4_Tf5LjYnH+dse zKu4#E*~yBJ1VGOkUe}#9urOUy@Ks-DLNX(;wSk=lu(NYnL=D5oU@}H+&6!nr4zcHf z=JMTD{!Dz3Vd++MK%{1+J-p)(arc!*TN^AH&pUqpNJS5Saj9z|9cct}#nIim?PT0{q%}Sf6QnY;q^_76$ zk>hgywWO|R%18E!xjkL6>=qJ~&jCY7ycMDS?{py>Dmb_}YO6YWGWePFuhsSHXA_RK z@psRtH)(a&lrsgP@*#$Gs~^hFbKH>NSbw6tEOyZ}$eYa<>*&XqdJ$^{x%!ek?}&Ln zg122k40;TdJ_`8C6c#%PL2zH4cm?loyR)1PTsNb6#k?)-a_~)UyA@h%qFRjZ`r#@S zu8(8|!#xB4aG3kn9c*CYzEg7>-VJqRc}e{-@V%lIw88=W?^4Ebbu-^^t>LAxd~ukG zI%F$EoUz(;0g)g={A~r?44STBS_M~$u0pFaeDj8kou>QRErsuYKE;7+0hLNQ+ijVT z>m#a{znGMBfmogc9?NVqzh@wI`^`bYuE_Yjf;*)0bG&=At}9a4=3!%Yx;!!3Dh)Bc zn5`roJNhV%uQY2JBZmR#h8hmg{nh35@h{RrE!OFAlsU2T(9~)m&zRyGr=!rt3--`(Cy{Tv?d^_F%(AvTM(V#YL4H!3#i2f&e5YM3F%})Trpt(NT zckf$sni_jbKwEOWff_SuPi0t9v zLP4rjJ`(3)YG1?QPO#pYDR!9%OVXGC%?YL@?}}G7S?_f68fkTnR5=8ha4af?0Alqr&L4utpGmWls zLD;Y_|WsL;7& zTOiUz4|ORQeg2LmNBIq)7rt5&uv&tKv$GJ>CSdg_r)@3dcf2F>Va^sd|7qO_KFQpF z6&SS}FwV-y3rD1R)<9hDoX)0_IKN+BAMCvqi*j6_9*<#&vT32c`!Q!*f?nG(fiMo` z;kHcsm!pHZjM+vM&V4%>hnPrL(5A!+=RJ|o|v^Wn^I-g6c*qSuWltKeuhxu{*g++5ki z<)}42X9_j#IhuK9n${K!&Kvlq1lFd`0g>A>@6RK?G-@-h%35R9Z92o>9M*L-;o?sQ zU+HIUYvFo`<_%hk#5lRFxz zbS&M7bc1wBi8KOBHz*xTFWm@BcXuP*9pC5v{a-vUU}hO+7?|PSbDis4pTi)kBBx_p z=cROkQ@FZ&ZSd+Ela{37@+uA#9r&msE9xm6tu!8%Spc}Pt-ng=&!isZ*zL7$+ zmG!G!kU7dW37Yp!zu;C@@|K&-(wE}AduFapEYK5>QT`1xnKAoxfr=7CA?K8A*exxN zU-utEL+;~8o#bQ7f*5mJd+X~$oXC_dz2E%haH+s-{Y9CddX4`f1XJ$ov{l)C)l7DI z=km;#(eQV%T20#g99kZ6;q-7_=7?1m!>}34X+t12o$gp$K(ukuwFSG-GK<@b*!Wdz zPEP5%(zGvg+ z6Pe-Hv&5`-F)>#e=vd>#y|~4Mi~Z&x%`U!ibH6N$=izzLoEywQI1q_*x!XmJ-tH~|^xc4D#j-Hv`vJC?6 zX1LB57e69N3DQ6G0PofLhEBE>Y~%%GH?PJT?7PrFsyt+W^I0?!Ho)3ZcvU z3{MO~dkQap1T~}^u{TC`^n@{%9~(x;F-m4{hFKMMxZq+#>YUi z`w+pPZ3kqv(kL287njS@-xtRa2gZCc_u2*>iS#WN07@#D3Q5-cV4zQ;Z{<^r=f!0f zg`6@ToG4)N%MO!1d4GDzzuR1V`mn79l|O7Vk!12HnTdNCabFEZDg2LenrD`9WKEIZ zIqkn8`H+N-i+PFavJ5g9Ww7`DK3(kuVmERkzCpOS-zrE@%EZb{OUr9guSuQ|MDwCW zqpkGWD_&l8BFjiAm}iJOJsN=gLQ;5#gnw50W^fcvL8V1a6y?zo%rn@S*PYw{dk8CM8|IwnHh=I_O~4XpE2 zFd;nR8?G)5^}Le*A-p~3iXpA+?l$l5QMG%GNrRc5O||&uLmY;2#SO;mL(>LUWv`-U zA>WGfesEVasSgVA{igr8>^e7swymiz*U(28D^ae|rEJZ}TMdusDr66e%F$7gkKe0A zXORhC3gi2&In;F^p)8=-y6d8R8Q^4#{fjwnE~h@GnVeO}DguwUhs7*uiW&PSl$yBI zMMaDmk>H=(ftn1(db;my7>VZEPgPEq__V1aH9Sf6BvUFhw5bZm#p_qC#Se78({$xD zz*#G9(q(gLI(IuWk?W5{QmSQz828esE9GSkwST9DG3FxS?V19g8Z|mrQp8y1)(xu2 zBx;;Br3^x-b9^j;T|tcbe3a|RxnbH$LV>R}@4<8tFgN6=C+?YNVPkrNUEVIQD%^UI z^oy1D`xus!M!jJv1e=3t5*4=%aX!JzNu7lDd7nw0gf)nlHpE%tuElu%Z$Ltc+6Z95 zyCxTTZ4tPv*fSCk?NNU!dL&KYdV>AW(XL}L1S~a1QPZlDyRqt?WK%Bw%R4FM$ zBt`6f`Df-N<6n~J zyuEsSt*Q!)mFUn$8-oj1=xIeCt?G2(y$80R>I{t23A!FEdp1H&3}3z|l|4OWtu66P z_GLXDCdzU`7(|=~X=Ah+1E@MX)9E`{dHSPCEw(Y6yS5MQ^XjL0mAa|Im0RNb3&)o8 zIP+qCOnkqm1W^7ETz_Ie|6n|vSu_464Q!WN-T-xZs>&D2GdS6tv_yEqyjl& zFgHQTKX%C)l$Yd_L|G|Xwy(ps6Ax_^HOq&{nJe0HO|oLd<6#F1YmD||6zI)#zNtAl zFg)9Q!V1JOJe((8txYeoktypxVPYX{bofT%cXu;TIJ6epT-Y2@MRUzI5sM@AMLI~o zQ+OhZoI-&t(2hIwSK2!#pRa;n+8?bT)YEzar!Uc-sI;R>Dj!H>TJ`e7#PlF%>fBGS zu-5l!v8|0R%d}9@gWe@YVPXN~yZi$+WsoZ{l;}96zBBJ& z!H_$R11|6zzB$Olj(qv|CZHWsgnB=?h>v#T#-Tnem^V-&LL1Mgwzf?Aag@f#YT3Y^ z>hc=(mHBwiB>%IUlV_^HVQO`1s*;CrK_H$kdT@!2cp2jp>#YgA=#wRUzri5T0OX9m z=`g<^tLGRJPinQ@a8U|2hBFfwNHmQq$}lP?=H#Ro&<<5`(9T%5H3z2-*{+~!_A;4= zB%rB>JZO1-p|Br*G2M-PPyP;^XrorZd)Y6K^2Bm|EN8cKOxM=-q#c&%4(X%I+*U}% zJsvChP>I;R3gGzp4k&T2U7QOKqhIpLFINZ^EOmC8G@Cr=f{d%dCX!Pvt4e*e*_ykF z{zCy+5wIIbGPb1|Hv{_Lkm2s_#&v_UAzj){d#ocBI}!U#lKdy~a;ZCIaRpgT8_gKc zak6coYE)Ur!@zZ7Dx;Qa@g(YMJ<|3y+Y~rqTYreU&eF~Ou4uG&0Ep(%{}9qDAjO*F z7U0!J${yRPV#z~vpb1(9Oc&S+w3OjdIQ<5nkp+C$X6wJDYWcV}B|T4jL+Jh0CxB{( z?TLuvK>)ZBP+`l|Q#kyoabP`kQG;Ai1G#x{1NfeE!|v9T`2|fsn74r@+*;YyG^^^$ zXKH6U%Zgp^!F}70;Tztd9Qy#x(N8K}L>daGpA8Mk3ai3$upd+bx9fPgMiCk+$VvV?Z&F*2Jyp!5 zk5Ve_vfi>6&@&Q9Pn}%o8@C_mV&dtQKQ^hF6W!-LkKyH?{4kztjMgIYqt#+6qI`PE z+(q|0l?g_@zS*RDu|s;X>MOWuHAn{fk58T!y2e~$bnMM`n7!sxwHo_D>dwOB&)8oWk_!ZFjFY5iNR3PwMaBs=%hJ_S2_bN2z7s z+J1cn7C8inu_(rvek0_v93K%YF}P1l(^SCvw=@`V8YQ{#%c*tc)3P_N1{ujEw#hq5 z*QzJ3j~MZYYU^U-7)Ru$#h4va_eV{@ZLE5Iv?PjPPXiwROx2d$SD&8I2h3ejYSd-J zQo|f=#5)qujIJbfaOd9O;_*FZ$i-K@gN&i`Lmz{;oc|%DRE`9uz78uoonVs6WO`+J zyUKkjy3oA@zqXs5y82QMHIju*YH&-1bvuOQ`?+C~>1qAnOOeL*PuexxtJAV0<} zr=DXkSiYKR%t|amc7t|V?Bih25|a11h0q|=&J)+d|IeuPXcq}BJy+MZ(5SkS`W~4~ zys(@8n4(Dbf&-tjT$efe0_V_OS;M1OYAM~i*_zHula*#TebDN?^$j$$WFYBBtNbx5 z4VKWlMswz9=pTq@#NRS~pVw2j<>`mn?yT9ZO~wxsp2>{4P?L&1d@uHKuAXZ;^8C)K zP2-fBa=o}WhX$hMG%G_BVASbk2l0;=eLm3!z(NngoX*IDPt5*aeETTz`q{o zb2@b8o0MbvZ`O~`)A8UlRMcro1mvt!oO?|#S^hi7K?kPEeg1Jk-2cV_$9g-U&;oPd zT<<@GC~^49JfKpR8a*u|E6i(LR}5veV?tgIlUgt%7??e;jLf6&F*5TTOzy5gt~ z=P=R6CL!w6ko%x{+JB}h3;GsN|8k6`DM8Y~s>VwaxMs5d#kKb?>zvbX{*U*s=znfV zZa~~Z`09Z$QgDoG!7BV57eqj^PqOj6Ai58ebBQnT5WNVp>(*KF7k4VxJ|%o3iubfn zQlX;CZ+i90hZ(n?dnb3rXJ+~|-k+!bwEg<;6_$tV(q|({t*aq;M_v{Z3nHDLo>b{^ z?&n#taQ}_W@Q#N=G{J|DxwVP2m%we;@RY0SPRZO;yooZ|y+xEj;iGUb7Ubohc4rzC zEC1H-%BCTuNCsUImLx<1pd&hNrqN~kM6#y$_G;jAKEhQ4$AWNhfAWptWjR6iGt7nR zOLw>|-2BWqN__D-^2A{?iAz>@dTXe9=Lb^aqo$LSFG#r|`8H?ZeH5b)&wW9ycFG)Sc7^ogy8M*L3qU~BSLBSk(=X(+ zK3^zJ1r{5Z`JY@gxVO)kiOLHW|GC-DCmg0WP8do3&R6pDfatx)8vMjHjCa*%al_vt ztC&!MesZE%K0!Lu7$+%EgB6{*8`ME>5vla%23a)2@vpDy?GsMla%F%CKYsJ$W-N=M zhHg!EZN|}wp^L4Hf+_v5k!;LQ#CMeGuW7F^#l7hv^A%6QBXv@U6TIM@Pa9+l)Pnw= zKGMGEGi*0*dYpA|(WM<@uew2^!$GF`uapy^af480= z4dY(Wb;X>+_d0pCJjDctrGA3kbgpL+^*qOk5TZd`2RX@htKNc@`DryYNW~d?TT6MG zQd;F%n)vf^EVea$v41MQW@sC^=i$%BMR`Z%{3yhd82H{|otmfvq<4dfyEJRyyc_kc zZU*sEU0RkBM>^zgY6DF~R1&i!Y#B)*DwcT`DtER+5`8EdX2G}veZ2msftbo_GMp3= za62=+q!(K*g>gFxRyJNJHQPLIzZLlbwi`C{qn5;1HREdA%<&E;1k2T&da9l%TUSs| z9A_*OqMDiPT`_@rB&VwkN0u1VS7yRYn=4sgQqkE`;!HOqygtd-kYZmS=yQ4JmDW7Q zg%VED!H&mO=7W}e)2WYp{+-HoaX-kjQ&NfM^`s-|nv&&(RXrO2$QU3Wp5tuhpEa{-JW}9+MkgKhTNI^%5)l;-4dp7|7upb2a~*LC?&a zXi?IS(*$?>bN*U~8%jTVl2hnm?HZwj8ukWaG3M=1-8CjcIaLG0I&jJl8A%+y%wNj? ziYQ56lk=Qlm!-6)N^M5?_Ja!=)~So836_ZbUwrxLL9(VR9i*CpCUOCszxxNvbH(Xv z!)^kM{<;GP*FcM@p4_Hh{V!>i#;o@l>O4aF?`2g=r>h0&+y%*8j5fUc@<*l|vkRAK z^&$~n=Ea0Jv_ZVa%R6)~@pvOszJBInr6XUPEHCG+=Fykeg^tFtP82l~!&zB%CzR5w zD%l2eZ1>edevD`_9h?LwKFk@z%8f=!3Ya~+2I0O3PL;g(*RU|Wx=-sCsIrcI(cf2a z{s#HFBQ-af3{zENP}FBkud>7>6`n!gbkwAR+ftS`D(}ZIG~)w)YW{AIIJj6c5-p-j z8p4;T6u?K^sTM0eaUJXRoa`4wf~3sm_tIt7W$l<37qY7MPis9~FX#Ce^)Xt7`#Kr7 z1`Kgc=hRMhi`8d2C(DZxIJ5_}9>hlgmt*FaN;HH>dhaC%sLs1$_p@C3g)uE8`oCeC zPa{9Gejr)-_cPDk_seg<8o}G={b-?Kx!6=py9fWS6+q*sGgJ9~==@7>>rN8^usN!n zLx?NBs;FI{?0uNQp&mR?$8=QOZ#N;w(AY7KX`Ot9+-vL0o&JXaT)D4~^H?vH4~T>R z1`7WZcRUr6@tuo={9fANpSH`dME&03e>6mB)^09CGWn^e2sD|>IDB+TIaXW3*IY`C z!YoQYI@@`Wc2iXKIJYn8`O0w{_&CGKN_s9a?1_B;MhNdL4sp4cA61#Bq;9Rf4ASP^J2X1Ys_vDY%qeOt)*}!!l^D+ ztRZoyLEo=FxB655ecwo6+{#S4&v}a<&jFN-ykFZ(MaR79QpLck1 z7f`tKwP%IR4&xX15i{TWm9kN%&m+@rz(cgFmNy*WK-bJ`b34=96gJl%IWaOK8xZV8KVc z-}DmW6Oc0__CMc`qGJNzB|jq|wIgfU8}fn7np5?(8ngK` z7!Fc@vGWAAee}gmetREff)mL;NUELmeRn?vJWuqwe@{Zl$!8EM#QAu<$6V{A>?AHr!diMiwLyL6aV_@q; zhUd2?Ojee7&6OKY@9}bY%KTfMD_p%-zH!k?cKTG+sn>oajQSOmtX zbu$?YBj${gwt>kx0ogZkn6Bsp2lI2V=-OIA7w-L3oWoGYEmCKMpeX@K2gpg1UvtV#Bh@zOo6_ zj8*yNG;aXE7vZnCC+PA^zG1ihyKW#0L6{7@1|%ivTA$Q{vkPzwd8}TalU}6o5!V)@ z6x$-lR=bSXT8fr+hRleNZ~Sr5ui z&}rO}uC??&KM=oYGWnleyn&*IwLHVBzUEjAWO`Z0Sd+KgbIWYF7h^g%m_%e2JZ6`rXcZT3AU+a!;( zX;QU@e~e_OP=!|Cke;`&i>z;nkMFkutb! zcQPOZv|YwBU$yFUQ-rOC)kBW3yeedFXRXwkAZbo&TyaUUA;Ak@ag$XK?_Mk-MzLcy z@??5~Z&o48bG3gj20uDpA)=UL;>|ae>c9E>^>4zqXc+l7o`uJ$WCd5I_Q|R5{_~f(QEVs;^dl z0`g4jLzF=+%jRbdU*#bLgDRDJJ(P()hkWJyxBI3SQy%Y=FsT}W30J5 zNIn&77p)89e+W>69LCP6GrF-9c4DXTbU}pBr939&7^IKn!t>&n*q8sSA-`Dq!`psT zx8VJxacd8Y5)Ky$fa${YT19GZ%3jL<$VIF!A_Z0imb_{oP@?yH7|XpjaR4z=7vh)g z7rDzSrF*H)3%(i9(U1RSNkbhw?5||x%x96TM77Qt@OY!z0{E=xx``_j)3jrA-WF;V z|I9;|()>X-)6Fd9CP7f9HIy@R1GYQTt@L$z-P@jOW8)SYje7tzlQn0?saoGXD2m)=ek`2M^jJSef#FvW)bH{alaVu3HpJ2%RD& z$W;qfHp?b`89y`GaV?!mb#4aUcLuS@EyZ_ZLN0-$VejdiOH}sA3D@XgPoLxK@Y}~u(Ypovefrc|TKro7@U9BVMm2NFPBkNtCAcm!l7kx+g>0*8 z|3kpLWL5-&r(ZFKaYRh8eoj|{(663L-xRgtBGx1aROhhP|JWJ)!|U1dRe+TXa`rrD z!sZ$Oj$AnA@wTkdcjSo7&-&};pjj=yOAJCFOZf5B9Cf*n5Y60>Fsy!^le(cx*gR)8 z$u!+9Ez501H_!Np&Ne<;X}P`y>*-itQGo8^Aoh)m?D7bGYvPeUIAK1rz$vAqxZz6? zKV|60i|&DOs3E??SIL7jW9F7gs`J&X8n7QjUfs`@$ik&oc{9xC;-{vayMKOeLkdJJ zQH)H#63_wceC>+cA?t5v{Qk-{4P%tU{1fZAzf5JRzALGkdFq^B#Ge74Pd2;z(9fBi z{%>(&JolKt{=fsLTGGxwnNHP+Rn)FLj{D}v5V6j>(;OGr7fs`TQsr zW1YDM{J^(iU7Z?d{SSeUGS&o4UuN_mP2(K-{td9A+o1xa++g(yWD&)CVT9^y@fb$BaUTTUo1AuD5iQMA zZ(FR26+c0r`}ms3?BP!hkEDeq@VHOgML72L-qLWp;*#F9q-~f!gJn-(!9Za9D1F{C zgBXrpx`2c885=jzGL!gy8G%!>ub+BsvZ%{0x9!Sj<%OXA!mrEC;w)_>PaS$MZ=8nz zdQ-rHF^?}~t|;Xf0)7-GMS5rte-2!Nl9MPIR+CGT1yH`&6_;W^1fIU3Vkb-eRjL%8|cbwJc$%3Lq6*;SC3uJ}f7y;wCNOh5&JoxZryrEdBg{%4HQpU;M4Ix50opC2Qb6*+%{uXfVW~a9P7FMvaEN zlaF{mDv^>aFSb9326+#p=(*%6ZfB&1s@l;!W$_rdZ$wujy50-*0@gW&3cy8pQ)J>@ zPL}U9r6NU+&^g`r~0FRKoypZI|X^die1WZ znI7!W`C(JX!+H!AbeX$<{-r3G;6 zc~Q)c?1i&rmF;0}20z#i6ZfOj9sz8%r8-IXgr&7rI!IRdpk{7~o#kAkU&-j6iSfAW z3$hZmD@b%o8~v9)sMgv)sewP_9`lExWAgH%ccyanc_b`V4%Retm&<;#tz&^kR{d4l z>&WP5&_L{yZ-Ocsaz@Eu1B+gyR!0g~Wh(LG41$YJmH6e0T@xi!G22*S4T||)+zsVW zyU51nzSd0OQPls$$Q}eQ`!)YTx8ysS$$h#V5CaR$HZ`<7?BtO@9@o?A2@p>fwf(_N z;1(+~8>(y`^-l=SG84=^1fw!Qh@lsh)A(6@oQFQkrPNTcEW3nY2NfYaub-X^CZ@@b z0vUKyB-f-95U#?wOaSo_rfYGeep0T?Lc@%RXkZ#!VFoA~oy!A$?S%TNq^<}KLZZ@! zDWdBy z^JMYq{6AK8{DSXud$FGSDyJ~Lt$Bh3-aEJX+zeLSWqghwDF|E5h6{~D#n`v? zi3)-((WQwz1RW^CbHWR`4GT?^!sv#{V(`T;Km*(7rS%nbFGmZlrqJPHTQ402XNR5( zZStK6o_?abWKgeGVUuU@pIC76f&lUaoF+ZK(U@f-{JFUj*FX z)AyM^n~+7EYZ^hT%ofO&@O#nNW@up@MLG5EI&~dsaHZ%gC-58H06(*cQ1DT^u(Xjs zg~^D)l2S2p`$5GhnTNr@Gz^q9i*DC9zWpWpPd+*Bbk$@2^1^&}K_KVje1S~}DO)vM ze)&ECmee0T#5sa-x;~VXmmu=Ic=9p{W)44EpI^!f*`++E*ay5NrWN(exIz&^j#Wy< zZ$wiT3?NJ{)jncCOUG!|D9YL(rWN#o2$OVZpgIYp+#?)(MI*IWa_@G#xgW?J(eQ{Dz3PX+11YtosboL zpWLU6=zdK~o6PkV07wGHtbP(P1?*jJkQaLzJumRvr+Mvsm0NT}=B6g(19jGAiNuMq z3rzW2)^xHOHeq_}+Fa$A$cQ)kvWVm*tb5)*?d7aWkZ52a9Y}@E%TG;sc!BZt9SUV>q3g zXGM;eIGAr>=7HRO04dt@Y|26Ku@d9kvH^L&lB+W7WVd5Z@}+ zgCS7&?eFQhQI1`kfbRRLhq=bLQqMt?4O3{FXCe0*>4vtb^pxlLwjEaQ-srwQ5VmJ4 zIepM=dSV4NDiZC-(kSdH5b>;B0>?d7qq+@g0Not?<5hWR-?sl-*YrpkS9ZE4Bnd5d ztgLl6avREFHFX!Ms&Z80{FgN3XlZxu&y)F8E;SNjC;}o}@pmxAoK)z{wGBZq@!fw2 zm;wY7c>VDy&d!C_$NBcSOZr%j-g5~c2u?v9mC!qVX@0JM462NCSHDq7< z)3Z^-BFAs5Sfe?AW!W?%GAXJRHzq|byraYX^$LNR!JnV3d{BtCl%SKc(DKCGkJObr zmKnXY&XHZEutyn<&KkQ@eJ(>Q7RM&T@9k_vjfBzk1sF>i{dO92tGJIZB_7`_AxGy| zXEG-(73r^OsIn|`frSQAW)&Y6n-N5;?7aa(*)Xv8*8bd6(R8BDnTIZaq!5)zm{!1* zR;dI(0>;o~@Z(`%vd4}t^Y-poCJ>o5j=L<0pWHvrr7o83q|Ig7D?ZYogX{XV5;)P+f{c7&j(WH$_s zLUwV=Whe|$vT$Q@b@num7Ndo=Pu{$2P)_CEst|ee>q-FJi-G?Tw(OlHAsP3pU|a0- z`tT9l>M|a45ovk;5V$JOQVINa)j+|lK1gZKI!X{Cfhin>fJ}0tamf0mcgG91nB!3Y z$L*FCct|<}#g;^aEz9A#7^e=-+S?B%vv07+y zF1rL-j&H7mM`7zsrH6{;*=Y)w=y)n~C-9d+Vo1qnAjO$B$P6ao;?O}3)}m`%JTtgj zAN$mnoQRSABynh$$T)*{qs}Qc9QGBLJ8@W6{G^-d>V596>gVm;TfbbzfVFn6 zQ8B`=w>$2SI-V?hwN*e?Y(uQ{LtgRR4o)9CvrPe#8Bi3hehp}kMCYqwbqVY~w+m$LsPUapDi~16-#b8<*@?T(h3rGM%FWbEC&6dZeH|d*c3%A* z&m#247&Tfp(`9PPUqbm?m2H9$@TO$=TpCFjrCqEZIA!4)Dvbw|J>LaS#go+NlQ>fo z59|OX)hn^9QV1iGWZ!s{ik8BXafLt29l{);w>h#dO0G`YPc%*aXI)V{r(aoWT_zyL zH;s#LnPq0&KCnJD{0c&N`XTgulsx0;3G1TBi$Z&E8BzV=K%*b_wKquc1gz(x{D**; zm-vC?5#S6=K_i;-hleSLpI?)LVyCbh{5<%)neCIWWyY^5$FiN@&l1_qt-#tEi8mS$ z9|IFLZp`Uwr%#>zrDeTflY#a9%@bgr}CiD-|S>sl4>K@|Iy#w2Gq}%hxi*t4G zv$)(4u4K1mz4GbmkY^7oMC4iDq~ z==}TD3dVx@HcEpjPs%KAC?yJ2fH3J$S?vv*vQ-~oVeT8%M?Q65S5|3|)CTr6H-Fea zSStT5rWliDRc^#_I(`jB0*=eRxW6nudXXs^xysg{vb8?i=W@pr7r1bpz7w3S1dJ#sogX#?yhz z3zSc6LgG@gg5%fa8I9>57N-o|&}|6v&EJ-Kh<&6j5xw+*nzOQ!2(Bhc9Wb8$yWD;$ zuMNyA97|{(`}MHWc|Y6A5WBkR*Q(C@6^%s#RWet73;?joL(zV^J*( zK7wczizjN~JH5x4Ix~t>-1rD3M|)|L4}_u$(g{Y(O8FsJI3MXc@`>2&1i}{Nc12zP z(EKgv>->!plU+_HgyFlb5!gctek!(E|vG$+zBXPE2YzYD-*Uz4AvWR%$Ff- zN#Db}?NrS8NNf>Wkn*^MlP_Yqo;dDUX6HA|{Hcn*A5g3C^)4zM<&nLuTj?kW67)?_s%%fqza&Y9wc z{au3t8Tc3%O+yW|XRZ&7wVuN;A{j5Di3}bOZy)!^(%B}0P^qH?;S@utwu}tj0)8J1 zdlNqKYYe+MK-R=(M>dk~z6#^|%~=(jk{3?*kzI^^K>n_h3{tGVjAL{A;WAESoa!!F zjVQWJRIfj`i)U>~?zeu;c+hsBi~ z-3ouv@zEMUVWZ%WeULBmG~8gX?v{8*2rtaNNz9i#Ek^<^A`!ANwR&kyPN_XN8RF) zC(Pky@0R}%yaU`dj^EF0fJTkLPPUp9R#Pop>HK&GWM3 zRT2JimEUWBmjbseG#(EOBqQMJ7R|aQI(*a%m!FP_5mLWT{Ni|i2_Nxnc3F=)x@iSA z6m0S5Z4G$7`~Bj2C2R|(FAvS`(jH=p_P5r_wW|`>P!XXwCqI<3Qiz?Qu3HW{u$s-t zZrc;XIwzC;C{yMnwYF7xqUuOknh>u3F-N9Q z=Nuwzt@)U}rIuS*0E!VoMjAiOotE7$FTV+E>IUXh8et}36&ig4=;HTk@ha~VCzMiz z;~DN>wO51T28L<$5i-pkk6|B;_))<|6nNygIP#{sRf~*((i0u!Gs_g>*R%+nrd8+x zo3lced+Da}t4O~?6D~h}4H6_i}5ZWGjyFV`TLF$#QaEw4hOgS%GGZuEtHsxH- zC5<%(O+tZNpC&C$E_;f3L;^>eeoTlPh3^cTb?$>r^K)QN;i6n>#;53+NQZH(J$4bR zg7>Y8*@rIUf#=14OoMm)nY%$_Ox346gKEOJ$1Dz(vbIR>TLlE)xS6C|nFlE>NUjUH zo?)ij509ROm-j^o5Fm4T>fYC%jR)#}VU5#!)U_@C@rfEpoCmUuNy}6Vzw*(Aq zOrE9U_i6z}vpeF^xFrI@)ZIK0xZg@!%uW6dFXEC~%%oolljR@N$P5iA4 zh;^=JM%$z*Fp!B>1Q4SClnWKy*#@eh6q-NvwIpNodmpLw5!e#?l4aDJizfwz03zB( z^LyNFD0nwl5!-qynx;9O^e^JmdZ7rSFWD<$D_$WrSW? z5}~>b6{eyA_-YgZhysBO6j8NjP#u=fD}7}i+G~u70O#GeaZ^uK+~xX2dm^XMwav5a zN-mktJNAtv_j7&F-d@~Yh5vntXw@1SZcjZucuintM%?5KZz9m3hA2l|uF`IYwLwcv zsKDld%q625l6#sc0k7dmjB%4>Yb0UqLOAJD!l|F))H8!DKa~{#sH+d{;=|%{&Yu9v zEPBe2q0uiW6Kf2DiKw-hcs*RB_IqvRZuc8K%7DDN@LQ+61)Bbi*!31W>Ed;_XraKf z1SY`Q`Wem5t4Wkt7XKst|B3oPm zlw6tfd0}2ZEu{v?`df-$z*gkv<%l zqO{gGwa5)!hI0REqQozU+m|Y*VvijwSXm94A1aiPGF^l;Q5vtm*g-;Y^C?3)V|@xO z^gk?aqn$PGDkrRh!lb-k&w#>~BGwam&DbP;++CeWsaRh>O(Ucr>~AcC(PDM#ZK8oU zB`l}?+C!G9M{0z7RpTF6Z%W!KWt33VqCjh)xptmSQnNF){}5b2=~bX8$~6J~fXA9?Kw$V7b5=rbN8VN*w4=~ktvb_#eia*K39-fb)NQq#XH_#)WHCA;h9=3#+4qt$1qnnyqGB)YkJv|e%xW-s3 zCi9*wM++-~=HcpFqQN6afbPRta~-qQN{LCHAl4f=jQ&l$sM_v^PguM^+@X(D_VWH$ zfPB|68jm1m#=6~4x{0_Ki_(< zDkIL!=qroCThW?c^!3A8p+d;*T2r%yQGPmUXS>jn7~7(hM9NBv;&1Dxzz!Q(OX_R%cft9V?{#-hTo4w+c_^Kmy z><8C~(PWfuB8ep_?s0$zBj~^sOFpz73DnXniIi@xhFeBTqG7aVy+vyP-%s30=z}S! zZRuGM-9-{Rc1@>?#Bl8uv|AKN`V%!AleZ2QHB2UF? z@;WJ0*)LhQrS9!gSgg%&X4~s0c~$erVwyB#IT6uB&Bf}p&p37*LB};HT+VCgaeJD_ ztA6eWCsTE|p{~@96>Eq7zXItb&_vp57rP#05zj&rC$s{sl7kmZhWq6%u7VT1$BBvf zGfNiXD3C+`DRJ%FVS=w4Cl7MQO#?d{Id&m~E%Rra&m*DxROTTXJ4+K}Z&%#U|xgSfqw-)tKUzPE&4^H-aXr1!9&qN=E@!bqcJzv+m% zJYX)@o>!LoTQq(c`)h*7!YO7Xq1QNY)&KirAQnJDXgzr3$cKuvb?Ep-0{iszau6bSj2B0_6 zDNypxM-y2BZ;{~_Fh`W{dgTw@9_T#hXQ;o|!}iKU zpJOXSB<%PiqFu$3I8-1)b{xh0`o8 zW-eTi;yOo{Hmc2RWK~2%RPVVIk*Gr7+QFT;{B}Z`i+T}QK4W6ztVb3t{EQSB@E#Yh zf1u#EV#<2gMN_OU78x*#(EpE)(lBB!#MVI=9(?9OuA@h^gZ$kEc{Ob#K)-0%!5os$ z-G48pUW>P_F@0)%=Ecy|*cd78i1IGx)4%)Y(rJSQ_N+R(xP8t|Zd@T?=MTFC?G`vE z#?XeSXT9kot7@_@Oh>LN)Pe;1+-u*F&FbrN-0OtxS_6=diK)=yfzDQtBGMGW;y-}n z_#eV)?w-B$k$#J4uzMOR-s&sNZ;T?DK4Ho#|0=wY!sadygP8@y=l}02bz%Y~$-U%x zH-F5;7gfd&KtDtED#ZhP8rXMmoVs+B;xf;RCvpnBODwAZ= ze1=CJYT)sZd8CYSl_R2!9-0WbDUatEV`2D`Yfy*udf_TKa3t~mPxMH-`m$L9qJy=~ z%~nBcsLsIzc(3x5Zb8?p1COS>K8TAJ!CKV4+#s~y$qgmG8Z(F&A?O>L=vCIFzlyo;UBW zlY9R;eDYtp;~&PB+<7q9dV_FlWR^WxV<1QkiCF86<ey+KJLH_s&QJW1e@d=7434gGUWb_rJwHRkOfV+?6gJe* zu^nf{c7{2K3D1QD7nar^;udU}^Q=cgB10d41hsDpKZKF@UH zL3|QPEI2su2yy*#FPhFDmM`LA5-EI_F3>lGvS%PP(2Jf79KJ5PliYi`faR$Xh?2-S z4W_oF8g4sp#y~kFh0$f5FVDN2q5lfa&TaJn24!1mLJ;Jb<(=S~{mW-)RF6e&nyUn?K9QC%m}q@OEril11@~u=n4hElSMN+ zCU%QtMQ0$^%jCQE%Z9f19fV`Zus_>YuggH~k5um4ig|nBF}($>mPPR@fFXL4f2`1A@%^{Ha>zr=51lc&Th-#LL|G z^E6vn%f#(j$pyx-f}!61qVN+)41d$WQ?-vPt3hQ8KV!YWCQ5(ocgsnpDTrS%ewK{Z z9cO&lo?$ahbzo2fCopf9=~DS8^A*8!3o3^lB5Ik7~O=fX=)AbL-(Qa3EXdK*U z>HAaa-cgS3Vg|~-h28tt<8s)u^YpEQgz@b+9xgHt<*~EhG3Q&f_092jh7A_4!8E0l z0{{Y|kDtTae(D;N(5i=f5IRtJvE{dXx1 z(@F&&Nuw`V{jqlBh;8uVB|hF1sS!srFMUm7U{X++-uH+NPA~WPYc3lnKIV0Wn%vDJ ze&6$ERU23(CCBLsm9qczx+_sVm3ak!Q++8I`E_6rgRn2WQY?7}Ims)1pl&W;_n2qk zWd&s<`n}piv(g>5;iD(VuPA8muFKAqCRA$Qjl{+zTZ_`)f6=Z}D*nE7t3%~6q5VRS zcxf~t=Y3uCu)qst>7safI=A}_SM7Z$yGDAEM!6H_9{)>vS6+2U&RfFJnD;eA(4p^g zr%DA1Z{Fhu^NW^BR!K~KJ7XiAD1C$6I#5_;Hze7mQxQfMrA25ul+5n+j(){4BU7DH9uslMl^D)sC8 z-L4-e)r24P+(-Iq=~tqQ+%Nhm{m8h8#q{I?J{QLG7VVH*LN>(8poqk66Y5}sOJytsmjVl2QCvjJUl7Ma;~YJ-lG{dFZfQva zre4Rh?x87NW7pX`fSO@$^CyZxGqE7N$+REv_@P%M#$=r@0(JbL&nmXi=}SYM6H|Lu zH;z{<^T+ciJ+44(Q0O6k8iOA8u4zc+FCrXd3~Fr;&~Xh^n5BAr`dd7nW|7I`{$+V_ zufKCE(E^O;nZp5<*GjQO$O-NR2v;SaBmy9>KY#m!1-yj@Fv}YuoZEPr%`WKa1`s9L zMg(%@|E{Cq&=E#J!o-6v?zHfuLoO|1pD{4xh*c5lCcb+0kxEGlZZO7ggws_yhLUD% zIC0De2nhwyZ{$Q|x5vc#qHCWOf&|Rm%Nf%bTRW01X^eKq$YB-$S;dUp3}?VxBdAYz zux6>TmueDW`HiTMH}GxyN_N84RTafp!Q;yK0NQ+@v`YTa7H8x`sNG8U++}bO=lCMB zhNxE}YrF52^k&=9pN0Nsf;}81df2Z+#AsKbxfeh8#lXPY85-pQ_~f1icWx;nIaQOU z=16XH&#QRU&)+wY?dL9tn=Y1sr20DcoWa`j9iT@>aa%PzKa#pB*`pH;os?F7Q;ZiW zKnF{9gPz~1M+d%bLUSl}VhK^_67N#uiT=Yl%{O5>Y2vZIRD)IKTM%*ob<&Q#9rrK1 zsU4`)vfPn+)WKkyGQRMdP75-8j(gCu(5+Y_)RkXj+WQ>D-fW*ZPA{)ZBhYrdbq@Sq z^%Y6qRg1AKn#^d1tc(sxed=P8ziODo6FJ{e%v|hi@-Zhu0bKk{8=ZjGxVvg449zai-6xbMSpz?)f#4DZEC*i`Uw%^?M`_T3Pe;7&j5 zu%$X$NC1Efj0v=DHA#$Gexk^opIWxh_BBg;RZP<9MOR;uO3%p$Fa|u=bB^o{z@L!S zytGzyjMk51Zs(_4S^kr=`k{Qnw^}b8iz7w)AtTOV*=(TZPzpfG1W9S!zL@!t$H2TE z9;^Y79TUaz^9&Kqb&UtBpCfi033v3t4c1usLiqds=H8uK=;z9p1wofaqe$6QB*)vs zZU?dV9zU>w1`Ow15uus{!})EH%6pwDpl&slp_dk$s!B2adK>|*G%53Uq4Wfu0FN^) zUdjReR!PiYiO48bqQ0Rf0 z^Y>>X)&N8q66|qR&i%t3jJaAaG+OWIGfs&z(Zwi)X21WkOR9Fw@$_L{lc+zW9CEjL zKs1#+L2l@Ku$mfzWH^Y7kwIhn@knk+q1$$FV}ZpmjMU$D1HqCB@e+ z6VYdOYA^CFyMCkThBDj^?q(S(Ax;Pv9W*wQ4O)M7BWYT_4eidJ)U*D{Rs@6{hosLs zYd{ybxe3Kl!va$~;B~tR&Vf72?}hX&^+2WdJ6#Ac4fy8#y=waQ594stopa3~*03=^AF)Tvq>E-?p`WxN%vE}S z4`!`(GtuPiQ~f;il~YCW&W9PwVn5uP75+Q-kT^cs#jUle{Lg1^SYNzS;A_gUzc*zl zwz@91Ay*VDU1)_Izt*tQ(>fxQ(O90(UOf~Z^|u!8v`bJPNOLV8FZ2gTOl!5&UDS7x zls-(>Ij!7owp|1f^|GA*-{B#iEAy z4iAMNE^`3o$iBj50v6TCG0vwku51Yh5NkUc4epaHy}%P$QK6!V9V(yXQI2fLIU>dy zT&lF41>9X2WC@>34h^` z88TmHvh>+JHjh<~zY6mWU~PRW;fD&Sm_LYNt}P4gJX~I8RmdF}l{vo?E6FD4|G{6X zCcIL$dw(o{pJb3~q~2L7?L}a=I7@`Ai{ptKrW-5G{&3!NeqBPR=YjMp%S+jHF1JoT z9UKPWWSZ54rQALaiIyf9Ty0YAGHhPMAODn@y5=Kh%>IGgWE1$i%S zVgilGRmO1-aG}_Ya;WcY=o~d$7h}lZ>%t>_*$0K#xSmd2q?C0zQ(xyIcN$$Xw*jvl z{P(MB`OaMM*=}yTgo`cbNLP(mBf;xsD-E1$(4NpvCpl8y7cDfc zwX(?S*kxx3)?4|!ma%n)sFrTOYbKsoHMr!Tt2}oO2=%Znl6A9RAbKY1=(ApJcAaTe zDO;5!oX)|feJRs}AAXN=NS`CtHgZVA`YZI3oG)b3Jii)sMYJyeF{1dFTggFhVP9+D zI#EXfqSEzr!BNeiEW9M61?mfr$J$7wjbU zrim+|D1(8D%rfw&uLbt>RoQ@qzfaYm;L7AMMMvR5{!IRK=%D}wrW1GKW1T(fPwwJA z6>n))(rcB)#7^x04y3Gyj)^CX8^w~!iTf3NT^1oeSp9iVP64-UmRr_sE}mXe4`V%A zm4LB~WT_YcA%*8v$?h{I7skYN36BF!G5m#RtnC9s1`Q5$uzqgIOP4kmRt%@+JaQ-&TY)5s?xc7E z`RqSf60!Csf!TmMioK^!hO4GhDeK+9RFccEmXZMdc;Rb0F3k~@pDn89w}`lXj$BPs zf@-pT=mHIdS3VhCf0Di(FvX)1rg;+;T5lFJ(sXr&wAX6=wN%@5Q>&&vThNa0*mY-# zjRh#U-G6rbF-6GI=X{86;AfXn(8oPnwC0<@) zLtECwmO$Gz8%ly87uXWwzUz~~QO!aKFkdv=f4SHFI`jHl@PQWJekA#wK7|(p>JTym zMwDK>@k?KZI*~rqHm>)_!^i(&NM)k$g?gY6IwRnOO6hkT*>yDv+%Gb^oJqPO7g&U>5V&^Zp6+X1oalhKnZ}> z+GcZ4)1BESz|Hbj@z1tAYpw6q0p(VW#*jeqwTmIQtF+0ZZQ41OG-RLaN|^Xe)GH}~ zXwebsuaBfRqdp}aK%s@$eaU;QDl00lvr7ZSNRKW3Rw|xuzh2?ZOX&C*{o)b*MA-cM} zeb`~R#JrpT$TN=UH1c1|HLA8zgjs`#0=cFH1NM2Uyc`y))?Lrr>+oEk-CK9Q;g|-& zLiR>jmNVApHC;}1qJVjo$L8xEOYzp+f;T$xCo_BoG|&l z=R2)!j^9;?wji}yE~O_~CYACq(aSGZEnZc25#N|VdrhjAsXXy8wpcc9N_h@mrMIY_ z{GN>TSZoNCwZi`9$qF+C?R}s~P@-<3b-Sk9dfR52Zlr8-X{e2`JIqh+X@=rsoX z^$krscw#==a4D!`2N9jqyKXhr z(usZhhKEEIN`snS3i@7x_u{j$cR=oY{ha+pzd5e~AMeOHx*S97Gx{q;HTaCMZU>%H zTjy3HqZwCDD2pPnnO*Q_bXr7moW+#e>>W3L^?EU0Z;QrwIhQ4kccxo|S`D!unA3xR zuHHCE=+7?B>otdqKDq!A=fVxgtNG9jcXK&|f^sEe9a0S46GSVwP!$s&GB@Dw8-kAv zptBHfHuP}|(SgaUd8&u2p2`}uz}@r>tJ!2uv=9d{v(GNcbSnKue?L7=QK$cN zEws}GFGz##K$9w)3w<4$A7r78;ur%pWP$>&iwUed+wZ4tl*AVH3248t+>cVJyLi}# z-|N__oV9gAWv0eaEsAK;9s)>b2LxUz0#MtH%m#@T1%5&CZuwoVb7-dlA3WYrw5}c) zaR(UDEpqWVL7H&z(P;Iz zHPrm4xb4}zj7y-DWZw-xUg$J3>qBrX)=478X1R{XmWBgTsbkB)jSTnGg2SeY3QZ}m zDwYNCzcWaDI+37lFSiFhZ<6eU>nSuOhOWx8yW<=M+3loi`6Wc#Hna>cipHAl`=Zzx zf*745WVH_^X0v@1)ht(yQLo#|Z~G4z)Z=lW|+NMzG+z%0*MI^0l<^yBG_= ztO6uend)momW37UcUu3vHV4t#hz+Q0SF|}53zO|I!lVnF%}1c2p2CP5gj)ocjk3lS z`$CCNM3;6Rx_W@0>{eJI`5`5GYC?$Hl zC%&^8lj_KH$cUcJEuEHVrB$Xa&R2g7mnN-EL!>NZkRiiKOKtN4MP?1yQXW*l-=u)Q z2TMjCSG7GYSpKrZAhULq6*u%th$w76AXI>A7Lelx!Tlj+@BD}R@B#oNB|P`X3Xjp zxL!Qa(tbzA`!ysw*Sx>H?ozQ1@^BR5WaYtBAR3Hx?!?wR{Ya>ZRnI49YPIl5`4RWp(E;SM_Hj2I@ z2O2G;*sC*vPI`l({`6LscEJ@oqcQ#|zm6-y{_sU`rQmX|(U0Bfz%~EJ{UOcL^|^M4 zGFm5=%u^YI&YL)Y>B&SRoSK9KBdNM zg+1xy(ID!nM+8s1r`ZdzgaHwN$o4DFoTCM&-uN@Dcpmg8uLndO9e<{ z?5O`N>)~7Gp2MD*MoNe;nKFz)y;_IUyf2m=t!_Wkb(gR9-uTpZBPIEXGmecUUP;A( ziIncuo4KO0diWl>i;JA0p+4ud$@6|Ou~8;rd1U7mC$e}qp?`bb!T=H&-HvHkZ0=%) z{t`})Lbq5rwY0$fdhYLgz4IXa!sQQ^iV~1?Oqh8Rm|PM$HG&J7pJf=% ztzsoKpB@+E=405xcvtQz|2!yP7YIDerO?lc*v_Rn zk5^i!qYm%^SV+*oCU-H;WGbkr7I`mu>W?ua!ZMfP+zuBQyDAXSz)Jt`9)(nlORUC8 ztX=2X6fXwt0~f346i*$yDq_$u%{7vqKQ#>YX{Yrm#IO%4xu3kL_8-11eYbk`sQ4xc zt_s}MBbV(5fu|}mkf>aL*A_%YwRjeD9)YIEsXDoCB6BfL`~I)d5U($DIo$1V3h*hI z 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

    + , + ); + + expect(screen.getByText('Test Child')).toBeInTheDocument(); + }); + + it('should open snackbar with message and severity', () => { + render( + + + , + ); + + act(() => screen.getByText('Open Snackbar').click()); + expect(screen.getByText('Test Message')).toBeInTheDocument(); + }); + + it('should close snackbar after delay', async () => { + jest.useFakeTimers(); + render( + + + , + ); + + act(() => screen.getByText('Open Snackbar').click()); + expect(screen.getByText('Test Message')).toBeInTheDocument(); + + act(() => jest.advanceTimersByTime(4000)); + await waitFor( + () => expect(screen.queryByText('Test Message')).not.toBeInTheDocument(), + { timeout: 500 }, + ); + }); +}); diff --git a/client/spec/components/tiles/GearShift.spec.tsx b/client/spec/components/tiles/GearShift.spec.tsx new file mode 100644 index 0000000..bca7039 --- /dev/null +++ b/client/spec/components/tiles/GearShift.spec.tsx @@ -0,0 +1,95 @@ +import wrapContext from '@/spec/helper'; +import { fireEvent, render, screen } from '@testing-library/react'; +import { act } from 'react-dom/test-utils'; +import { testVin } from '@/spec/constants'; +import GearShift from '../../../components/tiles/GearShift'; + +const GEAR_PARK = 2; +const GEAR_REVERSE = 3; +const GEAR_NEUTRAL = 5; + +describe('GearShift', () => { + let saveData: jest.Mock; + beforeEach(() => { + saveData = jest.fn(); + }); + + describe('when the gear is in park', () => { + beforeEach(async () => { + await act(async () => render( + wrapContext(, saveData, { + fleetData: { + 'device-1': { + data: { Gear: { intValue: GEAR_PARK } }, + key: '', + cert: '', + }, + }, + }), + )); + }); + + it('renders the gear shift component', () => { + expect(screen.getByText('Gear Shift')).toBeTruthy(); + }); + + it.each(['P', 'R', 'D', '+'])('renders the %s button', (gear) => { + expect(screen.getByText(gear)).toBeTruthy(); + }); + + it.each(['Neutral', 'Unknown', 'Invalid', 'SNA'])( + 'renders %s in menu', + (option) => { + expect(screen.getByText('+')).toBeTruthy(); + fireEvent.click(screen.getByText('+')); + expect(screen.getByText(option)).toBeTruthy(); + }, + ); + + it('highlights the selected gear', () => { + expect(screen.getByText('P').classList).toContain('MuiButton-contained'); + }); + + it('does not highlight non selected gear', () => { + expect(screen.getByText('R').classList).not.toContain( + 'MuiButton-contained', + ); + }); + + it('switches gears', async () => { + await act(() => fireEvent.click(screen.getByText('R'))); + expect(screen.getByText('R').classList).toContain('MuiButton-contained'); + expect(screen.getByText('P').classList).not.toContain( + 'MuiButton-contained', + ); + }); + + it('saves the change', async () => { + await act(() => fireEvent.click(screen.getByText('R'))); + expect(saveData).toHaveBeenCalledTimes(1); + expect(saveData.mock.calls[0][0]).toMatchObject({ + [testVin]: { data: { Gear: { intValue: GEAR_REVERSE } } }, + }); + }); + }); + + describe('when the gear is in neutral', () => { + beforeEach(async () => { + await act(async () => render( + wrapContext(, saveData, { + fleetData: { + 'device-1': { + data: { Gear: { intValue: GEAR_NEUTRAL } }, + key: '', + cert: '', + }, + }, + }), + )); + }); + + it('highlights the + button', () => { + expect(screen.getByText('+').classList).toContain('MuiButton-contained'); + }); + }); +}); diff --git a/client/spec/components/tiles/TileWrapper.spec.tsx b/client/spec/components/tiles/TileWrapper.spec.tsx new file mode 100644 index 0000000..04eeabc --- /dev/null +++ b/client/spec/components/tiles/TileWrapper.spec.tsx @@ -0,0 +1,10 @@ +import TileWrapper from '@/components/tiles/TileWrapper'; +import { render, screen } from '@testing-library/react'; + +describe('TileWrapper', () => { + it('renders without crashing', () => { + render(Children); + expect(screen.getByText('Test Title')).toBeTruthy(); + expect(screen.getByText('Children')).toBeTruthy(); + }); +}); diff --git a/client/spec/components/vehicle/Form.spec.tsx b/client/spec/components/vehicle/Form.spec.tsx new file mode 100644 index 0000000..9d05886 --- /dev/null +++ b/client/spec/components/vehicle/Form.spec.tsx @@ -0,0 +1,69 @@ +import React from 'react'; +import { render, fireEvent, screen } from '@testing-library/react'; +import Form from '@/components/vehicle/Form'; +import { testVehicle, testVin } from '@/spec/constants'; + +describe('Form', () => { + describe('onDelete is set', () => { + let onSubmit: jest.Mock; + let onChange: jest.Mock; + let onClose: jest.Mock; + let onDelete: jest.Mock; + beforeEach(() => { + onSubmit = jest.fn(); + onChange = jest.fn(); + onClose = jest.fn(); + onDelete = jest.fn(); + render( +
    , + ); + }); + + it('calls onSubmit when the submit button is clicked', () => { + screen.getByText('Submit').click(); + expect(onSubmit).toHaveBeenCalledTimes(1); + expect(onSubmit).toHaveBeenCalledWith(testVehicle); + }); + + it('calls onClose when the submit button is clicked', () => { + screen.getByText('Cancel').click(); + expect(onClose).toHaveBeenCalledTimes(1); + }); + + it('calls onDelete when the delete button is clicked', () => { + screen.getByText('Delete').click(); + expect(onDelete).toHaveBeenCalledTimes(1); + }); + + it('calls onChange when a field is changed', () => { + const newVin = `${testVin}updated`; + fireEvent.change(screen.getByLabelText('VIN'), { + target: { value: newVin }, + }); + expect(onChange).toHaveBeenCalledTimes(1); + expect(onChange).toHaveBeenCalledWith('vin', newVin); + }); + }); + + describe('hides onDelete is not set', () => { + it('hides delete button', () => { + render( + , + ); + expect(screen.queryByText('Delete')).toBeNull(); + }); + }); +}); diff --git a/client/spec/components/vehicle/Modal.spec.tsx b/client/spec/components/vehicle/Modal.spec.tsx new file mode 100644 index 0000000..d4528e3 --- /dev/null +++ b/client/spec/components/vehicle/Modal.spec.tsx @@ -0,0 +1,97 @@ +import VehicleModal from '@/components/vehicle/Modal'; +import { testVehicle, testVin } from '@/spec/constants'; +import { + fireEvent, render, screen, +} from '@testing-library/react'; + +describe('VehicleModal', () => { + let onSubmit: jest.Mock; + let onClose: jest.Mock; + beforeEach(() => { + onSubmit = jest.fn(); + onClose = jest.fn(); + }); + describe('update existing vehicle', () => { + beforeEach(() => { + render( + , + ); + }); + + it('renders update title', () => { + expect(screen.getByText(`Update ${testVin}`)).toBeTruthy(); + }); + + it('has a delete button', () => { + expect(screen.getByText('Delete', { selector: 'button' })).toBeTruthy(); + }); + + it('has an update button', () => { + expect(screen.getByText('Update', { selector: 'button' })).toBeTruthy(); + }); + }); + + describe('create new vehicle', () => { + beforeEach(() => { + render( + , + ); + }); + + it('renders create title', () => { + expect(screen.getByText('Create a vehicle')).toBeTruthy(); + }); + + it('renders create button', () => { + expect( + screen.getByText('Create', { + selector: 'button', + }), + ).toBeTruthy(); + }); + }); + + it('resets data on reopen', async () => { + const { rerender, getByLabelText } = render( + , + ); + fireEvent.change(getByLabelText('VIN'), { + target: { value: 'new-vin' }, + }); + + rerender( + , + ); + + rerender( + , + ); + + expect(getByLabelText('VIN').innerText).toBeFalsy(); + }); +}); diff --git a/client/spec/constants.tsx b/client/spec/constants.tsx new file mode 100644 index 0000000..a6d0043 --- /dev/null +++ b/client/spec/constants.tsx @@ -0,0 +1,8 @@ +export const testVin = 'device-1'; +export const testCert = 'cert'; +export const testKey = 'key'; +export const testVehicle = { + vin: testVin, + cert: testCert, + key: testKey, +}; diff --git a/client/spec/context/Context.spec.tsx b/client/spec/context/Context.spec.tsx new file mode 100644 index 0000000..74ff423 --- /dev/null +++ b/client/spec/context/Context.spec.tsx @@ -0,0 +1,180 @@ +import ContextProvider from '@/context/Context'; +import { Context, createContext, useContext } from 'react'; +import { + AppContext, + DataStore, + FleetData, + ServerData, + Vehicle, +} from '@/context/types'; +import { + act, render, screen, waitFor, +} from '@testing-library/react'; +import { testVin } from '../constants'; + +function TestComponent({ context, onClick, makeAssertions }: { + context: Context; + onClick: (c: AppContext) => void; + makeAssertions: (c: AppContext) => void; +}) { + const app = useContext(context); + if (!app || app.isLoading) { + return null; + } + + return ( + <> +
    onClick(app)}>click
    +
    makeAssertions(app)}>assert
    + + ); +} + +type Data = { fleetData?: FleetData; serverData?: ServerData }; + +describe('Context', () => { + let ds: DataStore; + const testWithContext = async ( + onClick: (c: AppContext) => void, + makeAssertions: (c: AppContext) => void, + data: Data = {}, + ) => { + const context = createContext(undefined); + ds = { + loadData: jest.fn().mockReturnValue({ + fleetData: data.fleetData ?? {}, + serverData: data.serverData ?? { host: '', port: '' }, + }), + saveData: jest.fn(), + }; + + render( + + + , + ); + await waitFor(() => expect(screen.getByText('click')).toBeInTheDocument()); + act(() => screen.getByText('click').click()); + act(() => screen.getByText('assert').click()); + }; + + it('saveData called once after update', async () => { + await testWithContext( + (ctx) => { + ctx.configureServer('host2', 'port2'); + }, + () => { }, + ); + await waitFor(() => expect(ds.saveData).toHaveBeenCalledTimes(1)); + expect(ds.saveData).toHaveBeenCalledWith( + {}, + { host: 'host2', port: 'port2' }, + ); + }); + + it('configureServer', async () => { + await testWithContext( + (ctx) => { + ctx.configureServer('host2', 'port2'); + }, + (ctx) => { + expect(ctx.server).toEqual({ host: 'host2', port: 'port2' }); + }, + ); + }); + + it('changeVin', async () => { + const vehicleData = { + data: { Gear: { intValue: 1 } }, + key: '', + cert: '', + }; + await testWithContext( + (ctx) => { + ctx.changeVin('vin1', 'vin2'); + }, + (ctx) => { + expect(ctx.fleetData).toEqual({ vin2: vehicleData }); + }, + { + fleetData: { + vin1: vehicleData, + }, + }, + ); + }); + + it('newVehicle', async () => { + await testWithContext( + (ctx) => { + ctx.newVehicle('newVin'); + }, + (ctx) => { + expect(ctx.fleetData).toEqual({ + newVin: { + data: { + Gear: { intValue: 2 }, + VehicleName: { stringValue: 'First Vehicle' }, + }, + key: '', + cert: '', + }, + }); + }, + ); + }); + + it.each([ + [ + 'setIntData', + { data: { Gear: { intValue: 1 } } }, + { data: { Gear: { intValue: 2 } } }, + (ctx: AppContext) => ctx.setIntData(testVin, 'Gear', 2), + ], + [ + 'setStringData', + { data: { VehicleName: { stringValue: 'before' } } }, + { data: { VehicleName: { stringValue: 'after' } } }, + (ctx: AppContext) => ctx.setStringData(testVin, 'VehicleName', 'after'), + ], + [ + 'setCert', + { cert: 'before' }, + { cert: 'after' }, + (ctx: AppContext) => ctx.setCert(testVin, 'after'), + ], + [ + 'setKey', + { key: 'before' }, + { key: 'after' }, + (ctx: AppContext) => ctx.setKey(testVin, 'after'), + ], + ])( + '%s', + async ( + _, + vehicleBefore: Partial, + vehicleAfter: Partial, + onClick, + ) => { + const defaultVehicle = { key: '', cert: '', data: {} }; + await testWithContext( + onClick, + (ctx) => { + expect(ctx.fleetData).toEqual({ + [testVin]: { ...defaultVehicle, ...vehicleAfter }, + }); + }, + { + fleetData: { + [testVin]: { ...defaultVehicle, ...vehicleBefore }, + }, + }, + ); + }, + ); +}); diff --git a/client/spec/context/localStorage.spec.tsx b/client/spec/context/localStorage.spec.tsx new file mode 100644 index 0000000..4c01b04 --- /dev/null +++ b/client/spec/context/localStorage.spec.tsx @@ -0,0 +1,31 @@ +import LocalStorage from '@/context/localStorage'; + +const sampleData = { + fleetData: { vin: { data: {}, key: 'key', cert: 'cert' } }, + serverData: { host: 'host', port: 'port' }, +}; + +describe('localStorage context', () => { + describe('loadData', () => { + it('loads existing data from localStorage', async () => { + localStorage.setItem('appData', JSON.stringify(sampleData)); + expect(await LocalStorage.loadData()).toStrictEqual(sampleData); + }); + + it('returns default data if no data in localStorage', async () => { + expect(await LocalStorage.loadData()).toStrictEqual({ + fleetData: {}, + serverData: { host: '', port: '' }, + }); + }); + }); + + describe('saveData', () => { + it('saves data to localStorage', async () => { + await LocalStorage.saveData(sampleData.fleetData, sampleData.serverData); + const fromLocalStorage = localStorage.getItem('appData'); + expect(fromLocalStorage).not.toBeNull(); + expect(JSON.parse(fromLocalStorage || '')).toStrictEqual(sampleData); + }); + }); +}); diff --git a/client/spec/helper.tsx b/client/spec/helper.tsx new file mode 100644 index 0000000..4d25a01 --- /dev/null +++ b/client/spec/helper.tsx @@ -0,0 +1,31 @@ +import ApplicationProvider, { useApp } from '@/context/ApplicationProvider'; +import { InitialState } from '@/context/types'; + +function BlockWhileLoading({ children }: { children: React.ReactNode }) { + const { isLoading } = useApp(); + return isLoading ? null : children; +} + +const wrapContext = ( + children: React.ReactNode, + saveData: (fleetData: any, serverData: any) => Promise = () => Promise.resolve(), + state: Partial = {}, +) => { + const defaultState = { + fleetData: {}, + serverData: { host: '', port: '' }, + loading: false, + }; + const loadData = async () => ({ ...defaultState, ...state }); + + return ( + + {children} + + ); +}; + +export default wrapContext; diff --git a/client/spec/setup.ts b/client/spec/setup.ts new file mode 100644 index 0000000..eaf4630 --- /dev/null +++ b/client/spec/setup.ts @@ -0,0 +1,26 @@ +import '@testing-library/jest-dom'; +import fetchMock from 'jest-fetch-mock'; +import Sinon from 'sinon'; +import util from 'util'; + +fetchMock.enableMocks(); + +afterEach(() => { + localStorage.clear(); + sessionStorage.clear(); + fetchMock.resetMocks(); + Sinon.reset(); + Sinon.restore(); +}); + +process.env.NEXT_PUBLIC_PHANTOM_FLEET_API_URL = 'http://example.com/'; + +const filteredMessages = [/ cannot appear as a child of
    /]; + +const { error } = console; +// eslint-disable-next-line no-console +console.error = (message, ...args) => { + const fullMessage = util.format(message, ...args); + if (filteredMessages.some((msg) => msg.test(fullMessage))) return; + error(message, ...args); +}; diff --git a/client/tsconfig.json b/client/tsconfig.json new file mode 100644 index 0000000..38c70c5 --- /dev/null +++ b/client/tsconfig.json @@ -0,0 +1,33 @@ +{ + "compilerOptions": { + "target": "ES2020", + "lib": ["dom", "dom.iterable", "esnext"], + "allowJs": true, + "skipLibCheck": true, + "strict": true, + "noEmit": true, + "esModuleInterop": true, + "module": "esnext", + "moduleResolution": "bundler", + "resolveJsonModule": true, + "isolatedModules": true, + "jsx": "preserve", + "incremental": true, + "plugins": [ + { + "name": "next" + } + ], + "paths": { + "@/*": ["./*"] + } + }, + "include": [ + "next-env.d.ts", + "**/*.ts", + "**/*.tsx", + ".next/types/**/*.ts", + "jest.config.js" + ], + "exclude": ["node_modules"] +} diff --git a/cmd/phantom-fleet/internal/mode/api/api.go b/cmd/phantom-fleet/internal/mode/api/api.go index 9e4e6dd..4755878 100644 --- a/cmd/phantom-fleet/internal/mode/api/api.go +++ b/cmd/phantom-fleet/internal/mode/api/api.go @@ -25,6 +25,7 @@ func Run(config *config.Config) error { func contextMiddleware(mux *http.ServeMux, conn *telemetry.Manager) http.Handler { return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { + w.Header().Set("Access-Control-Allow-Origin", "*") ctx := context.WithValue(r.Context(), constants.ContextManager, conn) mux.ServeHTTP(w, r.WithContext(ctx)) }) diff --git a/cmd/phantom-fleet/internal/mode/api/handlers/config.go b/cmd/phantom-fleet/internal/mode/api/handlers/config.go index a1b5ac1..20b1fa3 100644 --- a/cmd/phantom-fleet/internal/mode/api/handlers/config.go +++ b/cmd/phantom-fleet/internal/mode/api/handlers/config.go @@ -1,23 +1,38 @@ package handlers import ( + "crypto/tls" "encoding/json" "net/http" + "strings" "phantom-fleet/pkg/constants" "phantom-fleet/pkg/telemetry" ) +var ( + ValidateServerConfig = isValidServerConfig +) + type Session struct { Host string `json:"host"` Port int `json:"port"` } +type Response struct { + Valid bool `json:"valid"` + Reason string `json:"reason"` +} + // ConfigHandler sets the configuration for the telemetry manager. // Expects a POST request with JSON body containing `host` and `port`. // Connections to previous server are disconnected and all new requests // are routed to newly configured server. func ConfigHandler(w http.ResponseWriter, r *http.Request) { + if r.Method == http.MethodOptions { + handleCors(w, r) + return + } if r.Method != http.MethodPost { http.Error(w, "Method not allowed", http.StatusMethodNotAllowed) return @@ -39,13 +54,35 @@ func ConfigHandler(w http.ResponseWriter, r *http.Request) { } manager := r.Context().Value(constants.ContextManager).(*telemetry.Manager) + manager.Reset() + host := manager.Host if session.Host != "" { - manager.Host = session.Host + host = session.Host } + + port := manager.Port if session.Port != 0 { - manager.Port = session.Port + port = session.Port } - manager.Reset() + valid, msg := ValidateServerConfig(host, port) + if valid { + manager.Host = host + manager.Port = port + json.NewEncoder(w).Encode(&Response{Valid: true}) + return + } + json.NewEncoder(w).Encode(&Response{Valid: false, Reason: msg}) +} + +func isValidServerConfig(host string, port int) (bool, string) { + // connecting with no certificate should fail with bad certificate error + conn, err := telemetry.NewConnection(host, port, tls.Certificate{}) + if err != nil { + return strings.Contains(err.Error(), "bad certificate"), err.Error() + } + + conn.Shutdown() + return true, "" } diff --git a/cmd/phantom-fleet/internal/mode/api/handlers/config_test.go b/cmd/phantom-fleet/internal/mode/api/handlers/config_test.go index 99138ed..aaa15a6 100644 --- a/cmd/phantom-fleet/internal/mode/api/handlers/config_test.go +++ b/cmd/phantom-fleet/internal/mode/api/handlers/config_test.go @@ -2,6 +2,7 @@ package handlers_test import ( "context" + "fmt" "net/http" "net/http/httptest" "strings" @@ -21,9 +22,19 @@ var _ = Describe("/config", func() { cm *telemetry.Manager ) + const ( + beforePort = 8080 + afterPort = 3000 + beforeHost = "before" + afterHost = "after" + ) + BeforeEach(func() { + handlers.ValidateServerConfig = func(host string, port int) (bool, string) { + return true, "" + } ctx := context.Background() - cm = telemetry.NewManager(nil, "localhost", 8080) + cm = telemetry.NewManager(nil, beforeHost, beforePort) s = httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { ctx = r.Context() ctx = context.WithValue(ctx, constants.ContextManager, cm) @@ -42,10 +53,10 @@ var _ = Describe("/config", func() { Expect(cm.Host).To(Equal(expectedHost)) Expect(cm.Port).To(Equal(expectedPort)) }, - Entry("valid config", "{ \"host\": \"updated\", \"port\": 3000 }", http.StatusOK, "updated", 3000), - Entry("invalid json", "{ \"host\": updated, \"port\": 3000 }", http.StatusBadRequest, "localhost", 8080), - Entry("missing host", "{ \"port\": 3000 }", http.StatusOK, "localhost", 3000), - Entry("missing port", "{ \"host\": \"updated\" }", http.StatusOK, "updated", 8080), - Entry("invalid port", "{ \"port\": -1 }", http.StatusBadRequest, "localhost", 8080), + Entry("valid config", fmt.Sprintf("{ \"host\": \"%s\", \"port\": %d }", afterHost, afterPort), http.StatusOK, afterHost, afterPort), + Entry("invalid json", "{ \"host\": before, \"port\": 8080 }", http.StatusBadRequest, beforeHost, beforePort), + Entry("missing host", fmt.Sprintf("{ \"port\": %d }", afterPort), http.StatusOK, beforeHost, afterPort), + Entry("missing port", fmt.Sprintf("{ \"host\": \"%s\" }", afterHost), http.StatusOK, afterHost, beforePort), + Entry("invalid port", "{ \"port\": -1 }", http.StatusBadRequest, beforeHost, beforePort), ) }) diff --git a/cmd/phantom-fleet/internal/mode/api/handlers/cors.go b/cmd/phantom-fleet/internal/mode/api/handlers/cors.go new file mode 100644 index 0000000..4c80b3f --- /dev/null +++ b/cmd/phantom-fleet/internal/mode/api/handlers/cors.go @@ -0,0 +1,11 @@ +package handlers + +import "net/http" + +func handleCors(w http.ResponseWriter, r *http.Request) { + w.Header().Set("Access-Control-Allow-Methods", "POST") + w.Header().Set("Access-Control-Allow-Origin", "*") + w.Header().Set("Access-Control-Allow-Headers", "Content-Type") + w.WriteHeader(http.StatusOK) + +} diff --git a/cmd/phantom-fleet/internal/mode/api/handlers/send_data.go b/cmd/phantom-fleet/internal/mode/api/handlers/send_data.go index 8ec9523..94a85dc 100644 --- a/cmd/phantom-fleet/internal/mode/api/handlers/send_data.go +++ b/cmd/phantom-fleet/internal/mode/api/handlers/send_data.go @@ -17,6 +17,10 @@ var ( // SendDataHandler sends data to the telemetry server func SendDataHandler(w http.ResponseWriter, r *http.Request) { + if r.Method == http.MethodOptions { + handleCors(w, r) + return + } if r.Method != http.MethodPost { http.Error(w, "Method not allowed", http.StatusMethodNotAllowed) return @@ -43,6 +47,7 @@ func SendDataHandler(w http.ResponseWriter, r *http.Request) { err = conn.Publish(message) if err != nil { http.Error(w, "error publishing to telemetry server", http.StatusInternalServerError) + return } w.WriteHeader(http.StatusOK) diff --git a/ft-config.json b/ft-config.json new file mode 100644 index 0000000..eb3e147 --- /dev/null +++ b/ft-config.json @@ -0,0 +1,15 @@ +{ + "host": "app", + "port": 4443, + "log_level": "info", + "json_log_enable": true, + "namespace": "tesla_telemetry", + "records": { + "V": ["logger"] + }, + "tls": { + "ca_file": "./test-certs/vehicle_device.CA.cert", + "server_cert": "./test-certs/vehicle_device.app.cert", + "server_key": "./test-certs/vehicle_device.app.key" + } +}

    )?QyQsc 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 Oc5pg_S*DsoXaCvUuvS_C literal 0 HcmV?d00001 diff --git a/client/spec/api/config.spec.ts b/client/spec/api/config.spec.ts new file mode 100644 index 0000000..470049f --- /dev/null +++ b/client/spec/api/config.spec.ts @@ -0,0 +1,30 @@ +import { setConfig } from '@/api/config'; +import Methods from '@/api/methods'; +import Sinon from 'sinon'; + +const host = 'example.com'; +const port = 8080; + +describe('setConfig', () => { + it('return json on success', async () => { + const stub = Sinon.stub(Methods, 'post'); + stub.resolves(new Response(JSON.stringify({ reason: 'success' }))); + + const res = await setConfig(host, port); + Sinon.assert.calledOnce(stub); + expect(JSON.parse(stub.firstCall.args[1]?.body?.toString() || '')).toEqual({ + host, + port, + }); + expect(res).toEqual({ reason: 'success' }); + }); + + it('returns error', async () => { + const stub = Sinon.stub(Methods, 'post'); + stub.rejects(new Error('API is down')); + + const res = await setConfig(host, port); + Sinon.assert.calledOnce(stub); + expect(res).toEqual({ reason: 'Unexpected error: API is down' }); + }); +}); diff --git a/client/spec/api/data.spec.ts b/client/spec/api/data.spec.ts new file mode 100644 index 0000000..2291769 --- /dev/null +++ b/client/spec/api/data.spec.ts @@ -0,0 +1,48 @@ +import sendData from '@/api/data'; +import Methods from '@/api/methods'; +import Sinon from 'sinon'; +import { testVin } from '../constants'; + +describe('data api', () => { + it('should send data', async () => { + Sinon.useFakeTimers(100); + const stub = Sinon.stub(Methods, 'post'); + stub.resolves(new Response('{}')); + await sendData(testVin, { + data: { + Gear: { + intValue: 3, + }, + }, + key: 'key', + cert: 'cert', + }); + Sinon.assert.calledOnce(stub); + expect(JSON.parse(stub.firstCall.args[1]?.body?.toString() || '')).toEqual({ + cert: 'cert', + data: [{ key: 'Gear', value: { intValue: 3 } }], + messageId: 'msg-0', + createdAt: 100, + txid: 'msg-0', + topic: 'V', + vin: testVin, + device_type: 'vehicle_device', + key: 'key', + }); + }); + + it('rejects on error', async () => { + Sinon.useFakeTimers(100); + const stub = Sinon.stub(Methods, 'post'); + stub.resolves(new Response('{}', { status: 500 })); + await expect(() => sendData(testVin, { + data: { + Gear: { + intValue: 3, + }, + }, + key: 'key', + cert: 'cert', + })).rejects.toThrow('Failed to send data'); + }); +}); diff --git a/client/spec/api/methods.spec.ts b/client/spec/api/methods.spec.ts new file mode 100644 index 0000000..d674cd0 --- /dev/null +++ b/client/spec/api/methods.spec.ts @@ -0,0 +1,22 @@ +import Methods from '@/api/methods'; +import fetchMock from 'jest-fetch-mock'; + +describe('api methods', () => { + beforeEach(() => {}); + describe('post', () => { + it('makes request', async () => { + const reqBody = { foo: 'bar' }; + const resBody = { bar: 'baz' }; + fetchMock.mockOnceIf('http://example.com/path', async (req) => { + expect(req.method).toEqual('POST'); + expect(req.headers.get('Content-Type')).toEqual('application/json'); + expect(await req.json()).toMatchObject(reqBody); + return JSON.stringify(resBody); + }); + + const res = await Methods.post('path', { body: JSON.stringify(reqBody) }); + expect(res.status).toEqual(200); + expect(await res.json()).toMatchObject(resBody); + }); + }); +}); diff --git a/client/spec/app/configure/page.spec.tsx b/client/spec/app/configure/page.spec.tsx new file mode 100644 index 0000000..7bbe3aa --- /dev/null +++ b/client/spec/app/configure/page.spec.tsx @@ -0,0 +1,63 @@ +import ConfigurePage from '@/app/configure/page'; +import { SnackbarProvider } from '@/components/SnackbarContext'; +import { FLEET } from '@/constants/paths'; +import wrapContext from '@/spec/helper'; +import { + act, fireEvent, render, screen, +} from '@testing-library/react'; +import mockRouter from 'next-router-mock'; +import { MemoryRouterProvider } from 'next-router-mock/MemoryRouterProvider'; + +jest.mock('next/navigation', () => jest.requireActual('next-router-mock')); + +describe('page /configure', () => { + beforeEach(async () => { + await act(async () => render( + wrapContext( + + + , + ), + { wrapper: MemoryRouterProvider }, + )); + }); + + it('renders', () => { + expect(screen.getByText('Welcome to Phantom Fleet')).toBeInTheDocument(); + }); + + it('redirects on skip', () => { + const skip = screen.getByText('Skip connection setup'); + expect(skip).toBeInTheDocument(); + act(() => skip.click()); + expect(mockRouter.pathname).toEqual(FLEET); + }); + + describe('host validations', () => { + it('errors when empty', () => { + fireEvent.change(screen.getByLabelText('Host'), { + target: { value: '' }, + }); + act(() => screen.getByText('Validate Connection').click()); + expect(screen.getByText('Host cannot be empty')).toBeInTheDocument(); + }); + }); + + describe('port validations', () => { + it('errors when empty', () => { + fireEvent.change(screen.getByLabelText('Port'), { + target: { value: '' }, + }); + act(() => screen.getByText('Validate Connection').click()); + expect(screen.getByText('Port cannot be empty')).toBeInTheDocument(); + }); + + it('errors when non-numeric', () => { + fireEvent.change(screen.getByLabelText('Port'), { + target: { value: '12abc' }, + }); + act(() => screen.getByText('Validate Connection').click()); + expect(screen.getByText('Port must be a number')).toBeInTheDocument(); + }); + }); +}); diff --git a/client/spec/app/fleet/[id]/page.spec.tsx b/client/spec/app/fleet/[id]/page.spec.tsx new file mode 100644 index 0000000..30e98f1 --- /dev/null +++ b/client/spec/app/fleet/[id]/page.spec.tsx @@ -0,0 +1,85 @@ +import FleetIdPage from '@/app/fleet/[id]/page'; +import { SnackbarProvider } from '@/components/SnackbarContext'; +import { testVin } from '@/spec/constants'; +import wrapContext from '@/spec/helper'; +import { + act, render, screen, +} from '@testing-library/react'; +import sendData from '@/api/data'; +import { FleetData } from '@/context/types'; + +jest.mock('../../../../api/data', () => ({ + __esModule: true, + default: jest.fn(() => Promise.resolve()), +})); + +const renderPage = (fleetData: FleetData) => act(async () => render( + wrapContext( + + + , + jest.fn(), + { + fleetData, + }, + ), +)); + +const vehicle = { + data: { + Gear: { intValue: 2 }, + }, + key: 'key', + cert: 'cert', +}; + +describe('page /fleet/[id]', () => { + describe('vehicle exists', () => { + beforeEach(async () => { + await renderPage({ [testVin]: vehicle }); + }); + + it('renders GearShift', () => { + expect(screen.getByText('Gear Shift')).toBeInTheDocument(); + }); + + it('clicking send button sends data', async () => { + act(() => screen.getByText('Send').click()); + expect(sendData).toHaveBeenCalledTimes(1); + expect(sendData).toHaveBeenCalledWith(testVin, vehicle); + }); + }); + + describe('vehicle does not exist', () => { + beforeEach(async () => { + await renderPage({}); + }); + + it('shows vehicle not found', () => { + expect(screen.getByText('Vehicle not found.')).toBeInTheDocument(); + }); + }); + + describe('pre-send validations', () => { + it.each([ + ['key', '', 'cert'], + ['certificate', 'key', ''], + ])( + 'errors when vehicle %s is empty', + async (nameInError: string, key: string, cert: string) => { + await renderPage({ + [testVin]: { + data: {}, + key, + cert, + }, + }); + + act(() => screen.getByText('Send').click()); + expect( + screen.getByText(`Vehicle ${nameInError} is required.`), + ).toBeInTheDocument(); + }, + ); + }); +}); diff --git a/client/spec/app/fleet/page.spec.tsx b/client/spec/app/fleet/page.spec.tsx new file mode 100644 index 0000000..4d48293 --- /dev/null +++ b/client/spec/app/fleet/page.spec.tsx @@ -0,0 +1,44 @@ +import FleetPage from '@/app/fleet/page'; +import { testVin } from '@/spec/constants'; +import wrapContext from '@/spec/helper'; +import { act, render, screen } from '@testing-library/react'; +import { redirect } from 'next/navigation'; + +jest.mock('next/navigation', () => ({ + ...jest.requireActual('next-router-mock'), + redirect: jest.fn(), +})); + +describe('page /fleet', () => { + it('renders when no vehicles', async () => { + await act(async () => { + render( + wrapContext(, jest.fn(), { + fleetData: {}, + }), + ); + }); + expect( + screen.getByText('To get started, add a vehicle to your fleet.'), + ).toBeInTheDocument(); + }); + + it('redirects when vehicle present', async () => { + await act(async () => { + render( + wrapContext(, jest.fn(), { + fleetData: { + [testVin]: { + data: { Gear: { intValue: 1 } }, + key: '', + cert: '', + }, + }, + }), + ); + }); + + expect(redirect).toHaveBeenCalledTimes(1); + expect(redirect).toHaveBeenCalledWith(`/fleet/${testVin}`); + }); +}); diff --git a/client/spec/app/fleet/template.spec.tsx b/client/spec/app/fleet/template.spec.tsx new file mode 100644 index 0000000..178041a --- /dev/null +++ b/client/spec/app/fleet/template.spec.tsx @@ -0,0 +1,22 @@ +import Fleet from '@/app/fleet/template'; +import { testVin } from '@/spec/constants'; +import wrapContext from '@/spec/helper'; +import { act, render, screen } from '@testing-library/react'; + +jest.mock('next/navigation', () => ({ + ...jest.requireActual('next-router-mock'), + useParams: () => ({ vin: testVin }), +})); + +describe('fleet page template', () => { + it('renders', async () => { + await act(async () => { + render( + wrapContext(Children, jest.fn(), { + fleetData: {}, + }), + ); + }); + expect(screen.getByText('Children')).toBeInTheDocument(); + }); +}); diff --git a/client/spec/app/layout.spec.tsx b/client/spec/app/layout.spec.tsx new file mode 100644 index 0000000..5fa3a94 --- /dev/null +++ b/client/spec/app/layout.spec.tsx @@ -0,0 +1,10 @@ +import RootLayout from '@/app/layout'; +import { act, render, screen } from '@testing-library/react'; + +describe('app/layout', () => { + it('renders', async () => { + const { container } = await act(async () => render(Children)); + expect(screen.getByText('Children')).toBeInTheDocument(); + expect(container.querySelector('html')).toBeInTheDocument(); + }); +}); diff --git a/client/spec/app/page.spec.tsx b/client/spec/app/page.spec.tsx new file mode 100644 index 0000000..2a20e95 --- /dev/null +++ b/client/spec/app/page.spec.tsx @@ -0,0 +1,32 @@ +import { ServerData } from '@/context/types'; +import wrapContext from '@/spec/helper'; +import { act, render } from '@testing-library/react'; +import mockRouter from 'next-router-mock'; +import Home from '@/app/page'; + +jest.mock('next/navigation', () => jest.requireActual('next-router-mock')); + +describe('page /', () => { + const renderPage = async (serverData?: ServerData) => { + await act(async () => render( + wrapContext(, jest.fn(), { + serverData, + }), + )); + }; + + it('redirects to /configure when server data not defined', async () => { + await renderPage(); + expect(mockRouter.pathname).toEqual('/configure'); + }); + + it('redirects to /configure when server data empty', async () => { + await renderPage({ host: '', port: '' }); + expect(mockRouter.pathname).toEqual('/configure'); + }); + + it('redirects to /fleet when server data defined', async () => { + await renderPage({ host: 'host', port: '1234' }); + expect(mockRouter.pathname).toEqual('/fleet'); + }); +}); diff --git a/client/spec/components/AppBar/AppBar.spec.tsx b/client/spec/components/AppBar/AppBar.spec.tsx new file mode 100644 index 0000000..06ca21c --- /dev/null +++ b/client/spec/components/AppBar/AppBar.spec.tsx @@ -0,0 +1,14 @@ +import AppBar from '@/components/AppBar/AppBar'; +import { render, screen } from '@testing-library/react'; + +describe('AppBar', () => { + it('renders without crashing', () => { + render( + + Children + , + ); + expect(screen.getByText('Phantom Fleet')).toBeInTheDocument(); + expect(screen.getByText('Children')).toBeInTheDocument(); + }); +}); diff --git a/client/spec/components/SingleCharacterButton.spec.tsx b/client/spec/components/SingleCharacterButton.spec.tsx new file mode 100644 index 0000000..c86312d --- /dev/null +++ b/client/spec/components/SingleCharacterButton.spec.tsx @@ -0,0 +1,17 @@ +import { render, screen } from '@testing-library/react'; +import SingleCharacterButton from '../../components/SingleCharacterButton'; + +const character = 'A'; + +describe('SingleCharacterButton', () => { + it('renders the character correctly', () => { + render(); + expect(screen.getByText(character)).toBeInTheDocument(); + }); + + it('has equal width and height', () => { + render(); + const button = screen.getByText(character); + expect(button.clientWidth).toEqual(button.clientHeight); + }); +}); diff --git a/client/spec/components/SnackbarContext.spec.tsx b/client/spec/components/SnackbarContext.spec.tsx new file mode 100644 index 0000000..ff9079d --- /dev/null +++ b/client/spec/components/SnackbarContext.spec.tsx @@ -0,0 +1,58 @@ +import { + render, screen, act, waitFor, +} from '@testing-library/react'; +import { + SnackbarProvider, + useSnackbar, +} from '../../components/SnackbarContext'; + +function TestComponent() { + const { openSnackbar } = useSnackbar(); + + const handleClick = () => { + openSnackbar('Test Message', 'success'); + }; + + return ; +} + +describe('SnackbarContext', () => { + it('should render SnackbarProvider with children', () => { + render( + +