From a674b2c98dd8a17d59db713d6eef3ef52cc949b7 Mon Sep 17 00:00:00 2001 From: Kayra Date: Fri, 26 Apr 2024 11:38:48 +0300 Subject: [PATCH 01/23] add nextjs skeleton for the ui --- .gitignore | 33 +++++- internal/api/handlers.go | 7 ++ internal/api/server.go | 26 +++-- ui/.eslintrc.json | 3 + ui/README.md | 36 ++++++ ui/bun.lockb | Bin 0 -> 126756 bytes ui/next.config.mjs | 6 + ui/package.json | 24 ++++ ui/public/next.svg | 1 + ui/public/vercel.svg | 1 + ui/src/app/favicon.ico | Bin 0 -> 25931 bytes ui/src/app/globals.css | 107 +++++++++++++++++ ui/src/app/layout.tsx | 22 ++++ ui/src/app/page.module.css | 230 +++++++++++++++++++++++++++++++++++++ ui/src/app/page.tsx | 95 +++++++++++++++ ui/tsconfig.json | 26 +++++ 16 files changed, 607 insertions(+), 10 deletions(-) create mode 100644 ui/.eslintrc.json create mode 100644 ui/README.md create mode 100755 ui/bun.lockb create mode 100644 ui/next.config.mjs create mode 100644 ui/package.json create mode 100644 ui/public/next.svg create mode 100644 ui/public/vercel.svg create mode 100644 ui/src/app/favicon.ico create mode 100644 ui/src/app/globals.css create mode 100644 ui/src/app/layout.tsx create mode 100644 ui/src/app/page.module.css create mode 100644 ui/src/app/page.tsx create mode 100644 ui/tsconfig.json diff --git a/.gitignore b/.gitignore index 23a76e4..1ca7378 100644 --- a/.gitignore +++ b/.gitignore @@ -2,4 +2,35 @@ *.pem *config.yaml -.DS_Store \ No newline at end of file +.DS_Store + +# dependencies +ui/node_modules +ui/.pnp +ui/*.pnp.js +ui/*.yarn/install-state.gz + +# testing +ui/coverage + +# next.js +ui/.next/ +ui/out/ + +# production +ui/build + +# debug +ui/npm-debug.log* +ui/yarn-debug.log* +ui/yarn-error.log* + +# local env files +ui/.env*.local + +# vercel +ui/.vercel + +# typescript +ui/*.tsbuildinfo +ui/next-env.d.ts diff --git a/internal/api/handlers.go b/internal/api/handlers.go index 5bea1f4..0d2ef2a 100644 --- a/internal/api/handlers.go +++ b/internal/api/handlers.go @@ -22,13 +22,20 @@ func NewGoCertRouter(env *Environment) http.Handler { router.HandleFunc("POST /certificate_requests/{id}/certificate/reject", RejectCertificate(env)) router.HandleFunc("DELETE /certificate_requests/{id}/certificate", DeleteCertificate(env)) + frontend := newFrontendFileServer(env.FrontendDir) + v1 := http.NewServeMux() v1.HandleFunc("GET /status", HealthCheck) v1.Handle("/api/v1/", http.StripPrefix("/api/v1", router)) + v1.Handle("/", frontend) return logging(v1) } +func newFrontendFileServer(dir string) http.Handler { + return http.FileServer(http.Dir(dir)) +} + // the health check endpoint simply returns a http.StatusOK func HealthCheck(w http.ResponseWriter, r *http.Request) { w.WriteHeader(http.StatusOK) //nolint:errcheck diff --git a/internal/api/server.go b/internal/api/server.go index edbb233..6a66982 100644 --- a/internal/api/server.go +++ b/internal/api/server.go @@ -15,21 +15,24 @@ import ( ) type ConfigYAML struct { - KeyPath string - CertPath string - DBPath string - Port int + KeyPath string + CertPath string + DBPath string + FrontendDir string + Port int } type Config struct { - Key []byte - Cert []byte - DBPath string - Port int + Key []byte + Cert []byte + DBPath string + FrontendDir string + Port int } type Environment struct { - DB *certdb.CertificateRequestsRepository + DB *certdb.CertificateRequestsRepository + FrontendDir string } // validateConfigFile opens and processes the given yaml file, and catches errors in the process @@ -56,6 +59,9 @@ func validateConfigFile(filePath string) (Config, error) { if err != nil { return config, errors.Join(validationErr, err) } + if c.FrontendDir == "" { + c.FrontendDir = "ui/out" + } err = dbfile.Close() if err != nil { return config, errors.Join(validationErr, err) @@ -65,6 +71,7 @@ func validateConfigFile(filePath string) (Config, error) { config.Key = key config.DBPath = c.DBPath config.Port = c.Port + config.FrontendDir = c.FrontendDir return config, nil } @@ -85,6 +92,7 @@ func NewServer(configFile string) (*http.Server, error) { env := &Environment{} env.DB = db + env.FrontendDir = config.FrontendDir router := NewGoCertRouter(env) s := &http.Server{ diff --git a/ui/.eslintrc.json b/ui/.eslintrc.json new file mode 100644 index 0000000..bffb357 --- /dev/null +++ b/ui/.eslintrc.json @@ -0,0 +1,3 @@ +{ + "extends": "next/core-web-vitals" +} diff --git a/ui/README.md b/ui/README.md new file mode 100644 index 0000000..c403366 --- /dev/null +++ b/ui/README.md @@ -0,0 +1,36 @@ +This is a [Next.js](https://nextjs.org/) project bootstrapped with [`create-next-app`](https://github.com/vercel/next.js/tree/canary/packages/create-next-app). + +## Getting Started + +First, run the development server: + +```bash +npm run dev +# or +yarn dev +# or +pnpm dev +# or +bun dev +``` + +Open [http://localhost:3000](http://localhost:3000) with your browser to see the result. + +You can start editing the page by modifying `app/page.tsx`. The page auto-updates as you edit the file. + +This project uses [`next/font`](https://nextjs.org/docs/basic-features/font-optimization) to automatically optimize and load Inter, a custom Google Font. + +## Learn More + +To learn more about Next.js, take a look at the following resources: + +- [Next.js Documentation](https://nextjs.org/docs) - learn about Next.js features and API. +- [Learn Next.js](https://nextjs.org/learn) - an interactive Next.js tutorial. + +You can check out [the Next.js GitHub repository](https://github.com/vercel/next.js/) - your feedback and contributions are welcome! + +## Deploy on Vercel + +The easiest way to deploy your Next.js app is to use the [Vercel Platform](https://vercel.com/new?utm_medium=default-template&filter=next.js&utm_source=create-next-app&utm_campaign=create-next-app-readme) from the creators of Next.js. + +Check out our [Next.js deployment documentation](https://nextjs.org/docs/deployment) for more details. diff --git a/ui/bun.lockb b/ui/bun.lockb new file mode 100755 index 0000000000000000000000000000000000000000..79e553894e54d64a18c11122ac9153db8c63df39 GIT binary patch literal 126756 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

-vJj8pLIzikgbQjpLM{QB9hKQV-t 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 \ No newline at end of file diff --git a/ui/public/vercel.svg b/ui/public/vercel.svg new file mode 100644 index 0000000..d2f8422 --- /dev/null +++ b/ui/public/vercel.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/ui/src/app/favicon.ico b/ui/src/app/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..718d6fea4835ec2d246af9800eddb7ffb276240c GIT binary patch literal 25931 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 LrJugUA?W`A8`#=m literal 0 HcmV?d00001 diff --git a/ui/src/app/globals.css b/ui/src/app/globals.css new file mode 100644 index 0000000..f4bd77c --- /dev/null +++ b/ui/src/app/globals.css @@ -0,0 +1,107 @@ +:root { + --max-width: 1100px; + --border-radius: 12px; + --font-mono: ui-monospace, Menlo, Monaco, "Cascadia Mono", "Segoe UI Mono", + "Roboto Mono", "Oxygen Mono", "Ubuntu Monospace", "Source Code Pro", + "Fira Mono", "Droid Sans Mono", "Courier New", monospace; + + --foreground-rgb: 0, 0, 0; + --background-start-rgb: 214, 219, 220; + --background-end-rgb: 255, 255, 255; + + --primary-glow: conic-gradient( + from 180deg at 50% 50%, + #16abff33 0deg, + #0885ff33 55deg, + #54d6ff33 120deg, + #0071ff33 160deg, + transparent 360deg + ); + --secondary-glow: radial-gradient( + rgba(255, 255, 255, 1), + rgba(255, 255, 255, 0) + ); + + --tile-start-rgb: 239, 245, 249; + --tile-end-rgb: 228, 232, 233; + --tile-border: conic-gradient( + #00000080, + #00000040, + #00000030, + #00000020, + #00000010, + #00000010, + #00000080 + ); + + --callout-rgb: 238, 240, 241; + --callout-border-rgb: 172, 175, 176; + --card-rgb: 180, 185, 188; + --card-border-rgb: 131, 134, 135; +} + +@media (prefers-color-scheme: dark) { + :root { + --foreground-rgb: 255, 255, 255; + --background-start-rgb: 0, 0, 0; + --background-end-rgb: 0, 0, 0; + + --primary-glow: radial-gradient(rgba(1, 65, 255, 0.4), rgba(1, 65, 255, 0)); + --secondary-glow: linear-gradient( + to bottom right, + rgba(1, 65, 255, 0), + rgba(1, 65, 255, 0), + rgba(1, 65, 255, 0.3) + ); + + --tile-start-rgb: 2, 13, 46; + --tile-end-rgb: 2, 5, 19; + --tile-border: conic-gradient( + #ffffff80, + #ffffff40, + #ffffff30, + #ffffff20, + #ffffff10, + #ffffff10, + #ffffff80 + ); + + --callout-rgb: 20, 20, 20; + --callout-border-rgb: 108, 108, 108; + --card-rgb: 100, 100, 100; + --card-border-rgb: 200, 200, 200; + } +} + +* { + box-sizing: border-box; + padding: 0; + margin: 0; +} + +html, +body { + max-width: 100vw; + overflow-x: hidden; +} + +body { + color: rgb(var(--foreground-rgb)); + background: linear-gradient( + to bottom, + transparent, + rgb(var(--background-end-rgb)) + ) + rgb(var(--background-start-rgb)); +} + +a { + color: inherit; + text-decoration: none; +} + +@media (prefers-color-scheme: dark) { + html { + color-scheme: dark; + } +} diff --git a/ui/src/app/layout.tsx b/ui/src/app/layout.tsx new file mode 100644 index 0000000..3314e47 --- /dev/null +++ b/ui/src/app/layout.tsx @@ -0,0 +1,22 @@ +import type { Metadata } from "next"; +import { Inter } from "next/font/google"; +import "./globals.css"; + +const inter = Inter({ subsets: ["latin"] }); + +export const metadata: Metadata = { + title: "Create Next App", + description: "Generated by create next app", +}; + +export default function RootLayout({ + children, +}: Readonly<{ + children: React.ReactNode; +}>) { + return ( + + {children} + + ); +} diff --git a/ui/src/app/page.module.css b/ui/src/app/page.module.css new file mode 100644 index 0000000..5c4b1e6 --- /dev/null +++ b/ui/src/app/page.module.css @@ -0,0 +1,230 @@ +.main { + display: flex; + flex-direction: column; + justify-content: space-between; + align-items: center; + padding: 6rem; + min-height: 100vh; +} + +.description { + display: inherit; + justify-content: inherit; + align-items: inherit; + font-size: 0.85rem; + max-width: var(--max-width); + width: 100%; + z-index: 2; + font-family: var(--font-mono); +} + +.description a { + display: flex; + justify-content: center; + align-items: center; + gap: 0.5rem; +} + +.description p { + position: relative; + margin: 0; + padding: 1rem; + background-color: rgba(var(--callout-rgb), 0.5); + border: 1px solid rgba(var(--callout-border-rgb), 0.3); + border-radius: var(--border-radius); +} + +.code { + font-weight: 700; + font-family: var(--font-mono); +} + +.grid { + display: grid; + grid-template-columns: repeat(4, minmax(25%, auto)); + max-width: 100%; + width: var(--max-width); +} + +.card { + padding: 1rem 1.2rem; + border-radius: var(--border-radius); + background: rgba(var(--card-rgb), 0); + border: 1px solid rgba(var(--card-border-rgb), 0); + transition: background 200ms, border 200ms; +} + +.card span { + display: inline-block; + transition: transform 200ms; +} + +.card h2 { + font-weight: 600; + margin-bottom: 0.7rem; +} + +.card p { + margin: 0; + opacity: 0.6; + font-size: 0.9rem; + line-height: 1.5; + max-width: 30ch; + text-wrap: balance; +} + +.center { + display: flex; + justify-content: center; + align-items: center; + position: relative; + padding: 4rem 0; +} + +.center::before { + background: var(--secondary-glow); + border-radius: 50%; + width: 480px; + height: 360px; + margin-left: -400px; +} + +.center::after { + background: var(--primary-glow); + width: 240px; + height: 180px; + z-index: -1; +} + +.center::before, +.center::after { + content: ""; + left: 50%; + position: absolute; + filter: blur(45px); + transform: translateZ(0); +} + +.logo { + position: relative; +} +/* Enable hover only on non-touch devices */ +@media (hover: hover) and (pointer: fine) { + .card:hover { + background: rgba(var(--card-rgb), 0.1); + border: 1px solid rgba(var(--card-border-rgb), 0.15); + } + + .card:hover span { + transform: translateX(4px); + } +} + +@media (prefers-reduced-motion) { + .card:hover span { + transform: none; + } +} + +/* Mobile */ +@media (max-width: 700px) { + .content { + padding: 4rem; + } + + .grid { + grid-template-columns: 1fr; + margin-bottom: 120px; + max-width: 320px; + text-align: center; + } + + .card { + padding: 1rem 2.5rem; + } + + .card h2 { + margin-bottom: 0.5rem; + } + + .center { + padding: 8rem 0 6rem; + } + + .center::before { + transform: none; + height: 300px; + } + + .description { + font-size: 0.8rem; + } + + .description a { + padding: 1rem; + } + + .description p, + .description div { + display: flex; + justify-content: center; + position: fixed; + width: 100%; + } + + .description p { + align-items: center; + inset: 0 0 auto; + padding: 2rem 1rem 1.4rem; + border-radius: 0; + border: none; + border-bottom: 1px solid rgba(var(--callout-border-rgb), 0.25); + background: linear-gradient( + to bottom, + rgba(var(--background-start-rgb), 1), + rgba(var(--callout-rgb), 0.5) + ); + background-clip: padding-box; + backdrop-filter: blur(24px); + } + + .description div { + align-items: flex-end; + pointer-events: none; + inset: auto 0 0; + padding: 2rem; + height: 200px; + background: linear-gradient( + to bottom, + transparent 0%, + rgb(var(--background-end-rgb)) 40% + ); + z-index: 1; + } +} + +/* Tablet and Smaller Desktop */ +@media (min-width: 701px) and (max-width: 1120px) { + .grid { + grid-template-columns: repeat(2, 50%); + } +} + +@media (prefers-color-scheme: dark) { + .vercelLogo { + filter: invert(1); + } + + .logo { + filter: invert(1) drop-shadow(0 0 0.3rem #ffffff70); + } +} + +@keyframes rotate { + from { + transform: rotate(360deg); + } + to { + transform: rotate(0deg); + } +} diff --git a/ui/src/app/page.tsx b/ui/src/app/page.tsx new file mode 100644 index 0000000..d2c63a4 --- /dev/null +++ b/ui/src/app/page.tsx @@ -0,0 +1,95 @@ +import Image from "next/image"; +import styles from "./page.module.css"; + +export default function Home() { + return ( +

+
+

+ Get started by editing  + src/app/page.tsx +

+ +
+ +
+ Next.js Logo +
+ + +
+ ); +} diff --git a/ui/tsconfig.json b/ui/tsconfig.json new file mode 100644 index 0000000..7b28589 --- /dev/null +++ b/ui/tsconfig.json @@ -0,0 +1,26 @@ +{ + "compilerOptions": { + "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": { + "@/*": ["./src/*"] + } + }, + "include": ["next-env.d.ts", "**/*.ts", "**/*.tsx", ".next/types/**/*.ts"], + "exclude": ["node_modules"] +} From 12c58d95d629932c979297191ce41d642c9ad08a Mon Sep 17 00:00:00 2001 From: Kayra Date: Fri, 26 Apr 2024 14:17:14 +0300 Subject: [PATCH 02/23] update rock to build frontend --- rockcraft.yaml | 10 +- ui/package-lock.json | 3974 ++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 3982 insertions(+), 2 deletions(-) create mode 100644 ui/package-lock.json diff --git a/rockcraft.yaml b/rockcraft.yaml index 3f9756c..45650bd 100644 --- a/rockcraft.yaml +++ b/rockcraft.yaml @@ -1,7 +1,7 @@ name: gocert base: bare build-base: ubuntu@22.04 -version: '0.0.1' +version: '0.0.2' summary: A certificate management tool description: | A certificate management tool. @@ -17,6 +17,12 @@ services: startup: enabled parts: + frontend: + source: ./ui + plugin: npm + override-build: | + npm install + npm run build gocert: source: . plugin: go @@ -24,4 +30,4 @@ parts: - go/1.22/stable stage-packages: - ca-certificates_data - - libc6_libs + - libc6_libs \ No newline at end of file diff --git a/ui/package-lock.json b/ui/package-lock.json new file mode 100644 index 0000000..10bba35 --- /dev/null +++ b/ui/package-lock.json @@ -0,0 +1,3974 @@ +{ + "name": "gocert", + "version": "0.1.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "gocert", + "version": "0.1.0", + "dependencies": { + "next": "14.2.3", + "react": "^18", + "react-dom": "^18" + }, + "devDependencies": { + "@types/node": "^20", + "@types/react": "^18", + "@types/react-dom": "^18", + "eslint": "^8", + "eslint-config-next": "14.2.3", + "typescript": "^5" + } + }, + "node_modules/@aashutoshrathi/word-wrap": { + "version": "1.2.6", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@babel/runtime": { + "version": "7.24.4", + "dev": true, + "license": "MIT", + "dependencies": { + "regenerator-runtime": "^0.14.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@eslint-community/eslint-utils": { + "version": "4.4.0", + "dev": true, + "license": "MIT", + "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", + "dev": true, + "license": "MIT", + "engines": { + "node": "^12.0.0 || ^14.0.0 || >=16.0.0" + } + }, + "node_modules/@eslint/eslintrc": { + "version": "2.1.4", + "dev": true, + "license": "MIT", + "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.57.0", + "dev": true, + "license": "MIT", + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/@humanwhocodes/config-array": { + "version": "0.11.14", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@humanwhocodes/object-schema": "^2.0.2", + "debug": "^4.3.1", + "minimatch": "^3.0.5" + }, + "engines": { + "node": ">=10.10.0" + } + }, + "node_modules/@humanwhocodes/module-importer": { + "version": "1.0.1", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=12.22" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, + "node_modules/@humanwhocodes/object-schema": { + "version": "2.0.3", + "dev": true, + "license": "BSD-3-Clause" + }, + "node_modules/@isaacs/cliui": { + "version": "8.0.2", + "dev": true, + "license": "ISC", + "dependencies": { + "string-width": "^5.1.2", + "string-width-cjs": "npm:string-width@^4.2.0", + "strip-ansi": "^7.0.1", + "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", + "wrap-ansi": "^8.1.0", + "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@isaacs/cliui/node_modules/string-width-cjs": { + "name": "string-width", + "version": "4.2.3", + "dev": true, + "license": "MIT", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@isaacs/cliui/node_modules/string-width-cjs/node_modules/emoji-regex": { + "version": "8.0.0", + "dev": true, + "license": "MIT" + }, + "node_modules/@isaacs/cliui/node_modules/string-width-cjs/node_modules/strip-ansi": { + "version": "6.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@isaacs/cliui/node_modules/strip-ansi": { + "version": "7.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "node_modules/@isaacs/cliui/node_modules/strip-ansi-cjs": { + "name": "strip-ansi", + "version": "6.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@isaacs/cliui/node_modules/strip-ansi/node_modules/ansi-regex": { + "version": "6.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/@isaacs/cliui/node_modules/wrap-ansi-cjs": { + "name": "wrap-ansi", + "version": "7.0.0", + "dev": true, + "license": "MIT", + "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/@isaacs/cliui/node_modules/wrap-ansi-cjs/node_modules/string-width": { + "version": "4.2.3", + "dev": true, + "license": "MIT", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@isaacs/cliui/node_modules/wrap-ansi-cjs/node_modules/string-width/node_modules/emoji-regex": { + "version": "8.0.0", + "dev": true, + "license": "MIT" + }, + "node_modules/@isaacs/cliui/node_modules/wrap-ansi-cjs/node_modules/strip-ansi": { + "version": "6.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@next/env": { + "version": "14.2.3", + "license": "MIT" + }, + "node_modules/@next/eslint-plugin-next": { + "version": "14.2.3", + "dev": true, + "license": "MIT", + "dependencies": { + "glob": "10.3.10" + } + }, + "node_modules/@next/swc-darwin-arm64": { + "version": "14.2.3", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "dev": true, + "license": "MIT", + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "dev": true, + "license": "MIT", + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@pkgjs/parseargs": { + "version": "0.11.0", + "dev": true, + "license": "MIT", + "optional": true, + "engines": { + "node": ">=14" + } + }, + "node_modules/@rushstack/eslint-patch": { + "version": "1.10.2", + "dev": true, + "license": "MIT" + }, + "node_modules/@swc/counter": { + "version": "0.1.3", + "license": "Apache-2.0" + }, + "node_modules/@swc/helpers": { + "version": "0.5.5", + "license": "Apache-2.0", + "dependencies": { + "@swc/counter": "^0.1.3", + "tslib": "^2.4.0" + } + }, + "node_modules/@types/json5": { + "version": "0.0.29", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/node": { + "version": "20.12.7", + "dev": true, + "license": "MIT", + "dependencies": { + "undici-types": "~5.26.4" + } + }, + "node_modules/@types/prop-types": { + "version": "15.7.12", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/react": { + "version": "18.3.0", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/prop-types": "*", + "csstype": "^3.0.2" + } + }, + "node_modules/@types/react-dom": { + "version": "18.3.0", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/react": "*" + } + }, + "node_modules/@typescript-eslint/parser": { + "version": "7.2.0", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "@typescript-eslint/scope-manager": "7.2.0", + "@typescript-eslint/types": "7.2.0", + "@typescript-eslint/typescript-estree": "7.2.0", + "@typescript-eslint/visitor-keys": "7.2.0", + "debug": "^4.3.4" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^8.56.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/scope-manager": { + "version": "7.2.0", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/types": "7.2.0", + "@typescript-eslint/visitor-keys": "7.2.0" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/types": { + "version": "7.2.0", + "dev": true, + "license": "MIT", + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/typescript-estree": { + "version": "7.2.0", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "@typescript-eslint/types": "7.2.0", + "@typescript-eslint/visitor-keys": "7.2.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/minimatch": { + "version": "9.0.3", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/minimatch/node_modules/brace-expansion": { + "version": "2.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/semver": { + "version": "7.6.0", + "dev": true, + "license": "ISC", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/semver/node_modules/lru-cache": { + "version": "6.0.0", + "dev": true, + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@typescript-eslint/visitor-keys": { + "version": "7.2.0", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/types": "7.2.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", + "dev": true, + "license": "ISC" + }, + "node_modules/acorn": { + "version": "8.11.3", + "dev": true, + "license": "MIT", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-jsx": { + "version": "5.3.2", + "dev": true, + "license": "MIT", + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/ajv": { + "version": "6.12.6", + "dev": true, + "license": "MIT", + "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-regex": { + "version": "5.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "4.3.0", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/argparse": { + "version": "2.0.1", + "dev": true, + "license": "Python-2.0" + }, + "node_modules/aria-query": { + "version": "5.3.0", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "dequal": "^2.0.3" + } + }, + "node_modules/array-buffer-byte-length": { + "version": "1.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.5", + "is-array-buffer": "^3.0.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array-includes": { + "version": "3.1.8", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-object-atoms": "^1.0.0", + "get-intrinsic": "^1.2.4", + "is-string": "^1.0.7" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array-union": { + "version": "2.1.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/array.prototype.findlast": { + "version": "1.2.5", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "es-shim-unscopables": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.findlastindex": { + "version": "1.2.5", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "es-shim-unscopables": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.flat": { + "version": "1.3.2", + "dev": true, + "license": "MIT", + "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", + "dev": true, + "license": "MIT", + "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.toreversed": { + "version": "1.1.2", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "es-shim-unscopables": "^1.0.0" + } + }, + "node_modules/array.prototype.tosorted": { + "version": "1.1.3", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.5", + "define-properties": "^1.2.1", + "es-abstract": "^1.22.3", + "es-errors": "^1.1.0", + "es-shim-unscopables": "^1.0.2" + } + }, + "node_modules/arraybuffer.prototype.slice": { + "version": "1.0.3", + "dev": true, + "license": "MIT", + "dependencies": { + "array-buffer-byte-length": "^1.0.1", + "call-bind": "^1.0.5", + "define-properties": "^1.2.1", + "es-abstract": "^1.22.3", + "es-errors": "^1.2.1", + "get-intrinsic": "^1.2.3", + "is-array-buffer": "^3.0.4", + "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", + "dev": true, + "license": "MIT" + }, + "node_modules/available-typed-arrays": { + "version": "1.0.7", + "dev": true, + "license": "MIT", + "dependencies": { + "possible-typed-array-names": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/axe-core": { + "version": "4.7.0", + "dev": true, + "license": "MPL-2.0", + "engines": { + "node": ">=4" + } + }, + "node_modules/axobject-query": { + "version": "3.2.1", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "dequal": "^2.0.3" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "dev": true, + "license": "MIT" + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { + "version": "3.0.2", + "dev": true, + "license": "MIT", + "dependencies": { + "fill-range": "^7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/busboy": { + "version": "1.6.0", + "dependencies": { + "streamsearch": "^1.1.0" + }, + "engines": { + "node": ">=10.16.0" + } + }, + "node_modules/call-bind": { + "version": "1.0.7", + "dev": true, + "license": "MIT", + "dependencies": { + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "set-function-length": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/callsites": { + "version": "3.1.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001612", + "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" + } + ], + "license": "CC-BY-4.0" + }, + "node_modules/chalk": { + "version": "4.1.2", + "dev": true, + "license": "MIT", + "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/client-only": { + "version": "0.0.1", + "license": "MIT" + }, + "node_modules/color-convert": { + "version": "2.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color-name": { + "version": "1.1.4", + "dev": true, + "license": "MIT" + }, + "node_modules/concat-map": { + "version": "0.0.1", + "dev": true, + "license": "MIT" + }, + "node_modules/cross-spawn": { + "version": "7.0.3", + "dev": true, + "license": "MIT", + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/csstype": { + "version": "3.1.3", + "dev": true, + "license": "MIT" + }, + "node_modules/damerau-levenshtein": { + "version": "1.0.8", + "dev": true, + "license": "BSD-2-Clause" + }, + "node_modules/data-view-buffer": { + "version": "1.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/data-view-byte-length": { + "version": "1.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/data-view-byte-offset": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/debug": { + "version": "4.3.4", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/deep-is": { + "version": "0.1.4", + "dev": true, + "license": "MIT" + }, + "node_modules/define-data-property": { + "version": "1.1.4", + "dev": true, + "license": "MIT", + "dependencies": { + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "gopd": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/define-properties": { + "version": "1.2.1", + "dev": true, + "license": "MIT", + "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/dequal": { + "version": "2.0.3", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/dir-glob": { + "version": "3.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "path-type": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/doctrine": { + "version": "3.0.0", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/eastasianwidth": { + "version": "0.2.0", + "dev": true, + "license": "MIT" + }, + "node_modules/emoji-regex": { + "version": "9.2.2", + "dev": true, + "license": "MIT" + }, + "node_modules/enhanced-resolve": { + "version": "5.16.0", + "dev": true, + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.2.4", + "tapable": "^2.2.0" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/es-abstract": { + "version": "1.23.3", + "dev": true, + "license": "MIT", + "dependencies": { + "array-buffer-byte-length": "^1.0.1", + "arraybuffer.prototype.slice": "^1.0.3", + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.7", + "data-view-buffer": "^1.0.1", + "data-view-byte-length": "^1.0.1", + "data-view-byte-offset": "^1.0.0", + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "es-set-tostringtag": "^2.0.3", + "es-to-primitive": "^1.2.1", + "function.prototype.name": "^1.1.6", + "get-intrinsic": "^1.2.4", + "get-symbol-description": "^1.0.2", + "globalthis": "^1.0.3", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.2", + "has-proto": "^1.0.3", + "has-symbols": "^1.0.3", + "hasown": "^2.0.2", + "internal-slot": "^1.0.7", + "is-array-buffer": "^3.0.4", + "is-callable": "^1.2.7", + "is-data-view": "^1.0.1", + "is-negative-zero": "^2.0.3", + "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.3", + "is-string": "^1.0.7", + "is-typed-array": "^1.1.13", + "is-weakref": "^1.0.2", + "object-inspect": "^1.13.1", + "object-keys": "^1.1.1", + "object.assign": "^4.1.5", + "regexp.prototype.flags": "^1.5.2", + "safe-array-concat": "^1.1.2", + "safe-regex-test": "^1.0.3", + "string.prototype.trim": "^1.2.9", + "string.prototype.trimend": "^1.0.8", + "string.prototype.trimstart": "^1.0.8", + "typed-array-buffer": "^1.0.2", + "typed-array-byte-length": "^1.0.1", + "typed-array-byte-offset": "^1.0.2", + "typed-array-length": "^1.0.6", + "unbox-primitive": "^1.0.2", + "which-typed-array": "^1.1.15" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/es-define-property": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "get-intrinsic": "^1.2.4" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-errors": { + "version": "1.3.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-iterator-helpers": { + "version": "1.0.19", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.3", + "es-errors": "^1.3.0", + "es-set-tostringtag": "^2.0.3", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "globalthis": "^1.0.3", + "has-property-descriptors": "^1.0.2", + "has-proto": "^1.0.3", + "has-symbols": "^1.0.3", + "internal-slot": "^1.0.7", + "iterator.prototype": "^1.1.2", + "safe-array-concat": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-object-atoms": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-set-tostringtag": { + "version": "2.0.3", + "dev": true, + "license": "MIT", + "dependencies": { + "get-intrinsic": "^1.2.4", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.1" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-shim-unscopables": { + "version": "1.0.2", + "dev": true, + "license": "MIT", + "dependencies": { + "hasown": "^2.0.0" + } + }, + "node_modules/es-to-primitive": { + "version": "1.2.1", + "dev": true, + "license": "MIT", + "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/escape-string-regexp": { + "version": "4.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint": { + "version": "8.57.0", + "dev": true, + "license": "MIT", + "dependencies": { + "@eslint-community/eslint-utils": "^4.2.0", + "@eslint-community/regexpp": "^4.6.1", + "@eslint/eslintrc": "^2.1.4", + "@eslint/js": "8.57.0", + "@humanwhocodes/config-array": "^0.11.14", + "@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-next": { + "version": "14.2.3", + "dev": true, + "license": "MIT", + "dependencies": { + "@next/eslint-plugin-next": "14.2.3", + "@rushstack/eslint-patch": "^1.3.3", + "@typescript-eslint/parser": "^5.4.2 || ^6.0.0 || 7.0.0 - 7.2.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", + "dev": true, + "license": "MIT", + "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", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/eslint-import-resolver-typescript": { + "version": "3.6.1", + "dev": true, + "license": "ISC", + "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.1", + "dev": true, + "license": "MIT", + "dependencies": { + "debug": "^3.2.7" + }, + "engines": { + "node": ">=4" + }, + "peerDependenciesMeta": { + "eslint": { + "optional": true + } + } + }, + "node_modules/eslint-module-utils/node_modules/debug": { + "version": "3.2.7", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/eslint-plugin-import": { + "version": "2.29.1", + "dev": true, + "license": "MIT", + "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", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/eslint-plugin-import/node_modules/doctrine": { + "version": "2.1.0", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/eslint-plugin-jsx-a11y": { + "version": "6.8.0", + "dev": true, + "license": "MIT", + "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.34.1", + "dev": true, + "license": "MIT", + "dependencies": { + "array-includes": "^3.1.7", + "array.prototype.findlast": "^1.2.4", + "array.prototype.flatmap": "^1.3.2", + "array.prototype.toreversed": "^1.1.2", + "array.prototype.tosorted": "^1.1.3", + "doctrine": "^2.1.0", + "es-iterator-helpers": "^1.0.17", + "estraverse": "^5.3.0", + "jsx-ast-utils": "^2.4.1 || ^3.0.0", + "minimatch": "^3.1.2", + "object.entries": "^1.1.7", + "object.fromentries": "^2.0.7", + "object.hasown": "^1.1.3", + "object.values": "^1.1.7", + "prop-types": "^15.8.1", + "resolve": "^2.0.0-next.5", + "semver": "^6.3.1", + "string.prototype.matchall": "^4.0.10" + }, + "engines": { + "node": ">=4" + }, + "peerDependencies": { + "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8" + } + }, + "node_modules/eslint-plugin-react-hooks": { + "version": "4.6.1", + "dev": true, + "license": "MIT", + "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", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/eslint-plugin-react/node_modules/resolve": { + "version": "2.0.0-next.5", + "dev": true, + "license": "MIT", + "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-scope": { + "version": "7.2.2", + "dev": true, + "license": "BSD-2-Clause", + "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", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/espree": { + "version": "9.6.1", + "dev": true, + "license": "BSD-2-Clause", + "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/esquery": { + "version": "1.5.0", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "estraverse": "^5.1.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/esrecurse": { + "version": "4.3.0", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estraverse": { + "version": "5.3.0", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esutils": { + "version": "2.0.3", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "dev": true, + "license": "MIT" + }, + "node_modules/fast-glob": { + "version": "3.3.2", + "dev": true, + "license": "MIT", + "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", + "dev": true, + "license": "ISC", + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "dev": true, + "license": "MIT" + }, + "node_modules/fast-levenshtein": { + "version": "2.0.6", + "dev": true, + "license": "MIT" + }, + "node_modules/fastq": { + "version": "1.17.1", + "dev": true, + "license": "ISC", + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/file-entry-cache": { + "version": "6.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "flat-cache": "^3.0.4" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/fill-range": { + "version": "7.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/find-up": { + "version": "5.0.0", + "dev": true, + "license": "MIT", + "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", + "dev": true, + "license": "MIT", + "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.3.1", + "dev": true, + "license": "ISC" + }, + "node_modules/for-each": { + "version": "0.3.3", + "dev": true, + "license": "MIT", + "dependencies": { + "is-callable": "^1.1.3" + } + }, + "node_modules/foreground-child": { + "version": "3.1.1", + "dev": true, + "license": "ISC", + "dependencies": { + "cross-spawn": "^7.0.0", + "signal-exit": "^4.0.1" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "dev": true, + "license": "ISC" + }, + "node_modules/function-bind": { + "version": "1.1.2", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/function.prototype.name": { + "version": "1.1.6", + "dev": true, + "license": "MIT", + "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", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-intrinsic": { + "version": "1.2.4", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "has-proto": "^1.0.1", + "has-symbols": "^1.0.3", + "hasown": "^2.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-symbol-description": { + "version": "1.0.2", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.5", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-tsconfig": { + "version": "4.7.3", + "dev": true, + "license": "MIT", + "dependencies": { + "resolve-pkg-maps": "^1.0.0" + }, + "funding": { + "url": "https://github.com/privatenumber/get-tsconfig?sponsor=1" + } + }, + "node_modules/glob": { + "version": "10.3.10", + "dev": true, + "license": "ISC", + "dependencies": { + "foreground-child": "^3.1.0", + "jackspeak": "^2.3.5", + "minimatch": "^9.0.1", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0", + "path-scurry": "^1.10.1" + }, + "bin": { + "glob": "dist/esm/bin.mjs" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/glob-parent": { + "version": "6.0.2", + "dev": true, + "license": "ISC", + "dependencies": { + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/glob/node_modules/minimatch": { + "version": "9.0.4", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/glob/node_modules/minimatch/node_modules/brace-expansion": { + "version": "2.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/globals": { + "version": "13.24.0", + "dev": true, + "license": "MIT", + "dependencies": { + "type-fest": "^0.20.2" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/globalthis": { + "version": "1.0.3", + "dev": true, + "license": "MIT", + "dependencies": { + "define-properties": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/globby": { + "version": "11.1.0", + "dev": true, + "license": "MIT", + "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", + "dev": true, + "license": "MIT", + "dependencies": { + "get-intrinsic": "^1.1.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.11", + "license": "ISC" + }, + "node_modules/graphemer": { + "version": "1.4.0", + "dev": true, + "license": "MIT" + }, + "node_modules/has-bigints": { + "version": "1.0.2", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-flag": { + "version": "4.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/has-property-descriptors": { + "version": "1.0.2", + "dev": true, + "license": "MIT", + "dependencies": { + "es-define-property": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-proto": { + "version": "1.0.3", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-symbols": { + "version": "1.0.3", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-tostringtag": { + "version": "1.0.2", + "dev": true, + "license": "MIT", + "dependencies": { + "has-symbols": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/hasown": { + "version": "2.0.2", + "dev": true, + "license": "MIT", + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/ignore": { + "version": "5.3.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 4" + } + }, + "node_modules/import-fresh": { + "version": "3.3.0", + "dev": true, + "license": "MIT", + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/inflight": { + "version": "1.0.6", + "dev": true, + "license": "ISC", + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "dev": true, + "license": "ISC" + }, + "node_modules/internal-slot": { + "version": "1.0.7", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "hasown": "^2.0.0", + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/is-array-buffer": { + "version": "3.0.4", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-async-function": { + "version": "2.0.0", + "dev": true, + "license": "MIT", + "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", + "dev": true, + "license": "MIT", + "dependencies": { + "has-bigints": "^1.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-boolean-object": { + "version": "1.1.2", + "dev": true, + "license": "MIT", + "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", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-core-module": { + "version": "2.13.1", + "dev": true, + "license": "MIT", + "dependencies": { + "hasown": "^2.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-data-view": { + "version": "1.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "is-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-date-object": { + "version": "1.0.5", + "dev": true, + "license": "MIT", + "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", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-finalizationregistry": { + "version": "1.0.2", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-generator-function": { + "version": "1.0.10", + "dev": true, + "license": "MIT", + "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", + "dev": true, + "license": "MIT", + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-map": { + "version": "2.0.3", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-negative-zero": { + "version": "2.0.3", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-number": { + "version": "7.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-number-object": { + "version": "1.0.7", + "dev": true, + "license": "MIT", + "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", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-regex": { + "version": "1.1.4", + "dev": true, + "license": "MIT", + "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.3", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-shared-array-buffer": { + "version": "1.0.3", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-string": { + "version": "1.0.7", + "dev": true, + "license": "MIT", + "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", + "dev": true, + "license": "MIT", + "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.13", + "dev": true, + "license": "MIT", + "dependencies": { + "which-typed-array": "^1.1.14" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-weakmap": { + "version": "2.0.2", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-weakref": { + "version": "1.0.2", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-weakset": { + "version": "2.0.3", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "get-intrinsic": "^1.2.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/isarray": { + "version": "2.0.5", + "dev": true, + "license": "MIT" + }, + "node_modules/isexe": { + "version": "2.0.0", + "dev": true, + "license": "ISC" + }, + "node_modules/iterator.prototype": { + "version": "1.1.2", + "dev": true, + "license": "MIT", + "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/jackspeak": { + "version": "2.3.6", + "dev": true, + "license": "BlueOak-1.0.0", + "dependencies": { + "@isaacs/cliui": "^8.0.2" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + }, + "optionalDependencies": { + "@pkgjs/parseargs": "^0.11.0" + } + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "license": "MIT" + }, + "node_modules/js-yaml": { + "version": "4.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/json-buffer": { + "version": "3.0.1", + "dev": true, + "license": "MIT" + }, + "node_modules/json-schema-traverse": { + "version": "0.4.1", + "dev": true, + "license": "MIT" + }, + "node_modules/json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "dev": true, + "license": "MIT" + }, + "node_modules/json5": { + "version": "1.0.2", + "dev": true, + "license": "MIT", + "dependencies": { + "minimist": "^1.2.0" + }, + "bin": { + "json5": "lib/cli.js" + } + }, + "node_modules/jsx-ast-utils": { + "version": "3.3.5", + "dev": true, + "license": "MIT", + "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/keyv": { + "version": "4.5.4", + "dev": true, + "license": "MIT", + "dependencies": { + "json-buffer": "3.0.1" + } + }, + "node_modules/language-subtag-registry": { + "version": "0.3.22", + "dev": true, + "license": "CC0-1.0" + }, + "node_modules/language-tags": { + "version": "1.0.9", + "dev": true, + "license": "MIT", + "dependencies": { + "language-subtag-registry": "^0.3.20" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/levn": { + "version": "0.4.1", + "dev": true, + "license": "MIT", + "dependencies": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/locate-path": { + "version": "6.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/lodash.merge": { + "version": "4.6.2", + "dev": true, + "license": "MIT" + }, + "node_modules/loose-envify": { + "version": "1.4.0", + "license": "MIT", + "dependencies": { + "js-tokens": "^3.0.0 || ^4.0.0" + }, + "bin": { + "loose-envify": "cli.js" + } + }, + "node_modules/lru-cache": { + "version": "10.2.1", + "dev": true, + "license": "ISC", + "engines": { + "node": "14 || >=16.14" + } + }, + "node_modules/merge2": { + "version": "1.4.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 8" + } + }, + "node_modules/micromatch": { + "version": "4.0.5", + "dev": true, + "license": "MIT", + "dependencies": { + "braces": "^3.0.2", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/minimatch": { + "version": "3.1.2", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/minimist": { + "version": "1.2.8", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/minipass": { + "version": "7.0.4", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/ms": { + "version": "2.1.2", + "dev": true, + "license": "MIT" + }, + "node_modules/nanoid": { + "version": "3.3.7", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/natural-compare": { + "version": "1.4.0", + "dev": true, + "license": "MIT" + }, + "node_modules/next": { + "version": "14.2.3", + "license": "MIT", + "dependencies": { + "@next/env": "14.2.3", + "@swc/helpers": "0.5.5", + "busboy": "1.6.0", + "caniuse-lite": "^1.0.30001579", + "graceful-fs": "^4.2.11", + "postcss": "8.4.31", + "styled-jsx": "5.1.1" + }, + "bin": { + "next": "dist/bin/next" + }, + "engines": { + "node": ">=18.17.0" + }, + "optionalDependencies": { + "@next/swc-darwin-arm64": "14.2.3", + "@next/swc-darwin-x64": "14.2.3", + "@next/swc-linux-arm64-gnu": "14.2.3", + "@next/swc-linux-arm64-musl": "14.2.3", + "@next/swc-linux-x64-gnu": "14.2.3", + "@next/swc-linux-x64-musl": "14.2.3", + "@next/swc-win32-arm64-msvc": "14.2.3", + "@next/swc-win32-ia32-msvc": "14.2.3", + "@next/swc-win32-x64-msvc": "14.2.3" + }, + "peerDependencies": { + "@opentelemetry/api": "^1.1.0", + "@playwright/test": "^1.41.2", + "react": "^18.2.0", + "react-dom": "^18.2.0", + "sass": "^1.3.0" + }, + "peerDependenciesMeta": { + "@opentelemetry/api": { + "optional": true + }, + "@playwright/test": { + "optional": true + }, + "sass": { + "optional": true + } + } + }, + "node_modules/object-assign": { + "version": "4.1.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-inspect": { + "version": "1.13.1", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object-keys": { + "version": "1.1.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.assign": { + "version": "4.1.5", + "dev": true, + "license": "MIT", + "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.8", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.fromentries": { + "version": "2.0.8", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.groupby": { + "version": "1.0.3", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.hasown": { + "version": "1.1.4", + "dev": true, + "license": "MIT", + "dependencies": { + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.values": { + "version": "1.2.0", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/once": { + "version": "1.4.0", + "dev": true, + "license": "ISC", + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/optionator": { + "version": "0.9.3", + "dev": true, + "license": "MIT", + "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", + "dev": true, + "license": "MIT", + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate": { + "version": "5.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/parent-module": { + "version": "1.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/path-exists": { + "version": "4.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-key": { + "version": "3.1.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "dev": true, + "license": "MIT" + }, + "node_modules/path-scurry": { + "version": "1.10.2", + "dev": true, + "license": "BlueOak-1.0.0", + "dependencies": { + "lru-cache": "^10.2.0", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/path-type": { + "version": "4.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/picocolors": { + "version": "1.0.0", + "license": "ISC" + }, + "node_modules/picomatch": { + "version": "2.3.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/possible-typed-array-names": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/postcss": { + "version": "8.4.31", + "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" + } + ], + "license": "MIT", + "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", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/prop-types": { + "version": "15.8.1", + "dev": true, + "license": "MIT", + "dependencies": { + "loose-envify": "^1.4.0", + "object-assign": "^4.1.1", + "react-is": "^16.13.1" + } + }, + "node_modules/punycode": { + "version": "2.3.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/queue-microtask": { + "version": "1.2.3", + "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" + } + ], + "license": "MIT" + }, + "node_modules/react": { + "version": "18.3.0", + "license": "MIT", + "dependencies": { + "loose-envify": "^1.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/react-dom": { + "version": "18.3.0", + "license": "MIT", + "dependencies": { + "loose-envify": "^1.1.0", + "scheduler": "^0.23.1" + }, + "peerDependencies": { + "react": "^18.3.0" + } + }, + "node_modules/react-is": { + "version": "16.13.1", + "dev": true, + "license": "MIT" + }, + "node_modules/reflect.getprototypeof": { + "version": "1.0.6", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.1", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.4", + "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", + "dev": true, + "license": "MIT" + }, + "node_modules/regexp.prototype.flags": { + "version": "1.5.2", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.6", + "define-properties": "^1.2.1", + "es-errors": "^1.3.0", + "set-function-name": "^2.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve": { + "version": "1.22.8", + "dev": true, + "license": "MIT", + "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-from": { + "version": "4.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/resolve-pkg-maps": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/privatenumber/resolve-pkg-maps?sponsor=1" + } + }, + "node_modules/reusify": { + "version": "1.0.4", + "dev": true, + "license": "MIT", + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/rimraf": { + "version": "3.0.2", + "dev": true, + "license": "ISC", + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/rimraf/node_modules/glob": { + "version": "7.2.3", + "dev": true, + "license": "ISC", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/run-parallel": { + "version": "1.2.0", + "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" + } + ], + "license": "MIT", + "dependencies": { + "queue-microtask": "^1.2.2" + } + }, + "node_modules/safe-array-concat": { + "version": "1.1.2", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "get-intrinsic": "^1.2.4", + "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.3", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", + "is-regex": "^1.1.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/scheduler": { + "version": "0.23.1", + "license": "MIT", + "dependencies": { + "loose-envify": "^1.1.0" + } + }, + "node_modules/semver": { + "version": "6.3.1", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/set-function-length": { + "version": "1.2.2", + "dev": true, + "license": "MIT", + "dependencies": { + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/set-function-name": { + "version": "2.0.2", + "dev": true, + "license": "MIT", + "dependencies": { + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "functions-have-names": "^1.2.3", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/side-channel": { + "version": "1.0.6", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.4", + "object-inspect": "^1.13.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/signal-exit": { + "version": "4.1.0", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/slash": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/source-map-js": { + "version": "1.2.0", + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/streamsearch": { + "version": "1.1.0", + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/string-width": { + "version": "5.1.2", + "dev": true, + "license": "MIT", + "dependencies": { + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/string-width/node_modules/strip-ansi": { + "version": "7.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "node_modules/string-width/node_modules/strip-ansi/node_modules/ansi-regex": { + "version": "6.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/string.prototype.matchall": { + "version": "4.0.11", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "get-intrinsic": "^1.2.4", + "gopd": "^1.0.1", + "has-symbols": "^1.0.3", + "internal-slot": "^1.0.7", + "regexp.prototype.flags": "^1.5.2", + "set-function-name": "^2.0.2", + "side-channel": "^1.0.6" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trim": { + "version": "1.2.9", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.0", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimend": { + "version": "1.0.8", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimstart": { + "version": "1.0.8", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-bom": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/strip-json-comments": { + "version": "3.1.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/styled-jsx": { + "version": "5.1.1", + "license": "MIT", + "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/supports-color": { + "version": "7.2.0", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/tapable": { + "version": "2.2.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/text-table": { + "version": "0.2.0", + "dev": true, + "license": "MIT" + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/ts-api-utils": { + "version": "1.3.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=16" + }, + "peerDependencies": { + "typescript": ">=4.2.0" + } + }, + "node_modules/tsconfig-paths": { + "version": "3.15.0", + "dev": true, + "license": "MIT", + "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", + "license": "0BSD" + }, + "node_modules/type-check": { + "version": "0.4.0", + "dev": true, + "license": "MIT", + "dependencies": { + "prelude-ls": "^1.2.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/type-fest": { + "version": "0.20.2", + "dev": true, + "license": "(MIT OR CC0-1.0)", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/typed-array-buffer": { + "version": "1.0.2", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "is-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/typed-array-byte-length": { + "version": "1.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-proto": "^1.0.3", + "is-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typed-array-byte-offset": { + "version": "1.0.2", + "dev": true, + "license": "MIT", + "dependencies": { + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-proto": "^1.0.3", + "is-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typed-array-length": { + "version": "1.0.6", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-proto": "^1.0.3", + "is-typed-array": "^1.1.13", + "possible-typed-array-names": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typescript": { + "version": "5.4.5", + "dev": true, + "license": "Apache-2.0", + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, + "node_modules/unbox-primitive": { + "version": "1.0.2", + "dev": true, + "license": "MIT", + "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", + "dev": true, + "license": "MIT" + }, + "node_modules/uri-js": { + "version": "4.4.1", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/which": { + "version": "2.0.2", + "dev": true, + "license": "ISC", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/which-boxed-primitive": { + "version": "1.0.2", + "dev": true, + "license": "MIT", + "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", + "dev": true, + "license": "MIT", + "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.2", + "dev": true, + "license": "MIT", + "dependencies": { + "is-map": "^2.0.3", + "is-set": "^2.0.3", + "is-weakmap": "^2.0.2", + "is-weakset": "^2.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-typed-array": { + "version": "1.1.15", + "dev": true, + "license": "MIT", + "dependencies": { + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/wrap-ansi": { + "version": "8.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^6.1.0", + "string-width": "^5.0.1", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi/node_modules/ansi-styles": { + "version": "6.2.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/wrap-ansi/node_modules/strip-ansi": { + "version": "7.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi/node_modules/strip-ansi/node_modules/ansi-regex": { + "version": "6.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "dev": true, + "license": "ISC" + }, + "node_modules/yallist": { + "version": "4.0.0", + "dev": true, + "license": "ISC" + }, + "node_modules/yocto-queue": { + "version": "0.1.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@next/swc-darwin-x64": { + "version": "14.2.3", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.3.tgz", + "integrity": "sha512-6adp7waE6P1TYFSXpY366xwsOnEXM+y1kgRpjSRVI2CBDOcbRjsJ67Z6EgKIqWIue52d2q/Mx8g9MszARj8IEA==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-linux-arm64-gnu": { + "version": "14.2.3", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.3.tgz", + "integrity": "sha512-cuzCE/1G0ZSnTAHJPUT1rPgQx1w5tzSX7POXSLaS7w2nIUJUD+e25QoXD/hMfxbsT9rslEXugWypJMILBj/QsA==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-linux-arm64-musl": { + "version": "14.2.3", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.3.tgz", + "integrity": "sha512-0D4/oMM2Y9Ta3nGuCcQN8jjJjmDPYpHX9OJzqk42NZGJocU2MqhBq5tWkJrUQOQY9N+In9xOdymzapM09GeiZw==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-linux-x64-gnu": { + "version": "14.2.3", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.3.tgz", + "integrity": "sha512-ENPiNnBNDInBLyUU5ii8PMQh+4XLr4pG51tOp6aJ9xqFQ2iRI6IH0Ds2yJkAzNV1CfyagcyzPfROMViS2wOZ9w==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-linux-x64-musl": { + "version": "14.2.3", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.3.tgz", + "integrity": "sha512-BTAbq0LnCbF5MtoM7I/9UeUu/8ZBY0i8SFjUMCbPDOLv+un67e2JgyN4pmgfXBwy/I+RHu8q+k+MCkDN6P9ViQ==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-win32-arm64-msvc": { + "version": "14.2.3", + "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.3.tgz", + "integrity": "sha512-AEHIw/dhAMLNFJFJIJIyOFDzrzI5bAjI9J26gbO5xhAKHYTZ9Or04BesFPXiAYXDNdrwTP2dQceYA4dL1geu8A==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-win32-ia32-msvc": { + "version": "14.2.3", + "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.3.tgz", + "integrity": "sha512-vga40n1q6aYb0CLrM+eEmisfKCR45ixQYXuBXxOOmmoV8sYST9k7E3US32FsY+CkkF7NtzdcebiFT4CHuMSyZw==", + "cpu": [ + "ia32" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-win32-x64-msvc": { + "version": "14.2.3", + "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.3.tgz", + "integrity": "sha512-Q1/zm43RWynxrO7lW4ehciQVj+5ePBhOK+/K2P7pLFX3JaJ/IZVC69SHidrmZSOkqz7ECIOhhy7XhAFG4JYyHA==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10" + } + } + } +} From 820441281717fa1b553e1cc61b96977305cb7881 Mon Sep 17 00:00:00 2001 From: Kayra Date: Fri, 26 Apr 2024 14:21:40 +0300 Subject: [PATCH 03/23] chisel the frontend to barebones --- ui/README.md | 23 +--- ui/public/next.svg | 1 - ui/public/vercel.svg | 1 - ui/src/app/favicon.ico | Bin 25931 -> 0 bytes ui/src/app/globals.css | 107 ----------------- ui/src/app/layout.tsx | 10 +- ui/src/app/page.module.css | 230 ------------------------------------- ui/src/app/page.tsx | 92 +-------------- 8 files changed, 7 insertions(+), 457 deletions(-) delete mode 100644 ui/public/next.svg delete mode 100644 ui/public/vercel.svg delete mode 100644 ui/src/app/favicon.ico delete mode 100644 ui/src/app/globals.css delete mode 100644 ui/src/app/page.module.css diff --git a/ui/README.md b/ui/README.md index c403366..b208f84 100644 --- a/ui/README.md +++ b/ui/README.md @@ -1,6 +1,4 @@ -This is a [Next.js](https://nextjs.org/) project bootstrapped with [`create-next-app`](https://github.com/vercel/next.js/tree/canary/packages/create-next-app). - -## Getting Started +## Development First, run the development server: @@ -16,21 +14,4 @@ bun dev Open [http://localhost:3000](http://localhost:3000) with your browser to see the result. -You can start editing the page by modifying `app/page.tsx`. The page auto-updates as you edit the file. - -This project uses [`next/font`](https://nextjs.org/docs/basic-features/font-optimization) to automatically optimize and load Inter, a custom Google Font. - -## Learn More - -To learn more about Next.js, take a look at the following resources: - -- [Next.js Documentation](https://nextjs.org/docs) - learn about Next.js features and API. -- [Learn Next.js](https://nextjs.org/learn) - an interactive Next.js tutorial. - -You can check out [the Next.js GitHub repository](https://github.com/vercel/next.js/) - your feedback and contributions are welcome! - -## Deploy on Vercel - -The easiest way to deploy your Next.js app is to use the [Vercel Platform](https://vercel.com/new?utm_medium=default-template&filter=next.js&utm_source=create-next-app&utm_campaign=create-next-app-readme) from the creators of Next.js. - -Check out our [Next.js deployment documentation](https://nextjs.org/docs/deployment) for more details. +You can start editing the page by modifying `src/app/page.tsx`. The page auto-updates as you edit the file. \ No newline at end of file diff --git a/ui/public/next.svg b/ui/public/next.svg deleted file mode 100644 index 5174b28..0000000 --- a/ui/public/next.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/ui/public/vercel.svg b/ui/public/vercel.svg deleted file mode 100644 index d2f8422..0000000 --- a/ui/public/vercel.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/ui/src/app/favicon.ico b/ui/src/app/favicon.ico deleted file mode 100644 index 718d6fea4835ec2d246af9800eddb7ffb276240c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 25931 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 LrJugUA?W`A8`#=m diff --git a/ui/src/app/globals.css b/ui/src/app/globals.css deleted file mode 100644 index f4bd77c..0000000 --- a/ui/src/app/globals.css +++ /dev/null @@ -1,107 +0,0 @@ -:root { - --max-width: 1100px; - --border-radius: 12px; - --font-mono: ui-monospace, Menlo, Monaco, "Cascadia Mono", "Segoe UI Mono", - "Roboto Mono", "Oxygen Mono", "Ubuntu Monospace", "Source Code Pro", - "Fira Mono", "Droid Sans Mono", "Courier New", monospace; - - --foreground-rgb: 0, 0, 0; - --background-start-rgb: 214, 219, 220; - --background-end-rgb: 255, 255, 255; - - --primary-glow: conic-gradient( - from 180deg at 50% 50%, - #16abff33 0deg, - #0885ff33 55deg, - #54d6ff33 120deg, - #0071ff33 160deg, - transparent 360deg - ); - --secondary-glow: radial-gradient( - rgba(255, 255, 255, 1), - rgba(255, 255, 255, 0) - ); - - --tile-start-rgb: 239, 245, 249; - --tile-end-rgb: 228, 232, 233; - --tile-border: conic-gradient( - #00000080, - #00000040, - #00000030, - #00000020, - #00000010, - #00000010, - #00000080 - ); - - --callout-rgb: 238, 240, 241; - --callout-border-rgb: 172, 175, 176; - --card-rgb: 180, 185, 188; - --card-border-rgb: 131, 134, 135; -} - -@media (prefers-color-scheme: dark) { - :root { - --foreground-rgb: 255, 255, 255; - --background-start-rgb: 0, 0, 0; - --background-end-rgb: 0, 0, 0; - - --primary-glow: radial-gradient(rgba(1, 65, 255, 0.4), rgba(1, 65, 255, 0)); - --secondary-glow: linear-gradient( - to bottom right, - rgba(1, 65, 255, 0), - rgba(1, 65, 255, 0), - rgba(1, 65, 255, 0.3) - ); - - --tile-start-rgb: 2, 13, 46; - --tile-end-rgb: 2, 5, 19; - --tile-border: conic-gradient( - #ffffff80, - #ffffff40, - #ffffff30, - #ffffff20, - #ffffff10, - #ffffff10, - #ffffff80 - ); - - --callout-rgb: 20, 20, 20; - --callout-border-rgb: 108, 108, 108; - --card-rgb: 100, 100, 100; - --card-border-rgb: 200, 200, 200; - } -} - -* { - box-sizing: border-box; - padding: 0; - margin: 0; -} - -html, -body { - max-width: 100vw; - overflow-x: hidden; -} - -body { - color: rgb(var(--foreground-rgb)); - background: linear-gradient( - to bottom, - transparent, - rgb(var(--background-end-rgb)) - ) - rgb(var(--background-start-rgb)); -} - -a { - color: inherit; - text-decoration: none; -} - -@media (prefers-color-scheme: dark) { - html { - color-scheme: dark; - } -} diff --git a/ui/src/app/layout.tsx b/ui/src/app/layout.tsx index 3314e47..86903b9 100644 --- a/ui/src/app/layout.tsx +++ b/ui/src/app/layout.tsx @@ -1,12 +1,8 @@ import type { Metadata } from "next"; -import { Inter } from "next/font/google"; -import "./globals.css"; - -const inter = Inter({ subsets: ["latin"] }); export const metadata: Metadata = { - title: "Create Next App", - description: "Generated by create next app", + title: "GoCert", + description: "A certificate management application", }; export default function RootLayout({ @@ -16,7 +12,7 @@ export default function RootLayout({ }>) { return ( - {children} + {children} ); } diff --git a/ui/src/app/page.module.css b/ui/src/app/page.module.css deleted file mode 100644 index 5c4b1e6..0000000 --- a/ui/src/app/page.module.css +++ /dev/null @@ -1,230 +0,0 @@ -.main { - display: flex; - flex-direction: column; - justify-content: space-between; - align-items: center; - padding: 6rem; - min-height: 100vh; -} - -.description { - display: inherit; - justify-content: inherit; - align-items: inherit; - font-size: 0.85rem; - max-width: var(--max-width); - width: 100%; - z-index: 2; - font-family: var(--font-mono); -} - -.description a { - display: flex; - justify-content: center; - align-items: center; - gap: 0.5rem; -} - -.description p { - position: relative; - margin: 0; - padding: 1rem; - background-color: rgba(var(--callout-rgb), 0.5); - border: 1px solid rgba(var(--callout-border-rgb), 0.3); - border-radius: var(--border-radius); -} - -.code { - font-weight: 700; - font-family: var(--font-mono); -} - -.grid { - display: grid; - grid-template-columns: repeat(4, minmax(25%, auto)); - max-width: 100%; - width: var(--max-width); -} - -.card { - padding: 1rem 1.2rem; - border-radius: var(--border-radius); - background: rgba(var(--card-rgb), 0); - border: 1px solid rgba(var(--card-border-rgb), 0); - transition: background 200ms, border 200ms; -} - -.card span { - display: inline-block; - transition: transform 200ms; -} - -.card h2 { - font-weight: 600; - margin-bottom: 0.7rem; -} - -.card p { - margin: 0; - opacity: 0.6; - font-size: 0.9rem; - line-height: 1.5; - max-width: 30ch; - text-wrap: balance; -} - -.center { - display: flex; - justify-content: center; - align-items: center; - position: relative; - padding: 4rem 0; -} - -.center::before { - background: var(--secondary-glow); - border-radius: 50%; - width: 480px; - height: 360px; - margin-left: -400px; -} - -.center::after { - background: var(--primary-glow); - width: 240px; - height: 180px; - z-index: -1; -} - -.center::before, -.center::after { - content: ""; - left: 50%; - position: absolute; - filter: blur(45px); - transform: translateZ(0); -} - -.logo { - position: relative; -} -/* Enable hover only on non-touch devices */ -@media (hover: hover) and (pointer: fine) { - .card:hover { - background: rgba(var(--card-rgb), 0.1); - border: 1px solid rgba(var(--card-border-rgb), 0.15); - } - - .card:hover span { - transform: translateX(4px); - } -} - -@media (prefers-reduced-motion) { - .card:hover span { - transform: none; - } -} - -/* Mobile */ -@media (max-width: 700px) { - .content { - padding: 4rem; - } - - .grid { - grid-template-columns: 1fr; - margin-bottom: 120px; - max-width: 320px; - text-align: center; - } - - .card { - padding: 1rem 2.5rem; - } - - .card h2 { - margin-bottom: 0.5rem; - } - - .center { - padding: 8rem 0 6rem; - } - - .center::before { - transform: none; - height: 300px; - } - - .description { - font-size: 0.8rem; - } - - .description a { - padding: 1rem; - } - - .description p, - .description div { - display: flex; - justify-content: center; - position: fixed; - width: 100%; - } - - .description p { - align-items: center; - inset: 0 0 auto; - padding: 2rem 1rem 1.4rem; - border-radius: 0; - border: none; - border-bottom: 1px solid rgba(var(--callout-border-rgb), 0.25); - background: linear-gradient( - to bottom, - rgba(var(--background-start-rgb), 1), - rgba(var(--callout-rgb), 0.5) - ); - background-clip: padding-box; - backdrop-filter: blur(24px); - } - - .description div { - align-items: flex-end; - pointer-events: none; - inset: auto 0 0; - padding: 2rem; - height: 200px; - background: linear-gradient( - to bottom, - transparent 0%, - rgb(var(--background-end-rgb)) 40% - ); - z-index: 1; - } -} - -/* Tablet and Smaller Desktop */ -@media (min-width: 701px) and (max-width: 1120px) { - .grid { - grid-template-columns: repeat(2, 50%); - } -} - -@media (prefers-color-scheme: dark) { - .vercelLogo { - filter: invert(1); - } - - .logo { - filter: invert(1) drop-shadow(0 0 0.3rem #ffffff70); - } -} - -@keyframes rotate { - from { - transform: rotate(360deg); - } - to { - transform: rotate(0deg); - } -} diff --git a/ui/src/app/page.tsx b/ui/src/app/page.tsx index d2c63a4..c29c5a8 100644 --- a/ui/src/app/page.tsx +++ b/ui/src/app/page.tsx @@ -1,95 +1,7 @@ -import Image from "next/image"; -import styles from "./page.module.css"; - export default function Home() { return ( -
-
-

- Get started by editing  - src/app/page.tsx -

- -
- -
- Next.js Logo -
- - +
+

Hello from the Frontend

); } From 3797b5d6e7d0fb77468459a59ec27a1d8d928a13 Mon Sep 17 00:00:00 2001 From: Kayra Date: Fri, 26 Apr 2024 14:26:04 +0300 Subject: [PATCH 04/23] rockcraft try 2 --- rockcraft.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/rockcraft.yaml b/rockcraft.yaml index 45650bd..3ae5835 100644 --- a/rockcraft.yaml +++ b/rockcraft.yaml @@ -20,6 +20,8 @@ parts: frontend: source: ./ui plugin: npm + build-snaps: + - node/20/stable override-build: | npm install npm run build From 7acad21756ec9bf2ad60d7d3e9d3e43da0521e34 Mon Sep 17 00:00:00 2001 From: Kayra Date: Fri, 26 Apr 2024 15:20:42 +0300 Subject: [PATCH 05/23] add testing skelly for frontend --- .github/workflows/main.yml | 18 +- ui/bun.lockb | Bin 126756 -> 204002 bytes ui/package-lock.json | 3334 ++++++++++++++++++++++++++++++++---- ui/package.json | 14 +- ui/src/app/page.test.tsx | 8 + ui/vitest.config.ts | 9 + 6 files changed, 3012 insertions(+), 371 deletions(-) create mode 100644 ui/src/app/page.test.tsx create mode 100644 ui/vitest.config.ts diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 12d3c9f..cc75376 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -47,7 +47,7 @@ jobs: with: version: v1.54 - unit-tests: + go-unit-tests: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 @@ -59,12 +59,26 @@ jobs: - name: Unit tests run: go test -cover ./... + nextjs-unit-tests: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + - name: Use Node.js 20 + uses: actions/setup-node@v3 + with: + node-version: 20 + cache: "npm" + + - name: Execute Unit tests + run: npm run test --prefix ui + rock-build: needs: - build - go-vet - lint - - unit-tests + - go-unit-tests + - nextjs-unit-tests uses: ./.github/workflows/build-rock.yaml rock-scan: diff --git a/ui/bun.lockb b/ui/bun.lockb index 79e553894e54d64a18c11122ac9153db8c63df39..035ab2b3c0415006b93aaf1cf524ce77db452b05 100755 GIT binary patch delta 72215 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 Yh}y?Aw=0.10.0" } }, - "node_modules/@babel/runtime": { - "version": "7.24.4", + "node_modules/@ampproject/remapping": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.3.0.tgz", + "integrity": "sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==", "dev": true, - "license": "MIT", "dependencies": { - "regenerator-runtime": "^0.14.0" + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.24" }, "engines": { - "node": ">=6.9.0" + "node": ">=6.0.0" } }, - "node_modules/@eslint-community/eslint-utils": { - "version": "4.4.0", + "node_modules/@babel/code-frame": { + "version": "7.24.2", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.2.tgz", + "integrity": "sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ==", "dev": true, - "license": "MIT", "dependencies": { - "eslint-visitor-keys": "^3.3.0" + "@babel/highlight": "^7.24.2", + "picocolors": "^1.0.0" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": ">=6.9.0" + } + }, + "node_modules/@babel/compat-data": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.24.4.tgz", + "integrity": "sha512-vg8Gih2MLK+kOkHJp4gBEIkyaIi00jgWot2D9QOmmfLC8jINSOzmCLta6Bvz/JSBCqnegV0L80jhxkol5GWNfQ==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.24.4.tgz", + "integrity": "sha512-MBVlMXP+kkl5394RBLSxxk/iLTeVGuXTV3cIDXavPpMMqnSnt6apKgan/U8O3USWZCWZT/TbgfEpKa4uMgN4Dg==", + "dev": true, + "dependencies": { + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.24.2", + "@babel/generator": "^7.24.4", + "@babel/helper-compilation-targets": "^7.23.6", + "@babel/helper-module-transforms": "^7.23.3", + "@babel/helpers": "^7.24.4", + "@babel/parser": "^7.24.4", + "@babel/template": "^7.24.0", + "@babel/traverse": "^7.24.1", + "@babel/types": "^7.24.0", + "convert-source-map": "^2.0.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.3", + "semver": "^6.3.1" }, - "peerDependencies": { - "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" } }, - "node_modules/@eslint-community/regexpp": { - "version": "4.10.0", + "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, - "license": "MIT", + "bin": { + "json5": "lib/cli.js" + }, "engines": { - "node": "^12.0.0 || ^14.0.0 || >=16.0.0" + "node": ">=6" } }, - "node_modules/@eslint/eslintrc": { - "version": "2.1.4", + "node_modules/@babel/generator": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.4.tgz", + "integrity": "sha512-Xd6+v6SnjWVx/nus+y0l1sxMOTOMBkyL4+BIdbALyatQnAe/SRVjANeDPSCYaX+i1iJmuGSKf3Z+E+V/va1Hvw==", "dev": true, - "license": "MIT", "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" + "@babel/types": "^7.24.0", + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25", + "jsesc": "^2.5.1" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "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" }, - "funding": { - "url": "https://opencollective.com/eslint" + "engines": { + "node": ">=6.9.0" } }, - "node_modules/@eslint/js": { - "version": "8.57.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/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, - "license": "MIT", "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": ">=6.9.0" } }, - "node_modules/@humanwhocodes/config-array": { - "version": "0.11.14", + "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, - "license": "Apache-2.0", "dependencies": { - "@humanwhocodes/object-schema": "^2.0.2", - "debug": "^4.3.1", - "minimatch": "^3.0.5" + "@babel/template": "^7.22.15", + "@babel/types": "^7.23.0" }, "engines": { - "node": ">=10.10.0" + "node": ">=6.9.0" } }, - "node_modules/@humanwhocodes/module-importer": { - "version": "1.0.1", + "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, - "license": "Apache-2.0", + "dependencies": { + "@babel/types": "^7.22.5" + }, "engines": { - "node": ">=12.22" + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.24.3", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.24.3.tgz", + "integrity": "sha512-viKb0F9f2s0BCS22QSF308z/+1YWKV/76mwt61NBzS5izMzDPwdq1pTrzf+Li3npBWX9KdQbkeCt1jSAM7lZqg==", + "dev": true, + "dependencies": { + "@babel/types": "^7.24.0" }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/nzakas" + "engines": { + "node": ">=6.9.0" } }, - "node_modules/@humanwhocodes/object-schema": { - "version": "2.0.3", + "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, - "license": "BSD-3-Clause" + "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/@isaacs/cliui": { - "version": "8.0.2", + "node_modules/@babel/helper-plugin-utils": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz", + "integrity": "sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==", + "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, - "license": "ISC", "dependencies": { - "string-width": "^5.1.2", - "string-width-cjs": "npm:string-width@^4.2.0", - "strip-ansi": "^7.0.1", - "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", - "wrap-ansi": "^8.1.0", - "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" + "@babel/types": "^7.22.5" }, "engines": { - "node": ">=12" + "node": ">=6.9.0" } }, - "node_modules/@isaacs/cliui/node_modules/string-width-cjs": { - "name": "string-width", - "version": "4.2.3", + "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, - "license": "MIT", "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" + "@babel/types": "^7.22.5" }, "engines": { - "node": ">=8" + "node": ">=6.9.0" } }, - "node_modules/@isaacs/cliui/node_modules/string-width-cjs/node_modules/emoji-regex": { - "version": "8.0.0", + "node_modules/@babel/helper-string-parser": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz", + "integrity": "sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==", "dev": true, - "license": "MIT" + "engines": { + "node": ">=6.9.0" + } }, - "node_modules/@isaacs/cliui/node_modules/string-width-cjs/node_modules/strip-ansi": { - "version": "6.0.1", + "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==", + "dev": true, + "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.24.4", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.24.4.tgz", + "integrity": "sha512-FewdlZbSiwaVGlgT1DPANDuCHaDMiOo+D/IDYRFYjHOuv66xMSJ7fQwwODwRNAPkADIO/z1EoF/l2BCWlWABDw==", "dev": true, - "license": "MIT", "dependencies": { - "ansi-regex": "^5.0.1" + "@babel/template": "^7.24.0", + "@babel/traverse": "^7.24.1", + "@babel/types": "^7.24.0" }, "engines": { - "node": ">=8" + "node": ">=6.9.0" } }, - "node_modules/@isaacs/cliui/node_modules/strip-ansi": { - "version": "7.1.0", + "node_modules/@babel/highlight": { + "version": "7.24.2", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.2.tgz", + "integrity": "sha512-Yac1ao4flkTxTteCDZLEvdxg2fZfz1v8M4QpaGypq/WPDqg3ijHYbDfs+LG5hvzSoqaSZ9/Z9lKSP3CjZjv+pA==", "dev": true, - "license": "MIT", "dependencies": { - "ansi-regex": "^6.0.1" + "@babel/helper-validator-identifier": "^7.22.20", + "chalk": "^2.4.2", + "js-tokens": "^4.0.0", + "picocolors": "^1.0.0" }, "engines": { - "node": ">=12" + "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==", + "dev": true, + "dependencies": { + "color-convert": "^1.9.0" }, - "funding": { - "url": "https://github.com/chalk/strip-ansi?sponsor=1" + "engines": { + "node": ">=4" } }, - "node_modules/@isaacs/cliui/node_modules/strip-ansi-cjs": { - "name": "strip-ansi", - "version": "6.0.1", + "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==", "dev": true, - "license": "MIT", "dependencies": { - "ansi-regex": "^5.0.1" + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" }, "engines": { - "node": ">=8" + "node": ">=4" } }, - "node_modules/@isaacs/cliui/node_modules/strip-ansi/node_modules/ansi-regex": { - "version": "6.0.1", + "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==", + "dev": true, + "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==", + "dev": true + }, + "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==", "dev": true, - "license": "MIT", "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/ansi-regex?sponsor=1" + "node": ">=0.8.0" } }, - "node_modules/@isaacs/cliui/node_modules/wrap-ansi-cjs": { - "name": "wrap-ansi", - "version": "7.0.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==", + "dev": true, + "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==", "dev": true, - "license": "MIT", "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" + "has-flag": "^3.0.0" }, "engines": { - "node": ">=10" + "node": ">=4" + } + }, + "node_modules/@babel/parser": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.4.tgz", + "integrity": "sha512-zTvEBcghmeBma9QIGunWevvBAp4/Qu9Bdq+2k0Ot4fVMD6v3dsC9WOcRSKk7tRRyBM/53yKMJko9xOatGQAwSg==", + "dev": true, + "bin": { + "parser": "bin/babel-parser.js" }, - "funding": { - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + "engines": { + "node": ">=6.0.0" } }, - "node_modules/@isaacs/cliui/node_modules/wrap-ansi-cjs/node_modules/string-width": { - "version": "4.2.3", + "node_modules/@babel/plugin-transform-react-jsx-self": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.24.1.tgz", + "integrity": "sha512-kDJgnPujTmAZ/9q2CN4m2/lRsUUPDvsG3+tSHWUJIzMGTt5U/b/fwWd3RO3n+5mjLrsBrVa5eKFRVSQbi3dF1w==", "dev": true, - "license": "MIT", "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" + "@babel/helper-plugin-utils": "^7.24.0" }, "engines": { - "node": ">=8" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@isaacs/cliui/node_modules/wrap-ansi-cjs/node_modules/string-width/node_modules/emoji-regex": { - "version": "8.0.0", + "node_modules/@babel/plugin-transform-react-jsx-source": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.24.1.tgz", + "integrity": "sha512-1v202n7aUq4uXAieRTKcwPzNyphlCuqHHDcdSNc+vdhoTEZcFMh+L5yZuCmGaIO7bs1nJUNfHB89TZyoL48xNA==", "dev": true, - "license": "MIT" + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } }, - "node_modules/@isaacs/cliui/node_modules/wrap-ansi-cjs/node_modules/strip-ansi": { - "version": "6.0.1", + "node_modules/@babel/runtime": { + "version": "7.24.4", "dev": true, "license": "MIT", "dependencies": { - "ansi-regex": "^5.0.1" + "regenerator-runtime": "^0.14.0" }, "engines": { - "node": ">=8" + "node": ">=6.9.0" } }, - "node_modules/@next/env": { - "version": "14.2.3", - "license": "MIT" + "node_modules/@babel/template": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.0.tgz", + "integrity": "sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.23.5", + "@babel/parser": "^7.24.0", + "@babel/types": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + } }, - "node_modules/@next/eslint-plugin-next": { - "version": "14.2.3", + "node_modules/@babel/traverse": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.1.tgz", + "integrity": "sha512-xuU6o9m68KeqZbQuDt2TcKSxUw/mrsvavlEqQ1leZ/B+C9tk6E4sRWy97WaXgvq5E+nU3cXMxv3WKOCanVMCmQ==", "dev": true, - "license": "MIT", "dependencies": { - "glob": "10.3.10" + "@babel/code-frame": "^7.24.1", + "@babel/generator": "^7.24.1", + "@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.24.1", + "@babel/types": "^7.24.0", + "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.24.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.0.tgz", + "integrity": "sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==", + "dev": true, + "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/@esbuild/aix-ppc64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.20.2.tgz", + "integrity": "sha512-D+EBOJHXdNZcLJRBkhENNG8Wji2kgc9AZ9KiPr1JuZjsNtyHzrsfLRrY0tk2H2aoFu6RANO1y1iPPUCDYWkb5g==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-arm": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.20.2.tgz", + "integrity": "sha512-t98Ra6pw2VaDhqNWO2Oph2LXbz/EJcnLmKLGBJwEwXX/JAN83Fym1rU8l0JUWK6HkIbWONCSSatf4sf2NBRx/w==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-arm64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.20.2.tgz", + "integrity": "sha512-mRzjLacRtl/tWU0SvD8lUEwb61yP9cqQo6noDZP/O8VkwafSYwZ4yWy24kan8jE/IMERpYncRt2dw438LP3Xmg==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.20.2.tgz", + "integrity": "sha512-btzExgV+/lMGDDa194CcUQm53ncxzeBrWJcncOBxuC6ndBkKxnHdFJn86mCIgTELsooUmwUm9FkhSp5HYu00Rg==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-arm64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.20.2.tgz", + "integrity": "sha512-4J6IRT+10J3aJH3l1yzEg9y3wkTDgDk7TSDFX+wKFiWjqWp/iCfLIYzGyasx9l0SAFPT1HwSCR+0w/h1ES/MjA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.20.2.tgz", + "integrity": "sha512-tBcXp9KNphnNH0dfhv8KYkZhjc+H3XBkF5DKtswJblV7KlT9EI2+jeA8DgBjp908WEuYll6pF+UStUCfEpdysA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-arm64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.20.2.tgz", + "integrity": "sha512-d3qI41G4SuLiCGCFGUrKsSeTXyWG6yem1KcGZVS+3FYlYhtNoNgYrWcvkOoaqMhwXSMrZRl69ArHsGJ9mYdbbw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.20.2.tgz", + "integrity": "sha512-d+DipyvHRuqEeM5zDivKV1KuXn9WeRX6vqSqIDgwIfPQtwMP4jaDsQsDncjTDDsExT4lR/91OLjRo8bmC1e+Cw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.20.2.tgz", + "integrity": "sha512-VhLPeR8HTMPccbuWWcEUD1Az68TqaTYyj6nfE4QByZIQEQVWBB8vup8PpR7y1QHL3CpcF6xd5WVBU/+SBEvGTg==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.20.2.tgz", + "integrity": "sha512-9pb6rBjGvTFNira2FLIWqDk/uaf42sSyLE8j1rnUpuzsODBq7FvpwHYZxQ/It/8b+QOS1RYfqgGFNLRI+qlq2A==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ia32": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.20.2.tgz", + "integrity": "sha512-o10utieEkNPFDZFQm9CoP7Tvb33UutoJqg3qKf1PWVeeJhJw0Q347PxMvBgVVFgouYLGIhFYG0UGdBumROyiig==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-loong64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.20.2.tgz", + "integrity": "sha512-PR7sp6R/UC4CFVomVINKJ80pMFlfDfMQMYynX7t1tNTeivQ6XdX5r2XovMmha/VjR1YN/HgHWsVcTRIMkymrgQ==", + "cpu": [ + "loong64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-mips64el": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.20.2.tgz", + "integrity": "sha512-4BlTqeutE/KnOiTG5Y6Sb/Hw6hsBOZapOVF6njAESHInhlQAghVVZL1ZpIctBOoTFbQyGW+LsVYZ8lSSB3wkjA==", + "cpu": [ + "mips64el" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ppc64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.20.2.tgz", + "integrity": "sha512-rD3KsaDprDcfajSKdn25ooz5J5/fWBylaaXkuotBDGnMnDP1Uv5DLAN/45qfnf3JDYyJv/ytGHQaziHUdyzaAg==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-riscv64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.20.2.tgz", + "integrity": "sha512-snwmBKacKmwTMmhLlz/3aH1Q9T8v45bKYGE3j26TsaOVtjIag4wLfWSiZykXzXuE1kbCE+zJRmwp+ZbIHinnVg==", + "cpu": [ + "riscv64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-s390x": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.20.2.tgz", + "integrity": "sha512-wcWISOobRWNm3cezm5HOZcYz1sKoHLd8VL1dl309DiixxVFoFe/o8HnwuIwn6sXre88Nwj+VwZUvJf4AFxkyrQ==", + "cpu": [ + "s390x" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.20.2.tgz", + "integrity": "sha512-1MdwI6OOTsfQfek8sLwgyjOXAu+wKhLEoaOLTjbijk6E2WONYpH9ZU2mNtR+lZ2B4uwr+usqGuVfFT9tMtGvGw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/netbsd-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.20.2.tgz", + "integrity": "sha512-K8/DhBxcVQkzYc43yJXDSyjlFeHQJBiowJ0uVL6Tor3jGQfSGHNNJcWxNbOI8v5k82prYqzPuwkzHt3J1T1iZQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/openbsd-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.20.2.tgz", + "integrity": "sha512-eMpKlV0SThJmmJgiVyN9jTPJ2VBPquf6Kt/nAoo6DgHAoN57K15ZghiHaMvqjCye/uU4X5u3YSMgVBI1h3vKrQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/sunos-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.20.2.tgz", + "integrity": "sha512-2UyFtRC6cXLyejf/YEld4Hajo7UHILetzE1vsRcGL3earZEW77JxrFjH4Ez2qaTiEfMgAXxfAZCm1fvM/G/o8w==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-arm64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.20.2.tgz", + "integrity": "sha512-GRibxoawM9ZCnDxnP3usoUDO9vUkpAxIIZ6GQI+IlVmr5kP3zUq+l17xELTHMWTWzjxa2guPNyrpq1GWmPvcGQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-ia32": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.20.2.tgz", + "integrity": "sha512-HfLOfn9YWmkSKRQqovpnITazdtquEW8/SoHW7pWpuEeguaZI4QnCRW6b+oZTztdBnZOS2hqJ6im/D5cPzBTTlQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.20.2.tgz", + "integrity": "sha512-N49X4lJX27+l9jbLKSqZ6bKNjzQvHaT8IIFUy+YIqmXQdjYCToGWwOItDrfby14c78aDd5NHQl29xingXfCdLQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@eslint-community/eslint-utils": { + "version": "4.4.0", + "dev": true, + "license": "MIT", + "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", + "dev": true, + "license": "MIT", + "engines": { + "node": "^12.0.0 || ^14.0.0 || >=16.0.0" + } + }, + "node_modules/@eslint/eslintrc": { + "version": "2.1.4", + "dev": true, + "license": "MIT", + "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.57.0", + "dev": true, + "license": "MIT", + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/@humanwhocodes/config-array": { + "version": "0.11.14", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@humanwhocodes/object-schema": "^2.0.2", + "debug": "^4.3.1", + "minimatch": "^3.0.5" + }, + "engines": { + "node": ">=10.10.0" + } + }, + "node_modules/@humanwhocodes/module-importer": { + "version": "1.0.1", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=12.22" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, + "node_modules/@humanwhocodes/object-schema": { + "version": "2.0.3", + "dev": true, + "license": "BSD-3-Clause" + }, + "node_modules/@isaacs/cliui": { + "version": "8.0.2", + "dev": true, + "license": "ISC", + "dependencies": { + "string-width": "^5.1.2", + "string-width-cjs": "npm:string-width@^4.2.0", + "strip-ansi": "^7.0.1", + "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", + "wrap-ansi": "^8.1.0", + "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@isaacs/cliui/node_modules/string-width-cjs": { + "name": "string-width", + "version": "4.2.3", + "dev": true, + "license": "MIT", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@isaacs/cliui/node_modules/string-width-cjs/node_modules/emoji-regex": { + "version": "8.0.0", + "dev": true, + "license": "MIT" + }, + "node_modules/@isaacs/cliui/node_modules/string-width-cjs/node_modules/strip-ansi": { + "version": "6.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@isaacs/cliui/node_modules/strip-ansi": { + "version": "7.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "node_modules/@isaacs/cliui/node_modules/strip-ansi-cjs": { + "name": "strip-ansi", + "version": "6.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@isaacs/cliui/node_modules/strip-ansi/node_modules/ansi-regex": { + "version": "6.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/@isaacs/cliui/node_modules/wrap-ansi-cjs": { + "name": "wrap-ansi", + "version": "7.0.0", + "dev": true, + "license": "MIT", + "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/@isaacs/cliui/node_modules/wrap-ansi-cjs/node_modules/string-width": { + "version": "4.2.3", + "dev": true, + "license": "MIT", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@isaacs/cliui/node_modules/wrap-ansi-cjs/node_modules/string-width/node_modules/emoji-regex": { + "version": "8.0.0", + "dev": true, + "license": "MIT" + }, + "node_modules/@isaacs/cliui/node_modules/wrap-ansi-cjs/node_modules/strip-ansi": { + "version": "6.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "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/@jridgewell/gen-mapping": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", + "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==", + "dev": true, + "dependencies": { + "@jridgewell/set-array": "^1.2.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", + "dev": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/set-array": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", + "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", + "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.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", + "dev": true, + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@next/env": { + "version": "14.2.3", + "license": "MIT" + }, + "node_modules/@next/eslint-plugin-next": { + "version": "14.2.3", + "dev": true, + "license": "MIT", + "dependencies": { + "glob": "10.3.10" + } + }, + "node_modules/@next/swc-darwin-arm64": { + "version": "14.2.3", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-darwin-x64": { + "version": "14.2.3", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.3.tgz", + "integrity": "sha512-6adp7waE6P1TYFSXpY366xwsOnEXM+y1kgRpjSRVI2CBDOcbRjsJ67Z6EgKIqWIue52d2q/Mx8g9MszARj8IEA==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-linux-arm64-gnu": { + "version": "14.2.3", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.3.tgz", + "integrity": "sha512-cuzCE/1G0ZSnTAHJPUT1rPgQx1w5tzSX7POXSLaS7w2nIUJUD+e25QoXD/hMfxbsT9rslEXugWypJMILBj/QsA==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-linux-arm64-musl": { + "version": "14.2.3", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.3.tgz", + "integrity": "sha512-0D4/oMM2Y9Ta3nGuCcQN8jjJjmDPYpHX9OJzqk42NZGJocU2MqhBq5tWkJrUQOQY9N+In9xOdymzapM09GeiZw==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-linux-x64-gnu": { + "version": "14.2.3", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.3.tgz", + "integrity": "sha512-ENPiNnBNDInBLyUU5ii8PMQh+4XLr4pG51tOp6aJ9xqFQ2iRI6IH0Ds2yJkAzNV1CfyagcyzPfROMViS2wOZ9w==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-linux-x64-musl": { + "version": "14.2.3", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.3.tgz", + "integrity": "sha512-BTAbq0LnCbF5MtoM7I/9UeUu/8ZBY0i8SFjUMCbPDOLv+un67e2JgyN4pmgfXBwy/I+RHu8q+k+MCkDN6P9ViQ==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-win32-arm64-msvc": { + "version": "14.2.3", + "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.3.tgz", + "integrity": "sha512-AEHIw/dhAMLNFJFJIJIyOFDzrzI5bAjI9J26gbO5xhAKHYTZ9Or04BesFPXiAYXDNdrwTP2dQceYA4dL1geu8A==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-win32-ia32-msvc": { + "version": "14.2.3", + "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.3.tgz", + "integrity": "sha512-vga40n1q6aYb0CLrM+eEmisfKCR45ixQYXuBXxOOmmoV8sYST9k7E3US32FsY+CkkF7NtzdcebiFT4CHuMSyZw==", + "cpu": [ + "ia32" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-win32-x64-msvc": { + "version": "14.2.3", + "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.3.tgz", + "integrity": "sha512-Q1/zm43RWynxrO7lW4ehciQVj+5ePBhOK+/K2P7pLFX3JaJ/IZVC69SHidrmZSOkqz7ECIOhhy7XhAFG4JYyHA==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "dev": true, + "license": "MIT", + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "dev": true, + "license": "MIT", + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@pkgjs/parseargs": { + "version": "0.11.0", + "dev": true, + "license": "MIT", + "optional": true, + "engines": { + "node": ">=14" + } + }, + "node_modules/@rollup/rollup-android-arm-eabi": { + "version": "4.16.4", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.16.4.tgz", + "integrity": "sha512-GkhjAaQ8oUTOKE4g4gsZ0u8K/IHU1+2WQSgS1TwTcYvL+sjbaQjNHFXbOJ6kgqGHIO1DfUhI/Sphi9GkRT9K+Q==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-android-arm64": { + "version": "4.16.4", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.16.4.tgz", + "integrity": "sha512-Bvm6D+NPbGMQOcxvS1zUl8H7DWlywSXsphAeOnVeiZLQ+0J6Is8T7SrjGTH29KtYkiY9vld8ZnpV3G2EPbom+w==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-darwin-arm64": { + "version": "4.16.4", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.16.4.tgz", + "integrity": "sha512-i5d64MlnYBO9EkCOGe5vPR/EeDwjnKOGGdd7zKFhU5y8haKhQZTN2DgVtpODDMxUr4t2K90wTUJg7ilgND6bXw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-darwin-x64": { + "version": "4.16.4", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.16.4.tgz", + "integrity": "sha512-WZupV1+CdUYehaZqjaFTClJI72fjJEgTXdf4NbW69I9XyvdmztUExBtcI2yIIU6hJtYvtwS6pkTkHJz+k08mAQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-linux-arm-gnueabihf": { + "version": "4.16.4", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.16.4.tgz", + "integrity": "sha512-ADm/xt86JUnmAfA9mBqFcRp//RVRt1ohGOYF6yL+IFCYqOBNwy5lbEK05xTsEoJq+/tJzg8ICUtS82WinJRuIw==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm-musleabihf": { + "version": "4.16.4", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.16.4.tgz", + "integrity": "sha512-tJfJaXPiFAG+Jn3cutp7mCs1ePltuAgRqdDZrzb1aeE3TktWWJ+g7xK9SNlaSUFw6IU4QgOxAY4rA+wZUT5Wfg==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-gnu": { + "version": "4.16.4", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.16.4.tgz", + "integrity": "sha512-7dy1BzQkgYlUTapDTvK997cgi0Orh5Iu7JlZVBy1MBURk7/HSbHkzRnXZa19ozy+wwD8/SlpJnOOckuNZtJR9w==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-musl": { + "version": "4.16.4", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.16.4.tgz", + "integrity": "sha512-zsFwdUw5XLD1gQe0aoU2HVceI6NEW7q7m05wA46eUAyrkeNYExObfRFQcvA6zw8lfRc5BHtan3tBpo+kqEOxmg==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-powerpc64le-gnu": { + "version": "4.16.4", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.16.4.tgz", + "integrity": "sha512-p8C3NnxXooRdNrdv6dBmRTddEapfESEUflpICDNKXpHvTjRRq1J82CbU5G3XfebIZyI3B0s074JHMWD36qOW6w==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-riscv64-gnu": { + "version": "4.16.4", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.16.4.tgz", + "integrity": "sha512-Lh/8ckoar4s4Id2foY7jNgitTOUQczwMWNYi+Mjt0eQ9LKhr6sK477REqQkmy8YHY3Ca3A2JJVdXnfb3Rrwkng==", + "cpu": [ + "riscv64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-s390x-gnu": { + "version": "4.16.4", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.16.4.tgz", + "integrity": "sha512-1xwwn9ZCQYuqGmulGsTZoKrrn0z2fAur2ujE60QgyDpHmBbXbxLaQiEvzJWDrscRq43c8DnuHx3QorhMTZgisQ==", + "cpu": [ + "s390x" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-gnu": { + "version": "4.16.4", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.16.4.tgz", + "integrity": "sha512-LuOGGKAJ7dfRtxVnO1i3qWc6N9sh0Em/8aZ3CezixSTM+E9Oq3OvTsvC4sm6wWjzpsIlOCnZjdluINKESflJLA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-musl": { + "version": "4.16.4", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.16.4.tgz", + "integrity": "sha512-ch86i7KkJKkLybDP2AtySFTRi5fM3KXp0PnHocHuJMdZwu7BuyIKi35BE9guMlmTpwwBTB3ljHj9IQXnTCD0vA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-win32-arm64-msvc": { + "version": "4.16.4", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.16.4.tgz", + "integrity": "sha512-Ma4PwyLfOWZWayfEsNQzTDBVW8PZ6TUUN1uFTBQbF2Chv/+sjenE86lpiEwj2FiviSmSZ4Ap4MaAfl1ciF4aSA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-ia32-msvc": { + "version": "4.16.4", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.16.4.tgz", + "integrity": "sha512-9m/ZDrQsdo/c06uOlP3W9G2ENRVzgzbSXmXHT4hwVaDQhYcRpi9bgBT0FTG9OhESxwK0WjQxYOSfv40cU+T69w==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-x64-msvc": { + "version": "4.16.4", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.16.4.tgz", + "integrity": "sha512-YunpoOAyGLDseanENHmbFvQSfVL5BxW3k7hhy0eN4rb3gS/ct75dVD0EXOWIqFT/nE8XYW6LP6vz6ctKRi0k9A==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rushstack/eslint-patch": { + "version": "1.10.2", + "dev": true, + "license": "MIT" + }, + "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/@swc/counter": { + "version": "0.1.3", + "license": "Apache-2.0" + }, + "node_modules/@swc/helpers": { + "version": "0.5.5", + "license": "Apache-2.0", + "dependencies": { + "@swc/counter": "^0.1.3", + "tslib": "^2.4.0" } }, - "node_modules/@next/swc-darwin-arm64": { - "version": "14.2.3", - "cpu": [ - "arm64" - ], - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], + "node_modules/@testing-library/dom": { + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/@testing-library/dom/-/dom-10.0.0.tgz", + "integrity": "sha512-PmJPnogldqoVFf+EwbHvbBJ98MmqASV8kLrBYgsDNxQcFMeIS7JFL48sfyXvuMtgmWO/wMhh25odr+8VhDmn4g==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.10.4", + "@babel/runtime": "^7.12.5", + "@types/aria-query": "^5.0.1", + "aria-query": "5.3.0", + "chalk": "^4.1.0", + "dom-accessibility-api": "^0.5.9", + "lz-string": "^1.5.0", + "pretty-format": "^27.0.2" + }, "engines": { - "node": ">= 10" + "node": ">=18" } }, - "node_modules/@nodelib/fs.scandir": { - "version": "2.1.5", + "node_modules/@testing-library/react": { + "version": "15.0.4", + "resolved": "https://registry.npmjs.org/@testing-library/react/-/react-15.0.4.tgz", + "integrity": "sha512-Fw/LM1emOHKfCxv5R0tz+25TOtiMt0o5Np1zJmb4LbSacOagXQX4ooAaHiJfGUMe+OjUk504BX11W+9Z8CvyZA==", "dev": true, - "license": "MIT", "dependencies": { - "@nodelib/fs.stat": "2.0.5", - "run-parallel": "^1.1.9" + "@babel/runtime": "^7.12.5", + "@testing-library/dom": "^10.0.0", + "@types/react-dom": "^18.0.0" }, "engines": { - "node": ">= 8" + "node": ">=18" + }, + "peerDependencies": { + "react": "^18.0.0", + "react-dom": "^18.0.0" } }, - "node_modules/@nodelib/fs.stat": { - "version": "2.0.5", + "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, - "license": "MIT", - "engines": { - "node": ">= 8" + "dependencies": { + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7", + "@types/babel__generator": "*", + "@types/babel__template": "*", + "@types/babel__traverse": "*" } }, - "node_modules/@nodelib/fs.walk": { - "version": "1.2.8", + "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, - "license": "MIT", "dependencies": { - "@nodelib/fs.scandir": "2.1.5", - "fastq": "^1.6.0" - }, - "engines": { - "node": ">= 8" + "@babel/types": "^7.0.0" } }, - "node_modules/@pkgjs/parseargs": { - "version": "0.11.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, - "license": "MIT", - "optional": true, - "engines": { - "node": ">=14" + "dependencies": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0" } }, - "node_modules/@rushstack/eslint-patch": { - "version": "1.10.2", + "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, - "license": "MIT" - }, - "node_modules/@swc/counter": { - "version": "0.1.3", - "license": "Apache-2.0" - }, - "node_modules/@swc/helpers": { - "version": "0.5.5", - "license": "Apache-2.0", "dependencies": { - "@swc/counter": "^0.1.3", - "tslib": "^2.4.0" + "@babel/types": "^7.20.7" } }, + "node_modules/@types/estree": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz", + "integrity": "sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==", + "dev": true + }, "node_modules/@types/json5": { "version": "0.0.29", "dev": true, @@ -520,6 +1824,185 @@ "dev": true, "license": "ISC" }, + "node_modules/@vitejs/plugin-react": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-react/-/plugin-react-4.2.1.tgz", + "integrity": "sha512-oojO9IDc4nCUUi8qIR11KoQm0XFFLIwsRBwHRR4d/88IWghn1y6ckz/bJ8GHDCsYEJee8mDzqtJxh15/cisJNQ==", + "dev": true, + "dependencies": { + "@babel/core": "^7.23.5", + "@babel/plugin-transform-react-jsx-self": "^7.23.3", + "@babel/plugin-transform-react-jsx-source": "^7.23.3", + "@types/babel__core": "^7.20.5", + "react-refresh": "^0.14.0" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "peerDependencies": { + "vite": "^4.2.0 || ^5.0.0" + } + }, + "node_modules/@vitest/expect": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/@vitest/expect/-/expect-1.5.2.tgz", + "integrity": "sha512-rf7MTD1WCoDlN3FfYJ9Llfp0PbdtOMZ3FIF0AVkDnKbp3oiMW1c8AmvRZBcqbAhDUAvF52e9zx4WQM1r3oraVA==", + "dev": true, + "dependencies": { + "@vitest/spy": "1.5.2", + "@vitest/utils": "1.5.2", + "chai": "^4.3.10" + }, + "funding": { + "url": "https://opencollective.com/vitest" + } + }, + "node_modules/@vitest/runner": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/@vitest/runner/-/runner-1.5.2.tgz", + "integrity": "sha512-7IJ7sJhMZrqx7HIEpv3WrMYcq8ZNz9L6alo81Y6f8hV5mIE6yVZsFoivLZmr0D777klm1ReqonE9LyChdcmw6g==", + "dev": true, + "dependencies": { + "@vitest/utils": "1.5.2", + "p-limit": "^5.0.0", + "pathe": "^1.1.1" + }, + "funding": { + "url": "https://opencollective.com/vitest" + } + }, + "node_modules/@vitest/runner/node_modules/p-limit": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-5.0.0.tgz", + "integrity": "sha512-/Eaoq+QyLSiXQ4lyYV23f14mZRQcXnxfHrN0vCai+ak9G0pp9iEQukIIZq5NccEvwRB8PUnZT0KsOoDCINS1qQ==", + "dev": true, + "dependencies": { + "yocto-queue": "^1.0.0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@vitest/runner/node_modules/yocto-queue": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.0.0.tgz", + "integrity": "sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==", + "dev": true, + "engines": { + "node": ">=12.20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@vitest/snapshot": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/@vitest/snapshot/-/snapshot-1.5.2.tgz", + "integrity": "sha512-CTEp/lTYos8fuCc9+Z55Ga5NVPKUgExritjF5VY7heRFUfheoAqBneUlvXSUJHUZPjnPmyZA96yLRJDP1QATFQ==", + "dev": true, + "dependencies": { + "magic-string": "^0.30.5", + "pathe": "^1.1.1", + "pretty-format": "^29.7.0" + }, + "funding": { + "url": "https://opencollective.com/vitest" + } + }, + "node_modules/@vitest/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/@vitest/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/@vitest/snapshot/node_modules/react-is": { + "version": "18.3.0", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.3.0.tgz", + "integrity": "sha512-wRiUsea88TjKDc4FBEn+sLvIDesp6brMbGWnJGjew2waAc9evdhja/2LvePc898HJbHw0L+MTWy7NhpnELAvLQ==", + "dev": true + }, + "node_modules/@vitest/spy": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-1.5.2.tgz", + "integrity": "sha512-xCcPvI8JpCtgikT9nLpHPL1/81AYqZy1GCy4+MCHBE7xi8jgsYkULpW5hrx5PGLgOQjUpb6fd15lqcriJ40tfQ==", + "dev": true, + "dependencies": { + "tinyspy": "^2.2.0" + }, + "funding": { + "url": "https://opencollective.com/vitest" + } + }, + "node_modules/@vitest/utils": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-1.5.2.tgz", + "integrity": "sha512-sWOmyofuXLJ85VvXNsroZur7mOJGiQeM0JN3/0D1uU8U9bGFM69X1iqHaRXl6R8BwaLY6yPCogP257zxTzkUdA==", + "dev": true, + "dependencies": { + "diff-sequences": "^29.6.3", + "estree-walker": "^3.0.3", + "loupe": "^2.3.7", + "pretty-format": "^29.7.0" + }, + "funding": { + "url": "https://opencollective.com/vitest" + } + }, + "node_modules/@vitest/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/@vitest/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/@vitest/utils/node_modules/react-is": { + "version": "18.3.0", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.3.0.tgz", + "integrity": "sha512-wRiUsea88TjKDc4FBEn+sLvIDesp6brMbGWnJGjew2waAc9evdhja/2LvePc898HJbHw0L+MTWy7NhpnELAvLQ==", + "dev": true + }, "node_modules/acorn": { "version": "8.11.3", "dev": true, @@ -539,6 +2022,27 @@ "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": "7.1.1", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.1.tgz", + "integrity": "sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==", + "dev": true, + "dependencies": { + "debug": "^4.3.4" + }, + "engines": { + "node": ">= 14" + } + }, "node_modules/ajv": { "version": "6.12.6", "dev": true, @@ -747,11 +2251,26 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/assertion-error": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz", + "integrity": "sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==", + "dev": true, + "engines": { + "node": "*" + } + }, "node_modules/ast-types-flow": { "version": "0.0.8", "dev": true, "license": "MIT" }, + "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.7", "dev": true, @@ -807,6 +2326,38 @@ "node": ">=8" } }, + "node_modules/browserslist": { + "version": "4.23.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz", + "integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==", + "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.30001587", + "electron-to-chromium": "^1.4.668", + "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/busboy": { "version": "1.6.0", "dependencies": { @@ -816,6 +2367,15 @@ "node": ">=10.16.0" } }, + "node_modules/cac": { + "version": "6.7.14", + "resolved": "https://registry.npmjs.org/cac/-/cac-6.7.14.tgz", + "integrity": "sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, "node_modules/call-bind": { "version": "1.0.7", "dev": true, @@ -860,6 +2420,24 @@ ], "license": "CC-BY-4.0" }, + "node_modules/chai": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/chai/-/chai-4.4.1.tgz", + "integrity": "sha512-13sOfMv2+DWduEU+/xbun3LScLoqN17nBeTLUsmDfKdoiC1fr0n9PU4guu4AhRcOVFk/sW8LyZWHuhWtQZiF+g==", + "dev": true, + "dependencies": { + "assertion-error": "^1.1.0", + "check-error": "^1.0.3", + "deep-eql": "^4.1.3", + "get-func-name": "^2.0.2", + "loupe": "^2.3.6", + "pathval": "^1.1.1", + "type-detect": "^4.0.8" + }, + "engines": { + "node": ">=4" + } + }, "node_modules/chalk": { "version": "4.1.2", "dev": true, @@ -875,6 +2453,18 @@ "url": "https://github.com/chalk/chalk?sponsor=1" } }, + "node_modules/check-error": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.3.tgz", + "integrity": "sha512-iKEoDYaRmd1mxM90a2OEfWhjsjPpYPuQ+lMYsoxB126+t8fw7ySEO48nmDg5COTjxDI65/Y2OWpeEHk3ZOe8zg==", + "dev": true, + "dependencies": { + "get-func-name": "^2.0.2" + }, + "engines": { + "node": "*" + } + }, "node_modules/client-only": { "version": "0.0.1", "license": "MIT" @@ -895,11 +2485,35 @@ "dev": true, "license": "MIT" }, + "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", "dev": true, "license": "MIT" }, + "node_modules/confbox": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/confbox/-/confbox-0.1.7.tgz", + "integrity": "sha512-uJcB/FKZtBMCJpK8MQji6bJHgu1tixKPxRLeGkNzBoOZzpnZUJm0jm2/sBDWcuBx1dYgxV4JU+g5hmNxCyAmdA==", + "dev": true + }, + "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/cross-spawn": { "version": "7.0.3", "dev": true, @@ -913,6 +2527,18 @@ "node": ">= 8" } }, + "node_modules/cssstyle": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-4.0.1.tgz", + "integrity": "sha512-8ZYiJ3A/3OkDd093CBT/0UKDWry7ak4BdPTFP2+QEP7cmhouyq/Up709ASSj2cK02BbZiMgk7kYjZNS4QP5qrQ==", + "dev": true, + "dependencies": { + "rrweb-cssom": "^0.6.0" + }, + "engines": { + "node": ">=18" + } + }, "node_modules/csstype": { "version": "3.1.3", "dev": true, @@ -923,6 +2549,19 @@ "dev": true, "license": "BSD-2-Clause" }, + "node_modules/data-urls": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-5.0.0.tgz", + "integrity": "sha512-ZYP5VBHshaDAiVZxjbRVcFJpc+4xGgT0bK3vzy1HLN8jTO975HEbuYzZJcHoQEY5K1a0z8YayJkyVETa08eNTg==", + "dev": true, + "dependencies": { + "whatwg-mimetype": "^4.0.0", + "whatwg-url": "^14.0.0" + }, + "engines": { + "node": ">=18" + } + }, "node_modules/data-view-buffer": { "version": "1.0.1", "dev": true, @@ -979,12 +2618,30 @@ "ms": "2.1.2" }, "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } + "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/deep-eql": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-4.1.3.tgz", + "integrity": "sha512-WaEtAOpRA1MQ0eohqZjpGD8zdI0Ovsm8mmFhaDN8dvDZzyoUMcYDnf5Y6iu7HTXxf8JDS23qWa4a+hKCDyOPzw==", + "dev": true, + "dependencies": { + "type-detect": "^4.0.0" + }, + "engines": { + "node": ">=6" } }, "node_modules/deep-is": { @@ -1024,6 +2681,15 @@ "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", "dev": true, @@ -1032,6 +2698,15 @@ "node": ">=6" } }, + "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", "dev": true, @@ -1054,11 +2729,23 @@ "node": ">=6.0.0" } }, + "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/eastasianwidth": { "version": "0.2.0", "dev": true, "license": "MIT" }, + "node_modules/electron-to-chromium": { + "version": "1.4.749", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.749.tgz", + "integrity": "sha512-LRMMrM9ITOvue0PoBrvNIraVmuDbJV5QC9ierz/z5VilMdPOVMjOtpICNld3PuXuTZ3CHH/UPxX9gHhAPwi+0Q==", + "dev": true + }, "node_modules/emoji-regex": { "version": "9.2.2", "dev": true, @@ -1076,6 +2763,18 @@ "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/es-abstract": { "version": "1.23.3", "dev": true, @@ -1226,6 +2925,53 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/esbuild": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.20.2.tgz", + "integrity": "sha512-WdOOppmUNU+IbZ0PaDiTst80zjnrOkyJNHoKupIcVyU8Lvla3Ugx94VzkQ32Ijqd7UhHJy75gNWDMUekcrSJ6g==", + "dev": true, + "hasInstallScript": true, + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=12" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.20.2", + "@esbuild/android-arm": "0.20.2", + "@esbuild/android-arm64": "0.20.2", + "@esbuild/android-x64": "0.20.2", + "@esbuild/darwin-arm64": "0.20.2", + "@esbuild/darwin-x64": "0.20.2", + "@esbuild/freebsd-arm64": "0.20.2", + "@esbuild/freebsd-x64": "0.20.2", + "@esbuild/linux-arm": "0.20.2", + "@esbuild/linux-arm64": "0.20.2", + "@esbuild/linux-ia32": "0.20.2", + "@esbuild/linux-loong64": "0.20.2", + "@esbuild/linux-mips64el": "0.20.2", + "@esbuild/linux-ppc64": "0.20.2", + "@esbuild/linux-riscv64": "0.20.2", + "@esbuild/linux-s390x": "0.20.2", + "@esbuild/linux-x64": "0.20.2", + "@esbuild/netbsd-x64": "0.20.2", + "@esbuild/openbsd-x64": "0.20.2", + "@esbuild/sunos-x64": "0.20.2", + "@esbuild/win32-arm64": "0.20.2", + "@esbuild/win32-ia32": "0.20.2", + "@esbuild/win32-x64": "0.20.2" + } + }, + "node_modules/escalade": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.2.tgz", + "integrity": "sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, "node_modules/escape-string-regexp": { "version": "4.0.0", "dev": true, @@ -1601,6 +3347,15 @@ "node": ">=4.0" } }, + "node_modules/estree-walker": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-3.0.3.tgz", + "integrity": "sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==", + "dev": true, + "dependencies": { + "@types/estree": "^1.0.0" + } + }, "node_modules/esutils": { "version": "2.0.3", "dev": true, @@ -1609,6 +3364,29 @@ "node": ">=0.10.0" } }, + "node_modules/execa": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-8.0.1.tgz", + "integrity": "sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==", + "dev": true, + "dependencies": { + "cross-spawn": "^7.0.3", + "get-stream": "^8.0.1", + "human-signals": "^5.0.0", + "is-stream": "^3.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^5.1.0", + "onetime": "^6.0.0", + "signal-exit": "^4.1.0", + "strip-final-newline": "^3.0.0" + }, + "engines": { + "node": ">=16.17" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, "node_modules/fast-deep-equal": { "version": "3.1.3", "dev": true, @@ -1736,11 +3514,39 @@ "url": "https://github.com/sponsors/isaacs" } }, + "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", "dev": true, "license": "ISC" }, + "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", "dev": true, @@ -1774,6 +3580,24 @@ "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-func-name": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.2.tgz", + "integrity": "sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ==", + "dev": true, + "engines": { + "node": "*" + } + }, "node_modules/get-intrinsic": { "version": "1.2.4", "dev": true, @@ -1792,6 +3616,18 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/get-stream": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-8.0.1.tgz", + "integrity": "sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==", + "dev": true, + "engines": { + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/get-symbol-description": { "version": "1.0.2", "dev": true, @@ -2014,6 +3850,65 @@ "node": ">= 0.4" } }, + "node_modules/html-encoding-sniffer": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-4.0.0.tgz", + "integrity": "sha512-Y22oTqIU4uuPgEemfz7NDJz6OeKf12Lsu+QC+s3BVpda64lTiMYCyGwg5ki4vFxkMwQdeZDl2adZoqUgdFuTgQ==", + "dev": true, + "dependencies": { + "whatwg-encoding": "^3.1.1" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/http-proxy-agent": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.2.tgz", + "integrity": "sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig==", + "dev": true, + "dependencies": { + "agent-base": "^7.1.0", + "debug": "^4.3.4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/https-proxy-agent": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.4.tgz", + "integrity": "sha512-wlwpilI7YdjSkWaQ/7omYBMTliDcmCN8OLihO6I9B86g06lMyAoqgoDpV0XqoaPOKj+0DIdAvnsWfyAAhmimcg==", + "dev": true, + "dependencies": { + "agent-base": "^7.0.2", + "debug": "4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/human-signals": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-5.0.0.tgz", + "integrity": "sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==", + "dev": true, + "engines": { + "node": ">=16.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.1", "dev": true, @@ -2281,6 +4176,12 @@ "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", "dev": true, @@ -2321,6 +4222,18 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/is-stream": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz", + "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==", + "dev": true, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/is-string": { "version": "1.0.7", "dev": true, @@ -2454,6 +4367,58 @@ "js-yaml": "bin/js-yaml.js" } }, + "node_modules/jsdom": { + "version": "24.0.0", + "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-24.0.0.tgz", + "integrity": "sha512-UDS2NayCvmXSXVP6mpTj+73JnNQadZlr9N68189xib2tx5Mls7swlTNao26IoHv46BZJFvXygyRtyXd1feAk1A==", + "dev": true, + "dependencies": { + "cssstyle": "^4.0.1", + "data-urls": "^5.0.0", + "decimal.js": "^10.4.3", + "form-data": "^4.0.0", + "html-encoding-sniffer": "^4.0.0", + "http-proxy-agent": "^7.0.0", + "https-proxy-agent": "^7.0.2", + "is-potential-custom-element-name": "^1.0.1", + "nwsapi": "^2.2.7", + "parse5": "^7.1.2", + "rrweb-cssom": "^0.6.0", + "saxes": "^6.0.0", + "symbol-tree": "^3.2.4", + "tough-cookie": "^4.1.3", + "w3c-xmlserializer": "^5.0.0", + "webidl-conversions": "^7.0.0", + "whatwg-encoding": "^3.1.1", + "whatwg-mimetype": "^4.0.0", + "whatwg-url": "^14.0.0", + "ws": "^8.16.0", + "xml-name-validator": "^5.0.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "canvas": "^2.11.2" + }, + "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", "dev": true, @@ -2530,6 +4495,22 @@ "node": ">= 0.8.0" } }, + "node_modules/local-pkg": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/local-pkg/-/local-pkg-0.5.0.tgz", + "integrity": "sha512-ok6z3qlYyCDS4ZEU27HaU6x/xZa9Whf8jD4ptH5UZTQYZVYeb9bnZ3ojVhiJNLiXK1Hfc0GNbLXcmZ5plLDDBg==", + "dev": true, + "dependencies": { + "mlly": "^1.4.2", + "pkg-types": "^1.0.3" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, "node_modules/locate-path": { "version": "6.0.0", "dev": true, @@ -2559,6 +4540,15 @@ "loose-envify": "cli.js" } }, + "node_modules/loupe": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/loupe/-/loupe-2.3.7.tgz", + "integrity": "sha512-zSMINGVYkdpYSOBmLi0D1Uo7JU9nVdQKrHxC8eYlV+9YKK9WePqAlL7lSlorG/U2Fw1w0hTBmaa/jrQ3UbPHtA==", + "dev": true, + "dependencies": { + "get-func-name": "^2.0.1" + } + }, "node_modules/lru-cache": { "version": "10.2.1", "dev": true, @@ -2567,6 +4557,30 @@ "node": "14 || >=16.14" } }, + "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/magic-string": { + "version": "0.30.10", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.10.tgz", + "integrity": "sha512-iIRwTIf0QKV3UAnYK4PU8uiEc4SRh5jX0mwpIwETPpHdhVM4f53RSwS/vXvN1JhGX+Cs7B8qIq3d6AH49O5fAQ==", + "dev": true, + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.4.15" + } + }, + "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", "dev": true, @@ -2587,6 +4601,39 @@ "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": "4.0.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-4.0.0.tgz", + "integrity": "sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/minimatch": { "version": "3.1.2", "dev": true, @@ -2614,6 +4661,18 @@ "node": ">=16 || 14 >=14.17" } }, + "node_modules/mlly": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/mlly/-/mlly-1.6.1.tgz", + "integrity": "sha512-vLgaHvaeunuOXHSmEbZ9izxPx3USsk8KCQ8iC+aTlp5sKRSoZvwhHh5L9VbKSaVC6sJDqbyohIS76E2VmHIPAA==", + "dev": true, + "dependencies": { + "acorn": "^8.11.3", + "pathe": "^1.1.2", + "pkg-types": "^1.0.3", + "ufo": "^1.3.2" + } + }, "node_modules/ms": { "version": "2.1.2", "dev": true, @@ -2688,6 +4747,45 @@ } } }, + "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/npm-run-path": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.3.0.tgz", + "integrity": "sha512-ppwTtiJZq0O/ai0z7yfudtBpWIoxM8yE6nHi1X47eFR2EWORqfbu6CnPlNsjeN683eT0qG6H/Pyf9fCcvjnnnQ==", + "dev": true, + "dependencies": { + "path-key": "^4.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/npm-run-path/node_modules/path-key": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-4.0.0.tgz", + "integrity": "sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/nwsapi": { + "version": "2.2.9", + "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.9.tgz", + "integrity": "sha512-2f3F0SEEer8bBu0dsNCFF50N0cTThV1nWFYcEYFZttdW0lDAoybv9cQoK7X7/68Z89S7FoRrVjP1LPX4XRf9vg==", + "dev": true + }, "node_modules/object-assign": { "version": "4.1.1", "dev": true, @@ -2812,6 +4910,21 @@ "wrappy": "1" } }, + "node_modules/onetime": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-6.0.0.tgz", + "integrity": "sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==", + "dev": true, + "dependencies": { + "mimic-fn": "^4.0.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/optionator": { "version": "0.9.3", "dev": true, @@ -2867,6 +4980,18 @@ "node": ">=6" } }, + "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", "dev": true, @@ -2919,6 +5044,21 @@ "node": ">=8" } }, + "node_modules/pathe": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/pathe/-/pathe-1.1.2.tgz", + "integrity": "sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==", + "dev": true + }, + "node_modules/pathval": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/pathval/-/pathval-1.1.1.tgz", + "integrity": "sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==", + "dev": true, + "engines": { + "node": "*" + } + }, "node_modules/picocolors": { "version": "1.0.0", "license": "ISC" @@ -2934,6 +5074,17 @@ "url": "https://github.com/sponsors/jonschlinkert" } }, + "node_modules/pkg-types": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/pkg-types/-/pkg-types-1.1.0.tgz", + "integrity": "sha512-/RpmvKdxKf8uILTtoOhAgf30wYbP2Qw+L9p3Rvshx1JZVX+XQNZQFjlbmGHEGIm4CkVPlSn+NXmIM8+9oWQaSA==", + "dev": true, + "dependencies": { + "confbox": "^0.1.7", + "mlly": "^1.6.1", + "pathe": "^1.1.2" + } + }, "node_modules/possible-typed-array-names": { "version": "1.0.0", "dev": true, @@ -2976,6 +5127,38 @@ "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/prop-types": { "version": "15.8.1", "dev": true, @@ -2986,6 +5169,12 @@ "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", "dev": true, @@ -2994,6 +5183,12 @@ "node": ">=6" } }, + "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", "dev": true, @@ -3039,6 +5234,15 @@ "dev": true, "license": "MIT" }, + "node_modules/react-refresh": { + "version": "0.14.1", + "resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.14.1.tgz", + "integrity": "sha512-iZiRCtNGY3QYP3pYOSSBOvQmBpQTcJccr/VcK2blpJrpPTUDjeN51mxm5nsrkCzBwsbGUj+TN9q2oPz5E13FLg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/reflect.getprototypeof": { "version": "1.0.6", "dev": true, @@ -3081,6 +5285,12 @@ "url": "https://github.com/sponsors/ljharb" } }, + "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", "dev": true, @@ -3155,6 +5365,47 @@ "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/rollup": { + "version": "4.16.4", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.16.4.tgz", + "integrity": "sha512-kuaTJSUbz+Wsb2ATGvEknkI12XV40vIiHmLuFlejoo7HtDok/O5eDDD0UpCVY5bBX5U5RYo8wWP83H7ZsqVEnA==", + "dev": true, + "dependencies": { + "@types/estree": "1.0.5" + }, + "bin": { + "rollup": "dist/bin/rollup" + }, + "engines": { + "node": ">=18.0.0", + "npm": ">=8.0.0" + }, + "optionalDependencies": { + "@rollup/rollup-android-arm-eabi": "4.16.4", + "@rollup/rollup-android-arm64": "4.16.4", + "@rollup/rollup-darwin-arm64": "4.16.4", + "@rollup/rollup-darwin-x64": "4.16.4", + "@rollup/rollup-linux-arm-gnueabihf": "4.16.4", + "@rollup/rollup-linux-arm-musleabihf": "4.16.4", + "@rollup/rollup-linux-arm64-gnu": "4.16.4", + "@rollup/rollup-linux-arm64-musl": "4.16.4", + "@rollup/rollup-linux-powerpc64le-gnu": "4.16.4", + "@rollup/rollup-linux-riscv64-gnu": "4.16.4", + "@rollup/rollup-linux-s390x-gnu": "4.16.4", + "@rollup/rollup-linux-x64-gnu": "4.16.4", + "@rollup/rollup-linux-x64-musl": "4.16.4", + "@rollup/rollup-win32-arm64-msvc": "4.16.4", + "@rollup/rollup-win32-ia32-msvc": "4.16.4", + "@rollup/rollup-win32-x64-msvc": "4.16.4", + "fsevents": "~2.3.2" + } + }, + "node_modules/rrweb-cssom": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/rrweb-cssom/-/rrweb-cssom-0.6.0.tgz", + "integrity": "sha512-APM0Gt1KoXBz0iIkkdB/kfvGOwC4UuJFeG/c+yV7wSc7q96cG/kJ0HiYCnzivD9SB53cLV1MlHFNfOuPaadYSw==", + "dev": true + }, "node_modules/run-parallel": { "version": "1.2.0", "dev": true, @@ -3210,6 +5461,24 @@ "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.1", "license": "MIT", @@ -3291,6 +5560,12 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/siginfo": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/siginfo/-/siginfo-2.0.0.tgz", + "integrity": "sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g==", + "dev": true + }, "node_modules/signal-exit": { "version": "4.1.0", "dev": true, @@ -3317,6 +5592,18 @@ "node": ">=0.10.0" } }, + "node_modules/stackback": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/stackback/-/stackback-0.0.2.tgz", + "integrity": "sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==", + "dev": true + }, + "node_modules/std-env": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/std-env/-/std-env-3.7.0.tgz", + "integrity": "sha512-JPbdCEQLj1w5GilpiHAx3qJvFndqybBysA3qUOnznweH4QbNYUsW/ea8QzSrnh0vNsezMMw5bcVool8lM0gwzg==", + "dev": true + }, "node_modules/streamsearch": { "version": "1.1.0", "engines": { @@ -3454,6 +5741,18 @@ "node": ">=4" } }, + "node_modules/strip-final-newline": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-3.0.0.tgz", + "integrity": "sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/strip-json-comments": { "version": "3.1.1", "dev": true, @@ -3465,6 +5764,24 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/strip-literal": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/strip-literal/-/strip-literal-2.1.0.tgz", + "integrity": "sha512-Op+UycaUt/8FbN/Z2TWPBLge3jWrP3xj10f3fnYxf052bKuS3EKs1ZQcVGjnEMdsNVAM+plXRdmjrZ/KgG3Skw==", + "dev": true, + "dependencies": { + "js-tokens": "^9.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/strip-literal/node_modules/js-tokens": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-9.0.0.tgz", + "integrity": "sha512-WriZw1luRMlmV3LGJaR6QOJjWwgLUTf89OwT2lUOyjX2dJGBwgmIkbcz+7WFZjrZM635JOIR517++e/67CP9dQ==", + "dev": true + }, "node_modules/styled-jsx": { "version": "5.1.1", "license": "MIT", @@ -3508,6 +5825,12 @@ "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", "dev": true, @@ -3521,6 +5844,39 @@ "dev": true, "license": "MIT" }, + "node_modules/tinybench": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/tinybench/-/tinybench-2.8.0.tgz", + "integrity": "sha512-1/eK7zUnIklz4JUUlL+658n58XO2hHLQfSk1Zf2LKieUjxidN16eKFEoDEfjHc3ohofSSqK3X5yO6VGb6iW8Lw==", + "dev": true + }, + "node_modules/tinypool": { + "version": "0.8.4", + "resolved": "https://registry.npmjs.org/tinypool/-/tinypool-0.8.4.tgz", + "integrity": "sha512-i11VH5gS6IFeLY3gMBQ00/MmLncVP7JLXOw1vlgkytLmJK7QnEr7NXf0LBdxfmNPAeyetukOk0bOYrJrFGjYJQ==", + "dev": true, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/tinyspy": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/tinyspy/-/tinyspy-2.2.1.tgz", + "integrity": "sha512-KYad6Vy5VDWV4GH3fjpseMQ/XU2BhIYP7Vzd0LG44qRWm/Yt2WCOTicFdvmgo6gWaqooMQCawTtILVQJupKu7A==", + "dev": true, + "engines": { + "node": ">=14.0.0" + } + }, + "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==", + "dev": true, + "engines": { + "node": ">=4" + } + }, "node_modules/to-regex-range": { "version": "5.0.1", "dev": true, @@ -3532,6 +5888,33 @@ "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": "5.0.0", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-5.0.0.tgz", + "integrity": "sha512-tk2G5R2KRwBd+ZN0zaEXpmzdKyOYksXwywulIX95MBODjSzMIuQnQ3m8JxgbhnL1LeVo7lqQKsYa1O3Htl7K5g==", + "dev": true, + "dependencies": { + "punycode": "^2.3.1" + }, + "engines": { + "node": ">=18" + } + }, "node_modules/ts-api-utils": { "version": "1.3.0", "dev": true, @@ -3569,6 +5952,15 @@ "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", "dev": true, @@ -3593,99 +5985,379 @@ "node": ">= 0.4" } }, - "node_modules/typed-array-byte-length": { - "version": "1.0.1", + "node_modules/typed-array-byte-length": { + "version": "1.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-proto": "^1.0.3", + "is-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typed-array-byte-offset": { + "version": "1.0.2", + "dev": true, + "license": "MIT", + "dependencies": { + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-proto": "^1.0.3", + "is-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typed-array-length": { + "version": "1.0.6", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-proto": "^1.0.3", + "is-typed-array": "^1.1.13", + "possible-typed-array-names": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typescript": { + "version": "5.4.5", + "dev": true, + "license": "Apache-2.0", + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, + "node_modules/ufo": { + "version": "1.5.3", + "resolved": "https://registry.npmjs.org/ufo/-/ufo-1.5.3.tgz", + "integrity": "sha512-Y7HYmWaFwPUmkoQCUIAYpKqkOf+SbVj/2fJJZ4RJMCfZp0rTGwRbzQD+HghfnhKOjL9E01okqz+ncJskGYfBNw==", + "dev": true + }, + "node_modules/unbox-primitive": { + "version": "1.0.2", + "dev": true, + "license": "MIT", + "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", + "dev": true, + "license": "MIT" + }, + "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", + "dev": true, + "license": "BSD-2-Clause", + "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/vite": { + "version": "5.2.10", + "resolved": "https://registry.npmjs.org/vite/-/vite-5.2.10.tgz", + "integrity": "sha512-PAzgUZbP7msvQvqdSD+ErD5qGnSFiGOoWmV5yAKUEI0kdhjbH6nMWVyZQC/hSc4aXwc0oJ9aEdIiF9Oje0JFCw==", + "dev": true, + "dependencies": { + "esbuild": "^0.20.1", + "postcss": "^8.4.38", + "rollup": "^4.13.0" + }, + "bin": { + "vite": "bin/vite.js" + }, + "engines": { + "node": "^18.0.0 || >=20.0.0" + }, + "funding": { + "url": "https://github.com/vitejs/vite?sponsor=1" + }, + "optionalDependencies": { + "fsevents": "~2.3.3" + }, + "peerDependencies": { + "@types/node": "^18.0.0 || >=20.0.0", + "less": "*", + "lightningcss": "^1.21.0", + "sass": "*", + "stylus": "*", + "sugarss": "*", + "terser": "^5.4.0" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "less": { + "optional": true + }, + "lightningcss": { + "optional": true + }, + "sass": { + "optional": true + }, + "stylus": { + "optional": true + }, + "sugarss": { + "optional": true + }, + "terser": { + "optional": true + } + } + }, + "node_modules/vite-node": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/vite-node/-/vite-node-1.5.2.tgz", + "integrity": "sha512-Y8p91kz9zU+bWtF7HGt6DVw2JbhyuB2RlZix3FPYAYmUyZ3n7iTp8eSyLyY6sxtPegvxQtmlTMhfPhUfCUF93A==", + "dev": true, + "dependencies": { + "cac": "^6.7.14", + "debug": "^4.3.4", + "pathe": "^1.1.1", + "picocolors": "^1.0.0", + "vite": "^5.0.0" + }, + "bin": { + "vite-node": "vite-node.mjs" + }, + "engines": { + "node": "^18.0.0 || >=20.0.0" + }, + "funding": { + "url": "https://opencollective.com/vitest" + } + }, + "node_modules/vite/node_modules/postcss": { + "version": "8.4.38", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.38.tgz", + "integrity": "sha512-Wglpdk03BSfXkHoQa3b/oulrotAkwrlLDRSOb9D0bN86FdRyE9lppSp33aHNPgBa0JKCoB+drFLZkQoRRYae5A==", "dev": true, - "license": "MIT", + "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": { - "call-bind": "^1.0.7", - "for-each": "^0.3.3", - "gopd": "^1.0.1", - "has-proto": "^1.0.3", - "is-typed-array": "^1.1.13" + "nanoid": "^3.3.7", + "picocolors": "^1.0.0", + "source-map-js": "^1.2.0" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": "^10 || ^12 || >=14" } }, - "node_modules/typed-array-byte-offset": { - "version": "1.0.2", + "node_modules/vitest": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/vitest/-/vitest-1.5.2.tgz", + "integrity": "sha512-l9gwIkq16ug3xY7BxHwcBQovLZG75zZL0PlsiYQbf76Rz6QGs54416UWMtC0jXeihvHvcHrf2ROEjkQRVpoZYw==", "dev": true, - "license": "MIT", "dependencies": { - "available-typed-arrays": "^1.0.7", - "call-bind": "^1.0.7", - "for-each": "^0.3.3", - "gopd": "^1.0.1", - "has-proto": "^1.0.3", - "is-typed-array": "^1.1.13" + "@vitest/expect": "1.5.2", + "@vitest/runner": "1.5.2", + "@vitest/snapshot": "1.5.2", + "@vitest/spy": "1.5.2", + "@vitest/utils": "1.5.2", + "acorn-walk": "^8.3.2", + "chai": "^4.3.10", + "debug": "^4.3.4", + "execa": "^8.0.1", + "local-pkg": "^0.5.0", + "magic-string": "^0.30.5", + "pathe": "^1.1.1", + "picocolors": "^1.0.0", + "std-env": "^3.5.0", + "strip-literal": "^2.0.0", + "tinybench": "^2.5.1", + "tinypool": "^0.8.3", + "vite": "^5.0.0", + "vite-node": "1.5.2", + "why-is-node-running": "^2.2.2" + }, + "bin": { + "vitest": "vitest.mjs" }, "engines": { - "node": ">= 0.4" + "node": "^18.0.0 || >=20.0.0" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://opencollective.com/vitest" + }, + "peerDependencies": { + "@edge-runtime/vm": "*", + "@types/node": "^18.0.0 || >=20.0.0", + "@vitest/browser": "1.5.2", + "@vitest/ui": "1.5.2", + "happy-dom": "*", + "jsdom": "*" + }, + "peerDependenciesMeta": { + "@edge-runtime/vm": { + "optional": true + }, + "@types/node": { + "optional": true + }, + "@vitest/browser": { + "optional": true + }, + "@vitest/ui": { + "optional": true + }, + "happy-dom": { + "optional": true + }, + "jsdom": { + "optional": true + } } }, - "node_modules/typed-array-length": { - "version": "1.0.6", + "node_modules/w3c-xmlserializer": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-5.0.0.tgz", + "integrity": "sha512-o8qghlI8NZHU1lLPrpi2+Uq7abh4GGPpYANlalzWxyWteJOCsr/P+oPBA49TOLu5FTZO4d3F9MnWJfiMo4BkmA==", "dev": true, - "license": "MIT", "dependencies": { - "call-bind": "^1.0.7", - "for-each": "^0.3.3", - "gopd": "^1.0.1", - "has-proto": "^1.0.3", - "is-typed-array": "^1.1.13", - "possible-typed-array-names": "^1.0.0" + "xml-name-validator": "^5.0.0" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=18" } }, - "node_modules/typescript": { - "version": "5.4.5", + "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, - "license": "Apache-2.0", - "bin": { - "tsc": "bin/tsc", - "tsserver": "bin/tsserver" - }, "engines": { - "node": ">=14.17" + "node": ">=12" } }, - "node_modules/unbox-primitive": { - "version": "1.0.2", + "node_modules/whatwg-encoding": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-3.1.1.tgz", + "integrity": "sha512-6qN4hJdMwfYBtE3YBTTHhoeuUrDBPZmbQaxWAqSALV/MeEnR5z1xd8UKud2RAkFoPkmB+hli1TZSnyi84xz1vQ==", "dev": true, - "license": "MIT", "dependencies": { - "call-bind": "^1.0.2", - "has-bigints": "^1.0.2", - "has-symbols": "^1.0.3", - "which-boxed-primitive": "^1.0.2" + "iconv-lite": "0.6.3" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": ">=18" } }, - "node_modules/undici-types": { - "version": "5.26.5", + "node_modules/whatwg-mimetype": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-4.0.0.tgz", + "integrity": "sha512-QaKxh0eNIi2mE9p2vEdzfagOKHCcj1pJ56EEHGQOVxp8r9/iszLUUV7v89x9O1p/T+NlTM5W7jW6+cz4Fq1YVg==", "dev": true, - "license": "MIT" + "engines": { + "node": ">=18" + } }, - "node_modules/uri-js": { - "version": "4.4.1", + "node_modules/whatwg-url": { + "version": "14.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-14.0.0.tgz", + "integrity": "sha512-1lfMEm2IEr7RIV+f4lUNPOqfFL+pO+Xw3fJSqmjX9AbXcXcYOkCe1P6+9VBZB6n94af16NfZf+sSk0JCBZC9aw==", "dev": true, - "license": "BSD-2-Clause", "dependencies": { - "punycode": "^2.1.0" + "tr46": "^5.0.0", + "webidl-conversions": "^7.0.0" + }, + "engines": { + "node": ">=18" } }, "node_modules/which": { @@ -3777,6 +6449,22 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/why-is-node-running": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/why-is-node-running/-/why-is-node-running-2.2.2.tgz", + "integrity": "sha512-6tSwToZxTOcotxHeA+qGCq1mVzKR3CwcJGmVcY+QE8SHy6TnpFnh8PAvPNHYr7EcuVeG0QSMxtYCuO1ta/G/oA==", + "dev": true, + "dependencies": { + "siginfo": "^2.0.0", + "stackback": "0.0.2" + }, + "bin": { + "why-is-node-running": "cli.js" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/wrap-ansi": { "version": "8.1.0", "dev": true, @@ -3834,6 +6522,42 @@ "dev": true, "license": "ISC" }, + "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": "5.0.0", + "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-5.0.0.tgz", + "integrity": "sha512-EvGK8EJ3DhaHfbRlETOWAS5pO9MZITeauHKJyb8wyajUfQUenkIg2MvLDTZ4T/TgIcm3HU0TFBgWWboAZ30UHg==", + "dev": true, + "engines": { + "node": ">=18" + } + }, + "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/yallist": { "version": "4.0.0", "dev": true, @@ -3849,126 +6573,6 @@ "funding": { "url": "https://github.com/sponsors/sindresorhus" } - }, - "node_modules/@next/swc-darwin-x64": { - "version": "14.2.3", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.3.tgz", - "integrity": "sha512-6adp7waE6P1TYFSXpY366xwsOnEXM+y1kgRpjSRVI2CBDOcbRjsJ67Z6EgKIqWIue52d2q/Mx8g9MszARj8IEA==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@next/swc-linux-arm64-gnu": { - "version": "14.2.3", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.3.tgz", - "integrity": "sha512-cuzCE/1G0ZSnTAHJPUT1rPgQx1w5tzSX7POXSLaS7w2nIUJUD+e25QoXD/hMfxbsT9rslEXugWypJMILBj/QsA==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@next/swc-linux-arm64-musl": { - "version": "14.2.3", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.3.tgz", - "integrity": "sha512-0D4/oMM2Y9Ta3nGuCcQN8jjJjmDPYpHX9OJzqk42NZGJocU2MqhBq5tWkJrUQOQY9N+In9xOdymzapM09GeiZw==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@next/swc-linux-x64-gnu": { - "version": "14.2.3", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.3.tgz", - "integrity": "sha512-ENPiNnBNDInBLyUU5ii8PMQh+4XLr4pG51tOp6aJ9xqFQ2iRI6IH0Ds2yJkAzNV1CfyagcyzPfROMViS2wOZ9w==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@next/swc-linux-x64-musl": { - "version": "14.2.3", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.3.tgz", - "integrity": "sha512-BTAbq0LnCbF5MtoM7I/9UeUu/8ZBY0i8SFjUMCbPDOLv+un67e2JgyN4pmgfXBwy/I+RHu8q+k+MCkDN6P9ViQ==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@next/swc-win32-arm64-msvc": { - "version": "14.2.3", - "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.3.tgz", - "integrity": "sha512-AEHIw/dhAMLNFJFJIJIyOFDzrzI5bAjI9J26gbO5xhAKHYTZ9Or04BesFPXiAYXDNdrwTP2dQceYA4dL1geu8A==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@next/swc-win32-ia32-msvc": { - "version": "14.2.3", - "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.3.tgz", - "integrity": "sha512-vga40n1q6aYb0CLrM+eEmisfKCR45ixQYXuBXxOOmmoV8sYST9k7E3US32FsY+CkkF7NtzdcebiFT4CHuMSyZw==", - "cpu": [ - "ia32" - ], - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@next/swc-win32-x64-msvc": { - "version": "14.2.3", - "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.3.tgz", - "integrity": "sha512-Q1/zm43RWynxrO7lW4ehciQVj+5ePBhOK+/K2P7pLFX3JaJ/IZVC69SHidrmZSOkqz7ECIOhhy7XhAFG4JYyHA==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 10" - } } } } diff --git a/ui/package.json b/ui/package.json index 64bc1f2..5c93ef1 100644 --- a/ui/package.json +++ b/ui/package.json @@ -2,11 +2,13 @@ "name": "gocert", "version": "0.1.0", "private": true, + "type": "module", "scripts": { "dev": "next dev", "build": "next build", "start": "next start", - "lint": "next lint" + "lint": "next lint", + "test": "vitest run" }, "dependencies": { "react": "^18", @@ -14,11 +16,15 @@ "next": "14.2.3" }, "devDependencies": { - "typescript": "^5", + "@testing-library/react": "^15.0.4", "@types/node": "^20", "@types/react": "^18", "@types/react-dom": "^18", + "@vitejs/plugin-react": "^4.2.1", "eslint": "^8", - "eslint-config-next": "14.2.3" + "eslint-config-next": "14.2.3", + "jsdom": "^24.0.0", + "typescript": "^5", + "vitest": "^1.5.2" } -} +} \ No newline at end of file diff --git a/ui/src/app/page.test.tsx b/ui/src/app/page.test.tsx new file mode 100644 index 0000000..29c732f --- /dev/null +++ b/ui/src/app/page.test.tsx @@ -0,0 +1,8 @@ +import { expect, test } from 'vitest' +import { render, screen } from '@testing-library/react' +import Page from './page' + +test('Page', () => { + render() + expect(screen.getByRole('heading', { level: 1, name: 'Fail intentionally' })).toBeDefined() +}) \ No newline at end of file diff --git a/ui/vitest.config.ts b/ui/vitest.config.ts new file mode 100644 index 0000000..2aaa819 --- /dev/null +++ b/ui/vitest.config.ts @@ -0,0 +1,9 @@ +import { defineConfig } from 'vitest/config' +import react from '@vitejs/plugin-react' + +export default defineConfig({ + plugins: [react()], + test: { + environment: 'jsdom', + }, +}) \ No newline at end of file From 3a4ca592ccf768e7624abf9841b9ff5f2f575ada Mon Sep 17 00:00:00 2001 From: Kayra Date: Fri, 26 Apr 2024 16:21:12 +0300 Subject: [PATCH 06/23] github action --- .github/workflows/main.yml | 14 +- ui/bun.lockb | Bin 204002 -> 191018 bytes ui/package-lock.json | 6578 ------------------------------------ ui/package.json | 3 + ui/src/app/page.test.tsx | 2 +- ui/vitest.config.ts | 1 + 6 files changed, 14 insertions(+), 6584 deletions(-) delete mode 100644 ui/package-lock.json diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index cc75376..832ab2c 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -61,16 +61,20 @@ jobs: nextjs-unit-tests: runs-on: ubuntu-latest + defaults: + run: + working-directory: ui steps: - uses: actions/checkout@v3 - - name: Use Node.js 20 - uses: actions/setup-node@v3 + - name: Use Bun + uses: oven-sh/setup-bun@v1 with: - node-version: 20 - cache: "npm" + bun-version: latest - name: Execute Unit tests - run: npm run test --prefix ui + run: | + bun install + bun run test rock-build: needs: diff --git a/ui/bun.lockb b/ui/bun.lockb index 035ab2b3c0415006b93aaf1cf524ce77db452b05..f187468962f129272d6e752daa93dfafd9bb0340 100755 GIT binary patch literal 191018 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 oBZiMYsyueW;Nhcvyv6`eT@+sD6W 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

PTZ-43WRpIrG&+Tqr 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 c+jy6WN3crhm$_pV=0.10.0" - } - }, - "node_modules/@ampproject/remapping": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.3.0.tgz", - "integrity": "sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==", - "dev": true, - "dependencies": { - "@jridgewell/gen-mapping": "^0.3.5", - "@jridgewell/trace-mapping": "^0.3.24" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@babel/code-frame": { - "version": "7.24.2", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.2.tgz", - "integrity": "sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ==", - "dev": true, - "dependencies": { - "@babel/highlight": "^7.24.2", - "picocolors": "^1.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/compat-data": { - "version": "7.24.4", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.24.4.tgz", - "integrity": "sha512-vg8Gih2MLK+kOkHJp4gBEIkyaIi00jgWot2D9QOmmfLC8jINSOzmCLta6Bvz/JSBCqnegV0L80jhxkol5GWNfQ==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/core": { - "version": "7.24.4", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.24.4.tgz", - "integrity": "sha512-MBVlMXP+kkl5394RBLSxxk/iLTeVGuXTV3cIDXavPpMMqnSnt6apKgan/U8O3USWZCWZT/TbgfEpKa4uMgN4Dg==", - "dev": true, - "dependencies": { - "@ampproject/remapping": "^2.2.0", - "@babel/code-frame": "^7.24.2", - "@babel/generator": "^7.24.4", - "@babel/helper-compilation-targets": "^7.23.6", - "@babel/helper-module-transforms": "^7.23.3", - "@babel/helpers": "^7.24.4", - "@babel/parser": "^7.24.4", - "@babel/template": "^7.24.0", - "@babel/traverse": "^7.24.1", - "@babel/types": "^7.24.0", - "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/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/generator": { - "version": "7.24.4", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.4.tgz", - "integrity": "sha512-Xd6+v6SnjWVx/nus+y0l1sxMOTOMBkyL4+BIdbALyatQnAe/SRVjANeDPSCYaX+i1iJmuGSKf3Z+E+V/va1Hvw==", - "dev": true, - "dependencies": { - "@babel/types": "^7.24.0", - "@jridgewell/gen-mapping": "^0.3.5", - "@jridgewell/trace-mapping": "^0.3.25", - "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/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.24.3", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.24.3.tgz", - "integrity": "sha512-viKb0F9f2s0BCS22QSF308z/+1YWKV/76mwt61NBzS5izMzDPwdq1pTrzf+Li3npBWX9KdQbkeCt1jSAM7lZqg==", - "dev": true, - "dependencies": { - "@babel/types": "^7.24.0" - }, - "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.24.0", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz", - "integrity": "sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==", - "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.24.1", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz", - "integrity": "sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==", - "dev": true, - "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==", - "dev": true, - "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.24.4", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.24.4.tgz", - "integrity": "sha512-FewdlZbSiwaVGlgT1DPANDuCHaDMiOo+D/IDYRFYjHOuv66xMSJ7fQwwODwRNAPkADIO/z1EoF/l2BCWlWABDw==", - "dev": true, - "dependencies": { - "@babel/template": "^7.24.0", - "@babel/traverse": "^7.24.1", - "@babel/types": "^7.24.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/highlight": { - "version": "7.24.2", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.2.tgz", - "integrity": "sha512-Yac1ao4flkTxTteCDZLEvdxg2fZfz1v8M4QpaGypq/WPDqg3ijHYbDfs+LG5hvzSoqaSZ9/Z9lKSP3CjZjv+pA==", - "dev": true, - "dependencies": { - "@babel/helper-validator-identifier": "^7.22.20", - "chalk": "^2.4.2", - "js-tokens": "^4.0.0", - "picocolors": "^1.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==", - "dev": true, - "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==", - "dev": true, - "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==", - "dev": true, - "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==", - "dev": true - }, - "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==", - "dev": true, - "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==", - "dev": true, - "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==", - "dev": true, - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/@babel/parser": { - "version": "7.24.4", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.4.tgz", - "integrity": "sha512-zTvEBcghmeBma9QIGunWevvBAp4/Qu9Bdq+2k0Ot4fVMD6v3dsC9WOcRSKk7tRRyBM/53yKMJko9xOatGQAwSg==", - "dev": true, - "bin": { - "parser": "bin/babel-parser.js" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@babel/plugin-transform-react-jsx-self": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.24.1.tgz", - "integrity": "sha512-kDJgnPujTmAZ/9q2CN4m2/lRsUUPDvsG3+tSHWUJIzMGTt5U/b/fwWd3RO3n+5mjLrsBrVa5eKFRVSQbi3dF1w==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.24.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-react-jsx-source": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.24.1.tgz", - "integrity": "sha512-1v202n7aUq4uXAieRTKcwPzNyphlCuqHHDcdSNc+vdhoTEZcFMh+L5yZuCmGaIO7bs1nJUNfHB89TZyoL48xNA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.24.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/runtime": { - "version": "7.24.4", - "dev": true, - "license": "MIT", - "dependencies": { - "regenerator-runtime": "^0.14.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/template": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.0.tgz", - "integrity": "sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.23.5", - "@babel/parser": "^7.24.0", - "@babel/types": "^7.24.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/traverse": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.1.tgz", - "integrity": "sha512-xuU6o9m68KeqZbQuDt2TcKSxUw/mrsvavlEqQ1leZ/B+C9tk6E4sRWy97WaXgvq5E+nU3cXMxv3WKOCanVMCmQ==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.24.1", - "@babel/generator": "^7.24.1", - "@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.24.1", - "@babel/types": "^7.24.0", - "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.24.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.0.tgz", - "integrity": "sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==", - "dev": true, - "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/@esbuild/aix-ppc64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.20.2.tgz", - "integrity": "sha512-D+EBOJHXdNZcLJRBkhENNG8Wji2kgc9AZ9KiPr1JuZjsNtyHzrsfLRrY0tk2H2aoFu6RANO1y1iPPUCDYWkb5g==", - "cpu": [ - "ppc64" - ], - "dev": true, - "optional": true, - "os": [ - "aix" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/android-arm": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.20.2.tgz", - "integrity": "sha512-t98Ra6pw2VaDhqNWO2Oph2LXbz/EJcnLmKLGBJwEwXX/JAN83Fym1rU8l0JUWK6HkIbWONCSSatf4sf2NBRx/w==", - "cpu": [ - "arm" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/android-arm64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.20.2.tgz", - "integrity": "sha512-mRzjLacRtl/tWU0SvD8lUEwb61yP9cqQo6noDZP/O8VkwafSYwZ4yWy24kan8jE/IMERpYncRt2dw438LP3Xmg==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/android-x64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.20.2.tgz", - "integrity": "sha512-btzExgV+/lMGDDa194CcUQm53ncxzeBrWJcncOBxuC6ndBkKxnHdFJn86mCIgTELsooUmwUm9FkhSp5HYu00Rg==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/darwin-arm64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.20.2.tgz", - "integrity": "sha512-4J6IRT+10J3aJH3l1yzEg9y3wkTDgDk7TSDFX+wKFiWjqWp/iCfLIYzGyasx9l0SAFPT1HwSCR+0w/h1ES/MjA==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/darwin-x64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.20.2.tgz", - "integrity": "sha512-tBcXp9KNphnNH0dfhv8KYkZhjc+H3XBkF5DKtswJblV7KlT9EI2+jeA8DgBjp908WEuYll6pF+UStUCfEpdysA==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/freebsd-arm64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.20.2.tgz", - "integrity": "sha512-d3qI41G4SuLiCGCFGUrKsSeTXyWG6yem1KcGZVS+3FYlYhtNoNgYrWcvkOoaqMhwXSMrZRl69ArHsGJ9mYdbbw==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/freebsd-x64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.20.2.tgz", - "integrity": "sha512-d+DipyvHRuqEeM5zDivKV1KuXn9WeRX6vqSqIDgwIfPQtwMP4jaDsQsDncjTDDsExT4lR/91OLjRo8bmC1e+Cw==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-arm": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.20.2.tgz", - "integrity": "sha512-VhLPeR8HTMPccbuWWcEUD1Az68TqaTYyj6nfE4QByZIQEQVWBB8vup8PpR7y1QHL3CpcF6xd5WVBU/+SBEvGTg==", - "cpu": [ - "arm" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-arm64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.20.2.tgz", - "integrity": "sha512-9pb6rBjGvTFNira2FLIWqDk/uaf42sSyLE8j1rnUpuzsODBq7FvpwHYZxQ/It/8b+QOS1RYfqgGFNLRI+qlq2A==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-ia32": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.20.2.tgz", - "integrity": "sha512-o10utieEkNPFDZFQm9CoP7Tvb33UutoJqg3qKf1PWVeeJhJw0Q347PxMvBgVVFgouYLGIhFYG0UGdBumROyiig==", - "cpu": [ - "ia32" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-loong64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.20.2.tgz", - "integrity": "sha512-PR7sp6R/UC4CFVomVINKJ80pMFlfDfMQMYynX7t1tNTeivQ6XdX5r2XovMmha/VjR1YN/HgHWsVcTRIMkymrgQ==", - "cpu": [ - "loong64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-mips64el": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.20.2.tgz", - "integrity": "sha512-4BlTqeutE/KnOiTG5Y6Sb/Hw6hsBOZapOVF6njAESHInhlQAghVVZL1ZpIctBOoTFbQyGW+LsVYZ8lSSB3wkjA==", - "cpu": [ - "mips64el" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-ppc64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.20.2.tgz", - "integrity": "sha512-rD3KsaDprDcfajSKdn25ooz5J5/fWBylaaXkuotBDGnMnDP1Uv5DLAN/45qfnf3JDYyJv/ytGHQaziHUdyzaAg==", - "cpu": [ - "ppc64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-riscv64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.20.2.tgz", - "integrity": "sha512-snwmBKacKmwTMmhLlz/3aH1Q9T8v45bKYGE3j26TsaOVtjIag4wLfWSiZykXzXuE1kbCE+zJRmwp+ZbIHinnVg==", - "cpu": [ - "riscv64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-s390x": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.20.2.tgz", - "integrity": "sha512-wcWISOobRWNm3cezm5HOZcYz1sKoHLd8VL1dl309DiixxVFoFe/o8HnwuIwn6sXre88Nwj+VwZUvJf4AFxkyrQ==", - "cpu": [ - "s390x" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-x64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.20.2.tgz", - "integrity": "sha512-1MdwI6OOTsfQfek8sLwgyjOXAu+wKhLEoaOLTjbijk6E2WONYpH9ZU2mNtR+lZ2B4uwr+usqGuVfFT9tMtGvGw==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/netbsd-x64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.20.2.tgz", - "integrity": "sha512-K8/DhBxcVQkzYc43yJXDSyjlFeHQJBiowJ0uVL6Tor3jGQfSGHNNJcWxNbOI8v5k82prYqzPuwkzHt3J1T1iZQ==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "netbsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/openbsd-x64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.20.2.tgz", - "integrity": "sha512-eMpKlV0SThJmmJgiVyN9jTPJ2VBPquf6Kt/nAoo6DgHAoN57K15ZghiHaMvqjCye/uU4X5u3YSMgVBI1h3vKrQ==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "openbsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/sunos-x64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.20.2.tgz", - "integrity": "sha512-2UyFtRC6cXLyejf/YEld4Hajo7UHILetzE1vsRcGL3earZEW77JxrFjH4Ez2qaTiEfMgAXxfAZCm1fvM/G/o8w==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "sunos" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/win32-arm64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.20.2.tgz", - "integrity": "sha512-GRibxoawM9ZCnDxnP3usoUDO9vUkpAxIIZ6GQI+IlVmr5kP3zUq+l17xELTHMWTWzjxa2guPNyrpq1GWmPvcGQ==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/win32-ia32": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.20.2.tgz", - "integrity": "sha512-HfLOfn9YWmkSKRQqovpnITazdtquEW8/SoHW7pWpuEeguaZI4QnCRW6b+oZTztdBnZOS2hqJ6im/D5cPzBTTlQ==", - "cpu": [ - "ia32" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/win32-x64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.20.2.tgz", - "integrity": "sha512-N49X4lJX27+l9jbLKSqZ6bKNjzQvHaT8IIFUy+YIqmXQdjYCToGWwOItDrfby14c78aDd5NHQl29xingXfCdLQ==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@eslint-community/eslint-utils": { - "version": "4.4.0", - "dev": true, - "license": "MIT", - "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", - "dev": true, - "license": "MIT", - "engines": { - "node": "^12.0.0 || ^14.0.0 || >=16.0.0" - } - }, - "node_modules/@eslint/eslintrc": { - "version": "2.1.4", - "dev": true, - "license": "MIT", - "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.57.0", - "dev": true, - "license": "MIT", - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - } - }, - "node_modules/@humanwhocodes/config-array": { - "version": "0.11.14", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "@humanwhocodes/object-schema": "^2.0.2", - "debug": "^4.3.1", - "minimatch": "^3.0.5" - }, - "engines": { - "node": ">=10.10.0" - } - }, - "node_modules/@humanwhocodes/module-importer": { - "version": "1.0.1", - "dev": true, - "license": "Apache-2.0", - "engines": { - "node": ">=12.22" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/nzakas" - } - }, - "node_modules/@humanwhocodes/object-schema": { - "version": "2.0.3", - "dev": true, - "license": "BSD-3-Clause" - }, - "node_modules/@isaacs/cliui": { - "version": "8.0.2", - "dev": true, - "license": "ISC", - "dependencies": { - "string-width": "^5.1.2", - "string-width-cjs": "npm:string-width@^4.2.0", - "strip-ansi": "^7.0.1", - "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", - "wrap-ansi": "^8.1.0", - "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@isaacs/cliui/node_modules/string-width-cjs": { - "name": "string-width", - "version": "4.2.3", - "dev": true, - "license": "MIT", - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@isaacs/cliui/node_modules/string-width-cjs/node_modules/emoji-regex": { - "version": "8.0.0", - "dev": true, - "license": "MIT" - }, - "node_modules/@isaacs/cliui/node_modules/string-width-cjs/node_modules/strip-ansi": { - "version": "6.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@isaacs/cliui/node_modules/strip-ansi": { - "version": "7.1.0", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-regex": "^6.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/strip-ansi?sponsor=1" - } - }, - "node_modules/@isaacs/cliui/node_modules/strip-ansi-cjs": { - "name": "strip-ansi", - "version": "6.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@isaacs/cliui/node_modules/strip-ansi/node_modules/ansi-regex": { - "version": "6.0.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/ansi-regex?sponsor=1" - } - }, - "node_modules/@isaacs/cliui/node_modules/wrap-ansi-cjs": { - "name": "wrap-ansi", - "version": "7.0.0", - "dev": true, - "license": "MIT", - "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/@isaacs/cliui/node_modules/wrap-ansi-cjs/node_modules/string-width": { - "version": "4.2.3", - "dev": true, - "license": "MIT", - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@isaacs/cliui/node_modules/wrap-ansi-cjs/node_modules/string-width/node_modules/emoji-regex": { - "version": "8.0.0", - "dev": true, - "license": "MIT" - }, - "node_modules/@isaacs/cliui/node_modules/wrap-ansi-cjs/node_modules/strip-ansi": { - "version": "6.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "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/@jridgewell/gen-mapping": { - "version": "0.3.5", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", - "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==", - "dev": true, - "dependencies": { - "@jridgewell/set-array": "^1.2.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.24" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/resolve-uri": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", - "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", - "dev": true, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/set-array": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", - "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", - "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.25", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", - "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", - "dev": true, - "dependencies": { - "@jridgewell/resolve-uri": "^3.1.0", - "@jridgewell/sourcemap-codec": "^1.4.14" - } - }, - "node_modules/@next/env": { - "version": "14.2.3", - "license": "MIT" - }, - "node_modules/@next/eslint-plugin-next": { - "version": "14.2.3", - "dev": true, - "license": "MIT", - "dependencies": { - "glob": "10.3.10" - } - }, - "node_modules/@next/swc-darwin-arm64": { - "version": "14.2.3", - "cpu": [ - "arm64" - ], - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@next/swc-darwin-x64": { - "version": "14.2.3", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.3.tgz", - "integrity": "sha512-6adp7waE6P1TYFSXpY366xwsOnEXM+y1kgRpjSRVI2CBDOcbRjsJ67Z6EgKIqWIue52d2q/Mx8g9MszARj8IEA==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@next/swc-linux-arm64-gnu": { - "version": "14.2.3", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.3.tgz", - "integrity": "sha512-cuzCE/1G0ZSnTAHJPUT1rPgQx1w5tzSX7POXSLaS7w2nIUJUD+e25QoXD/hMfxbsT9rslEXugWypJMILBj/QsA==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@next/swc-linux-arm64-musl": { - "version": "14.2.3", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.3.tgz", - "integrity": "sha512-0D4/oMM2Y9Ta3nGuCcQN8jjJjmDPYpHX9OJzqk42NZGJocU2MqhBq5tWkJrUQOQY9N+In9xOdymzapM09GeiZw==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@next/swc-linux-x64-gnu": { - "version": "14.2.3", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.3.tgz", - "integrity": "sha512-ENPiNnBNDInBLyUU5ii8PMQh+4XLr4pG51tOp6aJ9xqFQ2iRI6IH0Ds2yJkAzNV1CfyagcyzPfROMViS2wOZ9w==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@next/swc-linux-x64-musl": { - "version": "14.2.3", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.3.tgz", - "integrity": "sha512-BTAbq0LnCbF5MtoM7I/9UeUu/8ZBY0i8SFjUMCbPDOLv+un67e2JgyN4pmgfXBwy/I+RHu8q+k+MCkDN6P9ViQ==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@next/swc-win32-arm64-msvc": { - "version": "14.2.3", - "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.3.tgz", - "integrity": "sha512-AEHIw/dhAMLNFJFJIJIyOFDzrzI5bAjI9J26gbO5xhAKHYTZ9Or04BesFPXiAYXDNdrwTP2dQceYA4dL1geu8A==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@next/swc-win32-ia32-msvc": { - "version": "14.2.3", - "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.3.tgz", - "integrity": "sha512-vga40n1q6aYb0CLrM+eEmisfKCR45ixQYXuBXxOOmmoV8sYST9k7E3US32FsY+CkkF7NtzdcebiFT4CHuMSyZw==", - "cpu": [ - "ia32" - ], - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@next/swc-win32-x64-msvc": { - "version": "14.2.3", - "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.3.tgz", - "integrity": "sha512-Q1/zm43RWynxrO7lW4ehciQVj+5ePBhOK+/K2P7pLFX3JaJ/IZVC69SHidrmZSOkqz7ECIOhhy7XhAFG4JYyHA==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@nodelib/fs.scandir": { - "version": "2.1.5", - "dev": true, - "license": "MIT", - "dependencies": { - "@nodelib/fs.stat": "2.0.5", - "run-parallel": "^1.1.9" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@nodelib/fs.stat": { - "version": "2.0.5", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 8" - } - }, - "node_modules/@nodelib/fs.walk": { - "version": "1.2.8", - "dev": true, - "license": "MIT", - "dependencies": { - "@nodelib/fs.scandir": "2.1.5", - "fastq": "^1.6.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@pkgjs/parseargs": { - "version": "0.11.0", - "dev": true, - "license": "MIT", - "optional": true, - "engines": { - "node": ">=14" - } - }, - "node_modules/@rollup/rollup-android-arm-eabi": { - "version": "4.16.4", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.16.4.tgz", - "integrity": "sha512-GkhjAaQ8oUTOKE4g4gsZ0u8K/IHU1+2WQSgS1TwTcYvL+sjbaQjNHFXbOJ6kgqGHIO1DfUhI/Sphi9GkRT9K+Q==", - "cpu": [ - "arm" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ] - }, - "node_modules/@rollup/rollup-android-arm64": { - "version": "4.16.4", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.16.4.tgz", - "integrity": "sha512-Bvm6D+NPbGMQOcxvS1zUl8H7DWlywSXsphAeOnVeiZLQ+0J6Is8T7SrjGTH29KtYkiY9vld8ZnpV3G2EPbom+w==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ] - }, - "node_modules/@rollup/rollup-darwin-arm64": { - "version": "4.16.4", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.16.4.tgz", - "integrity": "sha512-i5d64MlnYBO9EkCOGe5vPR/EeDwjnKOGGdd7zKFhU5y8haKhQZTN2DgVtpODDMxUr4t2K90wTUJg7ilgND6bXw==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ] - }, - "node_modules/@rollup/rollup-darwin-x64": { - "version": "4.16.4", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.16.4.tgz", - "integrity": "sha512-WZupV1+CdUYehaZqjaFTClJI72fjJEgTXdf4NbW69I9XyvdmztUExBtcI2yIIU6hJtYvtwS6pkTkHJz+k08mAQ==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ] - }, - "node_modules/@rollup/rollup-linux-arm-gnueabihf": { - "version": "4.16.4", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.16.4.tgz", - "integrity": "sha512-ADm/xt86JUnmAfA9mBqFcRp//RVRt1ohGOYF6yL+IFCYqOBNwy5lbEK05xTsEoJq+/tJzg8ICUtS82WinJRuIw==", - "cpu": [ - "arm" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-arm-musleabihf": { - "version": "4.16.4", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.16.4.tgz", - "integrity": "sha512-tJfJaXPiFAG+Jn3cutp7mCs1ePltuAgRqdDZrzb1aeE3TktWWJ+g7xK9SNlaSUFw6IU4QgOxAY4rA+wZUT5Wfg==", - "cpu": [ - "arm" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-arm64-gnu": { - "version": "4.16.4", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.16.4.tgz", - "integrity": "sha512-7dy1BzQkgYlUTapDTvK997cgi0Orh5Iu7JlZVBy1MBURk7/HSbHkzRnXZa19ozy+wwD8/SlpJnOOckuNZtJR9w==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-arm64-musl": { - "version": "4.16.4", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.16.4.tgz", - "integrity": "sha512-zsFwdUw5XLD1gQe0aoU2HVceI6NEW7q7m05wA46eUAyrkeNYExObfRFQcvA6zw8lfRc5BHtan3tBpo+kqEOxmg==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-powerpc64le-gnu": { - "version": "4.16.4", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.16.4.tgz", - "integrity": "sha512-p8C3NnxXooRdNrdv6dBmRTddEapfESEUflpICDNKXpHvTjRRq1J82CbU5G3XfebIZyI3B0s074JHMWD36qOW6w==", - "cpu": [ - "ppc64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-riscv64-gnu": { - "version": "4.16.4", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.16.4.tgz", - "integrity": "sha512-Lh/8ckoar4s4Id2foY7jNgitTOUQczwMWNYi+Mjt0eQ9LKhr6sK477REqQkmy8YHY3Ca3A2JJVdXnfb3Rrwkng==", - "cpu": [ - "riscv64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-s390x-gnu": { - "version": "4.16.4", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.16.4.tgz", - "integrity": "sha512-1xwwn9ZCQYuqGmulGsTZoKrrn0z2fAur2ujE60QgyDpHmBbXbxLaQiEvzJWDrscRq43c8DnuHx3QorhMTZgisQ==", - "cpu": [ - "s390x" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-x64-gnu": { - "version": "4.16.4", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.16.4.tgz", - "integrity": "sha512-LuOGGKAJ7dfRtxVnO1i3qWc6N9sh0Em/8aZ3CezixSTM+E9Oq3OvTsvC4sm6wWjzpsIlOCnZjdluINKESflJLA==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-x64-musl": { - "version": "4.16.4", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.16.4.tgz", - "integrity": "sha512-ch86i7KkJKkLybDP2AtySFTRi5fM3KXp0PnHocHuJMdZwu7BuyIKi35BE9guMlmTpwwBTB3ljHj9IQXnTCD0vA==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-win32-arm64-msvc": { - "version": "4.16.4", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.16.4.tgz", - "integrity": "sha512-Ma4PwyLfOWZWayfEsNQzTDBVW8PZ6TUUN1uFTBQbF2Chv/+sjenE86lpiEwj2FiviSmSZ4Ap4MaAfl1ciF4aSA==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ] - }, - "node_modules/@rollup/rollup-win32-ia32-msvc": { - "version": "4.16.4", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.16.4.tgz", - "integrity": "sha512-9m/ZDrQsdo/c06uOlP3W9G2ENRVzgzbSXmXHT4hwVaDQhYcRpi9bgBT0FTG9OhESxwK0WjQxYOSfv40cU+T69w==", - "cpu": [ - "ia32" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ] - }, - "node_modules/@rollup/rollup-win32-x64-msvc": { - "version": "4.16.4", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.16.4.tgz", - "integrity": "sha512-YunpoOAyGLDseanENHmbFvQSfVL5BxW3k7hhy0eN4rb3gS/ct75dVD0EXOWIqFT/nE8XYW6LP6vz6ctKRi0k9A==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ] - }, - "node_modules/@rushstack/eslint-patch": { - "version": "1.10.2", - "dev": true, - "license": "MIT" - }, - "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/@swc/counter": { - "version": "0.1.3", - "license": "Apache-2.0" - }, - "node_modules/@swc/helpers": { - "version": "0.5.5", - "license": "Apache-2.0", - "dependencies": { - "@swc/counter": "^0.1.3", - "tslib": "^2.4.0" - } - }, - "node_modules/@testing-library/dom": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/@testing-library/dom/-/dom-10.0.0.tgz", - "integrity": "sha512-PmJPnogldqoVFf+EwbHvbBJ98MmqASV8kLrBYgsDNxQcFMeIS7JFL48sfyXvuMtgmWO/wMhh25odr+8VhDmn4g==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.10.4", - "@babel/runtime": "^7.12.5", - "@types/aria-query": "^5.0.1", - "aria-query": "5.3.0", - "chalk": "^4.1.0", - "dom-accessibility-api": "^0.5.9", - "lz-string": "^1.5.0", - "pretty-format": "^27.0.2" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/@testing-library/react": { - "version": "15.0.4", - "resolved": "https://registry.npmjs.org/@testing-library/react/-/react-15.0.4.tgz", - "integrity": "sha512-Fw/LM1emOHKfCxv5R0tz+25TOtiMt0o5Np1zJmb4LbSacOagXQX4ooAaHiJfGUMe+OjUk504BX11W+9Z8CvyZA==", - "dev": true, - "dependencies": { - "@babel/runtime": "^7.12.5", - "@testing-library/dom": "^10.0.0", - "@types/react-dom": "^18.0.0" - }, - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "react": "^18.0.0", - "react-dom": "^18.0.0" - } - }, - "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/estree": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz", - "integrity": "sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==", - "dev": true - }, - "node_modules/@types/json5": { - "version": "0.0.29", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/node": { - "version": "20.12.7", - "dev": true, - "license": "MIT", - "dependencies": { - "undici-types": "~5.26.4" - } - }, - "node_modules/@types/prop-types": { - "version": "15.7.12", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/react": { - "version": "18.3.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/prop-types": "*", - "csstype": "^3.0.2" - } - }, - "node_modules/@types/react-dom": { - "version": "18.3.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/react": "*" - } - }, - "node_modules/@typescript-eslint/parser": { - "version": "7.2.0", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "@typescript-eslint/scope-manager": "7.2.0", - "@typescript-eslint/types": "7.2.0", - "@typescript-eslint/typescript-estree": "7.2.0", - "@typescript-eslint/visitor-keys": "7.2.0", - "debug": "^4.3.4" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^8.56.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/@typescript-eslint/scope-manager": { - "version": "7.2.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@typescript-eslint/types": "7.2.0", - "@typescript-eslint/visitor-keys": "7.2.0" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/types": { - "version": "7.2.0", - "dev": true, - "license": "MIT", - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/typescript-estree": { - "version": "7.2.0", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "@typescript-eslint/types": "7.2.0", - "@typescript-eslint/visitor-keys": "7.2.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/minimatch": { - "version": "9.0.3", - "dev": true, - "license": "ISC", - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/@typescript-eslint/typescript-estree/node_modules/minimatch/node_modules/brace-expansion": { - "version": "2.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/@typescript-eslint/typescript-estree/node_modules/semver": { - "version": "7.6.0", - "dev": true, - "license": "ISC", - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@typescript-eslint/typescript-estree/node_modules/semver/node_modules/lru-cache": { - "version": "6.0.0", - "dev": true, - "license": "ISC", - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@typescript-eslint/visitor-keys": { - "version": "7.2.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@typescript-eslint/types": "7.2.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", - "dev": true, - "license": "ISC" - }, - "node_modules/@vitejs/plugin-react": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/@vitejs/plugin-react/-/plugin-react-4.2.1.tgz", - "integrity": "sha512-oojO9IDc4nCUUi8qIR11KoQm0XFFLIwsRBwHRR4d/88IWghn1y6ckz/bJ8GHDCsYEJee8mDzqtJxh15/cisJNQ==", - "dev": true, - "dependencies": { - "@babel/core": "^7.23.5", - "@babel/plugin-transform-react-jsx-self": "^7.23.3", - "@babel/plugin-transform-react-jsx-source": "^7.23.3", - "@types/babel__core": "^7.20.5", - "react-refresh": "^0.14.0" - }, - "engines": { - "node": "^14.18.0 || >=16.0.0" - }, - "peerDependencies": { - "vite": "^4.2.0 || ^5.0.0" - } - }, - "node_modules/@vitest/expect": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/@vitest/expect/-/expect-1.5.2.tgz", - "integrity": "sha512-rf7MTD1WCoDlN3FfYJ9Llfp0PbdtOMZ3FIF0AVkDnKbp3oiMW1c8AmvRZBcqbAhDUAvF52e9zx4WQM1r3oraVA==", - "dev": true, - "dependencies": { - "@vitest/spy": "1.5.2", - "@vitest/utils": "1.5.2", - "chai": "^4.3.10" - }, - "funding": { - "url": "https://opencollective.com/vitest" - } - }, - "node_modules/@vitest/runner": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/@vitest/runner/-/runner-1.5.2.tgz", - "integrity": "sha512-7IJ7sJhMZrqx7HIEpv3WrMYcq8ZNz9L6alo81Y6f8hV5mIE6yVZsFoivLZmr0D777klm1ReqonE9LyChdcmw6g==", - "dev": true, - "dependencies": { - "@vitest/utils": "1.5.2", - "p-limit": "^5.0.0", - "pathe": "^1.1.1" - }, - "funding": { - "url": "https://opencollective.com/vitest" - } - }, - "node_modules/@vitest/runner/node_modules/p-limit": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-5.0.0.tgz", - "integrity": "sha512-/Eaoq+QyLSiXQ4lyYV23f14mZRQcXnxfHrN0vCai+ak9G0pp9iEQukIIZq5NccEvwRB8PUnZT0KsOoDCINS1qQ==", - "dev": true, - "dependencies": { - "yocto-queue": "^1.0.0" - }, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@vitest/runner/node_modules/yocto-queue": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.0.0.tgz", - "integrity": "sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==", - "dev": true, - "engines": { - "node": ">=12.20" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@vitest/snapshot": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/@vitest/snapshot/-/snapshot-1.5.2.tgz", - "integrity": "sha512-CTEp/lTYos8fuCc9+Z55Ga5NVPKUgExritjF5VY7heRFUfheoAqBneUlvXSUJHUZPjnPmyZA96yLRJDP1QATFQ==", - "dev": true, - "dependencies": { - "magic-string": "^0.30.5", - "pathe": "^1.1.1", - "pretty-format": "^29.7.0" - }, - "funding": { - "url": "https://opencollective.com/vitest" - } - }, - "node_modules/@vitest/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/@vitest/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/@vitest/snapshot/node_modules/react-is": { - "version": "18.3.0", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.3.0.tgz", - "integrity": "sha512-wRiUsea88TjKDc4FBEn+sLvIDesp6brMbGWnJGjew2waAc9evdhja/2LvePc898HJbHw0L+MTWy7NhpnELAvLQ==", - "dev": true - }, - "node_modules/@vitest/spy": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-1.5.2.tgz", - "integrity": "sha512-xCcPvI8JpCtgikT9nLpHPL1/81AYqZy1GCy4+MCHBE7xi8jgsYkULpW5hrx5PGLgOQjUpb6fd15lqcriJ40tfQ==", - "dev": true, - "dependencies": { - "tinyspy": "^2.2.0" - }, - "funding": { - "url": "https://opencollective.com/vitest" - } - }, - "node_modules/@vitest/utils": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-1.5.2.tgz", - "integrity": "sha512-sWOmyofuXLJ85VvXNsroZur7mOJGiQeM0JN3/0D1uU8U9bGFM69X1iqHaRXl6R8BwaLY6yPCogP257zxTzkUdA==", - "dev": true, - "dependencies": { - "diff-sequences": "^29.6.3", - "estree-walker": "^3.0.3", - "loupe": "^2.3.7", - "pretty-format": "^29.7.0" - }, - "funding": { - "url": "https://opencollective.com/vitest" - } - }, - "node_modules/@vitest/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/@vitest/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/@vitest/utils/node_modules/react-is": { - "version": "18.3.0", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.3.0.tgz", - "integrity": "sha512-wRiUsea88TjKDc4FBEn+sLvIDesp6brMbGWnJGjew2waAc9evdhja/2LvePc898HJbHw0L+MTWy7NhpnELAvLQ==", - "dev": true - }, - "node_modules/acorn": { - "version": "8.11.3", - "dev": true, - "license": "MIT", - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/acorn-jsx": { - "version": "5.3.2", - "dev": true, - "license": "MIT", - "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": "7.1.1", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.1.tgz", - "integrity": "sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==", - "dev": true, - "dependencies": { - "debug": "^4.3.4" - }, - "engines": { - "node": ">= 14" - } - }, - "node_modules/ajv": { - "version": "6.12.6", - "dev": true, - "license": "MIT", - "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-regex": { - "version": "5.0.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/ansi-styles": { - "version": "4.3.0", - "dev": true, - "license": "MIT", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/argparse": { - "version": "2.0.1", - "dev": true, - "license": "Python-2.0" - }, - "node_modules/aria-query": { - "version": "5.3.0", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "dequal": "^2.0.3" - } - }, - "node_modules/array-buffer-byte-length": { - "version": "1.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.5", - "is-array-buffer": "^3.0.4" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/array-includes": { - "version": "3.1.8", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.2", - "es-object-atoms": "^1.0.0", - "get-intrinsic": "^1.2.4", - "is-string": "^1.0.7" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/array-union": { - "version": "2.1.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/array.prototype.findlast": { - "version": "1.2.5", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.2", - "es-errors": "^1.3.0", - "es-object-atoms": "^1.0.0", - "es-shim-unscopables": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/array.prototype.findlastindex": { - "version": "1.2.5", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.2", - "es-errors": "^1.3.0", - "es-object-atoms": "^1.0.0", - "es-shim-unscopables": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/array.prototype.flat": { - "version": "1.3.2", - "dev": true, - "license": "MIT", - "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", - "dev": true, - "license": "MIT", - "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.toreversed": { - "version": "1.1.2", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "es-shim-unscopables": "^1.0.0" - } - }, - "node_modules/array.prototype.tosorted": { - "version": "1.1.3", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.5", - "define-properties": "^1.2.1", - "es-abstract": "^1.22.3", - "es-errors": "^1.1.0", - "es-shim-unscopables": "^1.0.2" - } - }, - "node_modules/arraybuffer.prototype.slice": { - "version": "1.0.3", - "dev": true, - "license": "MIT", - "dependencies": { - "array-buffer-byte-length": "^1.0.1", - "call-bind": "^1.0.5", - "define-properties": "^1.2.1", - "es-abstract": "^1.22.3", - "es-errors": "^1.2.1", - "get-intrinsic": "^1.2.3", - "is-array-buffer": "^3.0.4", - "is-shared-array-buffer": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/assertion-error": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz", - "integrity": "sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==", - "dev": true, - "engines": { - "node": "*" - } - }, - "node_modules/ast-types-flow": { - "version": "0.0.8", - "dev": true, - "license": "MIT" - }, - "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.7", - "dev": true, - "license": "MIT", - "dependencies": { - "possible-typed-array-names": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/axe-core": { - "version": "4.7.0", - "dev": true, - "license": "MPL-2.0", - "engines": { - "node": ">=4" - } - }, - "node_modules/axobject-query": { - "version": "3.2.1", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "dequal": "^2.0.3" - } - }, - "node_modules/balanced-match": { - "version": "1.0.2", - "dev": true, - "license": "MIT" - }, - "node_modules/brace-expansion": { - "version": "1.1.11", - "dev": true, - "license": "MIT", - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/braces": { - "version": "3.0.2", - "dev": true, - "license": "MIT", - "dependencies": { - "fill-range": "^7.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/browserslist": { - "version": "4.23.0", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz", - "integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==", - "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.30001587", - "electron-to-chromium": "^1.4.668", - "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/busboy": { - "version": "1.6.0", - "dependencies": { - "streamsearch": "^1.1.0" - }, - "engines": { - "node": ">=10.16.0" - } - }, - "node_modules/cac": { - "version": "6.7.14", - "resolved": "https://registry.npmjs.org/cac/-/cac-6.7.14.tgz", - "integrity": "sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/call-bind": { - "version": "1.0.7", - "dev": true, - "license": "MIT", - "dependencies": { - "es-define-property": "^1.0.0", - "es-errors": "^1.3.0", - "function-bind": "^1.1.2", - "get-intrinsic": "^1.2.4", - "set-function-length": "^1.2.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/callsites": { - "version": "3.1.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/caniuse-lite": { - "version": "1.0.30001612", - "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" - } - ], - "license": "CC-BY-4.0" - }, - "node_modules/chai": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/chai/-/chai-4.4.1.tgz", - "integrity": "sha512-13sOfMv2+DWduEU+/xbun3LScLoqN17nBeTLUsmDfKdoiC1fr0n9PU4guu4AhRcOVFk/sW8LyZWHuhWtQZiF+g==", - "dev": true, - "dependencies": { - "assertion-error": "^1.1.0", - "check-error": "^1.0.3", - "deep-eql": "^4.1.3", - "get-func-name": "^2.0.2", - "loupe": "^2.3.6", - "pathval": "^1.1.1", - "type-detect": "^4.0.8" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/chalk": { - "version": "4.1.2", - "dev": true, - "license": "MIT", - "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/check-error": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.3.tgz", - "integrity": "sha512-iKEoDYaRmd1mxM90a2OEfWhjsjPpYPuQ+lMYsoxB126+t8fw7ySEO48nmDg5COTjxDI65/Y2OWpeEHk3ZOe8zg==", - "dev": true, - "dependencies": { - "get-func-name": "^2.0.2" - }, - "engines": { - "node": "*" - } - }, - "node_modules/client-only": { - "version": "0.0.1", - "license": "MIT" - }, - "node_modules/color-convert": { - "version": "2.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/color-name": { - "version": "1.1.4", - "dev": true, - "license": "MIT" - }, - "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", - "dev": true, - "license": "MIT" - }, - "node_modules/confbox": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/confbox/-/confbox-0.1.7.tgz", - "integrity": "sha512-uJcB/FKZtBMCJpK8MQji6bJHgu1tixKPxRLeGkNzBoOZzpnZUJm0jm2/sBDWcuBx1dYgxV4JU+g5hmNxCyAmdA==", - "dev": true - }, - "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/cross-spawn": { - "version": "7.0.3", - "dev": true, - "license": "MIT", - "dependencies": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/cssstyle": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-4.0.1.tgz", - "integrity": "sha512-8ZYiJ3A/3OkDd093CBT/0UKDWry7ak4BdPTFP2+QEP7cmhouyq/Up709ASSj2cK02BbZiMgk7kYjZNS4QP5qrQ==", - "dev": true, - "dependencies": { - "rrweb-cssom": "^0.6.0" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/csstype": { - "version": "3.1.3", - "dev": true, - "license": "MIT" - }, - "node_modules/damerau-levenshtein": { - "version": "1.0.8", - "dev": true, - "license": "BSD-2-Clause" - }, - "node_modules/data-urls": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-5.0.0.tgz", - "integrity": "sha512-ZYP5VBHshaDAiVZxjbRVcFJpc+4xGgT0bK3vzy1HLN8jTO975HEbuYzZJcHoQEY5K1a0z8YayJkyVETa08eNTg==", - "dev": true, - "dependencies": { - "whatwg-mimetype": "^4.0.0", - "whatwg-url": "^14.0.0" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/data-view-buffer": { - "version": "1.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.6", - "es-errors": "^1.3.0", - "is-data-view": "^1.0.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/data-view-byte-length": { - "version": "1.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.7", - "es-errors": "^1.3.0", - "is-data-view": "^1.0.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/data-view-byte-offset": { - "version": "1.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.6", - "es-errors": "^1.3.0", - "is-data-view": "^1.0.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/debug": { - "version": "4.3.4", - "dev": true, - "license": "MIT", - "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/deep-eql": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-4.1.3.tgz", - "integrity": "sha512-WaEtAOpRA1MQ0eohqZjpGD8zdI0Ovsm8mmFhaDN8dvDZzyoUMcYDnf5Y6iu7HTXxf8JDS23qWa4a+hKCDyOPzw==", - "dev": true, - "dependencies": { - "type-detect": "^4.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/deep-is": { - "version": "0.1.4", - "dev": true, - "license": "MIT" - }, - "node_modules/define-data-property": { - "version": "1.1.4", - "dev": true, - "license": "MIT", - "dependencies": { - "es-define-property": "^1.0.0", - "es-errors": "^1.3.0", - "gopd": "^1.0.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/define-properties": { - "version": "1.2.1", - "dev": true, - "license": "MIT", - "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", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "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", - "dev": true, - "license": "MIT", - "dependencies": { - "path-type": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/doctrine": { - "version": "3.0.0", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "esutils": "^2.0.2" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "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/eastasianwidth": { - "version": "0.2.0", - "dev": true, - "license": "MIT" - }, - "node_modules/electron-to-chromium": { - "version": "1.4.749", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.749.tgz", - "integrity": "sha512-LRMMrM9ITOvue0PoBrvNIraVmuDbJV5QC9ierz/z5VilMdPOVMjOtpICNld3PuXuTZ3CHH/UPxX9gHhAPwi+0Q==", - "dev": true - }, - "node_modules/emoji-regex": { - "version": "9.2.2", - "dev": true, - "license": "MIT" - }, - "node_modules/enhanced-resolve": { - "version": "5.16.0", - "dev": true, - "license": "MIT", - "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/es-abstract": { - "version": "1.23.3", - "dev": true, - "license": "MIT", - "dependencies": { - "array-buffer-byte-length": "^1.0.1", - "arraybuffer.prototype.slice": "^1.0.3", - "available-typed-arrays": "^1.0.7", - "call-bind": "^1.0.7", - "data-view-buffer": "^1.0.1", - "data-view-byte-length": "^1.0.1", - "data-view-byte-offset": "^1.0.0", - "es-define-property": "^1.0.0", - "es-errors": "^1.3.0", - "es-object-atoms": "^1.0.0", - "es-set-tostringtag": "^2.0.3", - "es-to-primitive": "^1.2.1", - "function.prototype.name": "^1.1.6", - "get-intrinsic": "^1.2.4", - "get-symbol-description": "^1.0.2", - "globalthis": "^1.0.3", - "gopd": "^1.0.1", - "has-property-descriptors": "^1.0.2", - "has-proto": "^1.0.3", - "has-symbols": "^1.0.3", - "hasown": "^2.0.2", - "internal-slot": "^1.0.7", - "is-array-buffer": "^3.0.4", - "is-callable": "^1.2.7", - "is-data-view": "^1.0.1", - "is-negative-zero": "^2.0.3", - "is-regex": "^1.1.4", - "is-shared-array-buffer": "^1.0.3", - "is-string": "^1.0.7", - "is-typed-array": "^1.1.13", - "is-weakref": "^1.0.2", - "object-inspect": "^1.13.1", - "object-keys": "^1.1.1", - "object.assign": "^4.1.5", - "regexp.prototype.flags": "^1.5.2", - "safe-array-concat": "^1.1.2", - "safe-regex-test": "^1.0.3", - "string.prototype.trim": "^1.2.9", - "string.prototype.trimend": "^1.0.8", - "string.prototype.trimstart": "^1.0.8", - "typed-array-buffer": "^1.0.2", - "typed-array-byte-length": "^1.0.1", - "typed-array-byte-offset": "^1.0.2", - "typed-array-length": "^1.0.6", - "unbox-primitive": "^1.0.2", - "which-typed-array": "^1.1.15" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/es-define-property": { - "version": "1.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "get-intrinsic": "^1.2.4" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/es-errors": { - "version": "1.3.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/es-iterator-helpers": { - "version": "1.0.19", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.3", - "es-errors": "^1.3.0", - "es-set-tostringtag": "^2.0.3", - "function-bind": "^1.1.2", - "get-intrinsic": "^1.2.4", - "globalthis": "^1.0.3", - "has-property-descriptors": "^1.0.2", - "has-proto": "^1.0.3", - "has-symbols": "^1.0.3", - "internal-slot": "^1.0.7", - "iterator.prototype": "^1.1.2", - "safe-array-concat": "^1.1.2" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/es-object-atoms": { - "version": "1.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "es-errors": "^1.3.0" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/es-set-tostringtag": { - "version": "2.0.3", - "dev": true, - "license": "MIT", - "dependencies": { - "get-intrinsic": "^1.2.4", - "has-tostringtag": "^1.0.2", - "hasown": "^2.0.1" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/es-shim-unscopables": { - "version": "1.0.2", - "dev": true, - "license": "MIT", - "dependencies": { - "hasown": "^2.0.0" - } - }, - "node_modules/es-to-primitive": { - "version": "1.2.1", - "dev": true, - "license": "MIT", - "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/esbuild": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.20.2.tgz", - "integrity": "sha512-WdOOppmUNU+IbZ0PaDiTst80zjnrOkyJNHoKupIcVyU8Lvla3Ugx94VzkQ32Ijqd7UhHJy75gNWDMUekcrSJ6g==", - "dev": true, - "hasInstallScript": true, - "bin": { - "esbuild": "bin/esbuild" - }, - "engines": { - "node": ">=12" - }, - "optionalDependencies": { - "@esbuild/aix-ppc64": "0.20.2", - "@esbuild/android-arm": "0.20.2", - "@esbuild/android-arm64": "0.20.2", - "@esbuild/android-x64": "0.20.2", - "@esbuild/darwin-arm64": "0.20.2", - "@esbuild/darwin-x64": "0.20.2", - "@esbuild/freebsd-arm64": "0.20.2", - "@esbuild/freebsd-x64": "0.20.2", - "@esbuild/linux-arm": "0.20.2", - "@esbuild/linux-arm64": "0.20.2", - "@esbuild/linux-ia32": "0.20.2", - "@esbuild/linux-loong64": "0.20.2", - "@esbuild/linux-mips64el": "0.20.2", - "@esbuild/linux-ppc64": "0.20.2", - "@esbuild/linux-riscv64": "0.20.2", - "@esbuild/linux-s390x": "0.20.2", - "@esbuild/linux-x64": "0.20.2", - "@esbuild/netbsd-x64": "0.20.2", - "@esbuild/openbsd-x64": "0.20.2", - "@esbuild/sunos-x64": "0.20.2", - "@esbuild/win32-arm64": "0.20.2", - "@esbuild/win32-ia32": "0.20.2", - "@esbuild/win32-x64": "0.20.2" - } - }, - "node_modules/escalade": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.2.tgz", - "integrity": "sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/escape-string-regexp": { - "version": "4.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/eslint": { - "version": "8.57.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@eslint-community/eslint-utils": "^4.2.0", - "@eslint-community/regexpp": "^4.6.1", - "@eslint/eslintrc": "^2.1.4", - "@eslint/js": "8.57.0", - "@humanwhocodes/config-array": "^0.11.14", - "@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-next": { - "version": "14.2.3", - "dev": true, - "license": "MIT", - "dependencies": { - "@next/eslint-plugin-next": "14.2.3", - "@rushstack/eslint-patch": "^1.3.3", - "@typescript-eslint/parser": "^5.4.2 || ^6.0.0 || 7.0.0 - 7.2.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", - "dev": true, - "license": "MIT", - "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", - "dev": true, - "license": "MIT", - "dependencies": { - "ms": "^2.1.1" - } - }, - "node_modules/eslint-import-resolver-typescript": { - "version": "3.6.1", - "dev": true, - "license": "ISC", - "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.1", - "dev": true, - "license": "MIT", - "dependencies": { - "debug": "^3.2.7" - }, - "engines": { - "node": ">=4" - }, - "peerDependenciesMeta": { - "eslint": { - "optional": true - } - } - }, - "node_modules/eslint-module-utils/node_modules/debug": { - "version": "3.2.7", - "dev": true, - "license": "MIT", - "dependencies": { - "ms": "^2.1.1" - } - }, - "node_modules/eslint-plugin-import": { - "version": "2.29.1", - "dev": true, - "license": "MIT", - "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", - "dev": true, - "license": "MIT", - "dependencies": { - "ms": "^2.1.1" - } - }, - "node_modules/eslint-plugin-import/node_modules/doctrine": { - "version": "2.1.0", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "esutils": "^2.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/eslint-plugin-jsx-a11y": { - "version": "6.8.0", - "dev": true, - "license": "MIT", - "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.34.1", - "dev": true, - "license": "MIT", - "dependencies": { - "array-includes": "^3.1.7", - "array.prototype.findlast": "^1.2.4", - "array.prototype.flatmap": "^1.3.2", - "array.prototype.toreversed": "^1.1.2", - "array.prototype.tosorted": "^1.1.3", - "doctrine": "^2.1.0", - "es-iterator-helpers": "^1.0.17", - "estraverse": "^5.3.0", - "jsx-ast-utils": "^2.4.1 || ^3.0.0", - "minimatch": "^3.1.2", - "object.entries": "^1.1.7", - "object.fromentries": "^2.0.7", - "object.hasown": "^1.1.3", - "object.values": "^1.1.7", - "prop-types": "^15.8.1", - "resolve": "^2.0.0-next.5", - "semver": "^6.3.1", - "string.prototype.matchall": "^4.0.10" - }, - "engines": { - "node": ">=4" - }, - "peerDependencies": { - "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8" - } - }, - "node_modules/eslint-plugin-react-hooks": { - "version": "4.6.1", - "dev": true, - "license": "MIT", - "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", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "esutils": "^2.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/eslint-plugin-react/node_modules/resolve": { - "version": "2.0.0-next.5", - "dev": true, - "license": "MIT", - "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-scope": { - "version": "7.2.2", - "dev": true, - "license": "BSD-2-Clause", - "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", - "dev": true, - "license": "Apache-2.0", - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/espree": { - "version": "9.6.1", - "dev": true, - "license": "BSD-2-Clause", - "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/esquery": { - "version": "1.5.0", - "dev": true, - "license": "BSD-3-Clause", - "dependencies": { - "estraverse": "^5.1.0" - }, - "engines": { - "node": ">=0.10" - } - }, - "node_modules/esrecurse": { - "version": "4.3.0", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "estraverse": "^5.2.0" - }, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/estraverse": { - "version": "5.3.0", - "dev": true, - "license": "BSD-2-Clause", - "engines": { - "node": ">=4.0" - } - }, - "node_modules/estree-walker": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-3.0.3.tgz", - "integrity": "sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==", - "dev": true, - "dependencies": { - "@types/estree": "^1.0.0" - } - }, - "node_modules/esutils": { - "version": "2.0.3", - "dev": true, - "license": "BSD-2-Clause", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/execa": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/execa/-/execa-8.0.1.tgz", - "integrity": "sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==", - "dev": true, - "dependencies": { - "cross-spawn": "^7.0.3", - "get-stream": "^8.0.1", - "human-signals": "^5.0.0", - "is-stream": "^3.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^5.1.0", - "onetime": "^6.0.0", - "signal-exit": "^4.1.0", - "strip-final-newline": "^3.0.0" - }, - "engines": { - "node": ">=16.17" - }, - "funding": { - "url": "https://github.com/sindresorhus/execa?sponsor=1" - } - }, - "node_modules/fast-deep-equal": { - "version": "3.1.3", - "dev": true, - "license": "MIT" - }, - "node_modules/fast-glob": { - "version": "3.3.2", - "dev": true, - "license": "MIT", - "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", - "dev": true, - "license": "ISC", - "dependencies": { - "is-glob": "^4.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/fast-json-stable-stringify": { - "version": "2.1.0", - "dev": true, - "license": "MIT" - }, - "node_modules/fast-levenshtein": { - "version": "2.0.6", - "dev": true, - "license": "MIT" - }, - "node_modules/fastq": { - "version": "1.17.1", - "dev": true, - "license": "ISC", - "dependencies": { - "reusify": "^1.0.4" - } - }, - "node_modules/file-entry-cache": { - "version": "6.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "flat-cache": "^3.0.4" - }, - "engines": { - "node": "^10.12.0 || >=12.0.0" - } - }, - "node_modules/fill-range": { - "version": "7.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "to-regex-range": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/find-up": { - "version": "5.0.0", - "dev": true, - "license": "MIT", - "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", - "dev": true, - "license": "MIT", - "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.3.1", - "dev": true, - "license": "ISC" - }, - "node_modules/for-each": { - "version": "0.3.3", - "dev": true, - "license": "MIT", - "dependencies": { - "is-callable": "^1.1.3" - } - }, - "node_modules/foreground-child": { - "version": "3.1.1", - "dev": true, - "license": "ISC", - "dependencies": { - "cross-spawn": "^7.0.0", - "signal-exit": "^4.0.1" - }, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "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", - "dev": true, - "license": "ISC" - }, - "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", - "dev": true, - "license": "MIT", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/function.prototype.name": { - "version": "1.1.6", - "dev": true, - "license": "MIT", - "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", - "dev": true, - "license": "MIT", - "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-func-name": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.2.tgz", - "integrity": "sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ==", - "dev": true, - "engines": { - "node": "*" - } - }, - "node_modules/get-intrinsic": { - "version": "1.2.4", - "dev": true, - "license": "MIT", - "dependencies": { - "es-errors": "^1.3.0", - "function-bind": "^1.1.2", - "has-proto": "^1.0.1", - "has-symbols": "^1.0.3", - "hasown": "^2.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/get-stream": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-8.0.1.tgz", - "integrity": "sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==", - "dev": true, - "engines": { - "node": ">=16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/get-symbol-description": { - "version": "1.0.2", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.5", - "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.4" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/get-tsconfig": { - "version": "4.7.3", - "dev": true, - "license": "MIT", - "dependencies": { - "resolve-pkg-maps": "^1.0.0" - }, - "funding": { - "url": "https://github.com/privatenumber/get-tsconfig?sponsor=1" - } - }, - "node_modules/glob": { - "version": "10.3.10", - "dev": true, - "license": "ISC", - "dependencies": { - "foreground-child": "^3.1.0", - "jackspeak": "^2.3.5", - "minimatch": "^9.0.1", - "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0", - "path-scurry": "^1.10.1" - }, - "bin": { - "glob": "dist/esm/bin.mjs" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/glob-parent": { - "version": "6.0.2", - "dev": true, - "license": "ISC", - "dependencies": { - "is-glob": "^4.0.3" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/glob/node_modules/minimatch": { - "version": "9.0.4", - "dev": true, - "license": "ISC", - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/glob/node_modules/minimatch/node_modules/brace-expansion": { - "version": "2.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/globals": { - "version": "13.24.0", - "dev": true, - "license": "MIT", - "dependencies": { - "type-fest": "^0.20.2" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/globalthis": { - "version": "1.0.3", - "dev": true, - "license": "MIT", - "dependencies": { - "define-properties": "^1.1.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/globby": { - "version": "11.1.0", - "dev": true, - "license": "MIT", - "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", - "dev": true, - "license": "MIT", - "dependencies": { - "get-intrinsic": "^1.1.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/graceful-fs": { - "version": "4.2.11", - "license": "ISC" - }, - "node_modules/graphemer": { - "version": "1.4.0", - "dev": true, - "license": "MIT" - }, - "node_modules/has-bigints": { - "version": "1.0.2", - "dev": true, - "license": "MIT", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-flag": { - "version": "4.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/has-property-descriptors": { - "version": "1.0.2", - "dev": true, - "license": "MIT", - "dependencies": { - "es-define-property": "^1.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-proto": { - "version": "1.0.3", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-symbols": { - "version": "1.0.3", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-tostringtag": { - "version": "1.0.2", - "dev": true, - "license": "MIT", - "dependencies": { - "has-symbols": "^1.0.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/hasown": { - "version": "2.0.2", - "dev": true, - "license": "MIT", - "dependencies": { - "function-bind": "^1.1.2" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/html-encoding-sniffer": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-4.0.0.tgz", - "integrity": "sha512-Y22oTqIU4uuPgEemfz7NDJz6OeKf12Lsu+QC+s3BVpda64lTiMYCyGwg5ki4vFxkMwQdeZDl2adZoqUgdFuTgQ==", - "dev": true, - "dependencies": { - "whatwg-encoding": "^3.1.1" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/http-proxy-agent": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.2.tgz", - "integrity": "sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig==", - "dev": true, - "dependencies": { - "agent-base": "^7.1.0", - "debug": "^4.3.4" - }, - "engines": { - "node": ">= 14" - } - }, - "node_modules/https-proxy-agent": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.4.tgz", - "integrity": "sha512-wlwpilI7YdjSkWaQ/7omYBMTliDcmCN8OLihO6I9B86g06lMyAoqgoDpV0XqoaPOKj+0DIdAvnsWfyAAhmimcg==", - "dev": true, - "dependencies": { - "agent-base": "^7.0.2", - "debug": "4" - }, - "engines": { - "node": ">= 14" - } - }, - "node_modules/human-signals": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-5.0.0.tgz", - "integrity": "sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==", - "dev": true, - "engines": { - "node": ">=16.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.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 4" - } - }, - "node_modules/import-fresh": { - "version": "3.3.0", - "dev": true, - "license": "MIT", - "dependencies": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/imurmurhash": { - "version": "0.1.4", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.8.19" - } - }, - "node_modules/inflight": { - "version": "1.0.6", - "dev": true, - "license": "ISC", - "dependencies": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "node_modules/inherits": { - "version": "2.0.4", - "dev": true, - "license": "ISC" - }, - "node_modules/internal-slot": { - "version": "1.0.7", - "dev": true, - "license": "MIT", - "dependencies": { - "es-errors": "^1.3.0", - "hasown": "^2.0.0", - "side-channel": "^1.0.4" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/is-array-buffer": { - "version": "3.0.4", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.2.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-async-function": { - "version": "2.0.0", - "dev": true, - "license": "MIT", - "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", - "dev": true, - "license": "MIT", - "dependencies": { - "has-bigints": "^1.0.1" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-boolean-object": { - "version": "1.1.2", - "dev": true, - "license": "MIT", - "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", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-core-module": { - "version": "2.13.1", - "dev": true, - "license": "MIT", - "dependencies": { - "hasown": "^2.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-data-view": { - "version": "1.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "is-typed-array": "^1.1.13" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-date-object": { - "version": "1.0.5", - "dev": true, - "license": "MIT", - "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", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-finalizationregistry": { - "version": "1.0.2", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/is-generator-function": { - "version": "1.0.10", - "dev": true, - "license": "MIT", - "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", - "dev": true, - "license": "MIT", - "dependencies": { - "is-extglob": "^2.1.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-map": { - "version": "2.0.3", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-negative-zero": { - "version": "2.0.3", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-number": { - "version": "7.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.12.0" - } - }, - "node_modules/is-number-object": { - "version": "1.0.7", - "dev": true, - "license": "MIT", - "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", - "dev": true, - "license": "MIT", - "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", - "dev": true, - "license": "MIT", - "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.3", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-shared-array-buffer": { - "version": "1.0.3", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.7" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-stream": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz", - "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==", - "dev": true, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-string": { - "version": "1.0.7", - "dev": true, - "license": "MIT", - "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", - "dev": true, - "license": "MIT", - "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.13", - "dev": true, - "license": "MIT", - "dependencies": { - "which-typed-array": "^1.1.14" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-weakmap": { - "version": "2.0.2", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-weakref": { - "version": "1.0.2", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-weakset": { - "version": "2.0.3", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.7", - "get-intrinsic": "^1.2.4" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/isarray": { - "version": "2.0.5", - "dev": true, - "license": "MIT" - }, - "node_modules/isexe": { - "version": "2.0.0", - "dev": true, - "license": "ISC" - }, - "node_modules/iterator.prototype": { - "version": "1.1.2", - "dev": true, - "license": "MIT", - "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/jackspeak": { - "version": "2.3.6", - "dev": true, - "license": "BlueOak-1.0.0", - "dependencies": { - "@isaacs/cliui": "^8.0.2" - }, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - }, - "optionalDependencies": { - "@pkgjs/parseargs": "^0.11.0" - } - }, - "node_modules/js-tokens": { - "version": "4.0.0", - "license": "MIT" - }, - "node_modules/js-yaml": { - "version": "4.1.0", - "dev": true, - "license": "MIT", - "dependencies": { - "argparse": "^2.0.1" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/jsdom": { - "version": "24.0.0", - "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-24.0.0.tgz", - "integrity": "sha512-UDS2NayCvmXSXVP6mpTj+73JnNQadZlr9N68189xib2tx5Mls7swlTNao26IoHv46BZJFvXygyRtyXd1feAk1A==", - "dev": true, - "dependencies": { - "cssstyle": "^4.0.1", - "data-urls": "^5.0.0", - "decimal.js": "^10.4.3", - "form-data": "^4.0.0", - "html-encoding-sniffer": "^4.0.0", - "http-proxy-agent": "^7.0.0", - "https-proxy-agent": "^7.0.2", - "is-potential-custom-element-name": "^1.0.1", - "nwsapi": "^2.2.7", - "parse5": "^7.1.2", - "rrweb-cssom": "^0.6.0", - "saxes": "^6.0.0", - "symbol-tree": "^3.2.4", - "tough-cookie": "^4.1.3", - "w3c-xmlserializer": "^5.0.0", - "webidl-conversions": "^7.0.0", - "whatwg-encoding": "^3.1.1", - "whatwg-mimetype": "^4.0.0", - "whatwg-url": "^14.0.0", - "ws": "^8.16.0", - "xml-name-validator": "^5.0.0" - }, - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "canvas": "^2.11.2" - }, - "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", - "dev": true, - "license": "MIT" - }, - "node_modules/json-schema-traverse": { - "version": "0.4.1", - "dev": true, - "license": "MIT" - }, - "node_modules/json-stable-stringify-without-jsonify": { - "version": "1.0.1", - "dev": true, - "license": "MIT" - }, - "node_modules/json5": { - "version": "1.0.2", - "dev": true, - "license": "MIT", - "dependencies": { - "minimist": "^1.2.0" - }, - "bin": { - "json5": "lib/cli.js" - } - }, - "node_modules/jsx-ast-utils": { - "version": "3.3.5", - "dev": true, - "license": "MIT", - "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/keyv": { - "version": "4.5.4", - "dev": true, - "license": "MIT", - "dependencies": { - "json-buffer": "3.0.1" - } - }, - "node_modules/language-subtag-registry": { - "version": "0.3.22", - "dev": true, - "license": "CC0-1.0" - }, - "node_modules/language-tags": { - "version": "1.0.9", - "dev": true, - "license": "MIT", - "dependencies": { - "language-subtag-registry": "^0.3.20" - }, - "engines": { - "node": ">=0.10" - } - }, - "node_modules/levn": { - "version": "0.4.1", - "dev": true, - "license": "MIT", - "dependencies": { - "prelude-ls": "^1.2.1", - "type-check": "~0.4.0" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/local-pkg": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/local-pkg/-/local-pkg-0.5.0.tgz", - "integrity": "sha512-ok6z3qlYyCDS4ZEU27HaU6x/xZa9Whf8jD4ptH5UZTQYZVYeb9bnZ3ojVhiJNLiXK1Hfc0GNbLXcmZ5plLDDBg==", - "dev": true, - "dependencies": { - "mlly": "^1.4.2", - "pkg-types": "^1.0.3" - }, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/antfu" - } - }, - "node_modules/locate-path": { - "version": "6.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "p-locate": "^5.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/lodash.merge": { - "version": "4.6.2", - "dev": true, - "license": "MIT" - }, - "node_modules/loose-envify": { - "version": "1.4.0", - "license": "MIT", - "dependencies": { - "js-tokens": "^3.0.0 || ^4.0.0" - }, - "bin": { - "loose-envify": "cli.js" - } - }, - "node_modules/loupe": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/loupe/-/loupe-2.3.7.tgz", - "integrity": "sha512-zSMINGVYkdpYSOBmLi0D1Uo7JU9nVdQKrHxC8eYlV+9YKK9WePqAlL7lSlorG/U2Fw1w0hTBmaa/jrQ3UbPHtA==", - "dev": true, - "dependencies": { - "get-func-name": "^2.0.1" - } - }, - "node_modules/lru-cache": { - "version": "10.2.1", - "dev": true, - "license": "ISC", - "engines": { - "node": "14 || >=16.14" - } - }, - "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/magic-string": { - "version": "0.30.10", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.10.tgz", - "integrity": "sha512-iIRwTIf0QKV3UAnYK4PU8uiEc4SRh5jX0mwpIwETPpHdhVM4f53RSwS/vXvN1JhGX+Cs7B8qIq3d6AH49O5fAQ==", - "dev": true, - "dependencies": { - "@jridgewell/sourcemap-codec": "^1.4.15" - } - }, - "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", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 8" - } - }, - "node_modules/micromatch": { - "version": "4.0.5", - "dev": true, - "license": "MIT", - "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": "4.0.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-4.0.0.tgz", - "integrity": "sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/minimatch": { - "version": "3.1.2", - "dev": true, - "license": "ISC", - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/minimist": { - "version": "1.2.8", - "dev": true, - "license": "MIT", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/minipass": { - "version": "7.0.4", - "dev": true, - "license": "ISC", - "engines": { - "node": ">=16 || 14 >=14.17" - } - }, - "node_modules/mlly": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/mlly/-/mlly-1.6.1.tgz", - "integrity": "sha512-vLgaHvaeunuOXHSmEbZ9izxPx3USsk8KCQ8iC+aTlp5sKRSoZvwhHh5L9VbKSaVC6sJDqbyohIS76E2VmHIPAA==", - "dev": true, - "dependencies": { - "acorn": "^8.11.3", - "pathe": "^1.1.2", - "pkg-types": "^1.0.3", - "ufo": "^1.3.2" - } - }, - "node_modules/ms": { - "version": "2.1.2", - "dev": true, - "license": "MIT" - }, - "node_modules/nanoid": { - "version": "3.3.7", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "license": "MIT", - "bin": { - "nanoid": "bin/nanoid.cjs" - }, - "engines": { - "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" - } - }, - "node_modules/natural-compare": { - "version": "1.4.0", - "dev": true, - "license": "MIT" - }, - "node_modules/next": { - "version": "14.2.3", - "license": "MIT", - "dependencies": { - "@next/env": "14.2.3", - "@swc/helpers": "0.5.5", - "busboy": "1.6.0", - "caniuse-lite": "^1.0.30001579", - "graceful-fs": "^4.2.11", - "postcss": "8.4.31", - "styled-jsx": "5.1.1" - }, - "bin": { - "next": "dist/bin/next" - }, - "engines": { - "node": ">=18.17.0" - }, - "optionalDependencies": { - "@next/swc-darwin-arm64": "14.2.3", - "@next/swc-darwin-x64": "14.2.3", - "@next/swc-linux-arm64-gnu": "14.2.3", - "@next/swc-linux-arm64-musl": "14.2.3", - "@next/swc-linux-x64-gnu": "14.2.3", - "@next/swc-linux-x64-musl": "14.2.3", - "@next/swc-win32-arm64-msvc": "14.2.3", - "@next/swc-win32-ia32-msvc": "14.2.3", - "@next/swc-win32-x64-msvc": "14.2.3" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.1.0", - "@playwright/test": "^1.41.2", - "react": "^18.2.0", - "react-dom": "^18.2.0", - "sass": "^1.3.0" - }, - "peerDependenciesMeta": { - "@opentelemetry/api": { - "optional": true - }, - "@playwright/test": { - "optional": true - }, - "sass": { - "optional": 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/npm-run-path": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.3.0.tgz", - "integrity": "sha512-ppwTtiJZq0O/ai0z7yfudtBpWIoxM8yE6nHi1X47eFR2EWORqfbu6CnPlNsjeN683eT0qG6H/Pyf9fCcvjnnnQ==", - "dev": true, - "dependencies": { - "path-key": "^4.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/npm-run-path/node_modules/path-key": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-4.0.0.tgz", - "integrity": "sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/nwsapi": { - "version": "2.2.9", - "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.9.tgz", - "integrity": "sha512-2f3F0SEEer8bBu0dsNCFF50N0cTThV1nWFYcEYFZttdW0lDAoybv9cQoK7X7/68Z89S7FoRrVjP1LPX4XRf9vg==", - "dev": true - }, - "node_modules/object-assign": { - "version": "4.1.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/object-inspect": { - "version": "1.13.1", - "dev": true, - "license": "MIT", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object-keys": { - "version": "1.1.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/object.assign": { - "version": "4.1.5", - "dev": true, - "license": "MIT", - "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.8", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-object-atoms": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/object.fromentries": { - "version": "2.0.8", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.2", - "es-object-atoms": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object.groupby": { - "version": "1.0.3", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.2" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/object.hasown": { - "version": "1.1.4", - "dev": true, - "license": "MIT", - "dependencies": { - "define-properties": "^1.2.1", - "es-abstract": "^1.23.2", - "es-object-atoms": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object.values": { - "version": "1.2.0", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-object-atoms": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/once": { - "version": "1.4.0", - "dev": true, - "license": "ISC", - "dependencies": { - "wrappy": "1" - } - }, - "node_modules/onetime": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-6.0.0.tgz", - "integrity": "sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==", - "dev": true, - "dependencies": { - "mimic-fn": "^4.0.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/optionator": { - "version": "0.9.3", - "dev": true, - "license": "MIT", - "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", - "dev": true, - "license": "MIT", - "dependencies": { - "yocto-queue": "^0.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/p-locate": { - "version": "5.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "p-limit": "^3.0.2" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/parent-module": { - "version": "1.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "callsites": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "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", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/path-is-absolute": { - "version": "1.0.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/path-key": { - "version": "3.1.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/path-parse": { - "version": "1.0.7", - "dev": true, - "license": "MIT" - }, - "node_modules/path-scurry": { - "version": "1.10.2", - "dev": true, - "license": "BlueOak-1.0.0", - "dependencies": { - "lru-cache": "^10.2.0", - "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/path-type": { - "version": "4.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/pathe": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/pathe/-/pathe-1.1.2.tgz", - "integrity": "sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==", - "dev": true - }, - "node_modules/pathval": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/pathval/-/pathval-1.1.1.tgz", - "integrity": "sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==", - "dev": true, - "engines": { - "node": "*" - } - }, - "node_modules/picocolors": { - "version": "1.0.0", - "license": "ISC" - }, - "node_modules/picomatch": { - "version": "2.3.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8.6" - }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" - } - }, - "node_modules/pkg-types": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/pkg-types/-/pkg-types-1.1.0.tgz", - "integrity": "sha512-/RpmvKdxKf8uILTtoOhAgf30wYbP2Qw+L9p3Rvshx1JZVX+XQNZQFjlbmGHEGIm4CkVPlSn+NXmIM8+9oWQaSA==", - "dev": true, - "dependencies": { - "confbox": "^0.1.7", - "mlly": "^1.6.1", - "pathe": "^1.1.2" - } - }, - "node_modules/possible-typed-array-names": { - "version": "1.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/postcss": { - "version": "8.4.31", - "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" - } - ], - "license": "MIT", - "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", - "dev": true, - "license": "MIT", - "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/prop-types": { - "version": "15.8.1", - "dev": true, - "license": "MIT", - "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", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "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", - "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" - } - ], - "license": "MIT" - }, - "node_modules/react": { - "version": "18.3.0", - "license": "MIT", - "dependencies": { - "loose-envify": "^1.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/react-dom": { - "version": "18.3.0", - "license": "MIT", - "dependencies": { - "loose-envify": "^1.1.0", - "scheduler": "^0.23.1" - }, - "peerDependencies": { - "react": "^18.3.0" - } - }, - "node_modules/react-is": { - "version": "16.13.1", - "dev": true, - "license": "MIT" - }, - "node_modules/react-refresh": { - "version": "0.14.1", - "resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.14.1.tgz", - "integrity": "sha512-iZiRCtNGY3QYP3pYOSSBOvQmBpQTcJccr/VcK2blpJrpPTUDjeN51mxm5nsrkCzBwsbGUj+TN9q2oPz5E13FLg==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/reflect.getprototypeof": { - "version": "1.0.6", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.1", - "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.4", - "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", - "dev": true, - "license": "MIT" - }, - "node_modules/regexp.prototype.flags": { - "version": "1.5.2", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.6", - "define-properties": "^1.2.1", - "es-errors": "^1.3.0", - "set-function-name": "^2.0.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "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", - "dev": true, - "license": "MIT", - "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-from": { - "version": "4.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/resolve-pkg-maps": { - "version": "1.0.0", - "dev": true, - "license": "MIT", - "funding": { - "url": "https://github.com/privatenumber/resolve-pkg-maps?sponsor=1" - } - }, - "node_modules/reusify": { - "version": "1.0.4", - "dev": true, - "license": "MIT", - "engines": { - "iojs": ">=1.0.0", - "node": ">=0.10.0" - } - }, - "node_modules/rimraf": { - "version": "3.0.2", - "dev": true, - "license": "ISC", - "dependencies": { - "glob": "^7.1.3" - }, - "bin": { - "rimraf": "bin.js" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/rimraf/node_modules/glob": { - "version": "7.2.3", - "dev": true, - "license": "ISC", - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/rollup": { - "version": "4.16.4", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.16.4.tgz", - "integrity": "sha512-kuaTJSUbz+Wsb2ATGvEknkI12XV40vIiHmLuFlejoo7HtDok/O5eDDD0UpCVY5bBX5U5RYo8wWP83H7ZsqVEnA==", - "dev": true, - "dependencies": { - "@types/estree": "1.0.5" - }, - "bin": { - "rollup": "dist/bin/rollup" - }, - "engines": { - "node": ">=18.0.0", - "npm": ">=8.0.0" - }, - "optionalDependencies": { - "@rollup/rollup-android-arm-eabi": "4.16.4", - "@rollup/rollup-android-arm64": "4.16.4", - "@rollup/rollup-darwin-arm64": "4.16.4", - "@rollup/rollup-darwin-x64": "4.16.4", - "@rollup/rollup-linux-arm-gnueabihf": "4.16.4", - "@rollup/rollup-linux-arm-musleabihf": "4.16.4", - "@rollup/rollup-linux-arm64-gnu": "4.16.4", - "@rollup/rollup-linux-arm64-musl": "4.16.4", - "@rollup/rollup-linux-powerpc64le-gnu": "4.16.4", - "@rollup/rollup-linux-riscv64-gnu": "4.16.4", - "@rollup/rollup-linux-s390x-gnu": "4.16.4", - "@rollup/rollup-linux-x64-gnu": "4.16.4", - "@rollup/rollup-linux-x64-musl": "4.16.4", - "@rollup/rollup-win32-arm64-msvc": "4.16.4", - "@rollup/rollup-win32-ia32-msvc": "4.16.4", - "@rollup/rollup-win32-x64-msvc": "4.16.4", - "fsevents": "~2.3.2" - } - }, - "node_modules/rrweb-cssom": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/rrweb-cssom/-/rrweb-cssom-0.6.0.tgz", - "integrity": "sha512-APM0Gt1KoXBz0iIkkdB/kfvGOwC4UuJFeG/c+yV7wSc7q96cG/kJ0HiYCnzivD9SB53cLV1MlHFNfOuPaadYSw==", - "dev": true - }, - "node_modules/run-parallel": { - "version": "1.2.0", - "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" - } - ], - "license": "MIT", - "dependencies": { - "queue-microtask": "^1.2.2" - } - }, - "node_modules/safe-array-concat": { - "version": "1.1.2", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.7", - "get-intrinsic": "^1.2.4", - "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.3", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.6", - "es-errors": "^1.3.0", - "is-regex": "^1.1.4" - }, - "engines": { - "node": ">= 0.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.1", - "license": "MIT", - "dependencies": { - "loose-envify": "^1.1.0" - } - }, - "node_modules/semver": { - "version": "6.3.1", - "dev": true, - "license": "ISC", - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/set-function-length": { - "version": "1.2.2", - "dev": true, - "license": "MIT", - "dependencies": { - "define-data-property": "^1.1.4", - "es-errors": "^1.3.0", - "function-bind": "^1.1.2", - "get-intrinsic": "^1.2.4", - "gopd": "^1.0.1", - "has-property-descriptors": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/set-function-name": { - "version": "2.0.2", - "dev": true, - "license": "MIT", - "dependencies": { - "define-data-property": "^1.1.4", - "es-errors": "^1.3.0", - "functions-have-names": "^1.2.3", - "has-property-descriptors": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/shebang-command": { - "version": "2.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "shebang-regex": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/shebang-regex": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/side-channel": { - "version": "1.0.6", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.7", - "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.4", - "object-inspect": "^1.13.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/siginfo": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/siginfo/-/siginfo-2.0.0.tgz", - "integrity": "sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g==", - "dev": true - }, - "node_modules/signal-exit": { - "version": "4.1.0", - "dev": true, - "license": "ISC", - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/slash": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/source-map-js": { - "version": "1.2.0", - "license": "BSD-3-Clause", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/stackback": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/stackback/-/stackback-0.0.2.tgz", - "integrity": "sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==", - "dev": true - }, - "node_modules/std-env": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/std-env/-/std-env-3.7.0.tgz", - "integrity": "sha512-JPbdCEQLj1w5GilpiHAx3qJvFndqybBysA3qUOnznweH4QbNYUsW/ea8QzSrnh0vNsezMMw5bcVool8lM0gwzg==", - "dev": true - }, - "node_modules/streamsearch": { - "version": "1.1.0", - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/string-width": { - "version": "5.1.2", - "dev": true, - "license": "MIT", - "dependencies": { - "eastasianwidth": "^0.2.0", - "emoji-regex": "^9.2.2", - "strip-ansi": "^7.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/string-width/node_modules/strip-ansi": { - "version": "7.1.0", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-regex": "^6.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/strip-ansi?sponsor=1" - } - }, - "node_modules/string-width/node_modules/strip-ansi/node_modules/ansi-regex": { - "version": "6.0.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/ansi-regex?sponsor=1" - } - }, - "node_modules/string.prototype.matchall": { - "version": "4.0.11", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.2", - "es-errors": "^1.3.0", - "es-object-atoms": "^1.0.0", - "get-intrinsic": "^1.2.4", - "gopd": "^1.0.1", - "has-symbols": "^1.0.3", - "internal-slot": "^1.0.7", - "regexp.prototype.flags": "^1.5.2", - "set-function-name": "^2.0.2", - "side-channel": "^1.0.6" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/string.prototype.trim": { - "version": "1.2.9", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.0", - "es-object-atoms": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/string.prototype.trimend": { - "version": "1.0.8", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-object-atoms": "^1.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/string.prototype.trimstart": { - "version": "1.0.8", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-object-atoms": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/strip-ansi": { - "version": "6.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/strip-bom": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/strip-final-newline": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-3.0.0.tgz", - "integrity": "sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/strip-json-comments": { - "version": "3.1.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/strip-literal": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/strip-literal/-/strip-literal-2.1.0.tgz", - "integrity": "sha512-Op+UycaUt/8FbN/Z2TWPBLge3jWrP3xj10f3fnYxf052bKuS3EKs1ZQcVGjnEMdsNVAM+plXRdmjrZ/KgG3Skw==", - "dev": true, - "dependencies": { - "js-tokens": "^9.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/antfu" - } - }, - "node_modules/strip-literal/node_modules/js-tokens": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-9.0.0.tgz", - "integrity": "sha512-WriZw1luRMlmV3LGJaR6QOJjWwgLUTf89OwT2lUOyjX2dJGBwgmIkbcz+7WFZjrZM635JOIR517++e/67CP9dQ==", - "dev": true - }, - "node_modules/styled-jsx": { - "version": "5.1.1", - "license": "MIT", - "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/supports-color": { - "version": "7.2.0", - "dev": true, - "license": "MIT", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/supports-preserve-symlinks-flag": { - "version": "1.0.0", - "dev": true, - "license": "MIT", - "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", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/text-table": { - "version": "0.2.0", - "dev": true, - "license": "MIT" - }, - "node_modules/tinybench": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/tinybench/-/tinybench-2.8.0.tgz", - "integrity": "sha512-1/eK7zUnIklz4JUUlL+658n58XO2hHLQfSk1Zf2LKieUjxidN16eKFEoDEfjHc3ohofSSqK3X5yO6VGb6iW8Lw==", - "dev": true - }, - "node_modules/tinypool": { - "version": "0.8.4", - "resolved": "https://registry.npmjs.org/tinypool/-/tinypool-0.8.4.tgz", - "integrity": "sha512-i11VH5gS6IFeLY3gMBQ00/MmLncVP7JLXOw1vlgkytLmJK7QnEr7NXf0LBdxfmNPAeyetukOk0bOYrJrFGjYJQ==", - "dev": true, - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/tinyspy": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/tinyspy/-/tinyspy-2.2.1.tgz", - "integrity": "sha512-KYad6Vy5VDWV4GH3fjpseMQ/XU2BhIYP7Vzd0LG44qRWm/Yt2WCOTicFdvmgo6gWaqooMQCawTtILVQJupKu7A==", - "dev": true, - "engines": { - "node": ">=14.0.0" - } - }, - "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==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/to-regex-range": { - "version": "5.0.1", - "dev": true, - "license": "MIT", - "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": "5.0.0", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-5.0.0.tgz", - "integrity": "sha512-tk2G5R2KRwBd+ZN0zaEXpmzdKyOYksXwywulIX95MBODjSzMIuQnQ3m8JxgbhnL1LeVo7lqQKsYa1O3Htl7K5g==", - "dev": true, - "dependencies": { - "punycode": "^2.3.1" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/ts-api-utils": { - "version": "1.3.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=16" - }, - "peerDependencies": { - "typescript": ">=4.2.0" - } - }, - "node_modules/tsconfig-paths": { - "version": "3.15.0", - "dev": true, - "license": "MIT", - "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", - "license": "0BSD" - }, - "node_modules/type-check": { - "version": "0.4.0", - "dev": true, - "license": "MIT", - "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", - "dev": true, - "license": "(MIT OR CC0-1.0)", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/typed-array-buffer": { - "version": "1.0.2", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.7", - "es-errors": "^1.3.0", - "is-typed-array": "^1.1.13" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/typed-array-byte-length": { - "version": "1.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.7", - "for-each": "^0.3.3", - "gopd": "^1.0.1", - "has-proto": "^1.0.3", - "is-typed-array": "^1.1.13" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/typed-array-byte-offset": { - "version": "1.0.2", - "dev": true, - "license": "MIT", - "dependencies": { - "available-typed-arrays": "^1.0.7", - "call-bind": "^1.0.7", - "for-each": "^0.3.3", - "gopd": "^1.0.1", - "has-proto": "^1.0.3", - "is-typed-array": "^1.1.13" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/typed-array-length": { - "version": "1.0.6", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.7", - "for-each": "^0.3.3", - "gopd": "^1.0.1", - "has-proto": "^1.0.3", - "is-typed-array": "^1.1.13", - "possible-typed-array-names": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/typescript": { - "version": "5.4.5", - "dev": true, - "license": "Apache-2.0", - "bin": { - "tsc": "bin/tsc", - "tsserver": "bin/tsserver" - }, - "engines": { - "node": ">=14.17" - } - }, - "node_modules/ufo": { - "version": "1.5.3", - "resolved": "https://registry.npmjs.org/ufo/-/ufo-1.5.3.tgz", - "integrity": "sha512-Y7HYmWaFwPUmkoQCUIAYpKqkOf+SbVj/2fJJZ4RJMCfZp0rTGwRbzQD+HghfnhKOjL9E01okqz+ncJskGYfBNw==", - "dev": true - }, - "node_modules/unbox-primitive": { - "version": "1.0.2", - "dev": true, - "license": "MIT", - "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", - "dev": true, - "license": "MIT" - }, - "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", - "dev": true, - "license": "BSD-2-Clause", - "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/vite": { - "version": "5.2.10", - "resolved": "https://registry.npmjs.org/vite/-/vite-5.2.10.tgz", - "integrity": "sha512-PAzgUZbP7msvQvqdSD+ErD5qGnSFiGOoWmV5yAKUEI0kdhjbH6nMWVyZQC/hSc4aXwc0oJ9aEdIiF9Oje0JFCw==", - "dev": true, - "dependencies": { - "esbuild": "^0.20.1", - "postcss": "^8.4.38", - "rollup": "^4.13.0" - }, - "bin": { - "vite": "bin/vite.js" - }, - "engines": { - "node": "^18.0.0 || >=20.0.0" - }, - "funding": { - "url": "https://github.com/vitejs/vite?sponsor=1" - }, - "optionalDependencies": { - "fsevents": "~2.3.3" - }, - "peerDependencies": { - "@types/node": "^18.0.0 || >=20.0.0", - "less": "*", - "lightningcss": "^1.21.0", - "sass": "*", - "stylus": "*", - "sugarss": "*", - "terser": "^5.4.0" - }, - "peerDependenciesMeta": { - "@types/node": { - "optional": true - }, - "less": { - "optional": true - }, - "lightningcss": { - "optional": true - }, - "sass": { - "optional": true - }, - "stylus": { - "optional": true - }, - "sugarss": { - "optional": true - }, - "terser": { - "optional": true - } - } - }, - "node_modules/vite-node": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/vite-node/-/vite-node-1.5.2.tgz", - "integrity": "sha512-Y8p91kz9zU+bWtF7HGt6DVw2JbhyuB2RlZix3FPYAYmUyZ3n7iTp8eSyLyY6sxtPegvxQtmlTMhfPhUfCUF93A==", - "dev": true, - "dependencies": { - "cac": "^6.7.14", - "debug": "^4.3.4", - "pathe": "^1.1.1", - "picocolors": "^1.0.0", - "vite": "^5.0.0" - }, - "bin": { - "vite-node": "vite-node.mjs" - }, - "engines": { - "node": "^18.0.0 || >=20.0.0" - }, - "funding": { - "url": "https://opencollective.com/vitest" - } - }, - "node_modules/vite/node_modules/postcss": { - "version": "8.4.38", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.38.tgz", - "integrity": "sha512-Wglpdk03BSfXkHoQa3b/oulrotAkwrlLDRSOb9D0bN86FdRyE9lppSp33aHNPgBa0JKCoB+drFLZkQoRRYae5A==", - "dev": true, - "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.7", - "picocolors": "^1.0.0", - "source-map-js": "^1.2.0" - }, - "engines": { - "node": "^10 || ^12 || >=14" - } - }, - "node_modules/vitest": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/vitest/-/vitest-1.5.2.tgz", - "integrity": "sha512-l9gwIkq16ug3xY7BxHwcBQovLZG75zZL0PlsiYQbf76Rz6QGs54416UWMtC0jXeihvHvcHrf2ROEjkQRVpoZYw==", - "dev": true, - "dependencies": { - "@vitest/expect": "1.5.2", - "@vitest/runner": "1.5.2", - "@vitest/snapshot": "1.5.2", - "@vitest/spy": "1.5.2", - "@vitest/utils": "1.5.2", - "acorn-walk": "^8.3.2", - "chai": "^4.3.10", - "debug": "^4.3.4", - "execa": "^8.0.1", - "local-pkg": "^0.5.0", - "magic-string": "^0.30.5", - "pathe": "^1.1.1", - "picocolors": "^1.0.0", - "std-env": "^3.5.0", - "strip-literal": "^2.0.0", - "tinybench": "^2.5.1", - "tinypool": "^0.8.3", - "vite": "^5.0.0", - "vite-node": "1.5.2", - "why-is-node-running": "^2.2.2" - }, - "bin": { - "vitest": "vitest.mjs" - }, - "engines": { - "node": "^18.0.0 || >=20.0.0" - }, - "funding": { - "url": "https://opencollective.com/vitest" - }, - "peerDependencies": { - "@edge-runtime/vm": "*", - "@types/node": "^18.0.0 || >=20.0.0", - "@vitest/browser": "1.5.2", - "@vitest/ui": "1.5.2", - "happy-dom": "*", - "jsdom": "*" - }, - "peerDependenciesMeta": { - "@edge-runtime/vm": { - "optional": true - }, - "@types/node": { - "optional": true - }, - "@vitest/browser": { - "optional": true - }, - "@vitest/ui": { - "optional": true - }, - "happy-dom": { - "optional": true - }, - "jsdom": { - "optional": true - } - } - }, - "node_modules/w3c-xmlserializer": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-5.0.0.tgz", - "integrity": "sha512-o8qghlI8NZHU1lLPrpi2+Uq7abh4GGPpYANlalzWxyWteJOCsr/P+oPBA49TOLu5FTZO4d3F9MnWJfiMo4BkmA==", - "dev": true, - "dependencies": { - "xml-name-validator": "^5.0.0" - }, - "engines": { - "node": ">=18" - } - }, - "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": "3.1.1", - "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-3.1.1.tgz", - "integrity": "sha512-6qN4hJdMwfYBtE3YBTTHhoeuUrDBPZmbQaxWAqSALV/MeEnR5z1xd8UKud2RAkFoPkmB+hli1TZSnyi84xz1vQ==", - "dev": true, - "dependencies": { - "iconv-lite": "0.6.3" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/whatwg-mimetype": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-4.0.0.tgz", - "integrity": "sha512-QaKxh0eNIi2mE9p2vEdzfagOKHCcj1pJ56EEHGQOVxp8r9/iszLUUV7v89x9O1p/T+NlTM5W7jW6+cz4Fq1YVg==", - "dev": true, - "engines": { - "node": ">=18" - } - }, - "node_modules/whatwg-url": { - "version": "14.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-14.0.0.tgz", - "integrity": "sha512-1lfMEm2IEr7RIV+f4lUNPOqfFL+pO+Xw3fJSqmjX9AbXcXcYOkCe1P6+9VBZB6n94af16NfZf+sSk0JCBZC9aw==", - "dev": true, - "dependencies": { - "tr46": "^5.0.0", - "webidl-conversions": "^7.0.0" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/which": { - "version": "2.0.2", - "dev": true, - "license": "ISC", - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/node-which" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/which-boxed-primitive": { - "version": "1.0.2", - "dev": true, - "license": "MIT", - "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", - "dev": true, - "license": "MIT", - "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.2", - "dev": true, - "license": "MIT", - "dependencies": { - "is-map": "^2.0.3", - "is-set": "^2.0.3", - "is-weakmap": "^2.0.2", - "is-weakset": "^2.0.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/which-typed-array": { - "version": "1.1.15", - "dev": true, - "license": "MIT", - "dependencies": { - "available-typed-arrays": "^1.0.7", - "call-bind": "^1.0.7", - "for-each": "^0.3.3", - "gopd": "^1.0.1", - "has-tostringtag": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/why-is-node-running": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/why-is-node-running/-/why-is-node-running-2.2.2.tgz", - "integrity": "sha512-6tSwToZxTOcotxHeA+qGCq1mVzKR3CwcJGmVcY+QE8SHy6TnpFnh8PAvPNHYr7EcuVeG0QSMxtYCuO1ta/G/oA==", - "dev": true, - "dependencies": { - "siginfo": "^2.0.0", - "stackback": "0.0.2" - }, - "bin": { - "why-is-node-running": "cli.js" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/wrap-ansi": { - "version": "8.1.0", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^6.1.0", - "string-width": "^5.0.1", - "strip-ansi": "^7.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" - } - }, - "node_modules/wrap-ansi/node_modules/ansi-styles": { - "version": "6.2.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/wrap-ansi/node_modules/strip-ansi": { - "version": "7.1.0", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-regex": "^6.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/strip-ansi?sponsor=1" - } - }, - "node_modules/wrap-ansi/node_modules/strip-ansi/node_modules/ansi-regex": { - "version": "6.0.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/ansi-regex?sponsor=1" - } - }, - "node_modules/wrappy": { - "version": "1.0.2", - "dev": true, - "license": "ISC" - }, - "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": "5.0.0", - "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-5.0.0.tgz", - "integrity": "sha512-EvGK8EJ3DhaHfbRlETOWAS5pO9MZITeauHKJyb8wyajUfQUenkIg2MvLDTZ4T/TgIcm3HU0TFBgWWboAZ30UHg==", - "dev": true, - "engines": { - "node": ">=18" - } - }, - "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/yallist": { - "version": "4.0.0", - "dev": true, - "license": "ISC" - }, - "node_modules/yocto-queue": { - "version": "0.1.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - } - } -} diff --git a/ui/package.json b/ui/package.json index 5c93ef1..1351889 100644 --- a/ui/package.json +++ b/ui/package.json @@ -26,5 +26,8 @@ "jsdom": "^24.0.0", "typescript": "^5", "vitest": "^1.5.2" + }, + "overrides": { + "rollup": "npm:@rollup/wasm-node@*" } } \ No newline at end of file diff --git a/ui/src/app/page.test.tsx b/ui/src/app/page.test.tsx index 29c732f..083f830 100644 --- a/ui/src/app/page.test.tsx +++ b/ui/src/app/page.test.tsx @@ -4,5 +4,5 @@ import Page from './page' test('Page', () => { render() - expect(screen.getByRole('heading', { level: 1, name: 'Fail intentionally' })).toBeDefined() + expect(screen.getByRole('heading', { level: 1, name: 'Hello no from the Frontend' })).toBeDefined() }) \ No newline at end of file diff --git a/ui/vitest.config.ts b/ui/vitest.config.ts index 2aaa819..1112e41 100644 --- a/ui/vitest.config.ts +++ b/ui/vitest.config.ts @@ -5,5 +5,6 @@ export default defineConfig({ plugins: [react()], test: { environment: 'jsdom', + reporters: ['default', 'github-actions'] }, }) \ No newline at end of file From faf40e8c86c23097cbba3a33432c58869e0229e0 Mon Sep 17 00:00:00 2001 From: Kayra Date: Fri, 26 Apr 2024 16:21:30 +0300 Subject: [PATCH 07/23] passing test --- ui/src/app/page.test.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ui/src/app/page.test.tsx b/ui/src/app/page.test.tsx index 083f830..e415d7c 100644 --- a/ui/src/app/page.test.tsx +++ b/ui/src/app/page.test.tsx @@ -4,5 +4,5 @@ import Page from './page' test('Page', () => { render() - expect(screen.getByRole('heading', { level: 1, name: 'Hello no from the Frontend' })).toBeDefined() + expect(screen.getByRole('heading', { level: 1, name: 'Hello from the Frontend' })).toBeDefined() }) \ No newline at end of file From 3082aec4cd231d93e038c9e9890f22483031acd5 Mon Sep 17 00:00:00 2001 From: Kayra Date: Fri, 26 Apr 2024 16:43:04 +0300 Subject: [PATCH 08/23] add nextjs build step to ci --- .github/workflows/main.yml | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 832ab2c..17dace8 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -9,7 +9,7 @@ on: - main jobs: - build: + go-build: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 @@ -20,7 +20,22 @@ jobs: - name: Build run: go build ./... + nextjs-build: + runs-on: ubuntu-latest + defaults: + run: + working-directory: ui + steps: + - uses: actions/checkout@v3 + - name: Use Bun + uses: oven-sh/setup-bun@v1 + with: + bun-version: latest + - name: Execute Unit tests + run: | + bun install + bun run build go-vet: runs-on: ubuntu-latest steps: @@ -78,7 +93,8 @@ jobs: rock-build: needs: - - build + - go-build + - nextjs-build - go-vet - lint - go-unit-tests From b5c5de40d0e4f0dbaa01370d2c36da5b1b0e0d74 Mon Sep 17 00:00:00 2001 From: Kayra Date: Fri, 26 Apr 2024 17:15:41 +0300 Subject: [PATCH 09/23] update name --- .github/workflows/main.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 17dace8..3611265 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -32,7 +32,7 @@ jobs: with: bun-version: latest - - name: Execute Unit tests + - name: Build frontend run: | bun install bun run build From 84c378586a7e63267db54341da25851c1b675f8b Mon Sep 17 00:00:00 2001 From: Kayra Date: Fri, 26 Apr 2024 17:21:49 +0300 Subject: [PATCH 10/23] don't allow configuring frontend directory --- internal/api/server.go | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) diff --git a/internal/api/server.go b/internal/api/server.go index 6a66982..c67400f 100644 --- a/internal/api/server.go +++ b/internal/api/server.go @@ -15,11 +15,10 @@ import ( ) type ConfigYAML struct { - KeyPath string - CertPath string - DBPath string - FrontendDir string - Port int + KeyPath string + CertPath string + DBPath string + Port int } type Config struct { @@ -59,9 +58,6 @@ func validateConfigFile(filePath string) (Config, error) { if err != nil { return config, errors.Join(validationErr, err) } - if c.FrontendDir == "" { - c.FrontendDir = "ui/out" - } err = dbfile.Close() if err != nil { return config, errors.Join(validationErr, err) @@ -71,7 +67,7 @@ func validateConfigFile(filePath string) (Config, error) { config.Key = key config.DBPath = c.DBPath config.Port = c.Port - config.FrontendDir = c.FrontendDir + config.FrontendDir = "ui/out" return config, nil } From 429deb99501f04c0eb3aae35c7974a70dfe1d357 Mon Sep 17 00:00:00 2001 From: Kayra Date: Tue, 30 Apr 2024 15:38:16 +0300 Subject: [PATCH 11/23] use npm instead of bun --- .github/workflows/main.yml | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 3611265..c43283f 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -27,15 +27,13 @@ jobs: working-directory: ui steps: - uses: actions/checkout@v3 - - name: Use Bun - uses: oven-sh/setup-bun@v1 - with: - bun-version: latest + - name: Use npm + uses: actions/setup-node@v4 - name: Build frontend run: | - bun install - bun run build + npm install + npm run build go-vet: runs-on: ubuntu-latest steps: From 59a74311692465d2ec50ece4b46c7d91353f672a Mon Sep 17 00:00:00 2001 From: Kayra Date: Tue, 30 Apr 2024 16:13:08 +0300 Subject: [PATCH 12/23] contrib.md improvements --- CONTRIBUTING.md | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index bb22e2b..cdd118a 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -2,24 +2,37 @@ ## Getting Started +1. Install Go and Nodejs 1. Fork the repository on GitHub 2. Clone the forked repository to your local machine -3. Build the project: `go build ./...` -4. Run the project: `./gocert` +3. Build the frontend: `cd ui && npm build build` +3. Install the project: `go install ./...` +4. Run the project: `gocert --config config.yaml` +Commands for go need to be run from the project directory, and commands for the frontend need to be run from the `ui/` directory ## Testing ### Unit Tests +Go: ```bash go test ./... ``` +Frontend: +```bash +npm run test +``` ### Lint +Go: ```bash golangci-lint run ./... ``` +Frontend: +```bash +npm run lint +``` ## Container image From 46151bc1bb3d5f8e55e817e7fc7dcdc6a1a8e217 Mon Sep 17 00:00:00 2001 From: Kayra Date: Tue, 7 May 2024 12:19:15 +0300 Subject: [PATCH 13/23] embed the frontend over carrying it along with the exe everywhere --- internal/api/handlers.go | 12 +++++++++--- internal/api/server.go | 14 +++++--------- ui/embed.go | 6 ++++++ 3 files changed, 20 insertions(+), 12 deletions(-) create mode 100644 ui/embed.go diff --git a/internal/api/handlers.go b/internal/api/handlers.go index bb0cab9..5b1fc5a 100644 --- a/internal/api/handlers.go +++ b/internal/api/handlers.go @@ -4,12 +4,14 @@ import ( "encoding/json" "fmt" "io" + "io/fs" "log" "net/http" "strconv" "strings" metrics "github.com/canonical/gocert/internal/metrics" + "github.com/canonical/gocert/ui" ) // NewGoCertRouter takes in an environment struct, passes it along to any handlers that will need @@ -26,7 +28,7 @@ func NewGoCertRouter(env *Environment) http.Handler { apiV1Router.HandleFunc("DELETE /certificate_requests/{id}/certificate", DeleteCertificate(env)) metricsHandler := metrics.NewPrometheusMetricsHandler() - frontendHandler := newFrontendFileServer(env.FrontendDir) + frontendHandler := newFrontendFileServer() router := http.NewServeMux() router.HandleFunc("/status", HealthCheck) @@ -37,8 +39,12 @@ func NewGoCertRouter(env *Environment) http.Handler { return logging(router) } -func newFrontendFileServer(dir string) http.Handler { - return http.FileServer(http.Dir(dir)) +func newFrontendFileServer() http.Handler { + frontendFS, err := fs.Sub(ui.FrontendFS, "out") + if err != nil { + log.Fatal(err) + } + return http.FileServer(http.FS(frontendFS)) } // the health check endpoint simply returns a http.StatusOK diff --git a/internal/api/server.go b/internal/api/server.go index c67400f..edbb233 100644 --- a/internal/api/server.go +++ b/internal/api/server.go @@ -22,16 +22,14 @@ type ConfigYAML struct { } type Config struct { - Key []byte - Cert []byte - DBPath string - FrontendDir string - Port int + Key []byte + Cert []byte + DBPath string + Port int } type Environment struct { - DB *certdb.CertificateRequestsRepository - FrontendDir string + DB *certdb.CertificateRequestsRepository } // validateConfigFile opens and processes the given yaml file, and catches errors in the process @@ -67,7 +65,6 @@ func validateConfigFile(filePath string) (Config, error) { config.Key = key config.DBPath = c.DBPath config.Port = c.Port - config.FrontendDir = "ui/out" return config, nil } @@ -88,7 +85,6 @@ func NewServer(configFile string) (*http.Server, error) { env := &Environment{} env.DB = db - env.FrontendDir = config.FrontendDir router := NewGoCertRouter(env) s := &http.Server{ diff --git a/ui/embed.go b/ui/embed.go new file mode 100644 index 0000000..2280d45 --- /dev/null +++ b/ui/embed.go @@ -0,0 +1,6 @@ +package ui + +import "embed" + +//go:embed all:out +var FrontendFS embed.FS From 510f3324603625ac9e12ffca2b8ac6833ca9aa5d Mon Sep 17 00:00:00 2001 From: Kayra Date: Tue, 7 May 2024 13:06:57 +0300 Subject: [PATCH 14/23] rework main workflow --- .github/workflows/main-jobs/build-gocert.yaml | 32 ++++++ .github/workflows/main-jobs/go-lint.yaml | 19 ++++ .github/workflows/main-jobs/go-vet.yaml | 17 +++ .github/workflows/main-jobs/test-gocert.yaml | 32 ++++++ .github/workflows/main.yml | 103 +++--------------- 5 files changed, 113 insertions(+), 90 deletions(-) create mode 100644 .github/workflows/main-jobs/build-gocert.yaml create mode 100644 .github/workflows/main-jobs/go-lint.yaml create mode 100644 .github/workflows/main-jobs/go-vet.yaml create mode 100644 .github/workflows/main-jobs/test-gocert.yaml diff --git a/.github/workflows/main-jobs/build-gocert.yaml b/.github/workflows/main-jobs/build-gocert.yaml new file mode 100644 index 0000000..ff863f7 --- /dev/null +++ b/.github/workflows/main-jobs/build-gocert.yaml @@ -0,0 +1,32 @@ +name: Build GoCert + +on: + workflow_call: + +jobs: + nextjs-build: + runs-on: ubuntu-latest + defaults: + run: + working-directory: ui + steps: + - uses: actions/checkout@v3 + - name: Use npm + uses: actions/setup-node@v4 + + - name: Build frontend + run: | + npm install + npm run build + go-build: + runs-on: ubuntu-latest + needs: [nextjs-build] + steps: + - uses: actions/checkout@v4 + + - uses: actions/setup-go@v5 + with: + go-version-file: "go.mod" + + - name: Build + run: go build ./... \ No newline at end of file diff --git a/.github/workflows/main-jobs/go-lint.yaml b/.github/workflows/main-jobs/go-lint.yaml new file mode 100644 index 0000000..fa0d6e1 --- /dev/null +++ b/.github/workflows/main-jobs/go-lint.yaml @@ -0,0 +1,19 @@ +name: Lint + +on: + workflow_call: + +jobs: + lint: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + + - uses: actions/setup-go@v5 + with: + go-version-file: "go.mod" + + - name: golangci-lint + uses: golangci/golangci-lint-action@v5 + with: + version: v1.54 \ No newline at end of file diff --git a/.github/workflows/main-jobs/go-vet.yaml b/.github/workflows/main-jobs/go-vet.yaml new file mode 100644 index 0000000..f188782 --- /dev/null +++ b/.github/workflows/main-jobs/go-vet.yaml @@ -0,0 +1,17 @@ +name: Vet + +on: + workflow_call: + +jobs: + go-vet: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + + - uses: actions/setup-go@v5 + with: + go-version-file: "go.mod" + + - name: Go vet + run: go vet ./... \ No newline at end of file diff --git a/.github/workflows/main-jobs/test-gocert.yaml b/.github/workflows/main-jobs/test-gocert.yaml new file mode 100644 index 0000000..125cec3 --- /dev/null +++ b/.github/workflows/main-jobs/test-gocert.yaml @@ -0,0 +1,32 @@ +name: Unit Test GoCert + +on: + workflow_call: + +jobs: + nextjs-unit-tests: + runs-on: ubuntu-latest + defaults: + run: + working-directory: ui + steps: + - uses: actions/checkout@v3 + - name: Use npm + uses: actions/setup-node@v4 + + - name: Build frontend + run: | + npm install + npm run test + go-unit-tests: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + + - uses: actions/setup-go@v5 + with: + go-version-file: "go.mod" + + - name: Unit tests + run: go test -cover ./... + diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index c43283f..13a3a12 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -8,102 +8,25 @@ on: branches: - main -jobs: - go-build: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - - uses: actions/setup-go@v5 - with: - go-version-file: "go.mod" - - - name: Build - run: go build ./... - nextjs-build: - runs-on: ubuntu-latest - defaults: - run: - working-directory: ui - steps: - - uses: actions/checkout@v3 - - name: Use npm - uses: actions/setup-node@v4 - - - name: Build frontend - run: | - npm install - npm run build +jobs: + build-gocert: + uses: ./.github/workflows/main-jobs/build-gocert.yaml + unit-test-gocert: + needs: [build-gocert] + uses: ./.github/workflows/main-jobs/test-gocert.yaml go-vet: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - - uses: actions/setup-go@v5 - with: - go-version-file: "go.mod" - - - name: Go vet - run: go vet ./... - - lint: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - - uses: actions/setup-go@v5 - with: - go-version-file: "go.mod" - - - name: golangci-lint - uses: golangci/golangci-lint-action@v5 - with: - version: v1.54 - - go-unit-tests: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - - uses: actions/setup-go@v5 - with: - go-version-file: "go.mod" - - - name: Unit tests - run: go test -cover ./... - - nextjs-unit-tests: - runs-on: ubuntu-latest - defaults: - run: - working-directory: ui - steps: - - uses: actions/checkout@v3 - - name: Use Bun - uses: oven-sh/setup-bun@v1 - with: - bun-version: latest - - - name: Execute Unit tests - run: | - bun install - bun run test - + needs: [build-gocert] + uses: ./.github/workflows/main-jobs/go-vet.yaml + go-lint: + needs: [build-gocert] + uses: ./.github/workflows/main-jobs/go-lint.yaml rock-build: - needs: - - go-build - - nextjs-build - - go-vet - - lint - - go-unit-tests - - nextjs-unit-tests + needs: [build-gocert, unit-test-gocert, go-vet, go-lint] uses: ./.github/workflows/build-rock.yaml - rock-scan: if: github.ref_name == 'main' - needs: rock-build + needs: [rock-build] uses: ./.github/workflows/scan-rock.yaml - publish: if: github.ref_name == 'main' needs: [rock-build] From d8bcc0beb79f451ba3e181314b2e0dd54ce95661 Mon Sep 17 00:00:00 2001 From: Kayra Date: Thu, 9 May 2024 13:55:13 +0300 Subject: [PATCH 15/23] test frontend in build step --- .../build-gocert.yaml => build-frontend.yaml} | 19 ++++------- .github/workflows/build-gocert.yaml | 21 ++++++++++++ .github/workflows/build-rock.yaml | 32 +++++++++++++++++++ .../workflows/{main-jobs => }/go-lint.yaml | 6 +++- .github/workflows/{main-jobs => }/go-vet.yaml | 6 +++- .github/workflows/main.yml | 21 +++++++----- .github/workflows/test-frontend.yaml | 20 ++++++++++++ .../{main-jobs => }/test-gocert.yaml | 22 ++++--------- rockcraft.yaml | 18 +++++------ 9 files changed, 116 insertions(+), 49 deletions(-) rename .github/workflows/{main-jobs/build-gocert.yaml => build-frontend.yaml} (57%) create mode 100644 .github/workflows/build-gocert.yaml rename .github/workflows/{main-jobs => }/go-lint.yaml (67%) rename .github/workflows/{main-jobs => }/go-vet.yaml (61%) create mode 100644 .github/workflows/test-frontend.yaml rename .github/workflows/{main-jobs => }/test-gocert.yaml (52%) diff --git a/.github/workflows/main-jobs/build-gocert.yaml b/.github/workflows/build-frontend.yaml similarity index 57% rename from .github/workflows/main-jobs/build-gocert.yaml rename to .github/workflows/build-frontend.yaml index ff863f7..d292f30 100644 --- a/.github/workflows/main-jobs/build-gocert.yaml +++ b/.github/workflows/build-frontend.yaml @@ -1,4 +1,4 @@ -name: Build GoCert +name: Build Frontend on: workflow_call: @@ -10,7 +10,7 @@ jobs: run: working-directory: ui steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: Use npm uses: actions/setup-node@v4 @@ -18,15 +18,8 @@ jobs: run: | npm install npm run build - go-build: - runs-on: ubuntu-latest - needs: [nextjs-build] - steps: - - uses: actions/checkout@v4 - - - uses: actions/setup-go@v5 + - name: Upload frontend files + uses: actions/upload-artifact@v4 with: - go-version-file: "go.mod" - - - name: Build - run: go build ./... \ No newline at end of file + name: frontend-static-files + path: ui/out \ No newline at end of file diff --git a/.github/workflows/build-gocert.yaml b/.github/workflows/build-gocert.yaml new file mode 100644 index 0000000..8c0e52b --- /dev/null +++ b/.github/workflows/build-gocert.yaml @@ -0,0 +1,21 @@ +name: Build GoCert + +on: + workflow_call: + +jobs: + go-build: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: actions/setup-go@v5 + with: + go-version-file: "go.mod" + + - name: Download frontend files + uses: actions/download-artifact@v4 + with: + name: frontend-static-files + path: ui/out + - name: Build + run: go build ./... \ No newline at end of file diff --git a/.github/workflows/build-rock.yaml b/.github/workflows/build-rock.yaml index a7eda9f..15d3f61 100644 --- a/.github/workflows/build-rock.yaml +++ b/.github/workflows/build-rock.yaml @@ -11,7 +11,39 @@ jobs: uses: actions/checkout@v4 - uses: canonical/craft-actions/rockcraft-pack@main id: rockcraft + + - name: Install Skopeo + run: | + sudo snap install skopeo --edge --devmode + - name: Import the image to Docker registry + run: | + sudo skopeo --insecure-policy copy oci-archive:${{ steps.rockcraft.outputs.rock }} docker-daemon:gocert:latest + - name: Create files required by GoCert + run: | + printf 'keypath: "/etc/config/key.pem"\ncertpath: "/etc/config/cert.pem"\ndbpath: "/etc/config/certs.db"\nport: 3000\n' > config.yaml + openssl req -newkey rsa:2048 -nodes -keyout key.pem -x509 -days 1 -out cert.pem -subj "/CN=githubaction.example" + + - name: Run the image + run: | + docker run -d -p 3000:3000 --name gocert gocert:latest + - name: Load config + run: | + docker cp key.pem gocert:/etc/config + docker cp cert.pem gocert:/etc/config + docker cp config.yaml gocert:/etc/config + docker exec gocert /bin/pebble push -p /etc/config/key.pem /etc/config/key.pem + docker exec gocert /bin/pebble push -p /etc/config/cert.pem /etc/config/cert.pem + docker exec gocert /bin/pebble push -p /etc/config/config.yaml /etc/config/config.yaml + docker restart gocert + - name: Check if GoCert is successfully running + id: test_image + run: | + sleep 30 + curl -k https://localhost:3000 2>&1 | grep GoCert + - uses: actions/upload-artifact@v4 + if: steps.test_image.outcome == 'success' with: + name: rock path: ${{ steps.rockcraft.outputs.rock }} diff --git a/.github/workflows/main-jobs/go-lint.yaml b/.github/workflows/go-lint.yaml similarity index 67% rename from .github/workflows/main-jobs/go-lint.yaml rename to .github/workflows/go-lint.yaml index fa0d6e1..9edf37b 100644 --- a/.github/workflows/main-jobs/go-lint.yaml +++ b/.github/workflows/go-lint.yaml @@ -8,11 +8,15 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - - uses: actions/setup-go@v5 with: go-version-file: "go.mod" + - name: Download frontend files + uses: actions/download-artifact@v4 + with: + name: frontend-static-files + path: ui/out - name: golangci-lint uses: golangci/golangci-lint-action@v5 with: diff --git a/.github/workflows/main-jobs/go-vet.yaml b/.github/workflows/go-vet.yaml similarity index 61% rename from .github/workflows/main-jobs/go-vet.yaml rename to .github/workflows/go-vet.yaml index f188782..c96629f 100644 --- a/.github/workflows/main-jobs/go-vet.yaml +++ b/.github/workflows/go-vet.yaml @@ -8,10 +8,14 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - - uses: actions/setup-go@v5 with: go-version-file: "go.mod" + - name: Download frontend files + uses: actions/download-artifact@v4 + with: + name: frontend-static-files + path: ui/out - name: Go vet run: go vet ./... \ No newline at end of file diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 13a3a12..e7bb691 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -9,17 +9,22 @@ on: - main jobs: - build-gocert: - uses: ./.github/workflows/main-jobs/build-gocert.yaml + unit-test-frontend: + uses: ./.github/workflows/test-frontend.yaml + build-nextjs: + uses: ./.github/workflows/build-frontend.yaml unit-test-gocert: - needs: [build-gocert] - uses: ./.github/workflows/main-jobs/test-gocert.yaml + needs: [build-nextjs] + uses: ./.github/workflows/test-gocert.yaml go-vet: - needs: [build-gocert] - uses: ./.github/workflows/main-jobs/go-vet.yaml + needs: [build-nextjs] + uses: ./.github/workflows/go-vet.yaml go-lint: - needs: [build-gocert] - uses: ./.github/workflows/main-jobs/go-lint.yaml + needs: [build-nextjs] + uses: ./.github/workflows/go-lint.yaml + build-gocert: + needs: [build-nextjs] + uses: ./.github/workflows/build-gocert.yaml rock-build: needs: [build-gocert, unit-test-gocert, go-vet, go-lint] uses: ./.github/workflows/build-rock.yaml diff --git a/.github/workflows/test-frontend.yaml b/.github/workflows/test-frontend.yaml new file mode 100644 index 0000000..814720b --- /dev/null +++ b/.github/workflows/test-frontend.yaml @@ -0,0 +1,20 @@ +name: Unit Test Frontend + +on: + workflow_call: + +jobs: + nextjs-unit-tests: + runs-on: ubuntu-latest + defaults: + run: + working-directory: ui + steps: + - uses: actions/checkout@v4 + - name: Use npm + uses: actions/setup-node@v4 + + - name: Build frontend + run: | + npm install + npm run test \ No newline at end of file diff --git a/.github/workflows/main-jobs/test-gocert.yaml b/.github/workflows/test-gocert.yaml similarity index 52% rename from .github/workflows/main-jobs/test-gocert.yaml rename to .github/workflows/test-gocert.yaml index 125cec3..8d5bbda 100644 --- a/.github/workflows/main-jobs/test-gocert.yaml +++ b/.github/workflows/test-gocert.yaml @@ -4,29 +4,19 @@ on: workflow_call: jobs: - nextjs-unit-tests: - runs-on: ubuntu-latest - defaults: - run: - working-directory: ui - steps: - - uses: actions/checkout@v3 - - name: Use npm - uses: actions/setup-node@v4 - - - name: Build frontend - run: | - npm install - npm run test go-unit-tests: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - - uses: actions/setup-go@v5 with: go-version-file: "go.mod" - + + - name: Download frontend files + uses: actions/download-artifact@v4 + with: + name: frontend-static-files + path: ui/out - name: Unit tests run: go test -cover ./... diff --git a/rockcraft.yaml b/rockcraft.yaml index 3ae5835..d461324 100644 --- a/rockcraft.yaml +++ b/rockcraft.yaml @@ -12,24 +12,22 @@ platforms: services: gocert: - command: gocert + command: gocert [ -config /etc/config/config.yaml ] override: replace startup: enabled parts: - frontend: - source: ./ui - plugin: npm - build-snaps: - - node/20/stable - override-build: | - npm install - npm run build gocert: - source: . plugin: go + source: . + source-type: local build-snaps: - go/1.22/stable + - node/20/stable + override-build: | + npm install --prefix ui + npm run build --prefix ui + craftctl default stage-packages: - ca-certificates_data - libc6_libs \ No newline at end of file From 2441bcc0c3b3ca7033b8758f9c498212452058f7 Mon Sep 17 00:00:00 2001 From: Kayra Date: Thu, 9 May 2024 14:24:33 +0300 Subject: [PATCH 16/23] weird copy stuff --- .github/workflows/build-rock.yaml | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/.github/workflows/build-rock.yaml b/.github/workflows/build-rock.yaml index 15d3f61..ad38bc5 100644 --- a/.github/workflows/build-rock.yaml +++ b/.github/workflows/build-rock.yaml @@ -28,12 +28,10 @@ jobs: docker run -d -p 3000:3000 --name gocert gocert:latest - name: Load config run: | - docker cp key.pem gocert:/etc/config - docker cp cert.pem gocert:/etc/config - docker cp config.yaml gocert:/etc/config - docker exec gocert /bin/pebble push -p /etc/config/key.pem /etc/config/key.pem - docker exec gocert /bin/pebble push -p /etc/config/cert.pem /etc/config/cert.pem - docker exec gocert /bin/pebble push -p /etc/config/config.yaml /etc/config/config.yaml + docker exec gocert /bin/pebble mkdir /etc/config + docker cp key.pem gocert:/etc/config/key.pem + docker cp cert.pem gocert:/etc/config/cert.pem + docker cp config.yaml gocert:/etc/config/config.yaml docker restart gocert - name: Check if GoCert is successfully running id: test_image From fda654e4fdb1842a9f35e0f91904b2a08f39a86a Mon Sep 17 00:00:00 2001 From: Kayra Date: Fri, 10 May 2024 12:34:06 +0300 Subject: [PATCH 17/23] Update ui/README.md Co-authored-by: Guillaume Belanger --- ui/README.md | 6 ------ 1 file changed, 6 deletions(-) diff --git a/ui/README.md b/ui/README.md index b208f84..47fd85d 100644 --- a/ui/README.md +++ b/ui/README.md @@ -4,12 +4,6 @@ First, run the development server: ```bash npm run dev -# or -yarn dev -# or -pnpm dev -# or -bun dev ``` Open [http://localhost:3000](http://localhost:3000) with your browser to see the result. From 7e9a93b47ff9d0a6a3de0a48740b006f95aaf7a1 Mon Sep 17 00:00:00 2001 From: Kayra Date: Fri, 10 May 2024 12:34:43 +0300 Subject: [PATCH 18/23] Delete ui/bun.lockb --- ui/bun.lockb | Bin 191018 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100755 ui/bun.lockb diff --git a/ui/bun.lockb b/ui/bun.lockb deleted file mode 100755 index f187468962f129272d6e752daa93dfafd9bb0340..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 191018 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 oBZiMYsyueW;Nhcvyv6`eT@+sD Date: Fri, 10 May 2024 13:33:44 +0300 Subject: [PATCH 19/23] remove frontend version --- ui/package.json | 1 - 1 file changed, 1 deletion(-) diff --git a/ui/package.json b/ui/package.json index 1351889..337ba5d 100644 --- a/ui/package.json +++ b/ui/package.json @@ -1,6 +1,5 @@ { "name": "gocert", - "version": "0.1.0", "private": true, "type": "module", "scripts": { From 907b16757f56f54668a3edaec59db4d432162a81 Mon Sep 17 00:00:00 2001 From: Kayra Date: Fri, 10 May 2024 13:35:18 +0300 Subject: [PATCH 20/23] package lock --- ui/package-lock.json | 6650 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 6650 insertions(+) create mode 100644 ui/package-lock.json diff --git a/ui/package-lock.json b/ui/package-lock.json new file mode 100644 index 0000000..d66e34d --- /dev/null +++ b/ui/package-lock.json @@ -0,0 +1,6650 @@ +{ + "name": "gocert", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "gocert", + "dependencies": { + "next": "14.2.3", + "react": "^18", + "react-dom": "^18" + }, + "devDependencies": { + "@testing-library/react": "^15.0.4", + "@types/node": "^20", + "@types/react": "^18", + "@types/react-dom": "^18", + "@vitejs/plugin-react": "^4.2.1", + "eslint": "^8", + "eslint-config-next": "14.2.3", + "jsdom": "^24.0.0", + "typescript": "^5", + "vitest": "^1.5.2" + } + }, + "node_modules/@ampproject/remapping": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.3.0.tgz", + "integrity": "sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==", + "dev": true, + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/code-frame": { + "version": "7.24.2", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.2.tgz", + "integrity": "sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ==", + "dev": true, + "dependencies": { + "@babel/highlight": "^7.24.2", + "picocolors": "^1.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/compat-data": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.24.4.tgz", + "integrity": "sha512-vg8Gih2MLK+kOkHJp4gBEIkyaIi00jgWot2D9QOmmfLC8jINSOzmCLta6Bvz/JSBCqnegV0L80jhxkol5GWNfQ==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core": { + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.24.5.tgz", + "integrity": "sha512-tVQRucExLQ02Boi4vdPp49svNGcfL2GhdTCT9aldhXgCJVAI21EtRfBettiuLUwce/7r6bFdgs6JFkcdTiFttA==", + "dev": true, + "dependencies": { + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.24.2", + "@babel/generator": "^7.24.5", + "@babel/helper-compilation-targets": "^7.23.6", + "@babel/helper-module-transforms": "^7.24.5", + "@babel/helpers": "^7.24.5", + "@babel/parser": "^7.24.5", + "@babel/template": "^7.24.0", + "@babel/traverse": "^7.24.5", + "@babel/types": "^7.24.5", + "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/generator": { + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.5.tgz", + "integrity": "sha512-x32i4hEXvr+iI0NEoEfDKzlemF8AmtOP8CcrRaEcpzysWuoEb1KknpcvMsHKPONoKZiDuItklgWhB18xEhr9PA==", + "dev": true, + "dependencies": { + "@babel/types": "^7.24.5", + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25", + "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-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.24.3", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.24.3.tgz", + "integrity": "sha512-viKb0F9f2s0BCS22QSF308z/+1YWKV/76mwt61NBzS5izMzDPwdq1pTrzf+Li3npBWX9KdQbkeCt1jSAM7lZqg==", + "dev": true, + "dependencies": { + "@babel/types": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.24.5.tgz", + "integrity": "sha512-9GxeY8c2d2mdQUP1Dye0ks3VDyIMS98kt/llQ2nUId8IsWqTF0l1LkSX0/uP7l7MCDrzXS009Hyhe2gzTiGW8A==", + "dev": true, + "dependencies": { + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-module-imports": "^7.24.3", + "@babel/helper-simple-access": "^7.24.5", + "@babel/helper-split-export-declaration": "^7.24.5", + "@babel/helper-validator-identifier": "^7.24.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-plugin-utils": { + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.5.tgz", + "integrity": "sha512-xjNLDopRzW2o6ba0gKbkZq5YWEBaK3PCyTOY1K2P/O07LGMhMqlMXPxwN4S5/RhWuCobT8z0jrlKGlYmeR1OhQ==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-simple-access": { + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.24.5.tgz", + "integrity": "sha512-uH3Hmf5q5n7n8mz7arjUlDOCbttY/DW4DYhE6FUsjKJ/oYC1kQQUvwEQWxRwUpX9qQKRXeqLwWxrqilMrf32sQ==", + "dev": true, + "dependencies": { + "@babel/types": "^7.24.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-split-export-declaration": { + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.24.5.tgz", + "integrity": "sha512-5CHncttXohrHk8GWOFCcCl4oRD9fKosWlIRgWm4ql9VYioKm52Mk2xsmoohvm7f3JoiLSM5ZgJuRaf5QZZYd3Q==", + "dev": true, + "dependencies": { + "@babel/types": "^7.24.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz", + "integrity": "sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.5.tgz", + "integrity": "sha512-3q93SSKX2TWCG30M2G2kwaKeTYgEUp5Snjuj8qm729SObL6nbtUldAi37qbxkD5gg3xnBio+f9nqpSepGZMvxA==", + "dev": true, + "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.24.5", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.24.5.tgz", + "integrity": "sha512-CiQmBMMpMQHwM5m01YnrM6imUG1ebgYJ+fAIW4FZe6m4qHTPaRHti+R8cggAwkdz4oXhtO4/K9JWlh+8hIfR2Q==", + "dev": true, + "dependencies": { + "@babel/template": "^7.24.0", + "@babel/traverse": "^7.24.5", + "@babel/types": "^7.24.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/highlight": { + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.5.tgz", + "integrity": "sha512-8lLmua6AVh/8SLJRRVD6V8p73Hir9w5mJrhE+IPpILG31KKlI9iz5zmBYKcWPS59qSfgP9RaSBQSHHE81WKuEw==", + "dev": true, + "dependencies": { + "@babel/helper-validator-identifier": "^7.24.5", + "chalk": "^2.4.2", + "js-tokens": "^4.0.0", + "picocolors": "^1.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==", + "dev": true, + "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==", + "dev": true, + "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==", + "dev": true, + "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==", + "dev": true + }, + "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==", + "dev": true, + "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==", + "dev": true, + "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==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/parser": { + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.5.tgz", + "integrity": "sha512-EOv5IK8arwh3LI47dz1b0tKUb/1uhHAnHJOrjgtQMIpu1uXd9mlFrJg9IUgGUgZ41Ch0K8REPTYpO7B76b4vJg==", + "dev": true, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/plugin-transform-react-jsx-self": { + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.24.5.tgz", + "integrity": "sha512-RtCJoUO2oYrYwFPtR1/jkoBEcFuI1ae9a9IMxeyAVa3a1Ap4AnxmyIKG2b2FaJKqkidw/0cxRbWN+HOs6ZWd1w==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-react-jsx-source": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.24.1.tgz", + "integrity": "sha512-1v202n7aUq4uXAieRTKcwPzNyphlCuqHHDcdSNc+vdhoTEZcFMh+L5yZuCmGaIO7bs1nJUNfHB89TZyoL48xNA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/runtime": { + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.24.5.tgz", + "integrity": "sha512-Nms86NXrsaeU9vbBJKni6gXiEXZ4CVpYVzEjDH9Sb8vmZ3UljyA1GSOJl/6LGPO8EHLuSF9H+IxNXHPX8QHJ4g==", + "dev": true, + "dependencies": { + "regenerator-runtime": "^0.14.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/template": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.0.tgz", + "integrity": "sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.23.5", + "@babel/parser": "^7.24.0", + "@babel/types": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse": { + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.5.tgz", + "integrity": "sha512-7aaBLeDQ4zYcUFDUD41lJc1fG8+5IU9DaNSJAgal866FGvmD5EbWQgnEC6kO1gGLsX0esNkfnJSndbTXA3r7UA==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.24.2", + "@babel/generator": "^7.24.5", + "@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.24.5", + "@babel/parser": "^7.24.5", + "@babel/types": "^7.24.5", + "debug": "^4.3.1", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/types": { + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.5.tgz", + "integrity": "sha512-6mQNsaLeXTw0nxYUYu+NSa4Hx4BlF1x1x8/PMFbiR+GBSr+2DkECc69b8hgy2frEodNcvPffeH8YfWd3LI6jhQ==", + "dev": true, + "dependencies": { + "@babel/helper-string-parser": "^7.24.1", + "@babel/helper-validator-identifier": "^7.24.5", + "to-fast-properties": "^2.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@esbuild/aix-ppc64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.20.2.tgz", + "integrity": "sha512-D+EBOJHXdNZcLJRBkhENNG8Wji2kgc9AZ9KiPr1JuZjsNtyHzrsfLRrY0tk2H2aoFu6RANO1y1iPPUCDYWkb5g==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-arm": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.20.2.tgz", + "integrity": "sha512-t98Ra6pw2VaDhqNWO2Oph2LXbz/EJcnLmKLGBJwEwXX/JAN83Fym1rU8l0JUWK6HkIbWONCSSatf4sf2NBRx/w==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-arm64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.20.2.tgz", + "integrity": "sha512-mRzjLacRtl/tWU0SvD8lUEwb61yP9cqQo6noDZP/O8VkwafSYwZ4yWy24kan8jE/IMERpYncRt2dw438LP3Xmg==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.20.2.tgz", + "integrity": "sha512-btzExgV+/lMGDDa194CcUQm53ncxzeBrWJcncOBxuC6ndBkKxnHdFJn86mCIgTELsooUmwUm9FkhSp5HYu00Rg==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-arm64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.20.2.tgz", + "integrity": "sha512-4J6IRT+10J3aJH3l1yzEg9y3wkTDgDk7TSDFX+wKFiWjqWp/iCfLIYzGyasx9l0SAFPT1HwSCR+0w/h1ES/MjA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.20.2.tgz", + "integrity": "sha512-tBcXp9KNphnNH0dfhv8KYkZhjc+H3XBkF5DKtswJblV7KlT9EI2+jeA8DgBjp908WEuYll6pF+UStUCfEpdysA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-arm64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.20.2.tgz", + "integrity": "sha512-d3qI41G4SuLiCGCFGUrKsSeTXyWG6yem1KcGZVS+3FYlYhtNoNgYrWcvkOoaqMhwXSMrZRl69ArHsGJ9mYdbbw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.20.2.tgz", + "integrity": "sha512-d+DipyvHRuqEeM5zDivKV1KuXn9WeRX6vqSqIDgwIfPQtwMP4jaDsQsDncjTDDsExT4lR/91OLjRo8bmC1e+Cw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.20.2.tgz", + "integrity": "sha512-VhLPeR8HTMPccbuWWcEUD1Az68TqaTYyj6nfE4QByZIQEQVWBB8vup8PpR7y1QHL3CpcF6xd5WVBU/+SBEvGTg==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.20.2.tgz", + "integrity": "sha512-9pb6rBjGvTFNira2FLIWqDk/uaf42sSyLE8j1rnUpuzsODBq7FvpwHYZxQ/It/8b+QOS1RYfqgGFNLRI+qlq2A==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ia32": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.20.2.tgz", + "integrity": "sha512-o10utieEkNPFDZFQm9CoP7Tvb33UutoJqg3qKf1PWVeeJhJw0Q347PxMvBgVVFgouYLGIhFYG0UGdBumROyiig==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-loong64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.20.2.tgz", + "integrity": "sha512-PR7sp6R/UC4CFVomVINKJ80pMFlfDfMQMYynX7t1tNTeivQ6XdX5r2XovMmha/VjR1YN/HgHWsVcTRIMkymrgQ==", + "cpu": [ + "loong64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-mips64el": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.20.2.tgz", + "integrity": "sha512-4BlTqeutE/KnOiTG5Y6Sb/Hw6hsBOZapOVF6njAESHInhlQAghVVZL1ZpIctBOoTFbQyGW+LsVYZ8lSSB3wkjA==", + "cpu": [ + "mips64el" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ppc64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.20.2.tgz", + "integrity": "sha512-rD3KsaDprDcfajSKdn25ooz5J5/fWBylaaXkuotBDGnMnDP1Uv5DLAN/45qfnf3JDYyJv/ytGHQaziHUdyzaAg==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-riscv64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.20.2.tgz", + "integrity": "sha512-snwmBKacKmwTMmhLlz/3aH1Q9T8v45bKYGE3j26TsaOVtjIag4wLfWSiZykXzXuE1kbCE+zJRmwp+ZbIHinnVg==", + "cpu": [ + "riscv64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-s390x": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.20.2.tgz", + "integrity": "sha512-wcWISOobRWNm3cezm5HOZcYz1sKoHLd8VL1dl309DiixxVFoFe/o8HnwuIwn6sXre88Nwj+VwZUvJf4AFxkyrQ==", + "cpu": [ + "s390x" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.20.2.tgz", + "integrity": "sha512-1MdwI6OOTsfQfek8sLwgyjOXAu+wKhLEoaOLTjbijk6E2WONYpH9ZU2mNtR+lZ2B4uwr+usqGuVfFT9tMtGvGw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/netbsd-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.20.2.tgz", + "integrity": "sha512-K8/DhBxcVQkzYc43yJXDSyjlFeHQJBiowJ0uVL6Tor3jGQfSGHNNJcWxNbOI8v5k82prYqzPuwkzHt3J1T1iZQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/openbsd-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.20.2.tgz", + "integrity": "sha512-eMpKlV0SThJmmJgiVyN9jTPJ2VBPquf6Kt/nAoo6DgHAoN57K15ZghiHaMvqjCye/uU4X5u3YSMgVBI1h3vKrQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/sunos-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.20.2.tgz", + "integrity": "sha512-2UyFtRC6cXLyejf/YEld4Hajo7UHILetzE1vsRcGL3earZEW77JxrFjH4Ez2qaTiEfMgAXxfAZCm1fvM/G/o8w==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-arm64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.20.2.tgz", + "integrity": "sha512-GRibxoawM9ZCnDxnP3usoUDO9vUkpAxIIZ6GQI+IlVmr5kP3zUq+l17xELTHMWTWzjxa2guPNyrpq1GWmPvcGQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-ia32": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.20.2.tgz", + "integrity": "sha512-HfLOfn9YWmkSKRQqovpnITazdtquEW8/SoHW7pWpuEeguaZI4QnCRW6b+oZTztdBnZOS2hqJ6im/D5cPzBTTlQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.20.2.tgz", + "integrity": "sha512-N49X4lJX27+l9jbLKSqZ6bKNjzQvHaT8IIFUy+YIqmXQdjYCToGWwOItDrfby14c78aDd5NHQl29xingXfCdLQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "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/eslintrc/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/@eslint/js": { + "version": "8.57.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.57.0.tgz", + "integrity": "sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g==", + "dev": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/@humanwhocodes/config-array": { + "version": "0.11.14", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.14.tgz", + "integrity": "sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==", + "dev": true, + "dependencies": { + "@humanwhocodes/object-schema": "^2.0.2", + "debug": "^4.3.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.3", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.3.tgz", + "integrity": "sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==", + "dev": true + }, + "node_modules/@isaacs/cliui": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", + "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", + "dev": true, + "dependencies": { + "string-width": "^5.1.2", + "string-width-cjs": "npm:string-width@^4.2.0", + "strip-ansi": "^7.0.1", + "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", + "wrap-ansi": "^8.1.0", + "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@isaacs/cliui/node_modules/ansi-regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/@isaacs/cliui/node_modules/strip-ansi": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", + "dev": true, + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "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/@jridgewell/gen-mapping": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", + "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==", + "dev": true, + "dependencies": { + "@jridgewell/set-array": "^1.2.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", + "dev": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/set-array": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", + "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", + "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.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", + "dev": true, + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@next/env": { + "version": "14.2.3", + "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.3.tgz", + "integrity": "sha512-W7fd7IbkfmeeY2gXrzJYDx8D2lWKbVoTIj1o1ScPHNzvp30s1AuoEFSdr39bC5sjxJaxTtq3OTCZboNp0lNWHA==" + }, + "node_modules/@next/eslint-plugin-next": { + "version": "14.2.3", + "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.2.3.tgz", + "integrity": "sha512-L3oDricIIjgj1AVnRdRor21gI7mShlSwU/1ZGHmqM3LzHhXXhdkrfeNY5zif25Bi5Dd7fiJHsbhoZCHfXYvlAw==", + "dev": true, + "dependencies": { + "glob": "10.3.10" + } + }, + "node_modules/@next/swc-darwin-arm64": { + "version": "14.2.3", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.3.tgz", + "integrity": "sha512-3pEYo/RaGqPP0YzwnlmPN2puaF2WMLM3apt5jLW2fFdXD9+pqcoTzRk+iZsf8ta7+quAe4Q6Ms0nR0SFGFdS1A==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-darwin-x64": { + "version": "14.2.3", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.3.tgz", + "integrity": "sha512-6adp7waE6P1TYFSXpY366xwsOnEXM+y1kgRpjSRVI2CBDOcbRjsJ67Z6EgKIqWIue52d2q/Mx8g9MszARj8IEA==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-linux-arm64-gnu": { + "version": "14.2.3", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.3.tgz", + "integrity": "sha512-cuzCE/1G0ZSnTAHJPUT1rPgQx1w5tzSX7POXSLaS7w2nIUJUD+e25QoXD/hMfxbsT9rslEXugWypJMILBj/QsA==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-linux-arm64-musl": { + "version": "14.2.3", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.3.tgz", + "integrity": "sha512-0D4/oMM2Y9Ta3nGuCcQN8jjJjmDPYpHX9OJzqk42NZGJocU2MqhBq5tWkJrUQOQY9N+In9xOdymzapM09GeiZw==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-linux-x64-gnu": { + "version": "14.2.3", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.3.tgz", + "integrity": "sha512-ENPiNnBNDInBLyUU5ii8PMQh+4XLr4pG51tOp6aJ9xqFQ2iRI6IH0Ds2yJkAzNV1CfyagcyzPfROMViS2wOZ9w==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-linux-x64-musl": { + "version": "14.2.3", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.3.tgz", + "integrity": "sha512-BTAbq0LnCbF5MtoM7I/9UeUu/8ZBY0i8SFjUMCbPDOLv+un67e2JgyN4pmgfXBwy/I+RHu8q+k+MCkDN6P9ViQ==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-win32-arm64-msvc": { + "version": "14.2.3", + "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.3.tgz", + "integrity": "sha512-AEHIw/dhAMLNFJFJIJIyOFDzrzI5bAjI9J26gbO5xhAKHYTZ9Or04BesFPXiAYXDNdrwTP2dQceYA4dL1geu8A==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-win32-ia32-msvc": { + "version": "14.2.3", + "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.3.tgz", + "integrity": "sha512-vga40n1q6aYb0CLrM+eEmisfKCR45ixQYXuBXxOOmmoV8sYST9k7E3US32FsY+CkkF7NtzdcebiFT4CHuMSyZw==", + "cpu": [ + "ia32" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-win32-x64-msvc": { + "version": "14.2.3", + "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.3.tgz", + "integrity": "sha512-Q1/zm43RWynxrO7lW4ehciQVj+5ePBhOK+/K2P7pLFX3JaJ/IZVC69SHidrmZSOkqz7ECIOhhy7XhAFG4JYyHA==", + "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/@pkgjs/parseargs": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", + "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", + "dev": true, + "optional": true, + "engines": { + "node": ">=14" + } + }, + "node_modules/@rushstack/eslint-patch": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/@rushstack/eslint-patch/-/eslint-patch-1.10.2.tgz", + "integrity": "sha512-hw437iINopmQuxWPSUEvqE56NCPsiU8N4AYtfHmJFckclktzK9YQJieD3XkDCDH4OjL+C7zgPUh73R/nrcHrqw==", + "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/@swc/counter": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@swc/counter/-/counter-0.1.3.tgz", + "integrity": "sha512-e2BR4lsJkkRlKZ/qCHPw9ZaSxc0MVUd7gtbtaB7aMvHeJVYe8sOB8DBZkP2DtISHGSku9sCK6T6cnY0CtXrOCQ==" + }, + "node_modules/@swc/helpers": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.5.tgz", + "integrity": "sha512-KGYxvIOXcceOAbEk4bi/dVLEK9z8sZ0uBB3Il5b1rhfClSpcX0yfRO0KmTkqR2cnQDymwLB+25ZyMzICg/cm/A==", + "dependencies": { + "@swc/counter": "^0.1.3", + "tslib": "^2.4.0" + } + }, + "node_modules/@testing-library/dom": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/@testing-library/dom/-/dom-10.1.0.tgz", + "integrity": "sha512-wdsYKy5zupPyLCW2Je5DLHSxSfbIp6h80WoHOQc+RPtmPGA52O9x5MJEkv92Sjonpq+poOAtUKhh1kBGAXBrNA==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.10.4", + "@babel/runtime": "^7.12.5", + "@types/aria-query": "^5.0.1", + "aria-query": "5.3.0", + "chalk": "^4.1.0", + "dom-accessibility-api": "^0.5.9", + "lz-string": "^1.5.0", + "pretty-format": "^27.0.2" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@testing-library/react": { + "version": "15.0.7", + "resolved": "https://registry.npmjs.org/@testing-library/react/-/react-15.0.7.tgz", + "integrity": "sha512-cg0RvEdD1TIhhkm1IeYMQxrzy0MtUNfa3minv4MjbgcYzJAZ7yD0i0lwoPOTPr+INtiXFezt2o8xMSnyHhEn2Q==", + "dev": true, + "dependencies": { + "@babel/runtime": "^7.12.5", + "@testing-library/dom": "^10.0.0", + "@types/react-dom": "^18.0.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "@types/react": "^18.0.0", + "react": "^18.0.0", + "react-dom": "^18.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "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/estree": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz", + "integrity": "sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==", + "dev": 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.12.11", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.11.tgz", + "integrity": "sha512-vDg9PZ/zi+Nqp6boSOT7plNuthRugEKixDv5sFTIpkE89MmNtEArAShI4mxuX2+UrLEe9pxC1vm2cjm9YlWbJw==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, + "node_modules/@types/prop-types": { + "version": "15.7.12", + "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.12.tgz", + "integrity": "sha512-5zvhXYtRNRluoE/jAp4GVsSduVUzNWKkOZrCDBWYtE7biZywwdC2AcEzg+cSMLFRfVgeAFqpfNabiPjxFddV1Q==", + "dev": true + }, + "node_modules/@types/react": { + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.1.tgz", + "integrity": "sha512-V0kuGBX3+prX+DQ/7r2qsv1NsdfnCLnTgnRJ1pYnxykBhGMz+qj+box5lq7XsO5mtZsBqpjwwTu/7wszPfMBcw==", + "dev": true, + "dependencies": { + "@types/prop-types": "*", + "csstype": "^3.0.2" + } + }, + "node_modules/@types/react-dom": { + "version": "18.3.0", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.3.0.tgz", + "integrity": "sha512-EhwApuTmMBmXuFOikhQLIBUn6uFg81SwLMOAUgodJF14SOBOCMdU04gDoYi0WOJJHD144TL32z4yDqCW3dnkQg==", + "dev": true, + "dependencies": { + "@types/react": "*" + } + }, + "node_modules/@typescript-eslint/parser": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-7.2.0.tgz", + "integrity": "sha512-5FKsVcHTk6TafQKQbuIVkXq58Fnbkd2wDL4LB7AURN7RUOu1utVP+G8+6u3ZhEroW3DF6hyo3ZEXxgKgp4KeCg==", + "dev": true, + "dependencies": { + "@typescript-eslint/scope-manager": "7.2.0", + "@typescript-eslint/types": "7.2.0", + "@typescript-eslint/typescript-estree": "7.2.0", + "@typescript-eslint/visitor-keys": "7.2.0", + "debug": "^4.3.4" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^8.56.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/scope-manager": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-7.2.0.tgz", + "integrity": "sha512-Qh976RbQM/fYtjx9hs4XkayYujB/aPwglw2choHmf3zBjB4qOywWSdt9+KLRdHubGcoSwBnXUH2sR3hkyaERRg==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "7.2.0", + "@typescript-eslint/visitor-keys": "7.2.0" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/types": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.2.0.tgz", + "integrity": "sha512-XFtUHPI/abFhm4cbCDc5Ykc8npOKBSJePY3a3s+lwumt7XWJuzP5cZcfZ610MIPHjQjNsOLlYK8ASPaNG8UiyA==", + "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": "7.2.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-7.2.0.tgz", + "integrity": "sha512-cyxS5WQQCoBwSakpMrvMXuMDEbhOo9bNHHrNcEWis6XHx6KF518tkF1wBvKIn/tpq5ZpUYK7Bdklu8qY0MsFIA==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "7.2.0", + "@typescript-eslint/visitor-keys": "7.2.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/typescript-estree/node_modules/semver": { + "version": "7.6.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.2.tgz", + "integrity": "sha512-FNAIBWCx9qcRhoHcgcJ0gvU7SN1lYU2ZXuSfl04bSC5OpvDHFyJCjdNHomPXxjQlCBU67YW64PzY7/VIEH7F2w==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@typescript-eslint/visitor-keys": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-7.2.0.tgz", + "integrity": "sha512-c6EIQRHhcpl6+tO8EMR+kjkkV+ugUNXOmeASA1rlzkd8EPIriavpWoiEz1HR/VLhbVIdhqnV6E7JZm00cBDx2A==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "7.2.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/@vitejs/plugin-react": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-react/-/plugin-react-4.2.1.tgz", + "integrity": "sha512-oojO9IDc4nCUUi8qIR11KoQm0XFFLIwsRBwHRR4d/88IWghn1y6ckz/bJ8GHDCsYEJee8mDzqtJxh15/cisJNQ==", + "dev": true, + "dependencies": { + "@babel/core": "^7.23.5", + "@babel/plugin-transform-react-jsx-self": "^7.23.3", + "@babel/plugin-transform-react-jsx-source": "^7.23.3", + "@types/babel__core": "^7.20.5", + "react-refresh": "^0.14.0" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "peerDependencies": { + "vite": "^4.2.0 || ^5.0.0" + } + }, + "node_modules/@vitest/expect": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/@vitest/expect/-/expect-1.6.0.tgz", + "integrity": "sha512-ixEvFVQjycy/oNgHjqsL6AZCDduC+tflRluaHIzKIsdbzkLn2U/iBnVeJwB6HsIjQBdfMR8Z0tRxKUsvFJEeWQ==", + "dev": true, + "dependencies": { + "@vitest/spy": "1.6.0", + "@vitest/utils": "1.6.0", + "chai": "^4.3.10" + }, + "funding": { + "url": "https://opencollective.com/vitest" + } + }, + "node_modules/@vitest/runner": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/@vitest/runner/-/runner-1.6.0.tgz", + "integrity": "sha512-P4xgwPjwesuBiHisAVz/LSSZtDjOTPYZVmNAnpHHSR6ONrf8eCJOFRvUwdHn30F5M1fxhqtl7QZQUk2dprIXAg==", + "dev": true, + "dependencies": { + "@vitest/utils": "1.6.0", + "p-limit": "^5.0.0", + "pathe": "^1.1.1" + }, + "funding": { + "url": "https://opencollective.com/vitest" + } + }, + "node_modules/@vitest/runner/node_modules/p-limit": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-5.0.0.tgz", + "integrity": "sha512-/Eaoq+QyLSiXQ4lyYV23f14mZRQcXnxfHrN0vCai+ak9G0pp9iEQukIIZq5NccEvwRB8PUnZT0KsOoDCINS1qQ==", + "dev": true, + "dependencies": { + "yocto-queue": "^1.0.0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@vitest/runner/node_modules/yocto-queue": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.0.0.tgz", + "integrity": "sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==", + "dev": true, + "engines": { + "node": ">=12.20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@vitest/snapshot": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/@vitest/snapshot/-/snapshot-1.6.0.tgz", + "integrity": "sha512-+Hx43f8Chus+DCmygqqfetcAZrDJwvTj0ymqjQq4CvmpKFSTVteEOBzCusu1x2tt4OJcvBflyHUE0DZSLgEMtQ==", + "dev": true, + "dependencies": { + "magic-string": "^0.30.5", + "pathe": "^1.1.1", + "pretty-format": "^29.7.0" + }, + "funding": { + "url": "https://opencollective.com/vitest" + } + }, + "node_modules/@vitest/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/@vitest/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/@vitest/snapshot/node_modules/react-is": { + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.3.1.tgz", + "integrity": "sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==", + "dev": true + }, + "node_modules/@vitest/spy": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-1.6.0.tgz", + "integrity": "sha512-leUTap6B/cqi/bQkXUu6bQV5TZPx7pmMBKBQiI0rJA8c3pB56ZsaTbREnF7CJfmvAS4V2cXIBAh/3rVwrrCYgw==", + "dev": true, + "dependencies": { + "tinyspy": "^2.2.0" + }, + "funding": { + "url": "https://opencollective.com/vitest" + } + }, + "node_modules/@vitest/utils": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-1.6.0.tgz", + "integrity": "sha512-21cPiuGMoMZwiOHa2i4LXkMkMkCGzA+MVFV70jRwHo95dL4x/ts5GZhML1QWuy7yfp3WzK3lRvZi3JnXTYqrBw==", + "dev": true, + "dependencies": { + "diff-sequences": "^29.6.3", + "estree-walker": "^3.0.3", + "loupe": "^2.3.7", + "pretty-format": "^29.7.0" + }, + "funding": { + "url": "https://opencollective.com/vitest" + } + }, + "node_modules/@vitest/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/@vitest/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/@vitest/utils/node_modules/react-is": { + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.3.1.tgz", + "integrity": "sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==", + "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-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": "7.1.1", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.1.tgz", + "integrity": "sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==", + "dev": true, + "dependencies": { + "debug": "^4.3.4" + }, + "engines": { + "node": ">= 14" + } + }, + "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-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/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.1", + "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.1.tgz", + "integrity": "sha512-ahC5W1xgou+KTXix4sAO8Ki12Q+jf4i0+tmk3sC+zgcynshkHxzpXdImBehiUYKKKDwvfFiJl1tZt6ewscS1Mg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.5", + "is-array-buffer": "^3.0.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array-includes": { + "version": "3.1.8", + "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.8.tgz", + "integrity": "sha512-itaWrbYbqpGXkGhZPGUulwnhVf5Hpy1xiCFsGqyIGglbBxmG5vSjxQen3/WGOjPpNEv1RtBLKxbmVXm8HpJStQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-object-atoms": "^1.0.0", + "get-intrinsic": "^1.2.4", + "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.findlast": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/array.prototype.findlast/-/array.prototype.findlast-1.2.5.tgz", + "integrity": "sha512-CVvd6FHg1Z3POpBLxO6E6zr+rSKEQ9L6rZHAaY7lLfhKsWYUBBOuMs0e9o24oopj6H+geRCX0YJ+TJLBK2eHyQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "es-shim-unscopables": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.findlastindex": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.5.tgz", + "integrity": "sha512-zfETvRFA8o7EiNn++N5f/kaCw221hrpGsDmcpndVupkPzEc1Wuf3VgC0qby1BbHs7f5DVYjgtEU2LLh5bqeGfQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "es-shim-unscopables": "^1.0.2" + }, + "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.toreversed": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/array.prototype.toreversed/-/array.prototype.toreversed-1.1.2.tgz", + "integrity": "sha512-wwDCoT4Ck4Cz7sLtgUmzR5UV3YF5mFHUlbChCzZBQZ+0m2cl/DH3tKgvphv1nKgFsJ48oCSg6p91q2Vm0I/ZMA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "es-shim-unscopables": "^1.0.0" + } + }, + "node_modules/array.prototype.tosorted": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/array.prototype.tosorted/-/array.prototype.tosorted-1.1.3.tgz", + "integrity": "sha512-/DdH4TiTmOKzyQbp/eadcCVexiCb36xJg7HshYOYJnNZFDj33GEv0P7GxsynpShhq4OLYJzbGcBDkLsDt7MnNg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.5", + "define-properties": "^1.2.1", + "es-abstract": "^1.22.3", + "es-errors": "^1.1.0", + "es-shim-unscopables": "^1.0.2" + } + }, + "node_modules/arraybuffer.prototype.slice": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.3.tgz", + "integrity": "sha512-bMxMKAjg13EBSVscxTaYA4mRc5t1UAXa2kXiGTNfZ079HIWXEkKmkgFrh/nJqamaLSrXO5H4WFFkPEaLJWbs3A==", + "dev": true, + "dependencies": { + "array-buffer-byte-length": "^1.0.1", + "call-bind": "^1.0.5", + "define-properties": "^1.2.1", + "es-abstract": "^1.22.3", + "es-errors": "^1.2.1", + "get-intrinsic": "^1.2.3", + "is-array-buffer": "^3.0.4", + "is-shared-array-buffer": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/assertion-error": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz", + "integrity": "sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==", + "dev": true, + "engines": { + "node": "*" + } + }, + "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/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.7", + "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz", + "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==", + "dev": true, + "dependencies": { + "possible-typed-array-names": "^1.0.0" + }, + "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/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.23.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz", + "integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==", + "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.30001587", + "electron-to-chromium": "^1.4.668", + "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/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/cac": { + "version": "6.7.14", + "resolved": "https://registry.npmjs.org/cac/-/cac-6.7.14.tgz", + "integrity": "sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/call-bind": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.7.tgz", + "integrity": "sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==", + "dev": true, + "dependencies": { + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "set-function-length": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" + }, + "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==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001617", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001617.tgz", + "integrity": "sha512-mLyjzNI9I+Pix8zwcrpxEbGlfqOkF9kM3ptzmKNw5tizSyYwMe+nGLTqMK9cO+0E+Bh6TsBxNAaHWEM8xwSsmA==", + "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/chai": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/chai/-/chai-4.4.1.tgz", + "integrity": "sha512-13sOfMv2+DWduEU+/xbun3LScLoqN17nBeTLUsmDfKdoiC1fr0n9PU4guu4AhRcOVFk/sW8LyZWHuhWtQZiF+g==", + "dev": true, + "dependencies": { + "assertion-error": "^1.1.0", + "check-error": "^1.0.3", + "deep-eql": "^4.1.3", + "get-func-name": "^2.0.2", + "loupe": "^2.3.6", + "pathval": "^1.1.1", + "type-detect": "^4.0.8" + }, + "engines": { + "node": ">=4" + } + }, + "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/check-error": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.3.tgz", + "integrity": "sha512-iKEoDYaRmd1mxM90a2OEfWhjsjPpYPuQ+lMYsoxB126+t8fw7ySEO48nmDg5COTjxDI65/Y2OWpeEHk3ZOe8zg==", + "dev": true, + "dependencies": { + "get-func-name": "^2.0.2" + }, + "engines": { + "node": "*" + } + }, + "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/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/confbox": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/confbox/-/confbox-0.1.7.tgz", + "integrity": "sha512-uJcB/FKZtBMCJpK8MQji6bJHgu1tixKPxRLeGkNzBoOZzpnZUJm0jm2/sBDWcuBx1dYgxV4JU+g5hmNxCyAmdA==", + "dev": true + }, + "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/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/cssstyle": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-4.0.1.tgz", + "integrity": "sha512-8ZYiJ3A/3OkDd093CBT/0UKDWry7ak4BdPTFP2+QEP7cmhouyq/Up709ASSj2cK02BbZiMgk7kYjZNS4QP5qrQ==", + "dev": true, + "dependencies": { + "rrweb-cssom": "^0.6.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/csstype": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz", + "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==", + "dev": true + }, + "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": "5.0.0", + "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-5.0.0.tgz", + "integrity": "sha512-ZYP5VBHshaDAiVZxjbRVcFJpc+4xGgT0bK3vzy1HLN8jTO975HEbuYzZJcHoQEY5K1a0z8YayJkyVETa08eNTg==", + "dev": true, + "dependencies": { + "whatwg-mimetype": "^4.0.0", + "whatwg-url": "^14.0.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/data-view-buffer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.1.tgz", + "integrity": "sha512-0lht7OugA5x3iJLOWFhWK/5ehONdprk0ISXqVFn/NFrDu+cuc8iADFrGQz5BnRK7LLU3JmkbXSxaqX+/mXYtUA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/data-view-byte-length": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.1.tgz", + "integrity": "sha512-4J7wRJD3ABAzr8wP+OcIcqq2dlUKp4DVflx++hs5h5ZKydWMI6/D/fAot+yh6g2tHh8fLFTvNOaVN357NvSrOQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/data-view-byte-offset": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.0.tgz", + "integrity": "sha512-t/Ygsytq+R995EJ5PZlD4Cu56sWa8InXySaViRzw9apusqsOO2bQP+SbYzAhR0pFKoB+43lYy8rWban9JSuXnA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "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/deep-eql": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-4.1.3.tgz", + "integrity": "sha512-WaEtAOpRA1MQ0eohqZjpGD8zdI0Ovsm8mmFhaDN8dvDZzyoUMcYDnf5Y6iu7HTXxf8JDS23qWa4a+hKCDyOPzw==", + "dev": true, + "dependencies": { + "type-detect": "^4.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "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/define-data-property": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", + "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", + "dev": true, + "dependencies": { + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "gopd": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "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/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.5.16", + "resolved": "https://registry.npmjs.org/dom-accessibility-api/-/dom-accessibility-api-0.5.16.tgz", + "integrity": "sha512-X7BJ2yElsnOJ30pZF4uIIDfBEVgF4XEBxL9Bxhy6dnrm5hkzqmsWHGTiHqRiITNhMyFLyAiWndIJP7Z1NTteDg==", + "dev": true + }, + "node_modules/eastasianwidth": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", + "dev": true + }, + "node_modules/electron-to-chromium": { + "version": "1.4.762", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.762.tgz", + "integrity": "sha512-rrFvGweLxPwwSwJOjIopy3Vr+J3cIPtZzuc74bmlvmBIgQO3VYJDvVrlj94iKZ3ukXUH64Ex31hSfRTLqvjYJQ==", + "dev": true + }, + "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.16.1", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.16.1.tgz", + "integrity": "sha512-4U5pNsuDl0EhuZpq46M5xPslstkviJuhrdobaRDBk2Jy2KO37FDAJl4lb2KlNabxT0m4MTK2UHNrsAcphE8nyw==", + "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/es-abstract": { + "version": "1.23.3", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.23.3.tgz", + "integrity": "sha512-e+HfNH61Bj1X9/jLc5v1owaLYuHdeHHSQlkhCBiTK8rBvKaULl/beGMxwrMXjpYrv4pz22BlY570vVePA2ho4A==", + "dev": true, + "dependencies": { + "array-buffer-byte-length": "^1.0.1", + "arraybuffer.prototype.slice": "^1.0.3", + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.7", + "data-view-buffer": "^1.0.1", + "data-view-byte-length": "^1.0.1", + "data-view-byte-offset": "^1.0.0", + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "es-set-tostringtag": "^2.0.3", + "es-to-primitive": "^1.2.1", + "function.prototype.name": "^1.1.6", + "get-intrinsic": "^1.2.4", + "get-symbol-description": "^1.0.2", + "globalthis": "^1.0.3", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.2", + "has-proto": "^1.0.3", + "has-symbols": "^1.0.3", + "hasown": "^2.0.2", + "internal-slot": "^1.0.7", + "is-array-buffer": "^3.0.4", + "is-callable": "^1.2.7", + "is-data-view": "^1.0.1", + "is-negative-zero": "^2.0.3", + "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.3", + "is-string": "^1.0.7", + "is-typed-array": "^1.1.13", + "is-weakref": "^1.0.2", + "object-inspect": "^1.13.1", + "object-keys": "^1.1.1", + "object.assign": "^4.1.5", + "regexp.prototype.flags": "^1.5.2", + "safe-array-concat": "^1.1.2", + "safe-regex-test": "^1.0.3", + "string.prototype.trim": "^1.2.9", + "string.prototype.trimend": "^1.0.8", + "string.prototype.trimstart": "^1.0.8", + "typed-array-buffer": "^1.0.2", + "typed-array-byte-length": "^1.0.1", + "typed-array-byte-offset": "^1.0.2", + "typed-array-length": "^1.0.6", + "unbox-primitive": "^1.0.2", + "which-typed-array": "^1.1.15" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/es-define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.0.tgz", + "integrity": "sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==", + "dev": true, + "dependencies": { + "get-intrinsic": "^1.2.4" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-errors": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", + "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", + "dev": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-iterator-helpers": { + "version": "1.0.19", + "resolved": "https://registry.npmjs.org/es-iterator-helpers/-/es-iterator-helpers-1.0.19.tgz", + "integrity": "sha512-zoMwbCcH5hwUkKJkT8kDIBZSz9I6mVG//+lDCinLCGov4+r7NIy0ld8o03M0cJxl2spVf6ESYVS6/gpIfq1FFw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.3", + "es-errors": "^1.3.0", + "es-set-tostringtag": "^2.0.3", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "globalthis": "^1.0.3", + "has-property-descriptors": "^1.0.2", + "has-proto": "^1.0.3", + "has-symbols": "^1.0.3", + "internal-slot": "^1.0.7", + "iterator.prototype": "^1.1.2", + "safe-array-concat": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-object-atoms": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.0.0.tgz", + "integrity": "sha512-MZ4iQ6JwHOBQjahnjwaC1ZtIBH+2ohjamzAO3oaHcXYup7qxjF2fixyH+Q71voWHeOkI2q/TnJao/KfXYIZWbw==", + "dev": true, + "dependencies": { + "es-errors": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-set-tostringtag": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.3.tgz", + "integrity": "sha512-3T8uNMC3OQTHkFUsFq8r/BwAXLHvU/9O9mE0fBc/MY5iq/8H7ncvO947LmYA6ldWw9Uh8Yhf25zu6n7nML5QWQ==", + "dev": true, + "dependencies": { + "get-intrinsic": "^1.2.4", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.1" + }, + "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/esbuild": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.20.2.tgz", + "integrity": "sha512-WdOOppmUNU+IbZ0PaDiTst80zjnrOkyJNHoKupIcVyU8Lvla3Ugx94VzkQ32Ijqd7UhHJy75gNWDMUekcrSJ6g==", + "dev": true, + "hasInstallScript": true, + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=12" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.20.2", + "@esbuild/android-arm": "0.20.2", + "@esbuild/android-arm64": "0.20.2", + "@esbuild/android-x64": "0.20.2", + "@esbuild/darwin-arm64": "0.20.2", + "@esbuild/darwin-x64": "0.20.2", + "@esbuild/freebsd-arm64": "0.20.2", + "@esbuild/freebsd-x64": "0.20.2", + "@esbuild/linux-arm": "0.20.2", + "@esbuild/linux-arm64": "0.20.2", + "@esbuild/linux-ia32": "0.20.2", + "@esbuild/linux-loong64": "0.20.2", + "@esbuild/linux-mips64el": "0.20.2", + "@esbuild/linux-ppc64": "0.20.2", + "@esbuild/linux-riscv64": "0.20.2", + "@esbuild/linux-s390x": "0.20.2", + "@esbuild/linux-x64": "0.20.2", + "@esbuild/netbsd-x64": "0.20.2", + "@esbuild/openbsd-x64": "0.20.2", + "@esbuild/sunos-x64": "0.20.2", + "@esbuild/win32-arm64": "0.20.2", + "@esbuild/win32-ia32": "0.20.2", + "@esbuild/win32-x64": "0.20.2" + } + }, + "node_modules/escalade": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.2.tgz", + "integrity": "sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==", + "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==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint": { + "version": "8.57.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.57.0.tgz", + "integrity": "sha512-dZ6+mexnaTIbSBZWgou51U6OmzIhYM2VcNdtiTtI7qPNZm35Akpr0f6vtw3w1Kmn5PYo+tZVfh13WrhpS6oLqQ==", + "dev": true, + "dependencies": { + "@eslint-community/eslint-utils": "^4.2.0", + "@eslint-community/regexpp": "^4.6.1", + "@eslint/eslintrc": "^2.1.4", + "@eslint/js": "8.57.0", + "@humanwhocodes/config-array": "^0.11.14", + "@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-next": { + "version": "14.2.3", + "resolved": "https://registry.npmjs.org/eslint-config-next/-/eslint-config-next-14.2.3.tgz", + "integrity": "sha512-ZkNztm3Q7hjqvB1rRlOX8P9E/cXRL9ajRcs8jufEtwMfTVYRqnmtnaSu57QqHyBlovMuiB8LEzfLBkh5RYV6Fg==", + "dev": true, + "dependencies": { + "@next/eslint-plugin-next": "14.2.3", + "@rushstack/eslint-patch": "^1.3.3", + "@typescript-eslint/parser": "^5.4.2 || ^6.0.0 || 7.0.0 - 7.2.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.1", + "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.8.1.tgz", + "integrity": "sha512-rXDXR3h7cs7dy9RNpUlQf80nX31XWJEyGq1tRMo+6GsO5VmTe4UTwtmonAD4ZkAsrfMVDA2wlGJ3790Ys+D49Q==", + "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-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.34.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.34.1.tgz", + "integrity": "sha512-N97CxlouPT1AHt8Jn0mhhN2RrADlUAsk1/atcT2KyA/l9Q/E6ll7OIGwNumFmWfZ9skV3XXccYS19h80rHtgkw==", + "dev": true, + "dependencies": { + "array-includes": "^3.1.7", + "array.prototype.findlast": "^1.2.4", + "array.prototype.flatmap": "^1.3.2", + "array.prototype.toreversed": "^1.1.2", + "array.prototype.tosorted": "^1.1.3", + "doctrine": "^2.1.0", + "es-iterator-helpers": "^1.0.17", + "estraverse": "^5.3.0", + "jsx-ast-utils": "^2.4.1 || ^3.0.0", + "minimatch": "^3.1.2", + "object.entries": "^1.1.7", + "object.fromentries": "^2.0.7", + "object.hasown": "^1.1.3", + "object.values": "^1.1.7", + "prop-types": "^15.8.1", + "resolve": "^2.0.0-next.5", + "semver": "^6.3.1", + "string.prototype.matchall": "^4.0.10" + }, + "engines": { + "node": ">=4" + }, + "peerDependencies": { + "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8" + } + }, + "node_modules/eslint-plugin-react-hooks": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.6.2.tgz", + "integrity": "sha512-QzliNJq4GinDBcD8gPB5v0wh6g8q3SUi6EFF0x8N/BL9PoVs0atuGc47ozMRyOWAKdwaZ5OnbOEa3WR+dSGKuQ==", + "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-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/eslint/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/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/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/estree-walker": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-3.0.3.tgz", + "integrity": "sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==", + "dev": true, + "dependencies": { + "@types/estree": "^1.0.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": "8.0.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-8.0.1.tgz", + "integrity": "sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==", + "dev": true, + "dependencies": { + "cross-spawn": "^7.0.3", + "get-stream": "^8.0.1", + "human-signals": "^5.0.0", + "is-stream": "^3.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^5.1.0", + "onetime": "^6.0.0", + "signal-exit": "^4.1.0", + "strip-final-newline": "^3.0.0" + }, + "engines": { + "node": ">=16.17" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, + "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.17.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.1.tgz", + "integrity": "sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==", + "dev": true, + "dependencies": { + "reusify": "^1.0.4" + } + }, + "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-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.3.1", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.1.tgz", + "integrity": "sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==", + "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/foreground-child": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz", + "integrity": "sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==", + "dev": true, + "dependencies": { + "cross-spawn": "^7.0.0", + "signal-exit": "^4.0.1" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "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==", + "dev": true, + "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-func-name": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.2.tgz", + "integrity": "sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ==", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/get-intrinsic": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.4.tgz", + "integrity": "sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==", + "dev": true, + "dependencies": { + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "has-proto": "^1.0.1", + "has-symbols": "^1.0.3", + "hasown": "^2.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-stream": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-8.0.1.tgz", + "integrity": "sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==", + "dev": true, + "engines": { + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/get-symbol-description": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.2.tgz", + "integrity": "sha512-g0QYk1dZBxGwk+Ngc+ltRH2IBp2f7zBkBMBJZCDerh6EhlhSR6+9irMCuT/09zD6qkarHUSn529sK/yL4S27mg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.5", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-tsconfig": { + "version": "4.7.5", + "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.7.5.tgz", + "integrity": "sha512-ZCuZCnlqNzjb4QprAzXKdpp/gh6KTxSJuw3IBsPnV/7fV4NxC9ckB+vPTt8w7fJA0TaSD7c55BR47JD6MEDyDw==", + "dev": true, + "dependencies": { + "resolve-pkg-maps": "^1.0.0" + }, + "funding": { + "url": "https://github.com/privatenumber/get-tsconfig?sponsor=1" + } + }, + "node_modules/glob": { + "version": "10.3.10", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", + "integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==", + "dev": true, + "dependencies": { + "foreground-child": "^3.1.0", + "jackspeak": "^2.3.5", + "minimatch": "^9.0.1", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0", + "path-scurry": "^1.10.1" + }, + "bin": { + "glob": "dist/esm/bin.mjs" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "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/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/glob/node_modules/minimatch": { + "version": "9.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.4.tgz", + "integrity": "sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "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/globalthis": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz", + "integrity": "sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==", + "dev": true, + "dependencies": { + "define-properties": "^1.2.1", + "gopd": "^1.0.1" + }, + "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.2", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", + "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", + "dev": true, + "dependencies": { + "es-define-property": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-proto": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.3.tgz", + "integrity": "sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==", + "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.2", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", + "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", + "dev": true, + "dependencies": { + "has-symbols": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/hasown": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "dev": true, + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/html-encoding-sniffer": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-4.0.0.tgz", + "integrity": "sha512-Y22oTqIU4uuPgEemfz7NDJz6OeKf12Lsu+QC+s3BVpda64lTiMYCyGwg5ki4vFxkMwQdeZDl2adZoqUgdFuTgQ==", + "dev": true, + "dependencies": { + "whatwg-encoding": "^3.1.1" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/http-proxy-agent": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.2.tgz", + "integrity": "sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig==", + "dev": true, + "dependencies": { + "agent-base": "^7.1.0", + "debug": "^4.3.4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/https-proxy-agent": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.4.tgz", + "integrity": "sha512-wlwpilI7YdjSkWaQ/7omYBMTliDcmCN8OLihO6I9B86g06lMyAoqgoDpV0XqoaPOKj+0DIdAvnsWfyAAhmimcg==", + "dev": true, + "dependencies": { + "agent-base": "^7.0.2", + "debug": "4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/human-signals": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-5.0.0.tgz", + "integrity": "sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==", + "dev": true, + "engines": { + "node": ">=16.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.1", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.1.tgz", + "integrity": "sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==", + "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==", + "dev": true, + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + }, + "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/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.7", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.7.tgz", + "integrity": "sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g==", + "dev": true, + "dependencies": { + "es-errors": "^1.3.0", + "hasown": "^2.0.0", + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/is-array-buffer": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.4.tgz", + "integrity": "sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "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==", + "dev": true, + "dependencies": { + "hasown": "^2.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-data-view": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-data-view/-/is-data-view-1.0.1.tgz", + "integrity": "sha512-AHkaJrsUVW6wq6JS8y3JnM/GJF/9cf+k20+iDzlSaJrinEo5+7vRiteOSwBhHRiAyQATN1AmY4hwzxJKPmYf+w==", + "dev": true, + "dependencies": { + "is-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + }, + "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-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.3", + "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.3.tgz", + "integrity": "sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-negative-zero": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.3.tgz", + "integrity": "sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==", + "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.3", + "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.3.tgz", + "integrity": "sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-shared-array-buffer": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.3.tgz", + "integrity": "sha512-nA2hv5XIhLR3uVzDDfCIknerhx8XUKnstuOERPNNIinXG7v9u+ohXF67vxm4TPTEPU6lm61ZkwP3c9PCB97rhg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.7" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-stream": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz", + "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==", + "dev": true, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "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.13", + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.13.tgz", + "integrity": "sha512-uZ25/bUAlUY5fR4OKT4rZQEBrzQWYV9ZJYGGsUmEJ6thodVJ1HX64ePQ6Z0qPWP+m+Uq6e9UugrE38jeYsDSMw==", + "dev": true, + "dependencies": { + "which-typed-array": "^1.1.14" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-weakmap": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.2.tgz", + "integrity": "sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "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.3", + "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.3.tgz", + "integrity": "sha512-LvIm3/KWzS9oRFHugab7d+M/GcBXuXX5xZkzPmN+NxihdQlZUQ4dWuSV1xR/sq6upL1TJEDrfBgRepHFdBtSNQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.7", + "get-intrinsic": "^1.2.4" + }, + "engines": { + "node": ">= 0.4" + }, + "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/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/jackspeak": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.3.6.tgz", + "integrity": "sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==", + "dev": true, + "dependencies": { + "@isaacs/cliui": "^8.0.2" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + }, + "optionalDependencies": { + "@pkgjs/parseargs": "^0.11.0" + } + }, + "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": "24.0.0", + "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-24.0.0.tgz", + "integrity": "sha512-UDS2NayCvmXSXVP6mpTj+73JnNQadZlr9N68189xib2tx5Mls7swlTNao26IoHv46BZJFvXygyRtyXd1feAk1A==", + "dev": true, + "dependencies": { + "cssstyle": "^4.0.1", + "data-urls": "^5.0.0", + "decimal.js": "^10.4.3", + "form-data": "^4.0.0", + "html-encoding-sniffer": "^4.0.0", + "http-proxy-agent": "^7.0.0", + "https-proxy-agent": "^7.0.2", + "is-potential-custom-element-name": "^1.0.1", + "nwsapi": "^2.2.7", + "parse5": "^7.1.2", + "rrweb-cssom": "^0.6.0", + "saxes": "^6.0.0", + "symbol-tree": "^3.2.4", + "tough-cookie": "^4.1.3", + "w3c-xmlserializer": "^5.0.0", + "webidl-conversions": "^7.0.0", + "whatwg-encoding": "^3.1.1", + "whatwg-mimetype": "^4.0.0", + "whatwg-url": "^14.0.0", + "ws": "^8.16.0", + "xml-name-validator": "^5.0.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "canvas": "^2.11.2" + }, + "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-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": "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/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/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/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/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/local-pkg": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/local-pkg/-/local-pkg-0.5.0.tgz", + "integrity": "sha512-ok6z3qlYyCDS4ZEU27HaU6x/xZa9Whf8jD4ptH5UZTQYZVYeb9bnZ3ojVhiJNLiXK1Hfc0GNbLXcmZ5plLDDBg==", + "dev": true, + "dependencies": { + "mlly": "^1.4.2", + "pkg-types": "^1.0.3" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "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.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/loupe": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/loupe/-/loupe-2.3.7.tgz", + "integrity": "sha512-zSMINGVYkdpYSOBmLi0D1Uo7JU9nVdQKrHxC8eYlV+9YKK9WePqAlL7lSlorG/U2Fw1w0hTBmaa/jrQ3UbPHtA==", + "dev": true, + "dependencies": { + "get-func-name": "^2.0.1" + } + }, + "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/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/magic-string": { + "version": "0.30.10", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.10.tgz", + "integrity": "sha512-iIRwTIf0QKV3UAnYK4PU8uiEc4SRh5jX0mwpIwETPpHdhVM4f53RSwS/vXvN1JhGX+Cs7B8qIq3d6AH49O5fAQ==", + "dev": true, + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.4.15" + } + }, + "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": "4.0.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-4.0.0.tgz", + "integrity": "sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "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/minipass": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.1.tgz", + "integrity": "sha512-UZ7eQ+h8ywIRAW1hIEl2AqdwzJucU/Kp59+8kkZeSvafXhZjul247BvIJjEVFVeON6d7lM46XX1HXCduKAS8VA==", + "dev": true, + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/mlly": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/mlly/-/mlly-1.7.0.tgz", + "integrity": "sha512-U9SDaXGEREBYQgfejV97coK0UL1r+qnF2SyO9A3qcI8MzKnsIFKHNVEkrDyNncQTKQQumsasmeq84eNMdBfsNQ==", + "dev": true, + "dependencies": { + "acorn": "^8.11.3", + "pathe": "^1.1.2", + "pkg-types": "^1.1.0", + "ufo": "^1.5.3" + } + }, + "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.2.3", + "resolved": "https://registry.npmjs.org/next/-/next-14.2.3.tgz", + "integrity": "sha512-dowFkFTR8v79NPJO4QsBUtxv0g9BrS/phluVpMAt2ku7H+cbcBJlopXjkWlwxrk/xGqMemr7JkGPGemPrLLX7A==", + "dependencies": { + "@next/env": "14.2.3", + "@swc/helpers": "0.5.5", + "busboy": "1.6.0", + "caniuse-lite": "^1.0.30001579", + "graceful-fs": "^4.2.11", + "postcss": "8.4.31", + "styled-jsx": "5.1.1" + }, + "bin": { + "next": "dist/bin/next" + }, + "engines": { + "node": ">=18.17.0" + }, + "optionalDependencies": { + "@next/swc-darwin-arm64": "14.2.3", + "@next/swc-darwin-x64": "14.2.3", + "@next/swc-linux-arm64-gnu": "14.2.3", + "@next/swc-linux-arm64-musl": "14.2.3", + "@next/swc-linux-x64-gnu": "14.2.3", + "@next/swc-linux-x64-musl": "14.2.3", + "@next/swc-win32-arm64-msvc": "14.2.3", + "@next/swc-win32-ia32-msvc": "14.2.3", + "@next/swc-win32-x64-msvc": "14.2.3" + }, + "peerDependencies": { + "@opentelemetry/api": "^1.1.0", + "@playwright/test": "^1.41.2", + "react": "^18.2.0", + "react-dom": "^18.2.0", + "sass": "^1.3.0" + }, + "peerDependenciesMeta": { + "@opentelemetry/api": { + "optional": true + }, + "@playwright/test": { + "optional": true + }, + "sass": { + "optional": 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/npm-run-path": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.3.0.tgz", + "integrity": "sha512-ppwTtiJZq0O/ai0z7yfudtBpWIoxM8yE6nHi1X47eFR2EWORqfbu6CnPlNsjeN683eT0qG6H/Pyf9fCcvjnnnQ==", + "dev": true, + "dependencies": { + "path-key": "^4.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/npm-run-path/node_modules/path-key": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-4.0.0.tgz", + "integrity": "sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/nwsapi": { + "version": "2.2.9", + "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.9.tgz", + "integrity": "sha512-2f3F0SEEer8bBu0dsNCFF50N0cTThV1nWFYcEYFZttdW0lDAoybv9cQoK7X7/68Z89S7FoRrVjP1LPX4XRf9vg==", + "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==", + "dev": true, + "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-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.8", + "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.8.tgz", + "integrity": "sha512-cmopxi8VwRIAw/fkijJohSfpef5PdN0pMQJN6VC/ZKvn0LIknWD8KtgY6KlQdEc4tIjcQ3HxSMmnvtzIscdaYQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.fromentries": { + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.8.tgz", + "integrity": "sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.groupby": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/object.groupby/-/object.groupby-1.0.3.tgz", + "integrity": "sha512-+Lhy3TQTuzXI5hevh8sBGqbmurHbbIjAi0Z4S63nthVLmLxfbj4T54a4CfZrXIrt9iP4mVAPYMo/v99taj3wjQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.hasown": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/object.hasown/-/object.hasown-1.1.4.tgz", + "integrity": "sha512-FZ9LZt9/RHzGySlBARE3VF+gE26TxR38SdmqOqliuTnl9wrKulaQs+4dee1V+Io8VfxqzAfHu6YuRgUy8OHoTg==", + "dev": true, + "dependencies": { + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.values": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.2.0.tgz", + "integrity": "sha512-yBYjY9QX2hnRmZHAjG/f13MzmBzxzYgQhFrke06TTyKY5zSTEqkOeukBzIdVA3j3ulu8Qa3MbVFShV7T2RmGtQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "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": "6.0.0", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-6.0.0.tgz", + "integrity": "sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==", + "dev": true, + "dependencies": { + "mimic-fn": "^4.0.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/optionator": { + "version": "0.9.4", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.4.tgz", + "integrity": "sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==", + "dev": true, + "dependencies": { + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0", + "word-wrap": "^1.2.5" + }, + "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/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==", + "dev": true, + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "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==", + "dev": true + }, + "node_modules/path-scurry": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.0.tgz", + "integrity": "sha512-LNHTaVkzaYaLGlO+0u3rQTz7QrHTFOuKyba9JMTQutkmtNew8dw8wOD7mTU/5fCPZzCWpfW0XnQKzY61P0aTaw==", + "dev": true, + "dependencies": { + "lru-cache": "^10.2.0", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/path-scurry/node_modules/lru-cache": { + "version": "10.2.2", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.2.tgz", + "integrity": "sha512-9hp3Vp2/hFQUiIwKo8XCeFVnrg8Pk3TYNPIR7tJADKi5YfcF7vEaK7avFHTlSy3kOKYaJQaalfEo6YuXdceBOQ==", + "dev": true, + "engines": { + "node": "14 || >=16.14" + } + }, + "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==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/pathe": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/pathe/-/pathe-1.1.2.tgz", + "integrity": "sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==", + "dev": true + }, + "node_modules/pathval": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/pathval/-/pathval-1.1.1.tgz", + "integrity": "sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==", + "dev": true, + "engines": { + "node": "*" + } + }, + "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/pkg-types": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/pkg-types/-/pkg-types-1.1.1.tgz", + "integrity": "sha512-ko14TjmDuQJ14zsotODv7dBlwxKhUKQEhuhmbqo1uCi9BB0Z2alo/wAXg6q1dTR5TyuqYyWhjtfe/Tsh+X28jQ==", + "dev": true, + "dependencies": { + "confbox": "^0.1.7", + "mlly": "^1.7.0", + "pathe": "^1.1.2" + } + }, + "node_modules/possible-typed-array-names": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.0.0.tgz", + "integrity": "sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q==", + "dev": true, + "engines": { + "node": ">= 0.4" + } + }, + "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/prop-types": { + "version": "15.8.1", + "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", + "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==", + "dev": true, + "dependencies": { + "loose-envify": "^1.4.0", + "object-assign": "^4.1.1", + "react-is": "^16.13.1" + } + }, + "node_modules/prop-types/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==", + "dev": true + }, + "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/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.3.1", + "resolved": "https://registry.npmjs.org/react/-/react-18.3.1.tgz", + "integrity": "sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==", + "dependencies": { + "loose-envify": "^1.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/react-dom": { + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.3.1.tgz", + "integrity": "sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw==", + "dependencies": { + "loose-envify": "^1.1.0", + "scheduler": "^0.23.2" + }, + "peerDependencies": { + "react": "^18.3.1" + } + }, + "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/react-refresh": { + "version": "0.14.2", + "resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.14.2.tgz", + "integrity": "sha512-jCvmsr+1IUSMUyzOkRcvnVbX3ZYC6g9TDrDbFuFmRDq7PD4yaGbLKNQL6k2jnArV8hjYxh7hVhAZB6s9HDGpZA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/reflect.getprototypeof": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/reflect.getprototypeof/-/reflect.getprototypeof-1.0.6.tgz", + "integrity": "sha512-fmfw4XgoDke3kdI6h4xcUz1dG8uaiv5q9gcEwLS4Pnth2kxT+GZ7YehS1JTMGBQmtV7Y4GFGbs2re2NqhdozUg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.1", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.4", + "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==", + "dev": true + }, + "node_modules/regexp.prototype.flags": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.2.tgz", + "integrity": "sha512-NcDiDkTLuPR+++OCKB0nWafEmhg/Da8aUPLPMQbK+bxKKCm1/S5he+AqYa4PlMCVBalb4/yxIRub6qkEx5yJbw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.6", + "define-properties": "^1.2.1", + "es-errors": "^1.3.0", + "set-function-name": "^2.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "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==", + "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/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==", + "dev": true, + "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/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/rimraf/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "dev": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/rollup": { + "name": "@rollup/wasm-node", + "version": "4.17.2", + "resolved": "https://registry.npmjs.org/@rollup/wasm-node/-/wasm-node-4.17.2.tgz", + "integrity": "sha512-4F6C3XaUn02XY/GJMQTXncWrLyCkRHdRZe4OyWuQUprWKmU2u+esISOtCYdr3Bp9AqCIo/X3So2Ik7N9dNDwow==", + "dev": true, + "dependencies": { + "@types/estree": "1.0.5" + }, + "bin": { + "rollup": "dist/bin/rollup" + }, + "engines": { + "node": ">=18.0.0", + "npm": ">=8.0.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/rrweb-cssom": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/rrweb-cssom/-/rrweb-cssom-0.6.0.tgz", + "integrity": "sha512-APM0Gt1KoXBz0iIkkdB/kfvGOwC4UuJFeG/c+yV7wSc7q96cG/kJ0HiYCnzivD9SB53cLV1MlHFNfOuPaadYSw==", + "dev": true + }, + "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.1.2", + "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.2.tgz", + "integrity": "sha512-vj6RsCsWBCf19jIeHEfkRMw8DPiBb+DMXklQ/1SGDHOMlHdPUkZXFQ2YdplS23zESTijAcurb1aSgJA3AgMu1Q==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.7", + "get-intrinsic": "^1.2.4", + "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.3", + "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.3.tgz", + "integrity": "sha512-CdASjNJPvRa7roO6Ra/gLYBTzYzzPyyBXxIMdGW3USQLyjWEls2RgW5UBTXaQVp+OrpeCK3bLem8smtmheoRuw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", + "is-regex": "^1.1.4" + }, + "engines": { + "node": ">= 0.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.2", + "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.2.tgz", + "integrity": "sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ==", + "dependencies": { + "loose-envify": "^1.1.0" + } + }, + "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/set-function-length": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", + "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==", + "dev": true, + "dependencies": { + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/set-function-name": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.2.tgz", + "integrity": "sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==", + "dev": true, + "dependencies": { + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "functions-have-names": "^1.2.3", + "has-property-descriptors": "^1.0.2" + }, + "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.6", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.6.tgz", + "integrity": "sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.4", + "object-inspect": "^1.13.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/siginfo": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/siginfo/-/siginfo-2.0.0.tgz", + "integrity": "sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g==", + "dev": true + }, + "node_modules/signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", + "dev": true, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "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-js": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.0.tgz", + "integrity": "sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/stackback": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/stackback/-/stackback-0.0.2.tgz", + "integrity": "sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==", + "dev": true + }, + "node_modules/std-env": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/std-env/-/std-env-3.7.0.tgz", + "integrity": "sha512-JPbdCEQLj1w5GilpiHAx3qJvFndqybBysA3qUOnznweH4QbNYUsW/ea8QzSrnh0vNsezMMw5bcVool8lM0gwzg==", + "dev": true + }, + "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-width": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "dev": true, + "dependencies": { + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/string-width-cjs": { + "name": "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-cjs/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-width/node_modules/ansi-regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/string-width/node_modules/strip-ansi": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", + "dev": true, + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "node_modules/string.prototype.matchall": { + "version": "4.0.11", + "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.11.tgz", + "integrity": "sha512-NUdh0aDavY2og7IbBPenWqR9exH+E26Sv8e0/eTe1tltDGZL+GtBkDAnnyBtmekfK6/Dq3MkcGtzXFEd1LQrtg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "get-intrinsic": "^1.2.4", + "gopd": "^1.0.1", + "has-symbols": "^1.0.3", + "internal-slot": "^1.0.7", + "regexp.prototype.flags": "^1.5.2", + "set-function-name": "^2.0.2", + "side-channel": "^1.0.6" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trim": { + "version": "1.2.9", + "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.9.tgz", + "integrity": "sha512-klHuCNxiMZ8MlsOihJhJEBJAiMVqU3Z2nEXWfWnIqjN0gEFS9J9+IxKozWWtQGcgoa1WUZzLjKPTr4ZHNFTFxw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.0", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimend": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.8.tgz", + "integrity": "sha512-p73uL5VCHCO2BZZ6krwwQE3kCzM7NKmis8S//xEC6fQonchbum4eP6kR4DLEjQFO3Wnj3Fuo8NM0kOSjVdHjZQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimstart": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz", + "integrity": "sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "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-ansi-cjs": { + "name": "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": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-3.0.0.tgz", + "integrity": "sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "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/strip-literal": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/strip-literal/-/strip-literal-2.1.0.tgz", + "integrity": "sha512-Op+UycaUt/8FbN/Z2TWPBLge3jWrP3xj10f3fnYxf052bKuS3EKs1ZQcVGjnEMdsNVAM+plXRdmjrZ/KgG3Skw==", + "dev": true, + "dependencies": { + "js-tokens": "^9.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/strip-literal/node_modules/js-tokens": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-9.0.0.tgz", + "integrity": "sha512-WriZw1luRMlmV3LGJaR6QOJjWwgLUTf89OwT2lUOyjX2dJGBwgmIkbcz+7WFZjrZM635JOIR517++e/67CP9dQ==", + "dev": true + }, + "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/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==", + "dev": true, + "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/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/tinybench": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/tinybench/-/tinybench-2.8.0.tgz", + "integrity": "sha512-1/eK7zUnIklz4JUUlL+658n58XO2hHLQfSk1Zf2LKieUjxidN16eKFEoDEfjHc3ohofSSqK3X5yO6VGb6iW8Lw==", + "dev": true + }, + "node_modules/tinypool": { + "version": "0.8.4", + "resolved": "https://registry.npmjs.org/tinypool/-/tinypool-0.8.4.tgz", + "integrity": "sha512-i11VH5gS6IFeLY3gMBQ00/MmLncVP7JLXOw1vlgkytLmJK7QnEr7NXf0LBdxfmNPAeyetukOk0bOYrJrFGjYJQ==", + "dev": true, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/tinyspy": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/tinyspy/-/tinyspy-2.2.1.tgz", + "integrity": "sha512-KYad6Vy5VDWV4GH3fjpseMQ/XU2BhIYP7Vzd0LG44qRWm/Yt2WCOTicFdvmgo6gWaqooMQCawTtILVQJupKu7A==", + "dev": true, + "engines": { + "node": ">=14.0.0" + } + }, + "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==", + "dev": true, + "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.4", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.1.4.tgz", + "integrity": "sha512-Loo5UUvLD9ScZ6jh8beX1T6sO1w2/MpCRpEP7V280GKMVUQ0Jzar2U3UJPsrdbziLEMMhu3Ujnq//rhiFuIeag==", + "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": "5.0.0", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-5.0.0.tgz", + "integrity": "sha512-tk2G5R2KRwBd+ZN0zaEXpmzdKyOYksXwywulIX95MBODjSzMIuQnQ3m8JxgbhnL1LeVo7lqQKsYa1O3Htl7K5g==", + "dev": true, + "dependencies": { + "punycode": "^2.3.1" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/ts-api-utils": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.3.0.tgz", + "integrity": "sha512-UQMIo7pb8WRomKR1/+MFVLTroIvDVtMX3K6OUir8ynLyzB8Jeriont2bTAtmNPa1ekAgN7YPDyf6V+ygrdU+eQ==", + "dev": true, + "engines": { + "node": ">=16" + }, + "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/tsconfig-paths/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/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.2", + "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.2.tgz", + "integrity": "sha512-gEymJYKZtKXzzBzM4jqa9w6Q1Jjm7x2d+sh19AdsD4wqnMPDYyvwpsIc2Q/835kHuo3BEQ7CjelGhfTsoBb2MQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "is-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/typed-array-byte-length": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.1.tgz", + "integrity": "sha512-3iMJ9q0ao7WE9tWcaYKIptkNBuOIcZCCT0d4MRvuuH88fEoEH62IuQe0OtraD3ebQEoTRk8XCBoknUNc1Y67pw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-proto": "^1.0.3", + "is-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typed-array-byte-offset": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.2.tgz", + "integrity": "sha512-Ous0vodHa56FviZucS2E63zkgtgrACj7omjwd/8lTEMEPFFyjfixMZ1ZXenpgCFBBt4EC1J2XsyVS2gkG0eTFA==", + "dev": true, + "dependencies": { + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-proto": "^1.0.3", + "is-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typed-array-length": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.6.tgz", + "integrity": "sha512-/OxDN6OtAk5KBpGb28T+HZc2M+ADtvRxXrKKbUwtsLgdoxgX13hyy7ek6bFRl5+aBs2yZzB0c4CnQfAtVypW/g==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-proto": "^1.0.3", + "is-typed-array": "^1.1.13", + "possible-typed-array-names": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typescript": { + "version": "5.4.5", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.4.5.tgz", + "integrity": "sha512-vcI4UpRgg81oIRUFwR0WSIHKt11nJ7SAVlYNIu+QpqeyXP+gpQJy/Z4+F0aGxSE4MqwjyXvW/TzgkLAx2AGHwQ==", + "dev": true, + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, + "node_modules/ufo": { + "version": "1.5.3", + "resolved": "https://registry.npmjs.org/ufo/-/ufo-1.5.3.tgz", + "integrity": "sha512-Y7HYmWaFwPUmkoQCUIAYpKqkOf+SbVj/2fJJZ4RJMCfZp0rTGwRbzQD+HghfnhKOjL9E01okqz+ncJskGYfBNw==", + "dev": true + }, + "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.15", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.15.tgz", + "integrity": "sha512-K9HWH62x3/EalU1U6sjSZiylm9C8tgq2mSvshZpqc7QE69RaA2qjhkW2HlNA0tFpEbtyFz7HTqbSdN4MSwUodA==", + "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.2", + "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/vite": { + "version": "5.2.11", + "resolved": "https://registry.npmjs.org/vite/-/vite-5.2.11.tgz", + "integrity": "sha512-HndV31LWW05i1BLPMUCE1B9E9GFbOu1MbenhS58FuK6owSO5qHm7GiCotrNY1YE5rMeQSFBGmT5ZaLEjFizgiQ==", + "dev": true, + "dependencies": { + "esbuild": "^0.20.1", + "postcss": "^8.4.38", + "rollup": "^4.13.0" + }, + "bin": { + "vite": "bin/vite.js" + }, + "engines": { + "node": "^18.0.0 || >=20.0.0" + }, + "funding": { + "url": "https://github.com/vitejs/vite?sponsor=1" + }, + "optionalDependencies": { + "fsevents": "~2.3.3" + }, + "peerDependencies": { + "@types/node": "^18.0.0 || >=20.0.0", + "less": "*", + "lightningcss": "^1.21.0", + "sass": "*", + "stylus": "*", + "sugarss": "*", + "terser": "^5.4.0" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "less": { + "optional": true + }, + "lightningcss": { + "optional": true + }, + "sass": { + "optional": true + }, + "stylus": { + "optional": true + }, + "sugarss": { + "optional": true + }, + "terser": { + "optional": true + } + } + }, + "node_modules/vite-node": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/vite-node/-/vite-node-1.6.0.tgz", + "integrity": "sha512-de6HJgzC+TFzOu0NTC4RAIsyf/DY/ibWDYQUcuEA84EMHhcefTUGkjFHKKEJhQN4A+6I0u++kr3l36ZF2d7XRw==", + "dev": true, + "dependencies": { + "cac": "^6.7.14", + "debug": "^4.3.4", + "pathe": "^1.1.1", + "picocolors": "^1.0.0", + "vite": "^5.0.0" + }, + "bin": { + "vite-node": "vite-node.mjs" + }, + "engines": { + "node": "^18.0.0 || >=20.0.0" + }, + "funding": { + "url": "https://opencollective.com/vitest" + } + }, + "node_modules/vite/node_modules/postcss": { + "version": "8.4.38", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.38.tgz", + "integrity": "sha512-Wglpdk03BSfXkHoQa3b/oulrotAkwrlLDRSOb9D0bN86FdRyE9lppSp33aHNPgBa0JKCoB+drFLZkQoRRYae5A==", + "dev": true, + "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.7", + "picocolors": "^1.0.0", + "source-map-js": "^1.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/vitest": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/vitest/-/vitest-1.6.0.tgz", + "integrity": "sha512-H5r/dN06swuFnzNFhq/dnz37bPXnq8xB2xB5JOVk8K09rUtoeNN+LHWkoQ0A/i3hvbUKKcCei9KpbxqHMLhLLA==", + "dev": true, + "dependencies": { + "@vitest/expect": "1.6.0", + "@vitest/runner": "1.6.0", + "@vitest/snapshot": "1.6.0", + "@vitest/spy": "1.6.0", + "@vitest/utils": "1.6.0", + "acorn-walk": "^8.3.2", + "chai": "^4.3.10", + "debug": "^4.3.4", + "execa": "^8.0.1", + "local-pkg": "^0.5.0", + "magic-string": "^0.30.5", + "pathe": "^1.1.1", + "picocolors": "^1.0.0", + "std-env": "^3.5.0", + "strip-literal": "^2.0.0", + "tinybench": "^2.5.1", + "tinypool": "^0.8.3", + "vite": "^5.0.0", + "vite-node": "1.6.0", + "why-is-node-running": "^2.2.2" + }, + "bin": { + "vitest": "vitest.mjs" + }, + "engines": { + "node": "^18.0.0 || >=20.0.0" + }, + "funding": { + "url": "https://opencollective.com/vitest" + }, + "peerDependencies": { + "@edge-runtime/vm": "*", + "@types/node": "^18.0.0 || >=20.0.0", + "@vitest/browser": "1.6.0", + "@vitest/ui": "1.6.0", + "happy-dom": "*", + "jsdom": "*" + }, + "peerDependenciesMeta": { + "@edge-runtime/vm": { + "optional": true + }, + "@types/node": { + "optional": true + }, + "@vitest/browser": { + "optional": true + }, + "@vitest/ui": { + "optional": true + }, + "happy-dom": { + "optional": true + }, + "jsdom": { + "optional": true + } + } + }, + "node_modules/w3c-xmlserializer": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-5.0.0.tgz", + "integrity": "sha512-o8qghlI8NZHU1lLPrpi2+Uq7abh4GGPpYANlalzWxyWteJOCsr/P+oPBA49TOLu5FTZO4d3F9MnWJfiMo4BkmA==", + "dev": true, + "dependencies": { + "xml-name-validator": "^5.0.0" + }, + "engines": { + "node": ">=18" + } + }, + "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": "3.1.1", + "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-3.1.1.tgz", + "integrity": "sha512-6qN4hJdMwfYBtE3YBTTHhoeuUrDBPZmbQaxWAqSALV/MeEnR5z1xd8UKud2RAkFoPkmB+hli1TZSnyi84xz1vQ==", + "dev": true, + "dependencies": { + "iconv-lite": "0.6.3" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/whatwg-mimetype": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-4.0.0.tgz", + "integrity": "sha512-QaKxh0eNIi2mE9p2vEdzfagOKHCcj1pJ56EEHGQOVxp8r9/iszLUUV7v89x9O1p/T+NlTM5W7jW6+cz4Fq1YVg==", + "dev": true, + "engines": { + "node": ">=18" + } + }, + "node_modules/whatwg-url": { + "version": "14.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-14.0.0.tgz", + "integrity": "sha512-1lfMEm2IEr7RIV+f4lUNPOqfFL+pO+Xw3fJSqmjX9AbXcXcYOkCe1P6+9VBZB6n94af16NfZf+sSk0JCBZC9aw==", + "dev": true, + "dependencies": { + "tr46": "^5.0.0", + "webidl-conversions": "^7.0.0" + }, + "engines": { + "node": ">=18" + } + }, + "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.2", + "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.2.tgz", + "integrity": "sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==", + "dev": true, + "dependencies": { + "is-map": "^2.0.3", + "is-set": "^2.0.3", + "is-weakmap": "^2.0.2", + "is-weakset": "^2.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-typed-array": { + "version": "1.1.15", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.15.tgz", + "integrity": "sha512-oV0jmFtUky6CXfkqehVvBP/LSWJ2sy4vWMioiENyJLePrBO/yKyV9OyJySfAKosh+RYkIl5zJCNZ8/4JncrpdA==", + "dev": true, + "dependencies": { + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/why-is-node-running": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/why-is-node-running/-/why-is-node-running-2.2.2.tgz", + "integrity": "sha512-6tSwToZxTOcotxHeA+qGCq1mVzKR3CwcJGmVcY+QE8SHy6TnpFnh8PAvPNHYr7EcuVeG0QSMxtYCuO1ta/G/oA==", + "dev": true, + "dependencies": { + "siginfo": "^2.0.0", + "stackback": "0.0.2" + }, + "bin": { + "why-is-node-running": "cli.js" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/word-wrap": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", + "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/wrap-ansi": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", + "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^6.1.0", + "string-width": "^5.0.1", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi-cjs": { + "name": "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/wrap-ansi-cjs/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/wrap-ansi-cjs/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/wrap-ansi/node_modules/ansi-regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/wrap-ansi/node_modules/ansi-styles": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", + "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/wrap-ansi/node_modules/strip-ansi": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", + "dev": true, + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-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/ws": { + "version": "8.17.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.0.tgz", + "integrity": "sha512-uJq6108EgZMAl20KagGkzCKfMEjxmKvZHG7Tlq0Z6nOky7YF7aq4mOx6xK8TJ/i1LeK4Qus7INktacctDgY8Ow==", + "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": "5.0.0", + "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-5.0.0.tgz", + "integrity": "sha512-EvGK8EJ3DhaHfbRlETOWAS5pO9MZITeauHKJyb8wyajUfQUenkIg2MvLDTZ4T/TgIcm3HU0TFBgWWboAZ30UHg==", + "dev": true, + "engines": { + "node": ">=18" + } + }, + "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/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true + }, + "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" + } + } + } +} From eac204e27c0c4a33fc8d3eb38f52c6449fb5fb4a Mon Sep 17 00:00:00 2001 From: Kayra Date: Fri, 10 May 2024 13:37:07 +0300 Subject: [PATCH 21/23] add one more step --- CONTRIBUTING.md | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index cdd118a..737c58a 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -6,8 +6,15 @@ 1. Fork the repository on GitHub 2. Clone the forked repository to your local machine 3. Build the frontend: `cd ui && npm build build` -3. Install the project: `go install ./...` -4. Run the project: `gocert --config config.yaml` +4. Install the project: `go install ./...` +5. Create a `config.yaml` file: +```yaml +keypath: "./key.pem" +certpath: "./cert.pem" +dbpath: "./certs.db" +port: 3000 +``` +6. Run the project: `gocert --config config.yaml` Commands for go need to be run from the project directory, and commands for the frontend need to be run from the `ui/` directory ## Testing From 7f91d160d7bcb9df9047400067619c200caeb002 Mon Sep 17 00:00:00 2001 From: Kayra Date: Fri, 10 May 2024 13:39:26 +0300 Subject: [PATCH 22/23] fix step numbers --- CONTRIBUTING.md | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 737c58a..e15a765 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -3,18 +3,18 @@ ## Getting Started 1. Install Go and Nodejs -1. Fork the repository on GitHub -2. Clone the forked repository to your local machine -3. Build the frontend: `cd ui && npm build build` -4. Install the project: `go install ./...` -5. Create a `config.yaml` file: +2. Fork the repository on GitHub +3. Clone the forked repository to your local machine +4. Build the frontend: `cd ui && npm build build` +5. Install the project: `go install ./...` +6. Create a `config.yaml` file: ```yaml keypath: "./key.pem" certpath: "./cert.pem" dbpath: "./certs.db" port: 3000 ``` -6. Run the project: `gocert --config config.yaml` +7. Run the project: `gocert --config config.yaml` Commands for go need to be run from the project directory, and commands for the frontend need to be run from the `ui/` directory ## Testing From b653fbe33d93737f7d0e4ba485f71b1780719b79 Mon Sep 17 00:00:00 2001 From: Kayra Date: Fri, 10 May 2024 14:24:09 +0300 Subject: [PATCH 23/23] move docs --- CONTRIBUTING.md | 8 +------- README.md | 15 +++++++++++++++ 2 files changed, 16 insertions(+), 7 deletions(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index e15a765..7246a7c 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -8,13 +8,7 @@ 4. Build the frontend: `cd ui && npm build build` 5. Install the project: `go install ./...` 6. Create a `config.yaml` file: -```yaml -keypath: "./key.pem" -certpath: "./cert.pem" -dbpath: "./certs.db" -port: 3000 -``` -7. Run the project: `gocert --config config.yaml` +7. Run the project: `gocert -config config.yaml` Commands for go need to be run from the project directory, and commands for the frontend need to be run from the `ui/` directory ## Testing diff --git a/README.md b/README.md index a235bce..6c77c17 100644 --- a/README.md +++ b/README.md @@ -8,3 +8,18 @@ GoCert is a certificate management tool. docker pull ghcr.io/canonical/gocert:latest docker run -it ghcr.io/canonical/gocert:latest ``` + +## Requirements + +GoCert requires 3 files to operate: +* A private key +* A TLS certificate with that private key +* A YAML config file with the required parameters +as an example: + +```yaml +keypath: "./key.pem" +certpath: "./cert.pem" +dbpath: "./certs.db" +port: 3000 +``` \ No newline at end of file