From 0c0fd1b1941840e41ee8724a5d59bcc007e846e1 Mon Sep 17 00:00:00 2001 From: Srivats Venkataraman <42980667+srivats22@users.noreply.github.com> Date: Tue, 8 Apr 2025 18:54:42 -0400 Subject: [PATCH] Mono repo template --- mono-repo/README.md | 32 + mono-repo/assets/backendport.png | Bin 0 -> 193388 bytes mono-repo/assets/running.png | Bin 0 -> 91560 bytes mono-repo/dev.nix | 36 + mono-repo/idx-template.json | 19 + mono-repo/idx-template.nix | 20 + mono-repo/monorepo-ts/client/README.md | 54 + mono-repo/monorepo-ts/client/eslint.config.js | 28 + mono-repo/monorepo-ts/client/index.html | 13 + mono-repo/monorepo-ts/client/package.json | 29 + mono-repo/monorepo-ts/client/public/vite.svg | 1 + mono-repo/monorepo-ts/client/src/App.css | 42 + mono-repo/monorepo-ts/client/src/App.tsx | 35 + .../monorepo-ts/client/src/assets/node.svg | 26 + .../monorepo-ts/client/src/assets/react.svg | 1 + mono-repo/monorepo-ts/client/src/index.css | 68 + mono-repo/monorepo-ts/client/src/main.tsx | 10 + .../monorepo-ts/client/src/vite-env.d.ts | 1 + .../monorepo-ts/client/tsconfig.app.json | 26 + mono-repo/monorepo-ts/client/tsconfig.json | 7 + .../monorepo-ts/client/tsconfig.node.json | 24 + mono-repo/monorepo-ts/client/vite.config.ts | 7 + .../monorepo-ts/server/package-lock.json | 1486 +++++++++ mono-repo/monorepo-ts/server/package.json | 26 + mono-repo/monorepo-ts/server/src/index.ts | 15 + mono-repo/monorepo-ts/server/tsconfig.json | 15 + mono-repo/monorepo/client/README.md | 12 + mono-repo/monorepo/client/eslint.config.js | 33 + mono-repo/monorepo/client/index.html | 13 + mono-repo/monorepo/client/package-lock.json | 2733 +++++++++++++++++ mono-repo/monorepo/client/package.json | 27 + mono-repo/monorepo/client/public/vite.svg | 1 + mono-repo/monorepo/client/src/App.css | 42 + mono-repo/monorepo/client/src/App.jsx | 37 + mono-repo/monorepo/client/src/assets/node.svg | 26 + .../monorepo/client/src/assets/react.svg | 1 + mono-repo/monorepo/client/src/index.css | 68 + mono-repo/monorepo/client/src/main.jsx | 10 + mono-repo/monorepo/client/vite.config.js | 7 + mono-repo/monorepo/server/index.js | 19 + mono-repo/monorepo/server/package-lock.json | 1200 ++++++++ mono-repo/monorepo/server/package.json | 18 + 42 files changed, 6268 insertions(+) create mode 100644 mono-repo/README.md create mode 100644 mono-repo/assets/backendport.png create mode 100644 mono-repo/assets/running.png create mode 100644 mono-repo/dev.nix create mode 100644 mono-repo/idx-template.json create mode 100644 mono-repo/idx-template.nix create mode 100644 mono-repo/monorepo-ts/client/README.md create mode 100644 mono-repo/monorepo-ts/client/eslint.config.js create mode 100644 mono-repo/monorepo-ts/client/index.html create mode 100644 mono-repo/monorepo-ts/client/package.json create mode 100644 mono-repo/monorepo-ts/client/public/vite.svg create mode 100644 mono-repo/monorepo-ts/client/src/App.css create mode 100644 mono-repo/monorepo-ts/client/src/App.tsx create mode 100644 mono-repo/monorepo-ts/client/src/assets/node.svg create mode 100644 mono-repo/monorepo-ts/client/src/assets/react.svg create mode 100644 mono-repo/monorepo-ts/client/src/index.css create mode 100644 mono-repo/monorepo-ts/client/src/main.tsx create mode 100644 mono-repo/monorepo-ts/client/src/vite-env.d.ts create mode 100644 mono-repo/monorepo-ts/client/tsconfig.app.json create mode 100644 mono-repo/monorepo-ts/client/tsconfig.json create mode 100644 mono-repo/monorepo-ts/client/tsconfig.node.json create mode 100644 mono-repo/monorepo-ts/client/vite.config.ts create mode 100644 mono-repo/monorepo-ts/server/package-lock.json create mode 100644 mono-repo/monorepo-ts/server/package.json create mode 100644 mono-repo/monorepo-ts/server/src/index.ts create mode 100644 mono-repo/monorepo-ts/server/tsconfig.json create mode 100644 mono-repo/monorepo/client/README.md create mode 100644 mono-repo/monorepo/client/eslint.config.js create mode 100644 mono-repo/monorepo/client/index.html create mode 100644 mono-repo/monorepo/client/package-lock.json create mode 100644 mono-repo/monorepo/client/package.json create mode 100644 mono-repo/monorepo/client/public/vite.svg create mode 100644 mono-repo/monorepo/client/src/App.css create mode 100644 mono-repo/monorepo/client/src/App.jsx create mode 100644 mono-repo/monorepo/client/src/assets/node.svg create mode 100644 mono-repo/monorepo/client/src/assets/react.svg create mode 100644 mono-repo/monorepo/client/src/index.css create mode 100644 mono-repo/monorepo/client/src/main.jsx create mode 100644 mono-repo/monorepo/client/vite.config.js create mode 100644 mono-repo/monorepo/server/index.js create mode 100644 mono-repo/monorepo/server/package-lock.json create mode 100644 mono-repo/monorepo/server/package.json diff --git a/mono-repo/README.md b/mono-repo/README.md new file mode 100644 index 00000000..32905736 --- /dev/null +++ b/mono-repo/README.md @@ -0,0 +1,32 @@ +## Mono-Repo +A one-click template for a Mono repository setup inside Project IDX + +## Created By +[Srivats](https://github.com/srivats22) + + + + + + + Open in IDX + + + +## Getting Started +1. Click the IDX menu button on the left-hand side +2. Make the backend port a public Port +![backendport](assets/backendport.png) + +3. Open either ```client/src/App.js``` or ```client/src/App.tsx``` based on the template you choose +4. Replace line 10 with the Public Port URL +5. Click the Button in the preview to ensure everything is working as expected +6. You should see the message ```Hello World!``` if the api connection is successful +![running](assets/running.png) diff --git a/mono-repo/assets/backendport.png b/mono-repo/assets/backendport.png new file mode 100644 index 0000000000000000000000000000000000000000..30876c1c908e127d71a4ebb34d40b9228a3670c6 GIT binary patch literal 193388 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 za�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 G&;A2Go}X#} literal 0 HcmV?d00001 diff --git a/mono-repo/assets/running.png b/mono-repo/assets/running.png new file mode 100644 index 0000000000000000000000000000000000000000..969ad46d96b02665acb421122f6e86478d86be9c GIT binary patch literal 91560 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

feyW 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 literal 0 HcmV?d00001 diff --git a/mono-repo/dev.nix b/mono-repo/dev.nix new file mode 100644 index 00000000..4211f360 --- /dev/null +++ b/mono-repo/dev.nix @@ -0,0 +1,36 @@ +# To learn more about how to use Nix to configure your environment +# see: https://developers.google.com/idx/guides/customize-idx-env +{ pkgs, ... }: { + # Which nixpkgs channel to use. + channel = "stable-23.11"; # or "unstable" + # Use https://search.nixos.org/packages to find packages + packages = [ + pkgs.nodejs_20 + ]; + # Sets environment variables in the workspace + env = {}; + idx = { + workspace = { + # Runs when a workspace is first created with this `dev.nix` file + onCreate = { + server-npm-install = "cd server && npm ci --no-audit --prefer-offline --no-progress --timing"; + client-npm-install = "cd client && npm ci --no-audit --prefer-offline --no-progress --timing"; + default.openFiles = ["README.md" "client/src/App.jsx" "client/src/App.tsx"]; + }; + # Runs when a workspace is (re)started + onStart= { + run-server = "cd server && npm run dev"; + }; + }; + previews = { + enable = true; + previews = { + web = { + cwd = "client"; + command = ["npm" "run" "dev" "--" "--port" "$PORT"]; + manager = "web"; + }; + }; + }; + }; +} \ No newline at end of file diff --git a/mono-repo/idx-template.json b/mono-repo/idx-template.json new file mode 100644 index 00000000..f0faf8d8 --- /dev/null +++ b/mono-repo/idx-template.json @@ -0,0 +1,19 @@ +{ + "name": "React Express Mono Repo", + "description": "A Mono Repo using React and Express", + "categories": ["Backend", "Frontend"], + "icon": "https://www.gstatic.com/monospace/231115/logo_react.svg", + "publisher": "Srivats Venkataraman", + "params": [ + { + "id": "language", + "name": "Language", + "type": "enum", + "default": "js", + "options": { + "js": "JavaScript", + "ts": "TypeScript" + } + } + ] +} diff --git a/mono-repo/idx-template.nix b/mono-repo/idx-template.nix new file mode 100644 index 00000000..1f6444a9 --- /dev/null +++ b/mono-repo/idx-template.nix @@ -0,0 +1,20 @@ +{ pkgs, language ? "js", ... }: { + packages = [ + pkgs.nodejs_20 + ]; + bootstrap = + '' + mkdir "$out" + mkdir -p "$out/.idx/" + cp -rf ${./dev.nix} "$out/.idx/dev.nix" + cp -r ${./README.md} "$out" + if [ "${language}" == "ts" ]; then + shopt -s dotglob + cp -r ${./monorepo-ts}/* "$out" + else + shopt -s dotglob + cp -r ${./monorepo}/* "$out" + fi + chmod -R +w "$out" + ''; +} diff --git a/mono-repo/monorepo-ts/client/README.md b/mono-repo/monorepo-ts/client/README.md new file mode 100644 index 00000000..40ede56e --- /dev/null +++ b/mono-repo/monorepo-ts/client/README.md @@ -0,0 +1,54 @@ +# React + TypeScript + Vite + +This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules. + +Currently, two official plugins are available: + +- [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/blob/main/packages/plugin-react/README.md) uses [Babel](https://babeljs.io/) for Fast Refresh +- [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react-swc) uses [SWC](https://swc.rs/) for Fast Refresh + +## Expanding the ESLint configuration + +If you are developing a production application, we recommend updating the configuration to enable type-aware lint rules: + +```js +export default tseslint.config({ + extends: [ + // Remove ...tseslint.configs.recommended and replace with this + ...tseslint.configs.recommendedTypeChecked, + // Alternatively, use this for stricter rules + ...tseslint.configs.strictTypeChecked, + // Optionally, add this for stylistic rules + ...tseslint.configs.stylisticTypeChecked, + ], + languageOptions: { + // other options... + parserOptions: { + project: ['./tsconfig.node.json', './tsconfig.app.json'], + tsconfigRootDir: import.meta.dirname, + }, + }, +}) +``` + +You can also install [eslint-plugin-react-x](https://github.com/Rel1cx/eslint-react/tree/main/packages/plugins/eslint-plugin-react-x) and [eslint-plugin-react-dom](https://github.com/Rel1cx/eslint-react/tree/main/packages/plugins/eslint-plugin-react-dom) for React-specific lint rules: + +```js +// eslint.config.js +import reactX from 'eslint-plugin-react-x' +import reactDom from 'eslint-plugin-react-dom' + +export default tseslint.config({ + plugins: { + // Add the react-x and react-dom plugins + 'react-x': reactX, + 'react-dom': reactDom, + }, + rules: { + // other rules... + // Enable its recommended typescript rules + ...reactX.configs['recommended-typescript'].rules, + ...reactDom.configs.recommended.rules, + }, +}) +``` diff --git a/mono-repo/monorepo-ts/client/eslint.config.js b/mono-repo/monorepo-ts/client/eslint.config.js new file mode 100644 index 00000000..092408a9 --- /dev/null +++ b/mono-repo/monorepo-ts/client/eslint.config.js @@ -0,0 +1,28 @@ +import js from '@eslint/js' +import globals from 'globals' +import reactHooks from 'eslint-plugin-react-hooks' +import reactRefresh from 'eslint-plugin-react-refresh' +import tseslint from 'typescript-eslint' + +export default tseslint.config( + { ignores: ['dist'] }, + { + extends: [js.configs.recommended, ...tseslint.configs.recommended], + files: ['**/*.{ts,tsx}'], + languageOptions: { + ecmaVersion: 2020, + globals: globals.browser, + }, + plugins: { + 'react-hooks': reactHooks, + 'react-refresh': reactRefresh, + }, + rules: { + ...reactHooks.configs.recommended.rules, + 'react-refresh/only-export-components': [ + 'warn', + { allowConstantExport: true }, + ], + }, + }, +) diff --git a/mono-repo/monorepo-ts/client/index.html b/mono-repo/monorepo-ts/client/index.html new file mode 100644 index 00000000..e4b78eae --- /dev/null +++ b/mono-repo/monorepo-ts/client/index.html @@ -0,0 +1,13 @@ + + + + + + + Vite + React + TS + + +

+ + + diff --git a/mono-repo/monorepo-ts/client/package.json b/mono-repo/monorepo-ts/client/package.json new file mode 100644 index 00000000..3388ef5f --- /dev/null +++ b/mono-repo/monorepo-ts/client/package.json @@ -0,0 +1,29 @@ +{ + "name": "client", + "private": true, + "version": "0.0.0", + "type": "module", + "scripts": { + "dev": "vite", + "build": "tsc -b && vite build", + "lint": "eslint .", + "preview": "vite preview" + }, + "dependencies": { + "react": "^19.0.0", + "react-dom": "^19.0.0" + }, + "devDependencies": { + "@eslint/js": "^9.21.0", + "@types/react": "^19.0.10", + "@types/react-dom": "^19.0.4", + "@vitejs/plugin-react": "^4.3.4", + "eslint": "^9.21.0", + "eslint-plugin-react-hooks": "^5.1.0", + "eslint-plugin-react-refresh": "^0.4.19", + "globals": "^15.15.0", + "typescript": "~5.7.2", + "typescript-eslint": "^8.24.1", + "vite": "^6.2.0" + } +} diff --git a/mono-repo/monorepo-ts/client/public/vite.svg b/mono-repo/monorepo-ts/client/public/vite.svg new file mode 100644 index 00000000..e7b8dfb1 --- /dev/null +++ b/mono-repo/monorepo-ts/client/public/vite.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/mono-repo/monorepo-ts/client/src/App.css b/mono-repo/monorepo-ts/client/src/App.css new file mode 100644 index 00000000..b9d355df --- /dev/null +++ b/mono-repo/monorepo-ts/client/src/App.css @@ -0,0 +1,42 @@ +#root { + max-width: 1280px; + margin: 0 auto; + padding: 2rem; + text-align: center; +} + +.logo { + height: 6em; + padding: 1.5em; + will-change: filter; + transition: filter 300ms; +} +.logo:hover { + filter: drop-shadow(0 0 2em #646cffaa); +} +.logo.react:hover { + filter: drop-shadow(0 0 2em #61dafbaa); +} + +@keyframes logo-spin { + from { + transform: rotate(0deg); + } + to { + transform: rotate(360deg); + } +} + +@media (prefers-reduced-motion: no-preference) { + a:nth-of-type(2) .logo { + animation: logo-spin infinite 20s linear; + } +} + +.card { + padding: 2em; +} + +.read-the-docs { + color: #888; +} diff --git a/mono-repo/monorepo-ts/client/src/App.tsx b/mono-repo/monorepo-ts/client/src/App.tsx new file mode 100644 index 00000000..2dd85f77 --- /dev/null +++ b/mono-repo/monorepo-ts/client/src/App.tsx @@ -0,0 +1,35 @@ +import { useState } from 'react' +import reactLogo from './assets/react.svg' +import nodeLogo from './assets/node.svg' +import './App.css' + +function App() { + const [count, setCount] = useState(0) + + return ( + <> +
+

Vite + React

+
+ +

+ Edit src/App.tsx and save to test HMR +

+
+

+ Click on the Vite and React logos to learn more +

+ + ) +} + +export default App diff --git a/mono-repo/monorepo-ts/client/src/assets/node.svg b/mono-repo/monorepo-ts/client/src/assets/node.svg new file mode 100644 index 00000000..f2305e9d --- /dev/null +++ b/mono-repo/monorepo-ts/client/src/assets/node.svg @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/mono-repo/monorepo-ts/client/src/assets/react.svg b/mono-repo/monorepo-ts/client/src/assets/react.svg new file mode 100644 index 00000000..6c87de9b --- /dev/null +++ b/mono-repo/monorepo-ts/client/src/assets/react.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/mono-repo/monorepo-ts/client/src/index.css b/mono-repo/monorepo-ts/client/src/index.css new file mode 100644 index 00000000..08a3ac9e --- /dev/null +++ b/mono-repo/monorepo-ts/client/src/index.css @@ -0,0 +1,68 @@ +:root { + font-family: system-ui, Avenir, Helvetica, Arial, sans-serif; + line-height: 1.5; + font-weight: 400; + + color-scheme: light dark; + color: rgba(255, 255, 255, 0.87); + background-color: #242424; + + font-synthesis: none; + text-rendering: optimizeLegibility; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; +} + +a { + font-weight: 500; + color: #646cff; + text-decoration: inherit; +} +a:hover { + color: #535bf2; +} + +body { + margin: 0; + display: flex; + place-items: center; + min-width: 320px; + min-height: 100vh; +} + +h1 { + font-size: 3.2em; + line-height: 1.1; +} + +button { + border-radius: 8px; + border: 1px solid transparent; + padding: 0.6em 1.2em; + font-size: 1em; + font-weight: 500; + font-family: inherit; + background-color: #1a1a1a; + cursor: pointer; + transition: border-color 0.25s; +} +button:hover { + border-color: #646cff; +} +button:focus, +button:focus-visible { + outline: 4px auto -webkit-focus-ring-color; +} + +@media (prefers-color-scheme: light) { + :root { + color: #213547; + background-color: #ffffff; + } + a:hover { + color: #747bff; + } + button { + background-color: #f9f9f9; + } +} diff --git a/mono-repo/monorepo-ts/client/src/main.tsx b/mono-repo/monorepo-ts/client/src/main.tsx new file mode 100644 index 00000000..bef5202a --- /dev/null +++ b/mono-repo/monorepo-ts/client/src/main.tsx @@ -0,0 +1,10 @@ +import { StrictMode } from 'react' +import { createRoot } from 'react-dom/client' +import './index.css' +import App from './App.tsx' + +createRoot(document.getElementById('root')!).render( + + + , +) diff --git a/mono-repo/monorepo-ts/client/src/vite-env.d.ts b/mono-repo/monorepo-ts/client/src/vite-env.d.ts new file mode 100644 index 00000000..11f02fe2 --- /dev/null +++ b/mono-repo/monorepo-ts/client/src/vite-env.d.ts @@ -0,0 +1 @@ +/// diff --git a/mono-repo/monorepo-ts/client/tsconfig.app.json b/mono-repo/monorepo-ts/client/tsconfig.app.json new file mode 100644 index 00000000..358ca9ba --- /dev/null +++ b/mono-repo/monorepo-ts/client/tsconfig.app.json @@ -0,0 +1,26 @@ +{ + "compilerOptions": { + "tsBuildInfoFile": "./node_modules/.tmp/tsconfig.app.tsbuildinfo", + "target": "ES2020", + "useDefineForClassFields": true, + "lib": ["ES2020", "DOM", "DOM.Iterable"], + "module": "ESNext", + "skipLibCheck": true, + + /* Bundler mode */ + "moduleResolution": "bundler", + "allowImportingTsExtensions": true, + "isolatedModules": true, + "moduleDetection": "force", + "noEmit": true, + "jsx": "react-jsx", + + /* Linting */ + "strict": true, + "noUnusedLocals": true, + "noUnusedParameters": true, + "noFallthroughCasesInSwitch": true, + "noUncheckedSideEffectImports": true + }, + "include": ["src"] +} diff --git a/mono-repo/monorepo-ts/client/tsconfig.json b/mono-repo/monorepo-ts/client/tsconfig.json new file mode 100644 index 00000000..1ffef600 --- /dev/null +++ b/mono-repo/monorepo-ts/client/tsconfig.json @@ -0,0 +1,7 @@ +{ + "files": [], + "references": [ + { "path": "./tsconfig.app.json" }, + { "path": "./tsconfig.node.json" } + ] +} diff --git a/mono-repo/monorepo-ts/client/tsconfig.node.json b/mono-repo/monorepo-ts/client/tsconfig.node.json new file mode 100644 index 00000000..db0becc8 --- /dev/null +++ b/mono-repo/monorepo-ts/client/tsconfig.node.json @@ -0,0 +1,24 @@ +{ + "compilerOptions": { + "tsBuildInfoFile": "./node_modules/.tmp/tsconfig.node.tsbuildinfo", + "target": "ES2022", + "lib": ["ES2023"], + "module": "ESNext", + "skipLibCheck": true, + + /* Bundler mode */ + "moduleResolution": "bundler", + "allowImportingTsExtensions": true, + "isolatedModules": true, + "moduleDetection": "force", + "noEmit": true, + + /* Linting */ + "strict": true, + "noUnusedLocals": true, + "noUnusedParameters": true, + "noFallthroughCasesInSwitch": true, + "noUncheckedSideEffectImports": true + }, + "include": ["vite.config.ts"] +} diff --git a/mono-repo/monorepo-ts/client/vite.config.ts b/mono-repo/monorepo-ts/client/vite.config.ts new file mode 100644 index 00000000..8b0f57b9 --- /dev/null +++ b/mono-repo/monorepo-ts/client/vite.config.ts @@ -0,0 +1,7 @@ +import { defineConfig } from 'vite' +import react from '@vitejs/plugin-react' + +// https://vite.dev/config/ +export default defineConfig({ + plugins: [react()], +}) diff --git a/mono-repo/monorepo-ts/server/package-lock.json b/mono-repo/monorepo-ts/server/package-lock.json new file mode 100644 index 00000000..cbc92813 --- /dev/null +++ b/mono-repo/monorepo-ts/server/package-lock.json @@ -0,0 +1,1486 @@ +{ + "name": "server", + "version": "1.0.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "server", + "version": "1.0.0", + "license": "ISC", + "dependencies": { + "express": "^5.1.0" + }, + "devDependencies": { + "@types/express": "^5.0.1", + "@types/node": "^22.14.0", + "nodemon": "^3.1.9", + "ts-node": "^10.9.2", + "typescript": "^5.8.3" + } + }, + "node_modules/@cspotcode/source-map-support": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz", + "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/trace-mapping": "0.3.9" + }, + "engines": { + "node": ">=12" + } + }, + "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, + "license": "MIT", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz", + "integrity": "sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.9", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", + "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/resolve-uri": "^3.0.3", + "@jridgewell/sourcemap-codec": "^1.4.10" + } + }, + "node_modules/@tsconfig/node10": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.11.tgz", + "integrity": "sha512-DcRjDCujK/kCk/cUe8Xz8ZSpm8mS3mNNpta+jGCA6USEDfktlNvm1+IuZ9eTcDbNk41BHwpHHeW+N1lKCz4zOw==", + "dev": true, + "license": "MIT" + }, + "node_modules/@tsconfig/node12": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.11.tgz", + "integrity": "sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==", + "dev": true, + "license": "MIT" + }, + "node_modules/@tsconfig/node14": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.3.tgz", + "integrity": "sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==", + "dev": true, + "license": "MIT" + }, + "node_modules/@tsconfig/node16": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.4.tgz", + "integrity": "sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/body-parser": { + "version": "1.19.5", + "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.5.tgz", + "integrity": "sha512-fB3Zu92ucau0iQ0JMCFQE7b/dv8Ot07NI3KaZIkIUNXq82k4eBAqUaneXfleGY9JWskeS9y+u0nXMyspcuQrCg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/connect": "*", + "@types/node": "*" + } + }, + "node_modules/@types/connect": { + "version": "3.4.38", + "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.38.tgz", + "integrity": "sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/express": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/@types/express/-/express-5.0.1.tgz", + "integrity": "sha512-UZUw8vjpWFXuDnjFTh7/5c2TWDlQqeXHi6hcN7F2XSVT5P+WmUnnbFS3KA6Jnc6IsEqI2qCVu2bK0R0J4A8ZQQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/body-parser": "*", + "@types/express-serve-static-core": "^5.0.0", + "@types/serve-static": "*" + } + }, + "node_modules/@types/express-serve-static-core": { + "version": "5.0.6", + "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-5.0.6.tgz", + "integrity": "sha512-3xhRnjJPkULekpSzgtoNYYcTWgEZkp4myc+Saevii5JPnHNvHMRlBSHDbs7Bh1iPPoVTERHEZXyhyLbMEsExsA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/node": "*", + "@types/qs": "*", + "@types/range-parser": "*", + "@types/send": "*" + } + }, + "node_modules/@types/http-errors": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@types/http-errors/-/http-errors-2.0.4.tgz", + "integrity": "sha512-D0CFMMtydbJAegzOyHjtiKPLlvnm3iTZyZRSZoLq2mRhDdmLfIWOCYPfQJ4cu2erKghU++QvjcUjp/5h7hESpA==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/mime": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/@types/mime/-/mime-1.3.5.tgz", + "integrity": "sha512-/pyBZWSLD2n0dcHE3hq8s8ZvcETHtEuF+3E7XVt0Ig2nvsVQXdghHVcEkIWjy9A0wKfTn97a/PSDYohKIlnP/w==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/node": { + "version": "22.14.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.14.0.tgz", + "integrity": "sha512-Kmpl+z84ILoG+3T/zQFyAJsU6EPTmOCj8/2+83fSN6djd6I4o7uOuGIH6vq3PrjY5BGitSbFuMN18j3iknubbA==", + "dev": true, + "license": "MIT", + "dependencies": { + "undici-types": "~6.21.0" + } + }, + "node_modules/@types/qs": { + "version": "6.9.18", + "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.18.tgz", + "integrity": "sha512-kK7dgTYDyGqS+e2Q4aK9X3D7q234CIZ1Bv0q/7Z5IwRDoADNU81xXJK/YVyLbLTZCoIwUoDoffFeF+p/eIklAA==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/range-parser": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.7.tgz", + "integrity": "sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/send": { + "version": "0.17.4", + "resolved": "https://registry.npmjs.org/@types/send/-/send-0.17.4.tgz", + "integrity": "sha512-x2EM6TJOybec7c52BX0ZspPodMsQUd5L6PRwOunVyVUhXiBSKf3AezDL8Dgvgt5o0UfKNfuA0eMLr2wLT4AiBA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/mime": "^1", + "@types/node": "*" + } + }, + "node_modules/@types/serve-static": { + "version": "1.15.7", + "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.7.tgz", + "integrity": "sha512-W8Ym+h8nhuRwaKPaDw34QUkwsGi6Rc4yYqvKFo5rm2FUEhCFbzVWrxXUxuKK8TASjWsysJY0nsmNCGhCOIsrOw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/http-errors": "*", + "@types/node": "*", + "@types/send": "*" + } + }, + "node_modules/accepts": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-2.0.0.tgz", + "integrity": "sha512-5cvg6CtKwfgdmVqY1WIiXKc3Q1bkRqGLi+2W/6ao+6Y7gu/RCwRuAhGEzh5B4KlszSuTLgZYuqFqo5bImjNKng==", + "license": "MIT", + "dependencies": { + "mime-types": "^3.0.0", + "negotiator": "^1.0.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/acorn": { + "version": "8.14.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.1.tgz", + "integrity": "sha512-OvQ/2pUDKmgfCg++xsTX1wGxfTaszcHVcTctW4UJB4hibJx2HXxxO5UmVgyjMa+ZDsiaf5wWLXYpRWMmBI0QHg==", + "dev": true, + "license": "MIT", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-walk": { + "version": "8.3.4", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.4.tgz", + "integrity": "sha512-ueEepnujpqee2o5aIYnvHU6C0A42MNdsIDeqy5BydrkuC5R1ZuUFnm27EeFJGoEHJQgn3uleRvmTXaJgfXbt4g==", + "dev": true, + "license": "MIT", + "dependencies": { + "acorn": "^8.11.0" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "dev": true, + "license": "ISC", + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/arg": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", + "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==", + "dev": true, + "license": "MIT" + }, + "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, + "license": "MIT" + }, + "node_modules/binary-extensions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", + "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/body-parser": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-2.2.0.tgz", + "integrity": "sha512-02qvAaxv8tp7fBa/mw1ga98OGm+eCbqzJOKoRt70sLmfEEi+jyBYVTDGfCL/k06/4EMk/z01gCe7HoCH/f2LTg==", + "license": "MIT", + "dependencies": { + "bytes": "^3.1.2", + "content-type": "^1.0.5", + "debug": "^4.4.0", + "http-errors": "^2.0.0", + "iconv-lite": "^0.6.3", + "on-finished": "^2.4.1", + "qs": "^6.14.0", + "raw-body": "^3.0.0", + "type-is": "^2.0.0" + }, + "engines": { + "node": ">=18" + } + }, + "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, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", + "dev": true, + "license": "MIT", + "dependencies": { + "fill-range": "^7.1.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/call-bind-apply-helpers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz", + "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==", + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/call-bound": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz", + "integrity": "sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==", + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.2", + "get-intrinsic": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/chokidar": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", + "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", + "dev": true, + "license": "MIT", + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "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, + "license": "MIT" + }, + "node_modules/content-disposition": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-1.0.0.tgz", + "integrity": "sha512-Au9nRL8VNUut/XSzbQA38+M78dzP4D+eqg3gfJHMIHHYa3bg067xj1KxMUWj+VULbiZMowKngFFbKczUrNJ1mg==", + "license": "MIT", + "dependencies": { + "safe-buffer": "5.2.1" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/content-type": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", + "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/cookie": { + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.2.tgz", + "integrity": "sha512-yki5XnKuf750l50uGTllt6kKILY4nQ1eNIQatoXEByZ5dWgnKqbnqmTrBE5B4N7lrMJKQ2ytWMiTO2o0v6Ew/w==", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/cookie-signature": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.2.2.tgz", + "integrity": "sha512-D76uU73ulSXrD1UXF4KE2TMxVVwhsnCgfAyTg9k8P6KGZjlXKrOLe4dJQKI3Bxi5wjesZoFXJWElNWBjPZMbhg==", + "license": "MIT", + "engines": { + "node": ">=6.6.0" + } + }, + "node_modules/create-require": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", + "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/debug": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.0.tgz", + "integrity": "sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==", + "license": "MIT", + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/depd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/diff": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", + "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.3.1" + } + }, + "node_modules/dunder-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", + "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.1", + "es-errors": "^1.3.0", + "gopd": "^1.2.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==", + "license": "MIT" + }, + "node_modules/encodeurl": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz", + "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==", + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/es-define-property": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", + "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==", + "license": "MIT", + "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==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-object-atoms": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz", + "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==", + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==", + "license": "MIT" + }, + "node_modules/etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/express": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/express/-/express-5.1.0.tgz", + "integrity": "sha512-DT9ck5YIRU+8GYzzU5kT3eHGA5iL+1Zd0EutOmTE9Dtk+Tvuzd23VBU+ec7HPNSTxXYO55gPV/hq4pSBJDjFpA==", + "license": "MIT", + "dependencies": { + "accepts": "^2.0.0", + "body-parser": "^2.2.0", + "content-disposition": "^1.0.0", + "content-type": "^1.0.5", + "cookie": "^0.7.1", + "cookie-signature": "^1.2.1", + "debug": "^4.4.0", + "encodeurl": "^2.0.0", + "escape-html": "^1.0.3", + "etag": "^1.8.1", + "finalhandler": "^2.1.0", + "fresh": "^2.0.0", + "http-errors": "^2.0.0", + "merge-descriptors": "^2.0.0", + "mime-types": "^3.0.0", + "on-finished": "^2.4.1", + "once": "^1.4.0", + "parseurl": "^1.3.3", + "proxy-addr": "^2.0.7", + "qs": "^6.14.0", + "range-parser": "^1.2.1", + "router": "^2.2.0", + "send": "^1.1.0", + "serve-static": "^2.2.0", + "statuses": "^2.0.1", + "type-is": "^2.0.1", + "vary": "^1.1.2" + }, + "engines": { + "node": ">= 18" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/express" + } + }, + "node_modules/fill-range": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", + "dev": true, + "license": "MIT", + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/finalhandler": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-2.1.0.tgz", + "integrity": "sha512-/t88Ty3d5JWQbWYgaOGCCYfXRwV1+be02WqYYlL6h0lEiUAMPM8o8qKGO01YIkOHzka2up08wvgYD0mDiI+q3Q==", + "license": "MIT", + "dependencies": { + "debug": "^4.4.0", + "encodeurl": "^2.0.0", + "escape-html": "^1.0.3", + "on-finished": "^2.4.1", + "parseurl": "^1.3.3", + "statuses": "^2.0.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/forwarded": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", + "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/fresh": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-2.0.0.tgz", + "integrity": "sha512-Rx/WycZ60HOaqLKAi6cHRKKI7zxWbJ31MhntmtwMoaTeF7XFH9hhBp8vITaMidfljRQ6eYWCKkaTK+ykVJHP2A==", + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "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, + "license": "MIT", + "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==", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-intrinsic": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz", + "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==", + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.2", + "es-define-property": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.1.1", + "function-bind": "^1.1.2", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "has-symbols": "^1.1.0", + "hasown": "^2.0.2", + "math-intrinsics": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", + "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", + "license": "MIT", + "dependencies": { + "dunder-proto": "^1.0.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "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, + "license": "ISC", + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/gopd": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", + "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "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, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/has-symbols": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz", + "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==", + "license": "MIT", + "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==", + "license": "MIT", + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/http-errors": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", + "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", + "license": "MIT", + "dependencies": { + "depd": "2.0.0", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "toidentifier": "1.0.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "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==", + "license": "MIT", + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ignore-by-default": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/ignore-by-default/-/ignore-by-default-1.0.1.tgz", + "integrity": "sha512-Ius2VYcGNk7T90CppJqcIkS5ooHUZyIQK+ClZfMfMNFEF9VSE73Fq+906u/CWu92x4gzZMWOwfFYckPObzdEbA==", + "dev": true, + "license": "ISC" + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "license": "ISC" + }, + "node_modules/ipaddr.js": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", + "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", + "license": "MIT", + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dev": true, + "license": "MIT", + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "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, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "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, + "license": "MIT", + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "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, + "license": "MIT", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-promise": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-4.0.0.tgz", + "integrity": "sha512-hvpoI6korhJMnej285dSg6nu1+e6uxs7zG3BYAm5byqDsgJNWwxzM6z6iZiAgQR4TJ30JmBTOwqZUw3WlyH3AQ==", + "license": "MIT" + }, + "node_modules/make-error": { + "version": "1.3.6", + "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", + "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", + "dev": true, + "license": "ISC" + }, + "node_modules/math-intrinsics": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", + "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/media-typer": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-1.1.0.tgz", + "integrity": "sha512-aisnrDP4GNe06UcKFnV5bfMNPBUw4jsLGaWwWfnH3v02GnBuXX2MCVn5RbrWo0j3pczUilYblq7fQ7Nw2t5XKw==", + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/merge-descriptors": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-2.0.0.tgz", + "integrity": "sha512-Snk314V5ayFLhp3fkUREub6WtjBfPdCPY1Ln8/8munuLuiYhsABgBVWsozAG+MWMbVEvcdcpbi9R7ww22l9Q3g==", + "license": "MIT", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/mime-db": { + "version": "1.54.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.54.0.tgz", + "integrity": "sha512-aU5EJuIN2WDemCcAp2vFBfp/m4EAhWJnUNSSw0ixs7/kXbd6Pg64EmwJkNdFhB8aWt1sH2CTXrLxo/iAGV3oPQ==", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-3.0.1.tgz", + "integrity": "sha512-xRc4oEhT6eaBpU1XF7AjpOFD+xQmXNB5OVKwp4tqCuBpHLS/ZbBDrc07mYTDqVMg6PfxUjjNp85O6Cd2Z/5HWA==", + "license": "MIT", + "dependencies": { + "mime-db": "^1.54.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "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, + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "license": "MIT" + }, + "node_modules/negotiator": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-1.0.0.tgz", + "integrity": "sha512-8Ofs/AUQh8MaEcrlq5xOX0CQ9ypTF5dl78mjlMNfOK08fzpgTHQRQPBxcPlEtIw0yRpws+Zo/3r+5WRby7u3Gg==", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/nodemon": { + "version": "3.1.9", + "resolved": "https://registry.npmjs.org/nodemon/-/nodemon-3.1.9.tgz", + "integrity": "sha512-hdr1oIb2p6ZSxu3PB2JWWYS7ZQ0qvaZsc3hK8DR8f02kRzc8rjYmxAIvdz+aYC+8F2IjNaB7HMcSDg8nQpJxyg==", + "dev": true, + "license": "MIT", + "dependencies": { + "chokidar": "^3.5.2", + "debug": "^4", + "ignore-by-default": "^1.0.1", + "minimatch": "^3.1.2", + "pstree.remy": "^1.1.8", + "semver": "^7.5.3", + "simple-update-notifier": "^2.0.0", + "supports-color": "^5.5.0", + "touch": "^3.1.0", + "undefsafe": "^2.0.5" + }, + "bin": { + "nodemon": "bin/nodemon.js" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/nodemon" + } + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-inspect": { + "version": "1.13.4", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.4.tgz", + "integrity": "sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/on-finished": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", + "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", + "license": "MIT", + "dependencies": { + "ee-first": "1.1.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "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==", + "license": "ISC", + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/parseurl": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/path-to-regexp": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-8.2.0.tgz", + "integrity": "sha512-TdrF7fW9Rphjq4RjrW0Kp2AW0Ahwu9sRGTkS6bvDi0SCwZlEZYmcfDbEsTz8RVk0EHIS/Vd1bv3JhG+1xZuAyQ==", + "license": "MIT", + "engines": { + "node": ">=16" + } + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/proxy-addr": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", + "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", + "license": "MIT", + "dependencies": { + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/pstree.remy": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/pstree.remy/-/pstree.remy-1.1.8.tgz", + "integrity": "sha512-77DZwxQmxKnu3aR542U+X8FypNzbfJ+C5XQDk3uWjWxn6151aIMGthWYRXTqT1E5oJvg+ljaa2OJi+VfvCOQ8w==", + "dev": true, + "license": "MIT" + }, + "node_modules/qs": { + "version": "6.14.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.14.0.tgz", + "integrity": "sha512-YWWTjgABSKcvs/nWBi9PycY/JiPJqOD4JA6o9Sej2AtvSGarXxKC3OQSk4pAarbdQlKAh5D4FCQkJNkW+GAn3w==", + "license": "BSD-3-Clause", + "dependencies": { + "side-channel": "^1.1.0" + }, + "engines": { + "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/range-parser": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/raw-body": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-3.0.0.tgz", + "integrity": "sha512-RmkhL8CAyCRPXCE28MMH0z2PNWQBNk2Q09ZdxM9IOOXwxwZbN+qbWaatPkdkWIKL2ZVDImrN/pK5HTRz2PcS4g==", + "license": "MIT", + "dependencies": { + "bytes": "3.1.2", + "http-errors": "2.0.0", + "iconv-lite": "0.6.3", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dev": true, + "license": "MIT", + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/router": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/router/-/router-2.2.0.tgz", + "integrity": "sha512-nLTrUKm2UyiL7rlhapu/Zl45FwNgkZGaCpZbIHajDYgwlJCOzLSk+cIPAnsEqV955GjILJnKbdQC1nVPz+gAYQ==", + "license": "MIT", + "dependencies": { + "debug": "^4.4.0", + "depd": "^2.0.0", + "is-promise": "^4.0.0", + "parseurl": "^1.3.3", + "path-to-regexp": "^8.0.0" + }, + "engines": { + "node": ">= 18" + } + }, + "node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "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/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "license": "MIT" + }, + "node_modules/semver": { + "version": "7.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", + "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/send": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/send/-/send-1.2.0.tgz", + "integrity": "sha512-uaW0WwXKpL9blXE2o0bRhoL2EGXIrZxQ2ZQ4mgcfoBxdFmQold+qWsD2jLrfZ0trjKL6vOw0j//eAwcALFjKSw==", + "license": "MIT", + "dependencies": { + "debug": "^4.3.5", + "encodeurl": "^2.0.0", + "escape-html": "^1.0.3", + "etag": "^1.8.1", + "fresh": "^2.0.0", + "http-errors": "^2.0.0", + "mime-types": "^3.0.1", + "ms": "^2.1.3", + "on-finished": "^2.4.1", + "range-parser": "^1.2.1", + "statuses": "^2.0.1" + }, + "engines": { + "node": ">= 18" + } + }, + "node_modules/serve-static": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-2.2.0.tgz", + "integrity": "sha512-61g9pCh0Vnh7IutZjtLGGpTA355+OPn2TyDv/6ivP2h/AdAVX9azsoxmg2/M6nZeQZNYBEwIcsne1mJd9oQItQ==", + "license": "MIT", + "dependencies": { + "encodeurl": "^2.0.0", + "escape-html": "^1.0.3", + "parseurl": "^1.3.3", + "send": "^1.2.0" + }, + "engines": { + "node": ">= 18" + } + }, + "node_modules/setprototypeof": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", + "license": "ISC" + }, + "node_modules/side-channel": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.0.tgz", + "integrity": "sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==", + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "object-inspect": "^1.13.3", + "side-channel-list": "^1.0.0", + "side-channel-map": "^1.0.1", + "side-channel-weakmap": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-list": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.0.tgz", + "integrity": "sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==", + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "object-inspect": "^1.13.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-map": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz", + "integrity": "sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==", + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-weakmap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz", + "integrity": "sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==", + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3", + "side-channel-map": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/simple-update-notifier": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/simple-update-notifier/-/simple-update-notifier-2.0.0.tgz", + "integrity": "sha512-a2B9Y0KlNXl9u/vsW6sTIu9vGEpfKu2wRV6l1H3XEas/0gUIzGzBoP/IouTcUQbm9JWZLH3COxyn03TYlFax6w==", + "dev": true, + "license": "MIT", + "dependencies": { + "semver": "^7.5.3" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/statuses": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "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": { + "has-flag": "^3.0.0" + }, + "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, + "license": "MIT", + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/toidentifier": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", + "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", + "license": "MIT", + "engines": { + "node": ">=0.6" + } + }, + "node_modules/touch": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/touch/-/touch-3.1.1.tgz", + "integrity": "sha512-r0eojU4bI8MnHr8c5bNo7lJDdI2qXlWWJk6a9EAFG7vbhTjElYhBVS3/miuE0uOuoLdb8Mc/rVfsmm6eo5o9GA==", + "dev": true, + "license": "ISC", + "bin": { + "nodetouch": "bin/nodetouch.js" + } + }, + "node_modules/ts-node": { + "version": "10.9.2", + "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.9.2.tgz", + "integrity": "sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@cspotcode/source-map-support": "^0.8.0", + "@tsconfig/node10": "^1.0.7", + "@tsconfig/node12": "^1.0.7", + "@tsconfig/node14": "^1.0.0", + "@tsconfig/node16": "^1.0.2", + "acorn": "^8.4.1", + "acorn-walk": "^8.1.1", + "arg": "^4.1.0", + "create-require": "^1.1.0", + "diff": "^4.0.1", + "make-error": "^1.1.1", + "v8-compile-cache-lib": "^3.0.1", + "yn": "3.1.1" + }, + "bin": { + "ts-node": "dist/bin.js", + "ts-node-cwd": "dist/bin-cwd.js", + "ts-node-esm": "dist/bin-esm.js", + "ts-node-script": "dist/bin-script.js", + "ts-node-transpile-only": "dist/bin-transpile.js", + "ts-script": "dist/bin-script-deprecated.js" + }, + "peerDependencies": { + "@swc/core": ">=1.2.50", + "@swc/wasm": ">=1.2.50", + "@types/node": "*", + "typescript": ">=2.7" + }, + "peerDependenciesMeta": { + "@swc/core": { + "optional": true + }, + "@swc/wasm": { + "optional": true + } + } + }, + "node_modules/type-is": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-2.0.1.tgz", + "integrity": "sha512-OZs6gsjF4vMp32qrCbiVSkrFmXtG/AZhY3t0iAMrMBiAZyV9oALtXO8hsrHbMXF9x6L3grlFuwW2oAz7cav+Gw==", + "license": "MIT", + "dependencies": { + "content-type": "^1.0.5", + "media-typer": "^1.1.0", + "mime-types": "^3.0.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/typescript": { + "version": "5.8.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.8.3.tgz", + "integrity": "sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ==", + "dev": true, + "license": "Apache-2.0", + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, + "node_modules/undefsafe": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/undefsafe/-/undefsafe-2.0.5.tgz", + "integrity": "sha512-WxONCrssBM8TSPRqN5EmsjVrsv4A8X12J4ArBiiayv3DyyG3ZlIg6yysuuSYdZsVz3TKcTg2fd//Ujd4CHV1iA==", + "dev": true, + "license": "MIT" + }, + "node_modules/undici-types": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.21.0.tgz", + "integrity": "sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/v8-compile-cache-lib": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz", + "integrity": "sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==", + "dev": true, + "license": "MIT" + }, + "node_modules/vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "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==", + "license": "ISC" + }, + "node_modules/yn": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", + "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + } + } +} diff --git a/mono-repo/monorepo-ts/server/package.json b/mono-repo/monorepo-ts/server/package.json new file mode 100644 index 00000000..33efb419 --- /dev/null +++ b/mono-repo/monorepo-ts/server/package.json @@ -0,0 +1,26 @@ +{ + "name": "server", + "version": "1.0.0", + "main": "index.js", + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1", + "build": "tsc", + "start": "node dist/index.js", + "dev": "nodemon src/index.ts", + "prod": "npm run build && npm run start" + }, + "keywords": [], + "author": "", + "license": "ISC", + "description": "", + "dependencies": { + "express": "^5.1.0" + }, + "devDependencies": { + "@types/express": "^5.0.1", + "@types/node": "^22.14.0", + "nodemon": "^3.1.9", + "ts-node": "^10.9.2", + "typescript": "^5.8.3" + } +} diff --git a/mono-repo/monorepo-ts/server/src/index.ts b/mono-repo/monorepo-ts/server/src/index.ts new file mode 100644 index 00000000..76bad0b7 --- /dev/null +++ b/mono-repo/monorepo-ts/server/src/index.ts @@ -0,0 +1,15 @@ +import express, { Request, Response } from 'express'; + +const app = express(); +const port = 3000; + +app.get('/', (req, res) => { + const name = process.env.NAME || 'World'; + res.send({ + message: `Hello ${name}!`, + }); +}); + +app.listen(port, () => { + console.log(`Server is running on port ${port}`); +}); \ No newline at end of file diff --git a/mono-repo/monorepo-ts/server/tsconfig.json b/mono-repo/monorepo-ts/server/tsconfig.json new file mode 100644 index 00000000..d073b801 --- /dev/null +++ b/mono-repo/monorepo-ts/server/tsconfig.json @@ -0,0 +1,15 @@ +{ + "compilerOptions": { + "target": "es2016", + "module": "commonjs", + "outDir": "./dist", + "rootDir": "./src", + "esModuleInterop": true, + "strict": true, + "moduleResolution": "node", + "sourceMap": true, + "resolveJsonModule": true + }, + "include": ["src/**/*"], + "exclude": ["node_modules"] +} \ No newline at end of file diff --git a/mono-repo/monorepo/client/README.md b/mono-repo/monorepo/client/README.md new file mode 100644 index 00000000..fd3b758d --- /dev/null +++ b/mono-repo/monorepo/client/README.md @@ -0,0 +1,12 @@ +# React + Vite + +This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules. + +Currently, two official plugins are available: + +- [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/blob/main/packages/plugin-react/README.md) uses [Babel](https://babeljs.io/) for Fast Refresh +- [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react-swc) uses [SWC](https://swc.rs/) for Fast Refresh + +## Expanding the ESLint configuration + +If you are developing a production application, we recommend using TypeScript and enable type-aware lint rules. Check out the [TS template](https://github.com/vitejs/vite/tree/main/packages/create-vite/template-react-ts) to integrate TypeScript and [`typescript-eslint`](https://typescript-eslint.io) in your project. diff --git a/mono-repo/monorepo/client/eslint.config.js b/mono-repo/monorepo/client/eslint.config.js new file mode 100644 index 00000000..ec2b712d --- /dev/null +++ b/mono-repo/monorepo/client/eslint.config.js @@ -0,0 +1,33 @@ +import js from '@eslint/js' +import globals from 'globals' +import reactHooks from 'eslint-plugin-react-hooks' +import reactRefresh from 'eslint-plugin-react-refresh' + +export default [ + { ignores: ['dist'] }, + { + files: ['**/*.{js,jsx}'], + languageOptions: { + ecmaVersion: 2020, + globals: globals.browser, + parserOptions: { + ecmaVersion: 'latest', + ecmaFeatures: { jsx: true }, + sourceType: 'module', + }, + }, + plugins: { + 'react-hooks': reactHooks, + 'react-refresh': reactRefresh, + }, + rules: { + ...js.configs.recommended.rules, + ...reactHooks.configs.recommended.rules, + 'no-unused-vars': ['error', { varsIgnorePattern: '^[A-Z_]' }], + 'react-refresh/only-export-components': [ + 'warn', + { allowConstantExport: true }, + ], + }, + }, +] diff --git a/mono-repo/monorepo/client/index.html b/mono-repo/monorepo/client/index.html new file mode 100644 index 00000000..0c589ecc --- /dev/null +++ b/mono-repo/monorepo/client/index.html @@ -0,0 +1,13 @@ + + + + + + + Vite + React + + +
+ + + diff --git a/mono-repo/monorepo/client/package-lock.json b/mono-repo/monorepo/client/package-lock.json new file mode 100644 index 00000000..eb09f61f --- /dev/null +++ b/mono-repo/monorepo/client/package-lock.json @@ -0,0 +1,2733 @@ +{ + "name": "client", + "version": "0.0.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "client", + "version": "0.0.0", + "dependencies": { + "react": "^19.0.0", + "react-dom": "^19.0.0" + }, + "devDependencies": { + "@eslint/js": "^9.21.0", + "@types/react": "^19.0.10", + "@types/react-dom": "^19.0.4", + "@vitejs/plugin-react": "^4.3.4", + "eslint": "^9.21.0", + "eslint-plugin-react-hooks": "^5.1.0", + "eslint-plugin-react-refresh": "^0.4.19", + "globals": "^15.15.0", + "vite": "^6.2.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, + "license": "Apache-2.0", + "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.26.2", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.26.2.tgz", + "integrity": "sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-validator-identifier": "^7.25.9", + "js-tokens": "^4.0.0", + "picocolors": "^1.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/compat-data": { + "version": "7.26.8", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.26.8.tgz", + "integrity": "sha512-oH5UPLMWR3L2wEFLnFJ1TZXqHufiTKAiLfqw5zkhS4dKXLJ10yVztfil/twG8EDTA4F/tvVNw9nOl4ZMslB8rQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core": { + "version": "7.26.10", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.26.10.tgz", + "integrity": "sha512-vMqyb7XCDMPvJFFOaT9kxtiRh42GwlZEg1/uIgtZshS5a/8OaduUfCi7kynKgc3Tw/6Uo2D+db9qBttghhmxwQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.26.2", + "@babel/generator": "^7.26.10", + "@babel/helper-compilation-targets": "^7.26.5", + "@babel/helper-module-transforms": "^7.26.0", + "@babel/helpers": "^7.26.10", + "@babel/parser": "^7.26.10", + "@babel/template": "^7.26.9", + "@babel/traverse": "^7.26.10", + "@babel/types": "^7.26.10", + "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.27.0", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.27.0.tgz", + "integrity": "sha512-VybsKvpiN1gU1sdMZIp7FcqphVVKEwcuj02x73uvcHE0PTihx1nlBcowYWhDwjpoAXRv43+gDzyggGnn1XZhVw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.27.0", + "@babel/types": "^7.27.0", + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25", + "jsesc": "^3.0.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.27.0.tgz", + "integrity": "sha512-LVk7fbXml0H2xH34dFzKQ7TDZ2G4/rVTOrq9V+icbbadjbVxxeFeDsNHv2SrZeWoA+6ZiTyWYWtScEIW07EAcA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/compat-data": "^7.26.8", + "@babel/helper-validator-option": "^7.25.9", + "browserslist": "^4.24.0", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.25.9.tgz", + "integrity": "sha512-tnUA4RsrmflIM6W6RFTLFSXITtl0wKjgpnLgXyowocVPrbYrLUXSBXDgTs8BlbmIzIdlBySRQjINYs2BAkiLtw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/traverse": "^7.25.9", + "@babel/types": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.26.0", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.26.0.tgz", + "integrity": "sha512-xO+xu6B5K2czEnQye6BHA7DolFFmS3LB7stHZFaOLb1pAwO1HWLS8fXA+eh0A2yIvltPVmx3eNNDBJA2SLHXFw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-module-imports": "^7.25.9", + "@babel/helper-validator-identifier": "^7.25.9", + "@babel/traverse": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-plugin-utils": { + "version": "7.26.5", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.26.5.tgz", + "integrity": "sha512-RS+jZcRdZdRFzMyr+wcsaqOmld1/EqTghfaBGQQd/WnRdzdlvSZ//kF7U8VQTxf1ynZ4cjUcYgjVGx13ewNPMg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.25.9.tgz", + "integrity": "sha512-4A/SCr/2KLd5jrtOMFzaKjVtAei3+2r/NChoBNoZ3EyP/+GlhoaEGoWOZUmFmoITP7zOJyHIMm+DYRd8o3PvHA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.9.tgz", + "integrity": "sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-option": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.25.9.tgz", + "integrity": "sha512-e/zv1co8pp55dNdEcCynfj9X7nyUKUXoUEwfXqaZt0omVOmDe9oOTdKStH4GmAw6zxMFs50ZayuMfHDKlO7Tfw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.27.0.tgz", + "integrity": "sha512-U5eyP/CTFPuNE3qk+WZMxFkp/4zUzdceQlfzf7DdGdhp+Fezd7HD+i8Y24ZuTMKX3wQBld449jijbGq6OdGNQg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/template": "^7.27.0", + "@babel/types": "^7.27.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/parser": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.27.0.tgz", + "integrity": "sha512-iaepho73/2Pz7w2eMS0Q5f83+0RKI7i4xmiYeBmDzfRVbQtTOG7Ts0S4HzJVsTMGI9keU8rNfuZr8DKfSt7Yyg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.27.0" + }, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/plugin-transform-react-jsx-self": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.25.9.tgz", + "integrity": "sha512-y8quW6p0WHkEhmErnfe58r7x0A70uKphQm8Sp8cV7tjNQwK56sNVK0M73LK3WuYmsuyrftut4xAkjjgU0twaMg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-react-jsx-source": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.25.9.tgz", + "integrity": "sha512-+iqjT8xmXhhYv4/uiYd8FNQsraMFZIfxVSqxxVSZP0WbbSAWvBXAul0m/zu+7Vv4O/3WtApy9pmaTMiumEZgfg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/template": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.27.0.tgz", + "integrity": "sha512-2ncevenBqXI6qRMukPlXwHKHchC7RyMuu4xv5JBXRfOGVcTy1mXCD12qrp7Jsoxll1EV3+9sE4GugBVRjT2jFA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.26.2", + "@babel/parser": "^7.27.0", + "@babel/types": "^7.27.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.27.0.tgz", + "integrity": "sha512-19lYZFzYVQkkHkl4Cy4WrAVcqBkgvV2YM2TU3xG6DIwO7O3ecbDPfW3yM3bjAGcqcQHi+CCtjMR3dIEHxsd6bA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.26.2", + "@babel/generator": "^7.27.0", + "@babel/parser": "^7.27.0", + "@babel/template": "^7.27.0", + "@babel/types": "^7.27.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, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/types": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.27.0.tgz", + "integrity": "sha512-H45s8fVLYjbhFH62dIJ3WtmJ6RSPt/3DRO0ZcT2SUiYiQyz3BLVb9ADEnLl91m74aQPS3AzzeajZHYOalWe3bg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.25.9", + "@babel/helper-validator-identifier": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@esbuild/aix-ppc64": { + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.25.2.tgz", + "integrity": "sha512-wCIboOL2yXZym2cgm6mlA742s9QeJ8DjGVaL39dLN4rRwrOgOyYSnOaFPhKZGLb2ngj4EyfAFjsNJwPXZvseag==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/android-arm": { + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.25.2.tgz", + "integrity": "sha512-NQhH7jFstVY5x8CKbcfa166GoV0EFkaPkCKBQkdPJFvo5u+nGXLEH/ooniLb3QI8Fk58YAx7nsPLozUWfCBOJA==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/android-arm64": { + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.25.2.tgz", + "integrity": "sha512-5ZAX5xOmTligeBaeNEPnPaeEuah53Id2tX4c2CVP3JaROTH+j4fnfHCkr1PjXMd78hMst+TlkfKcW/DlTq0i4w==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/android-x64": { + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.25.2.tgz", + "integrity": "sha512-Ffcx+nnma8Sge4jzddPHCZVRvIfQ0kMsUsCMcJRHkGJ1cDmhe4SsrYIjLUKn1xpHZybmOqCWwB0zQvsjdEHtkg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/darwin-arm64": { + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.25.2.tgz", + "integrity": "sha512-MpM6LUVTXAzOvN4KbjzU/q5smzryuoNjlriAIx+06RpecwCkL9JpenNzpKd2YMzLJFOdPqBpuub6eVRP5IgiSA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/darwin-x64": { + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.25.2.tgz", + "integrity": "sha512-5eRPrTX7wFyuWe8FqEFPG2cU0+butQQVNcT4sVipqjLYQjjh8a8+vUTfgBKM88ObB85ahsnTwF7PSIt6PG+QkA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/freebsd-arm64": { + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.25.2.tgz", + "integrity": "sha512-mLwm4vXKiQ2UTSX4+ImyiPdiHjiZhIaE9QvC7sw0tZ6HoNMjYAqQpGyui5VRIi5sGd+uWq940gdCbY3VLvsO1w==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/freebsd-x64": { + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.25.2.tgz", + "integrity": "sha512-6qyyn6TjayJSwGpm8J9QYYGQcRgc90nmfdUb0O7pp1s4lTY+9D0H9O02v5JqGApUyiHOtkz6+1hZNvNtEhbwRQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-arm": { + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.25.2.tgz", + "integrity": "sha512-UHBRgJcmjJv5oeQF8EpTRZs/1knq6loLxTsjc3nxO9eXAPDLcWW55flrMVc97qFPbmZP31ta1AZVUKQzKTzb0g==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-arm64": { + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.25.2.tgz", + "integrity": "sha512-gq/sjLsOyMT19I8obBISvhoYiZIAaGF8JpeXu1u8yPv8BE5HlWYobmlsfijFIZ9hIVGYkbdFhEqC0NvM4kNO0g==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-ia32": { + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.25.2.tgz", + "integrity": "sha512-bBYCv9obgW2cBP+2ZWfjYTU+f5cxRoGGQ5SeDbYdFCAZpYWrfjjfYwvUpP8MlKbP0nwZ5gyOU/0aUzZ5HWPuvQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-loong64": { + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.25.2.tgz", + "integrity": "sha512-SHNGiKtvnU2dBlM5D8CXRFdd+6etgZ9dXfaPCeJtz+37PIUlixvlIhI23L5khKXs3DIzAn9V8v+qb1TRKrgT5w==", + "cpu": [ + "loong64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-mips64el": { + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.25.2.tgz", + "integrity": "sha512-hDDRlzE6rPeoj+5fsADqdUZl1OzqDYow4TB4Y/3PlKBD0ph1e6uPHzIQcv2Z65u2K0kpeByIyAjCmjn1hJgG0Q==", + "cpu": [ + "mips64el" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-ppc64": { + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.25.2.tgz", + "integrity": "sha512-tsHu2RRSWzipmUi9UBDEzc0nLc4HtpZEI5Ba+Omms5456x5WaNuiG3u7xh5AO6sipnJ9r4cRWQB2tUjPyIkc6g==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-riscv64": { + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.25.2.tgz", + "integrity": "sha512-k4LtpgV7NJQOml/10uPU0s4SAXGnowi5qBSjaLWMojNCUICNu7TshqHLAEbkBdAszL5TabfvQ48kK84hyFzjnw==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-s390x": { + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.25.2.tgz", + "integrity": "sha512-GRa4IshOdvKY7M/rDpRR3gkiTNp34M0eLTaC1a08gNrh4u488aPhuZOCpkF6+2wl3zAN7L7XIpOFBhnaE3/Q8Q==", + "cpu": [ + "s390x" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-x64": { + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.25.2.tgz", + "integrity": "sha512-QInHERlqpTTZ4FRB0fROQWXcYRD64lAoiegezDunLpalZMjcUcld3YzZmVJ2H/Cp0wJRZ8Xtjtj0cEHhYc/uUg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/netbsd-arm64": { + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.25.2.tgz", + "integrity": "sha512-talAIBoY5M8vHc6EeI2WW9d/CkiO9MQJ0IOWX8hrLhxGbro/vBXJvaQXefW2cP0z0nQVTdQ/eNyGFV1GSKrxfw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/netbsd-x64": { + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.25.2.tgz", + "integrity": "sha512-voZT9Z+tpOxrvfKFyfDYPc4DO4rk06qamv1a/fkuzHpiVBMOhpjK+vBmWM8J1eiB3OLSMFYNaOaBNLXGChf5tg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/openbsd-arm64": { + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.25.2.tgz", + "integrity": "sha512-dcXYOC6NXOqcykeDlwId9kB6OkPUxOEqU+rkrYVqJbK2hagWOMrsTGsMr8+rW02M+d5Op5NNlgMmjzecaRf7Tg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/openbsd-x64": { + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.25.2.tgz", + "integrity": "sha512-t/TkWwahkH0Tsgoq1Ju7QfgGhArkGLkF1uYz8nQS/PPFlXbP5YgRpqQR3ARRiC2iXoLTWFxc6DJMSK10dVXluw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/sunos-x64": { + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.25.2.tgz", + "integrity": "sha512-cfZH1co2+imVdWCjd+D1gf9NjkchVhhdpgb1q5y6Hcv9TP6Zi9ZG/beI3ig8TvwT9lH9dlxLq5MQBBgwuj4xvA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/win32-arm64": { + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.25.2.tgz", + "integrity": "sha512-7Loyjh+D/Nx/sOTzV8vfbB3GJuHdOQyrOryFdZvPHLf42Tk9ivBU5Aedi7iyX+x6rbn2Mh68T4qq1SDqJBQO5Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/win32-ia32": { + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.25.2.tgz", + "integrity": "sha512-WRJgsz9un0nqZJ4MfhabxaD9Ft8KioqU3JMinOTvobbX6MOSUigSBlogP8QB3uxpJDsFS6yN+3FDBdqE5lg9kg==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/win32-x64": { + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.25.2.tgz", + "integrity": "sha512-kM3HKb16VIXZyIeVrM1ygYmZBKybX8N4p754bw390wGO3Tf2j4L2/WYL+4suWujpgf6GBYs3jv7TyUivdd05JA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@eslint-community/eslint-utils": { + "version": "4.5.1", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.5.1.tgz", + "integrity": "sha512-soEIOALTfTK6EjmKMMoLugwaP0rzkad90iIWd1hMO9ARkSAyjfMfkRRhLvD5qH7vvM0Cg72pieUfR6yh6XxC4w==", + "dev": true, + "license": "MIT", + "dependencies": { + "eslint-visitor-keys": "^3.4.3" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" + } + }, + "node_modules/@eslint-community/eslint-utils/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, + "license": "Apache-2.0", + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@eslint-community/regexpp": { + "version": "4.12.1", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.12.1.tgz", + "integrity": "sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^12.0.0 || ^14.0.0 || >=16.0.0" + } + }, + "node_modules/@eslint/config-array": { + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.19.2.tgz", + "integrity": "sha512-GNKqxfHG2ySmJOBSHg7LxeUx4xpuCoFjacmlCoYWEbaPXLwvfIjixRI12xCQZeULksQb23uiA8F40w5TojpV7w==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@eslint/object-schema": "^2.1.6", + "debug": "^4.3.1", + "minimatch": "^3.1.2" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/config-helpers": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/@eslint/config-helpers/-/config-helpers-0.2.0.tgz", + "integrity": "sha512-yJLLmLexii32mGrhW29qvU3QBVTu0GUmEf/J4XsBtVhp4JkIUFN/BjWqTF63yRvGApIDpZm5fa97LtYtINmfeQ==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/core": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.12.0.tgz", + "integrity": "sha512-cmrR6pytBuSMTaBweKoGMwu3EiHiEC+DoyupPmlZ0HxBJBtIxwe+j/E4XPIKNx+Q74c8lXKPwYawBf5glsTkHg==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@types/json-schema": "^7.0.15" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/eslintrc": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.3.1.tgz", + "integrity": "sha512-gtF186CXhIl1p4pJNGZw8Yc6RlshoePRvE0X91oPGb3vZ8pM3qOS9W9NGPat9LziaBV7XrJWGylNQXkGcnM3IQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "ajv": "^6.12.4", + "debug": "^4.3.2", + "espree": "^10.0.1", + "globals": "^14.0.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": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@eslint/eslintrc/node_modules/globals": { + "version": "14.0.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-14.0.0.tgz", + "integrity": "sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@eslint/js": { + "version": "9.23.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.23.0.tgz", + "integrity": "sha512-35MJ8vCPU0ZMxo7zfev2pypqTwWTofFZO6m4KAtdoFhRpLJUpHTZZ+KB3C7Hb1d7bULYwO4lJXGCi5Se+8OMbw==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/object-schema": { + "version": "2.1.6", + "resolved": "https://registry.npmjs.org/@eslint/object-schema/-/object-schema-2.1.6.tgz", + "integrity": "sha512-RBMg5FRL0I0gs51M/guSAj5/e14VQ4tpZnQNWwuDT66P14I43ItmPfIZRhO9fUVIPOAQXU47atlywZ/czoqFPA==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/plugin-kit": { + "version": "0.2.7", + "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.2.7.tgz", + "integrity": "sha512-JubJ5B2pJ4k4yGxaNLdbjrnk9d/iDz6/q8wOilpIowd6PJPgaxCuHBnBszq7Ce2TyMrywm5r4PnKm6V3iiZF+g==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@eslint/core": "^0.12.0", + "levn": "^0.4.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@humanfs/core": { + "version": "0.19.1", + "resolved": "https://registry.npmjs.org/@humanfs/core/-/core-0.19.1.tgz", + "integrity": "sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=18.18.0" + } + }, + "node_modules/@humanfs/node": { + "version": "0.16.6", + "resolved": "https://registry.npmjs.org/@humanfs/node/-/node-0.16.6.tgz", + "integrity": "sha512-YuI2ZHQL78Q5HbhDiBA1X4LmYdXCKCMQIfw0pw7piHJwyREFebJUvrQN4cMssyES6x+vfUbx1CIpaQUKYdQZOw==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@humanfs/core": "^0.19.1", + "@humanwhocodes/retry": "^0.3.0" + }, + "engines": { + "node": ">=18.18.0" + } + }, + "node_modules/@humanfs/node/node_modules/@humanwhocodes/retry": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.3.1.tgz", + "integrity": "sha512-JBxkERygn7Bv/GbN5Rv8Ul6LVknS+5Bp6RgDC/O8gEBU/yeH5Ui5C/OlWrTb6qct7LjjfT6Re2NxB0ln0yYybA==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=18.18" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, + "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, + "license": "Apache-2.0", + "engines": { + "node": ">=12.22" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, + "node_modules/@humanwhocodes/retry": { + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.4.2.tgz", + "integrity": "sha512-xeO57FpIu4p1Ri3Jq/EXq4ClRm86dVF2z/+kvFnyqVYRavTZmaFaUBbWCOuuTh0o/g7DSsk6kc2vrS4Vl5oPOQ==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=18.18" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.8", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.8.tgz", + "integrity": "sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA==", + "dev": true, + "license": "MIT", + "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, + "license": "MIT", + "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, + "license": "MIT", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz", + "integrity": "sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==", + "dev": true, + "license": "MIT" + }, + "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, + "license": "MIT", + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@rollup/rollup-android-arm-eabi": { + "version": "4.38.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.38.0.tgz", + "integrity": "sha512-ldomqc4/jDZu/xpYU+aRxo3V4mGCV9HeTgUBANI3oIQMOL+SsxB+S2lxMpkFp5UamSS3XuTMQVbsS24R4J4Qjg==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-android-arm64": { + "version": "4.38.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.38.0.tgz", + "integrity": "sha512-VUsgcy4GhhT7rokwzYQP+aV9XnSLkkhlEJ0St8pbasuWO/vwphhZQxYEKUP3ayeCYLhk6gEtacRpYP/cj3GjyQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-darwin-arm64": { + "version": "4.38.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.38.0.tgz", + "integrity": "sha512-buA17AYXlW9Rn091sWMq1xGUvWQFOH4N1rqUxGJtEQzhChxWjldGCCup7r/wUnaI6Au8sKXpoh0xg58a7cgcpg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-darwin-x64": { + "version": "4.38.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.38.0.tgz", + "integrity": "sha512-Mgcmc78AjunP1SKXl624vVBOF2bzwNWFPMP4fpOu05vS0amnLcX8gHIge7q/lDAHy3T2HeR0TqrriZDQS2Woeg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-freebsd-arm64": { + "version": "4.38.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.38.0.tgz", + "integrity": "sha512-zzJACgjLbQTsscxWqvrEQAEh28hqhebpRz5q/uUd1T7VTwUNZ4VIXQt5hE7ncs0GrF+s7d3S4on4TiXUY8KoQA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ] + }, + "node_modules/@rollup/rollup-freebsd-x64": { + "version": "4.38.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.38.0.tgz", + "integrity": "sha512-hCY/KAeYMCyDpEE4pTETam0XZS4/5GXzlLgpi5f0IaPExw9kuB+PDTOTLuPtM10TlRG0U9OSmXJ+Wq9J39LvAg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ] + }, + "node_modules/@rollup/rollup-linux-arm-gnueabihf": { + "version": "4.38.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.38.0.tgz", + "integrity": "sha512-mimPH43mHl4JdOTD7bUMFhBdrg6f9HzMTOEnzRmXbOZqjijCw8LA5z8uL6LCjxSa67H2xiLFvvO67PT05PRKGg==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm-musleabihf": { + "version": "4.38.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.38.0.tgz", + "integrity": "sha512-tPiJtiOoNuIH8XGG8sWoMMkAMm98PUwlriOFCCbZGc9WCax+GLeVRhmaxjJtz6WxrPKACgrwoZ5ia/uapq3ZVg==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-gnu": { + "version": "4.38.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.38.0.tgz", + "integrity": "sha512-wZco59rIVuB0tjQS0CSHTTUcEde+pXQWugZVxWaQFdQQ1VYub/sTrNdY76D1MKdN2NB48JDuGABP6o6fqos8mA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-musl": { + "version": "4.38.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.38.0.tgz", + "integrity": "sha512-fQgqwKmW0REM4LomQ+87PP8w8xvU9LZfeLBKybeli+0yHT7VKILINzFEuggvnV9M3x1Ed4gUBmGUzCo/ikmFbQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-loongarch64-gnu": { + "version": "4.38.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loongarch64-gnu/-/rollup-linux-loongarch64-gnu-4.38.0.tgz", + "integrity": "sha512-hz5oqQLXTB3SbXpfkKHKXLdIp02/w3M+ajp8p4yWOWwQRtHWiEOCKtc9U+YXahrwdk+3qHdFMDWR5k+4dIlddg==", + "cpu": [ + "loong64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-powerpc64le-gnu": { + "version": "4.38.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.38.0.tgz", + "integrity": "sha512-NXqygK/dTSibQ+0pzxsL3r4Xl8oPqVoWbZV9niqOnIHV/J92fe65pOir0xjkUZDRSPyFRvu+4YOpJF9BZHQImw==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-riscv64-gnu": { + "version": "4.38.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.38.0.tgz", + "integrity": "sha512-GEAIabR1uFyvf/jW/5jfu8gjM06/4kZ1W+j1nWTSSB3w6moZEBm7iBtzwQ3a1Pxos2F7Gz+58aVEnZHU295QTg==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-riscv64-musl": { + "version": "4.38.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-musl/-/rollup-linux-riscv64-musl-4.38.0.tgz", + "integrity": "sha512-9EYTX+Gus2EGPbfs+fh7l95wVADtSQyYw4DfSBcYdUEAmP2lqSZY0Y17yX/3m5VKGGJ4UmIH5LHLkMJft3bYoA==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-s390x-gnu": { + "version": "4.38.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.38.0.tgz", + "integrity": "sha512-Mpp6+Z5VhB9VDk7RwZXoG2qMdERm3Jw07RNlXHE0bOnEeX+l7Fy4bg+NxfyN15ruuY3/7Vrbpm75J9QHFqj5+Q==", + "cpu": [ + "s390x" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-gnu": { + "version": "4.38.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.38.0.tgz", + "integrity": "sha512-vPvNgFlZRAgO7rwncMeE0+8c4Hmc+qixnp00/Uv3ht2x7KYrJ6ERVd3/R0nUtlE6/hu7/HiiNHJ/rP6knRFt1w==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-musl": { + "version": "4.38.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.38.0.tgz", + "integrity": "sha512-q5Zv+goWvQUGCaL7fU8NuTw8aydIL/C9abAVGCzRReuj5h30TPx4LumBtAidrVOtXnlB+RZkBtExMsfqkMfb8g==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-win32-arm64-msvc": { + "version": "4.38.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.38.0.tgz", + "integrity": "sha512-u/Jbm1BU89Vftqyqbmxdq14nBaQjQX1HhmsdBWqSdGClNaKwhjsg5TpW+5Ibs1mb8Es9wJiMdl86BcmtUVXNZg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-ia32-msvc": { + "version": "4.38.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.38.0.tgz", + "integrity": "sha512-mqu4PzTrlpNHHbu5qleGvXJoGgHpChBlrBx/mEhTPpnAL1ZAYFlvHD7rLK839LLKQzqEQMFJfGrrOHItN4ZQqA==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-x64-msvc": { + "version": "4.38.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.38.0.tgz", + "integrity": "sha512-jjqy3uWlecfB98Psxb5cD6Fny9Fupv9LrDSPTQZUROqjvZmcCqNu4UMl7qqhlUUGpwiAkotj6GYu4SZdcr/nLw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "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", + "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, + "license": "MIT", + "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, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__traverse": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.7.tgz", + "integrity": "sha512-dkO5fhS7+/oos4ciWxyEyjWe48zmG6wbCheo/G2ZnHx4fs3EU6YC6UM8rk56gAjNJ9P3MTH2jo5jb92/K6wbng==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.20.7" + } + }, + "node_modules/@types/estree": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.7.tgz", + "integrity": "sha512-w28IoSUCJpidD/TGviZwwMJckNESJZXFu7NBZ5YJ4mEUnNraUn9Pm8HSZm/jDF1pDWYKspWE7oVphigUPRakIQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/json-schema": { + "version": "7.0.15", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", + "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/react": { + "version": "19.0.12", + "resolved": "https://registry.npmjs.org/@types/react/-/react-19.0.12.tgz", + "integrity": "sha512-V6Ar115dBDrjbtXSrS+/Oruobc+qVbbUxDFC1RSbRqLt5SYvxxyIDrSC85RWml54g+jfNeEMZhEj7wW07ONQhA==", + "dev": true, + "license": "MIT", + "dependencies": { + "csstype": "^3.0.2" + } + }, + "node_modules/@types/react-dom": { + "version": "19.0.4", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-19.0.4.tgz", + "integrity": "sha512-4fSQ8vWFkg+TGhePfUzVmat3eC14TXYSsiiDSLI0dVLsrm9gZFABjPy/Qu6TKgl1tq1Bu1yDsuQgY3A3DOjCcg==", + "dev": true, + "license": "MIT", + "peerDependencies": { + "@types/react": "^19.0.0" + } + }, + "node_modules/@vitejs/plugin-react": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-react/-/plugin-react-4.3.4.tgz", + "integrity": "sha512-SCCPBJtYLdE8PX/7ZQAs1QAZ8Jqwih+0VBLum1EGqmCCQal+MIUqLCzj3ZUy8ufbC0cAM4LRlSTm7IQJwWT4ug==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/core": "^7.26.0", + "@babel/plugin-transform-react-jsx-self": "^7.25.9", + "@babel/plugin-transform-react-jsx-source": "^7.25.9", + "@types/babel__core": "^7.20.5", + "react-refresh": "^0.14.2" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "peerDependencies": { + "vite": "^4.2.0 || ^5.0.0 || ^6.0.0" + } + }, + "node_modules/acorn": { + "version": "8.14.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.1.tgz", + "integrity": "sha512-OvQ/2pUDKmgfCg++xsTX1wGxfTaszcHVcTctW4UJB4hibJx2HXxxO5UmVgyjMa+ZDsiaf5wWLXYpRWMmBI0QHg==", + "dev": true, + "license": "MIT", + "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, + "license": "MIT", + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "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-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "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", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true, + "license": "Python-2.0" + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true, + "license": "MIT" + }, + "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, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/browserslist": { + "version": "4.24.4", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.24.4.tgz", + "integrity": "sha512-KDi1Ny1gSePi1vm0q4oxSF8b4DR44GF4BbmS2YdhPLOEqd8pDviZOGH/GsmRwoWJ2+5Lr085X7naowMwKHDG1A==", + "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" + } + ], + "license": "MIT", + "dependencies": { + "caniuse-lite": "^1.0.30001688", + "electron-to-chromium": "^1.5.73", + "node-releases": "^2.0.19", + "update-browserslist-db": "^1.1.1" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "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, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001707", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001707.tgz", + "integrity": "sha512-3qtRjw/HQSMlDWf+X79N206fepf4SOOU6SQLMaq/0KkZLmSjPxAkBOQQ+FxbHKfHmYLZFfdWsO3KA90ceHPSnw==", + "dev": true, + "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", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "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/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, + "license": "MIT", + "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, + "license": "MIT" + }, + "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, + "license": "MIT" + }, + "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, + "license": "MIT" + }, + "node_modules/cross-spawn": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", + "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", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz", + "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==", + "dev": true, + "license": "MIT" + }, + "node_modules/debug": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.0.tgz", + "integrity": "sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "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, + "license": "MIT" + }, + "node_modules/electron-to-chromium": { + "version": "1.5.128", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.128.tgz", + "integrity": "sha512-bo1A4HH/NS522Ws0QNFIzyPcyUUNV/yyy70Ho1xqfGYzPUme2F/xr4tlEOuM6/A538U1vDA7a4XfCd1CKRegKQ==", + "dev": true, + "license": "ISC" + }, + "node_modules/esbuild": { + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.25.2.tgz", + "integrity": "sha512-16854zccKPnC+toMywC+uKNeYSv+/eXkevRAfwRD/G9Cleq66m8XFIrigkbvauLLlCfDL45Q2cWegSg53gGBnQ==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=18" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.25.2", + "@esbuild/android-arm": "0.25.2", + "@esbuild/android-arm64": "0.25.2", + "@esbuild/android-x64": "0.25.2", + "@esbuild/darwin-arm64": "0.25.2", + "@esbuild/darwin-x64": "0.25.2", + "@esbuild/freebsd-arm64": "0.25.2", + "@esbuild/freebsd-x64": "0.25.2", + "@esbuild/linux-arm": "0.25.2", + "@esbuild/linux-arm64": "0.25.2", + "@esbuild/linux-ia32": "0.25.2", + "@esbuild/linux-loong64": "0.25.2", + "@esbuild/linux-mips64el": "0.25.2", + "@esbuild/linux-ppc64": "0.25.2", + "@esbuild/linux-riscv64": "0.25.2", + "@esbuild/linux-s390x": "0.25.2", + "@esbuild/linux-x64": "0.25.2", + "@esbuild/netbsd-arm64": "0.25.2", + "@esbuild/netbsd-x64": "0.25.2", + "@esbuild/openbsd-arm64": "0.25.2", + "@esbuild/openbsd-x64": "0.25.2", + "@esbuild/sunos-x64": "0.25.2", + "@esbuild/win32-arm64": "0.25.2", + "@esbuild/win32-ia32": "0.25.2", + "@esbuild/win32-x64": "0.25.2" + } + }, + "node_modules/escalade": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", + "dev": true, + "license": "MIT", + "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, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint": { + "version": "9.23.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.23.0.tgz", + "integrity": "sha512-jV7AbNoFPAY1EkFYpLq5bslU9NLNO8xnEeQXwErNibVryjk67wHVmddTBilc5srIttJDBrB0eMHKZBFbSIABCw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@eslint-community/eslint-utils": "^4.2.0", + "@eslint-community/regexpp": "^4.12.1", + "@eslint/config-array": "^0.19.2", + "@eslint/config-helpers": "^0.2.0", + "@eslint/core": "^0.12.0", + "@eslint/eslintrc": "^3.3.1", + "@eslint/js": "9.23.0", + "@eslint/plugin-kit": "^0.2.7", + "@humanfs/node": "^0.16.6", + "@humanwhocodes/module-importer": "^1.0.1", + "@humanwhocodes/retry": "^0.4.2", + "@types/estree": "^1.0.6", + "@types/json-schema": "^7.0.15", + "ajv": "^6.12.4", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.6", + "debug": "^4.3.2", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^8.3.0", + "eslint-visitor-keys": "^4.2.0", + "espree": "^10.3.0", + "esquery": "^1.5.0", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^8.0.0", + "find-up": "^5.0.0", + "glob-parent": "^6.0.2", + "ignore": "^5.2.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.1.2", + "natural-compare": "^1.4.0", + "optionator": "^0.9.3" + }, + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://eslint.org/donate" + }, + "peerDependencies": { + "jiti": "*" + }, + "peerDependenciesMeta": { + "jiti": { + "optional": true + } + } + }, + "node_modules/eslint-plugin-react-hooks": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-5.2.0.tgz", + "integrity": "sha512-+f15FfK64YQwZdJNELETdn5ibXEUQmW1DZL6KXhNnc2heoy/sg9VJJeT7n8TlMWouzWqSWavFkIhHyIbIAEapg==", + "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 || ^9.0.0" + } + }, + "node_modules/eslint-plugin-react-refresh": { + "version": "0.4.19", + "resolved": "https://registry.npmjs.org/eslint-plugin-react-refresh/-/eslint-plugin-react-refresh-0.4.19.tgz", + "integrity": "sha512-eyy8pcr/YxSYjBoqIFSrlbn9i/xvxUFa8CjzAYo9cFjgGXqq1hyjihcpZvxRLalpaWmueWR81xn7vuKmAFijDQ==", + "dev": true, + "license": "MIT", + "peerDependencies": { + "eslint": ">=8.40" + } + }, + "node_modules/eslint-scope": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-8.3.0.tgz", + "integrity": "sha512-pUNxi75F8MJ/GdeKtVLSbYg4ZI34J6C0C7sbL4YOp2exGwen7ZsuBqKzUhXd0qMQ362yET3z+uPwKeg/0C2XCQ==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-visitor-keys": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.0.tgz", + "integrity": "sha512-UyLnSehNt62FFhSwjZlHmeokpRK59rcz29j+F1/aDgbkbRTk7wIc9XzdoasMUbRNKDM0qQt/+BJ4BrpFeABemw==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/espree": { + "version": "10.3.0", + "resolved": "https://registry.npmjs.org/espree/-/espree-10.3.0.tgz", + "integrity": "sha512-0QYC8b24HWY8zjRnDTL6RiHfDbAWn63qb4LMj1Z4b076A4une81+z03Kg7l7mn/48PUTqoLptSXez8oknU8Clg==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "acorn": "^8.14.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^4.2.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/esquery": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.6.0.tgz", + "integrity": "sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==", + "dev": true, + "license": "BSD-3-Clause", + "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, + "license": "BSD-2-Clause", + "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, + "license": "BSD-2-Clause", + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true, + "license": "MIT" + }, + "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, + "license": "MIT" + }, + "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, + "license": "MIT" + }, + "node_modules/file-entry-cache": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-8.0.0.tgz", + "integrity": "sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "flat-cache": "^4.0.0" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "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, + "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": "4.0.1", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-4.0.1.tgz", + "integrity": "sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==", + "dev": true, + "license": "MIT", + "dependencies": { + "flatted": "^3.2.9", + "keyv": "^4.5.4" + }, + "engines": { + "node": ">=16" + } + }, + "node_modules/flatted": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.3.tgz", + "integrity": "sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==", + "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, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "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, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "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, + "license": "ISC", + "dependencies": { + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/globals": { + "version": "15.15.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-15.15.0.tgz", + "integrity": "sha512-7ACyT3wmyp3I61S4fG682L0VA2RGD9otkqGJIwNUMF1SWUombIIk+af1unuDYgMm082aHYwD+mzJvv9Iu8dsgg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "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, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/ignore": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", + "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 4" + } + }, + "node_modules/import-fresh": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.1.tgz", + "integrity": "sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==", + "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", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.8.19" + } + }, + "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, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "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, + "license": "MIT", + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true, + "license": "ISC" + }, + "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==", + "dev": true, + "license": "MIT" + }, + "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, + "license": "MIT", + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/jsesc": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz", + "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==", + "dev": true, + "license": "MIT", + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=6" + } + }, + "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, + "license": "MIT" + }, + "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, + "license": "MIT" + }, + "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, + "license": "MIT" + }, + "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": ">=6" + } + }, + "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, + "license": "MIT", + "dependencies": { + "json-buffer": "3.0.1" + } + }, + "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, + "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", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "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", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", + "dev": true, + "license": "MIT" + }, + "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, + "license": "ISC", + "dependencies": { + "yallist": "^3.0.2" + } + }, + "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, + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "dev": true, + "license": "MIT" + }, + "node_modules/nanoid": { + "version": "3.3.11", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.11.tgz", + "integrity": "sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==", + "dev": true, + "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", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", + "dev": true, + "license": "MIT" + }, + "node_modules/node-releases": { + "version": "2.0.19", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.19.tgz", + "integrity": "sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==", + "dev": true, + "license": "MIT" + }, + "node_modules/optionator": { + "version": "0.9.4", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.4.tgz", + "integrity": "sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==", + "dev": true, + "license": "MIT", + "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, + "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", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "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", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dev": true, + "license": "MIT", + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "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, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "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, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/picocolors": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", + "dev": true, + "license": "ISC" + }, + "node_modules/postcss": { + "version": "8.5.3", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.3.tgz", + "integrity": "sha512-dle9A3yYxlBSrt8Fu+IpjGT8SY8hN0mlaA6GY8t0P5PjIOZemULz/E2Bnm/2dcUOena75OTNkHI76uZBNUUq3A==", + "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" + } + ], + "license": "MIT", + "dependencies": { + "nanoid": "^3.3.8", + "picocolors": "^1.1.1", + "source-map-js": "^1.2.1" + }, + "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, + "license": "MIT", + "engines": { + "node": ">= 0.8.0" + } + }, + "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, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/react": { + "version": "19.1.0", + "resolved": "https://registry.npmjs.org/react/-/react-19.1.0.tgz", + "integrity": "sha512-FS+XFBNvn3GTAWq26joslQgWNoFu08F4kl0J4CgdNKADkdSGXQyTCnKteIAJy96Br6YbpEU1LSzV5dYtjMkMDg==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/react-dom": { + "version": "19.1.0", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-19.1.0.tgz", + "integrity": "sha512-Xs1hdnE+DyKgeHJeJznQmYMIBG3TKIHJJT95Q58nHLSrElKlGQqDTR2HQ9fx5CN/Gk6Vh/kupBTDLU11/nDk/g==", + "license": "MIT", + "dependencies": { + "scheduler": "^0.26.0" + }, + "peerDependencies": { + "react": "^19.1.0" + } + }, + "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, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "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, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/rollup": { + "version": "4.38.0", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.38.0.tgz", + "integrity": "sha512-5SsIRtJy9bf1ErAOiFMFzl64Ex9X5V7bnJ+WlFMb+zmP459OSWCEG7b0ERZ+PEU7xPt4OG3RHbrp1LJlXxYTrw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/estree": "1.0.7" + }, + "bin": { + "rollup": "dist/bin/rollup" + }, + "engines": { + "node": ">=18.0.0", + "npm": ">=8.0.0" + }, + "optionalDependencies": { + "@rollup/rollup-android-arm-eabi": "4.38.0", + "@rollup/rollup-android-arm64": "4.38.0", + "@rollup/rollup-darwin-arm64": "4.38.0", + "@rollup/rollup-darwin-x64": "4.38.0", + "@rollup/rollup-freebsd-arm64": "4.38.0", + "@rollup/rollup-freebsd-x64": "4.38.0", + "@rollup/rollup-linux-arm-gnueabihf": "4.38.0", + "@rollup/rollup-linux-arm-musleabihf": "4.38.0", + "@rollup/rollup-linux-arm64-gnu": "4.38.0", + "@rollup/rollup-linux-arm64-musl": "4.38.0", + "@rollup/rollup-linux-loongarch64-gnu": "4.38.0", + "@rollup/rollup-linux-powerpc64le-gnu": "4.38.0", + "@rollup/rollup-linux-riscv64-gnu": "4.38.0", + "@rollup/rollup-linux-riscv64-musl": "4.38.0", + "@rollup/rollup-linux-s390x-gnu": "4.38.0", + "@rollup/rollup-linux-x64-gnu": "4.38.0", + "@rollup/rollup-linux-x64-musl": "4.38.0", + "@rollup/rollup-win32-arm64-msvc": "4.38.0", + "@rollup/rollup-win32-ia32-msvc": "4.38.0", + "@rollup/rollup-win32-x64-msvc": "4.38.0", + "fsevents": "~2.3.2" + } + }, + "node_modules/scheduler": { + "version": "0.26.0", + "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.26.0.tgz", + "integrity": "sha512-NlHwttCI/l5gCPR3D1nNXtWABUmBwvZpEQiD4IXSbIDq8BzLIK/7Ir5gTFSGZDUu37K5cMNp0hFtzO38sC7gWA==", + "license": "MIT" + }, + "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, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + } + }, + "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, + "license": "MIT", + "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, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/source-map-js": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", + "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "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, + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "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, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "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, + "license": "MIT", + "dependencies": { + "prelude-ls": "^1.2.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/update-browserslist-db": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.3.tgz", + "integrity": "sha512-UxhIZQ+QInVdunkDAaiazvvT/+fXL5Osr0JZlJulepYu6Jd7qJtDZjlur0emRlT71EN3ScPoE7gvsuIKKNavKw==", + "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" + } + ], + "license": "MIT", + "dependencies": { + "escalade": "^3.2.0", + "picocolors": "^1.1.1" + }, + "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, + "license": "BSD-2-Clause", + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/vite": { + "version": "6.2.3", + "resolved": "https://registry.npmjs.org/vite/-/vite-6.2.3.tgz", + "integrity": "sha512-IzwM54g4y9JA/xAeBPNaDXiBF8Jsgl3VBQ2YQ/wOY6fyW3xMdSoltIV3Bo59DErdqdE6RxUfv8W69DvUorE4Eg==", + "dev": true, + "license": "MIT", + "dependencies": { + "esbuild": "^0.25.0", + "postcss": "^8.5.3", + "rollup": "^4.30.1" + }, + "bin": { + "vite": "bin/vite.js" + }, + "engines": { + "node": "^18.0.0 || ^20.0.0 || >=22.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 || >=22.0.0", + "jiti": ">=1.21.0", + "less": "*", + "lightningcss": "^1.21.0", + "sass": "*", + "sass-embedded": "*", + "stylus": "*", + "sugarss": "*", + "terser": "^5.16.0", + "tsx": "^4.8.1", + "yaml": "^2.4.2" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "jiti": { + "optional": true + }, + "less": { + "optional": true + }, + "lightningcss": { + "optional": true + }, + "sass": { + "optional": true + }, + "sass-embedded": { + "optional": true + }, + "stylus": { + "optional": true + }, + "sugarss": { + "optional": true + }, + "terser": { + "optional": true + }, + "tsx": { + "optional": true + }, + "yaml": { + "optional": true + } + } + }, + "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, + "license": "ISC", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "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, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true, + "license": "ISC" + }, + "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, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + } + } +} diff --git a/mono-repo/monorepo/client/package.json b/mono-repo/monorepo/client/package.json new file mode 100644 index 00000000..c8fa8e58 --- /dev/null +++ b/mono-repo/monorepo/client/package.json @@ -0,0 +1,27 @@ +{ + "name": "client", + "private": true, + "version": "0.0.0", + "type": "module", + "scripts": { + "dev": "vite", + "build": "vite build", + "lint": "eslint .", + "preview": "vite preview" + }, + "dependencies": { + "react": "^19.0.0", + "react-dom": "^19.0.0" + }, + "devDependencies": { + "@eslint/js": "^9.21.0", + "@types/react": "^19.0.10", + "@types/react-dom": "^19.0.4", + "@vitejs/plugin-react": "^4.3.4", + "eslint": "^9.21.0", + "eslint-plugin-react-hooks": "^5.1.0", + "eslint-plugin-react-refresh": "^0.4.19", + "globals": "^15.15.0", + "vite": "^6.2.0" + } +} diff --git a/mono-repo/monorepo/client/public/vite.svg b/mono-repo/monorepo/client/public/vite.svg new file mode 100644 index 00000000..e7b8dfb1 --- /dev/null +++ b/mono-repo/monorepo/client/public/vite.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/mono-repo/monorepo/client/src/App.css b/mono-repo/monorepo/client/src/App.css new file mode 100644 index 00000000..b9d355df --- /dev/null +++ b/mono-repo/monorepo/client/src/App.css @@ -0,0 +1,42 @@ +#root { + max-width: 1280px; + margin: 0 auto; + padding: 2rem; + text-align: center; +} + +.logo { + height: 6em; + padding: 1.5em; + will-change: filter; + transition: filter 300ms; +} +.logo:hover { + filter: drop-shadow(0 0 2em #646cffaa); +} +.logo.react:hover { + filter: drop-shadow(0 0 2em #61dafbaa); +} + +@keyframes logo-spin { + from { + transform: rotate(0deg); + } + to { + transform: rotate(360deg); + } +} + +@media (prefers-reduced-motion: no-preference) { + a:nth-of-type(2) .logo { + animation: logo-spin infinite 20s linear; + } +} + +.card { + padding: 2em; +} + +.read-the-docs { + color: #888; +} diff --git a/mono-repo/monorepo/client/src/App.jsx b/mono-repo/monorepo/client/src/App.jsx new file mode 100644 index 00000000..c7d9fd44 --- /dev/null +++ b/mono-repo/monorepo/client/src/App.jsx @@ -0,0 +1,37 @@ +import { useState } from 'react' +import reactLogo from './assets/react.svg' +import viteLogo from '/vite.svg' +import nodeLogo from './assets/node.svg' +import './App.css' + +function App() { + const [msg, setMsg] = useState('') + + const getMsg = async () => { + const response = await fetch('http://localhost:3000') + const data = await response.json() + setMsg(data.message) + } + + return ( + <> + +

React + Express

+ {msg &&

{msg}

} +
+ +
+ + ) +} + +export default App diff --git a/mono-repo/monorepo/client/src/assets/node.svg b/mono-repo/monorepo/client/src/assets/node.svg new file mode 100644 index 00000000..f2305e9d --- /dev/null +++ b/mono-repo/monorepo/client/src/assets/node.svg @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/mono-repo/monorepo/client/src/assets/react.svg b/mono-repo/monorepo/client/src/assets/react.svg new file mode 100644 index 00000000..6c87de9b --- /dev/null +++ b/mono-repo/monorepo/client/src/assets/react.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/mono-repo/monorepo/client/src/index.css b/mono-repo/monorepo/client/src/index.css new file mode 100644 index 00000000..08a3ac9e --- /dev/null +++ b/mono-repo/monorepo/client/src/index.css @@ -0,0 +1,68 @@ +:root { + font-family: system-ui, Avenir, Helvetica, Arial, sans-serif; + line-height: 1.5; + font-weight: 400; + + color-scheme: light dark; + color: rgba(255, 255, 255, 0.87); + background-color: #242424; + + font-synthesis: none; + text-rendering: optimizeLegibility; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; +} + +a { + font-weight: 500; + color: #646cff; + text-decoration: inherit; +} +a:hover { + color: #535bf2; +} + +body { + margin: 0; + display: flex; + place-items: center; + min-width: 320px; + min-height: 100vh; +} + +h1 { + font-size: 3.2em; + line-height: 1.1; +} + +button { + border-radius: 8px; + border: 1px solid transparent; + padding: 0.6em 1.2em; + font-size: 1em; + font-weight: 500; + font-family: inherit; + background-color: #1a1a1a; + cursor: pointer; + transition: border-color 0.25s; +} +button:hover { + border-color: #646cff; +} +button:focus, +button:focus-visible { + outline: 4px auto -webkit-focus-ring-color; +} + +@media (prefers-color-scheme: light) { + :root { + color: #213547; + background-color: #ffffff; + } + a:hover { + color: #747bff; + } + button { + background-color: #f9f9f9; + } +} diff --git a/mono-repo/monorepo/client/src/main.jsx b/mono-repo/monorepo/client/src/main.jsx new file mode 100644 index 00000000..b9a1a6de --- /dev/null +++ b/mono-repo/monorepo/client/src/main.jsx @@ -0,0 +1,10 @@ +import { StrictMode } from 'react' +import { createRoot } from 'react-dom/client' +import './index.css' +import App from './App.jsx' + +createRoot(document.getElementById('root')).render( + + + , +) diff --git a/mono-repo/monorepo/client/vite.config.js b/mono-repo/monorepo/client/vite.config.js new file mode 100644 index 00000000..8b0f57b9 --- /dev/null +++ b/mono-repo/monorepo/client/vite.config.js @@ -0,0 +1,7 @@ +import { defineConfig } from 'vite' +import react from '@vitejs/plugin-react' + +// https://vite.dev/config/ +export default defineConfig({ + plugins: [react()], +}) diff --git a/mono-repo/monorepo/server/index.js b/mono-repo/monorepo/server/index.js new file mode 100644 index 00000000..751598c7 --- /dev/null +++ b/mono-repo/monorepo/server/index.js @@ -0,0 +1,19 @@ +const express = require('express'); +const cors = require('cors'); +const corsOptions = { + origin: '*' +} +const app = express(); +app.use(cors(corsOptions)); + +app.get('/', (req, res) => { + const name = process.env.NAME || 'World'; + res.send({ + message: `Hello ${name}!`, + }); +}); + +const port = parseInt(process.env.PORT) || 3000; +app.listen(port, () => { + console.log(`listening on port ${port}`); +}); diff --git a/mono-repo/monorepo/server/package-lock.json b/mono-repo/monorepo/server/package-lock.json new file mode 100644 index 00000000..d13a91ac --- /dev/null +++ b/mono-repo/monorepo/server/package-lock.json @@ -0,0 +1,1200 @@ +{ + "name": "server", + "version": "1.0.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "server", + "version": "1.0.0", + "license": "ISC", + "dependencies": { + "cors": "^2.8.5", + "express": "^4.21.2", + "nodemon": "^3.1.9" + } + }, + "node_modules/accepts": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", + "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", + "license": "MIT", + "dependencies": { + "mime-types": "~2.1.34", + "negotiator": "0.6.3" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "license": "ISC", + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/array-flatten": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==", + "license": "MIT" + }, + "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==", + "license": "MIT" + }, + "node_modules/binary-extensions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", + "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/body-parser": { + "version": "1.20.3", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.3.tgz", + "integrity": "sha512-7rAxByjUMqQ3/bHJy7D6OGXvx/MMc4IqBn/X0fcM1QUcAItpZrBEYhWGem+tzXH90c+G01ypMcYJBO9Y30203g==", + "license": "MIT", + "dependencies": { + "bytes": "3.1.2", + "content-type": "~1.0.5", + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "on-finished": "2.4.1", + "qs": "6.13.0", + "raw-body": "2.5.2", + "type-is": "~1.6.18", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } + }, + "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==", + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", + "license": "MIT", + "dependencies": { + "fill-range": "^7.1.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/call-bind-apply-helpers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz", + "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==", + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/call-bound": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz", + "integrity": "sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==", + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.2", + "get-intrinsic": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/chokidar": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", + "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", + "license": "MIT", + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "license": "MIT" + }, + "node_modules/content-disposition": { + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", + "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", + "license": "MIT", + "dependencies": { + "safe-buffer": "5.2.1" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/content-type": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", + "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/cookie": { + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.1.tgz", + "integrity": "sha512-6DnInpx7SJ2AK3+CTUE/ZM0vWTUboZCegxhC2xiIydHR9jNuTAASBrfEpHhiGOZw/nX51bHt6YQl8jsGo4y/0w==", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==", + "license": "MIT" + }, + "node_modules/cors": { + "version": "2.8.5", + "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz", + "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==", + "license": "MIT", + "dependencies": { + "object-assign": "^4", + "vary": "^1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "license": "MIT", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/depd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/destroy": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", + "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", + "license": "MIT", + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } + }, + "node_modules/dunder-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", + "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.1", + "es-errors": "^1.3.0", + "gopd": "^1.2.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==", + "license": "MIT" + }, + "node_modules/encodeurl": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz", + "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==", + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/es-define-property": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", + "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==", + "license": "MIT", + "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==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-object-atoms": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz", + "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==", + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==", + "license": "MIT" + }, + "node_modules/etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/express": { + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.21.2.tgz", + "integrity": "sha512-28HqgMZAmih1Czt9ny7qr6ek2qddF4FclbMzwhCREB6OFfH+rXAnuNCwo1/wFvrtbgsQDb4kSbX9de9lFbrXnA==", + "license": "MIT", + "dependencies": { + "accepts": "~1.3.8", + "array-flatten": "1.1.1", + "body-parser": "1.20.3", + "content-disposition": "0.5.4", + "content-type": "~1.0.4", + "cookie": "0.7.1", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "2.0.0", + "encodeurl": "~2.0.0", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "1.3.1", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "merge-descriptors": "1.0.3", + "methods": "~1.1.2", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "path-to-regexp": "0.1.12", + "proxy-addr": "~2.0.7", + "qs": "6.13.0", + "range-parser": "~1.2.1", + "safe-buffer": "5.2.1", + "send": "0.19.0", + "serve-static": "1.16.2", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "type-is": "~1.6.18", + "utils-merge": "1.0.1", + "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.10.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/express" + } + }, + "node_modules/fill-range": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", + "license": "MIT", + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/finalhandler": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.3.1.tgz", + "integrity": "sha512-6BN9trH7bp3qvnrRyzsBz+g3lZxTNZTbVO2EV1CS0WIcDbawYVdYvGflME/9QP0h0pYlCDBCTjYa9nZzMDpyxQ==", + "license": "MIT", + "dependencies": { + "debug": "2.6.9", + "encodeurl": "~2.0.0", + "escape-html": "~1.0.3", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "statuses": "2.0.1", + "unpipe": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/forwarded": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", + "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "hasInstallScript": true, + "license": "MIT", + "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==", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-intrinsic": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz", + "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==", + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.2", + "es-define-property": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.1.1", + "function-bind": "^1.1.2", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "has-symbols": "^1.1.0", + "hasown": "^2.0.2", + "math-intrinsics": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", + "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", + "license": "MIT", + "dependencies": { + "dunder-proto": "^1.0.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "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==", + "license": "ISC", + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/gopd": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", + "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "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==", + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/has-symbols": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz", + "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==", + "license": "MIT", + "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==", + "license": "MIT", + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/http-errors": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", + "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", + "license": "MIT", + "dependencies": { + "depd": "2.0.0", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "toidentifier": "1.0.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "license": "MIT", + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ignore-by-default": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/ignore-by-default/-/ignore-by-default-1.0.1.tgz", + "integrity": "sha512-Ius2VYcGNk7T90CppJqcIkS5ooHUZyIQK+ClZfMfMNFEF9VSE73Fq+906u/CWu92x4gzZMWOwfFYckPObzdEbA==", + "license": "ISC" + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "license": "ISC" + }, + "node_modules/ipaddr.js": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", + "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", + "license": "MIT", + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "license": "MIT", + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "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==", + "license": "MIT", + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "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==", + "license": "MIT", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/math-intrinsics": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", + "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/merge-descriptors": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.3.tgz", + "integrity": "sha512-gaNvAS7TZ897/rVaZ0nMtAyxNyi/pdbjbAwUpFQpN70GqnVfOiXpeUUMKRBmzXaSQ8DdTX4/0ms62r2K+hE6mQ==", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "license": "MIT", + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4" + } + }, + "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==", + "license": "MIT", + "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==", + "license": "MIT", + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "license": "MIT" + }, + "node_modules/negotiator": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/nodemon": { + "version": "3.1.9", + "resolved": "https://registry.npmjs.org/nodemon/-/nodemon-3.1.9.tgz", + "integrity": "sha512-hdr1oIb2p6ZSxu3PB2JWWYS7ZQ0qvaZsc3hK8DR8f02kRzc8rjYmxAIvdz+aYC+8F2IjNaB7HMcSDg8nQpJxyg==", + "license": "MIT", + "dependencies": { + "chokidar": "^3.5.2", + "debug": "^4", + "ignore-by-default": "^1.0.1", + "minimatch": "^3.1.2", + "pstree.remy": "^1.1.8", + "semver": "^7.5.3", + "simple-update-notifier": "^2.0.0", + "supports-color": "^5.5.0", + "touch": "^3.1.0", + "undefsafe": "^2.0.5" + }, + "bin": { + "nodemon": "bin/nodemon.js" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/nodemon" + } + }, + "node_modules/nodemon/node_modules/debug": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.0.tgz", + "integrity": "sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==", + "license": "MIT", + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/nodemon/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "license": "MIT" + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "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==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-inspect": { + "version": "1.13.4", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.4.tgz", + "integrity": "sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/on-finished": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", + "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", + "license": "MIT", + "dependencies": { + "ee-first": "1.1.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/parseurl": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/path-to-regexp": { + "version": "0.1.12", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.12.tgz", + "integrity": "sha512-RA1GjUVMnvYFxuqovrEqZoxxW5NUZqbwKtYz/Tt7nXerk0LbLblQmrsgdeOxV5SFHf0UDggjS/bSeOZwt1pmEQ==", + "license": "MIT" + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "license": "MIT", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/proxy-addr": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", + "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", + "license": "MIT", + "dependencies": { + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/pstree.remy": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/pstree.remy/-/pstree.remy-1.1.8.tgz", + "integrity": "sha512-77DZwxQmxKnu3aR542U+X8FypNzbfJ+C5XQDk3uWjWxn6151aIMGthWYRXTqT1E5oJvg+ljaa2OJi+VfvCOQ8w==", + "license": "MIT" + }, + "node_modules/qs": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.13.0.tgz", + "integrity": "sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==", + "license": "BSD-3-Clause", + "dependencies": { + "side-channel": "^1.0.6" + }, + "engines": { + "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/range-parser": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/raw-body": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.2.tgz", + "integrity": "sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==", + "license": "MIT", + "dependencies": { + "bytes": "3.1.2", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "license": "MIT", + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "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/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "license": "MIT" + }, + "node_modules/semver": { + "version": "7.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", + "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/send": { + "version": "0.19.0", + "resolved": "https://registry.npmjs.org/send/-/send-0.19.0.tgz", + "integrity": "sha512-dW41u5VfLXu8SJh5bwRmyYUbAoSB3c9uQh6L8h/KtsFREPWpbX1lrljJo186Jc4nmci/sGUZ9a0a0J2zgfq2hw==", + "license": "MIT", + "dependencies": { + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "mime": "1.6.0", + "ms": "2.1.3", + "on-finished": "2.4.1", + "range-parser": "~1.2.1", + "statuses": "2.0.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/send/node_modules/encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/send/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "license": "MIT" + }, + "node_modules/serve-static": { + "version": "1.16.2", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.16.2.tgz", + "integrity": "sha512-VqpjJZKadQB/PEbEwvFdO43Ax5dFBZ2UECszz8bQ7pi7wt//PWe1P6MN7eCnjsatYtBT6EuiClbjSWP2WrIoTw==", + "license": "MIT", + "dependencies": { + "encodeurl": "~2.0.0", + "escape-html": "~1.0.3", + "parseurl": "~1.3.3", + "send": "0.19.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/setprototypeof": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", + "license": "ISC" + }, + "node_modules/side-channel": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.0.tgz", + "integrity": "sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==", + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "object-inspect": "^1.13.3", + "side-channel-list": "^1.0.0", + "side-channel-map": "^1.0.1", + "side-channel-weakmap": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-list": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.0.tgz", + "integrity": "sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==", + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "object-inspect": "^1.13.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-map": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz", + "integrity": "sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==", + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-weakmap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz", + "integrity": "sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==", + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3", + "side-channel-map": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/simple-update-notifier": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/simple-update-notifier/-/simple-update-notifier-2.0.0.tgz", + "integrity": "sha512-a2B9Y0KlNXl9u/vsW6sTIu9vGEpfKu2wRV6l1H3XEas/0gUIzGzBoP/IouTcUQbm9JWZLH3COxyn03TYlFax6w==", + "license": "MIT", + "dependencies": { + "semver": "^7.5.3" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/statuses": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "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==", + "license": "MIT", + "dependencies": { + "has-flag": "^3.0.0" + }, + "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==", + "license": "MIT", + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/toidentifier": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", + "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", + "license": "MIT", + "engines": { + "node": ">=0.6" + } + }, + "node_modules/touch": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/touch/-/touch-3.1.1.tgz", + "integrity": "sha512-r0eojU4bI8MnHr8c5bNo7lJDdI2qXlWWJk6a9EAFG7vbhTjElYhBVS3/miuE0uOuoLdb8Mc/rVfsmm6eo5o9GA==", + "license": "ISC", + "bin": { + "nodetouch": "bin/nodetouch.js" + } + }, + "node_modules/type-is": { + "version": "1.6.18", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", + "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", + "license": "MIT", + "dependencies": { + "media-typer": "0.3.0", + "mime-types": "~2.1.24" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/undefsafe": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/undefsafe/-/undefsafe-2.0.5.tgz", + "integrity": "sha512-WxONCrssBM8TSPRqN5EmsjVrsv4A8X12J4ArBiiayv3DyyG3ZlIg6yysuuSYdZsVz3TKcTg2fd//Ujd4CHV1iA==", + "license": "MIT" + }, + "node_modules/unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/utils-merge": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==", + "license": "MIT", + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + } + } +} diff --git a/mono-repo/monorepo/server/package.json b/mono-repo/monorepo/server/package.json new file mode 100644 index 00000000..e2d556a9 --- /dev/null +++ b/mono-repo/monorepo/server/package.json @@ -0,0 +1,18 @@ +{ + "name": "server", + "version": "1.0.0", + "main": "index.js", + "scripts": { + "dev": "nodemon index.js", + "start": "node index.js" + }, + "keywords": [], + "author": "Srivats Venkataraman", + "license": "Apache-2.0", + "description": "Simple Exress Server", + "dependencies": { + "cors": "^2.8.5", + "express": "^4.21.2", + "nodemon": "^3.1.9" + } +}