├── .vscode
└── extensions.json
├── backend
├── .env
├── __pycache__
│ ├── app.cpython-313.pyc
│ ├── auth.cpython-313.pyc
│ └── test.cpython-313.pyc
├── app.py
├── auth.py
└── test.py
└── react
├── .gitignore
├── README.md
├── eslint.config.js
├── index.html
├── package-lock.json
├── package.json
├── public
└── vite.svg
├── src
├── App.css
├── App.jsx
├── Dasjboard.jsx
├── Me.jsx
├── assets
│ └── react.svg
├── getTodos.jsx
├── index.css
├── login.jsx
├── main.jsx
├── resister.jsx
└── todoform.jsx
└── vite.config.js
/.vscode/extensions.json:
--------------------------------------------------------------------------------
1 | {
2 | "recommendations": ["github.copilot"]
3 | }
4 |
--------------------------------------------------------------------------------
/backend/.env:
--------------------------------------------------------------------------------
1 | MONGO_URI="mongodb+srv://me:Ns2Jd8zrfRB4JxxD@cluster0.lf78r.mongodb.net/reactjs?retryWrites=true&w=majority"
--------------------------------------------------------------------------------
/backend/__pycache__/app.cpython-313.pyc:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Arbab-Mustafa/leraning_Python/2f8e82ddfb3ad62169914ed41f35697795ed8249/backend/__pycache__/app.cpython-313.pyc
--------------------------------------------------------------------------------
/backend/__pycache__/auth.cpython-313.pyc:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Arbab-Mustafa/leraning_Python/2f8e82ddfb3ad62169914ed41f35697795ed8249/backend/__pycache__/auth.cpython-313.pyc
--------------------------------------------------------------------------------
/backend/__pycache__/test.cpython-313.pyc:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Arbab-Mustafa/leraning_Python/2f8e82ddfb3ad62169914ed41f35697795ed8249/backend/__pycache__/test.cpython-313.pyc
--------------------------------------------------------------------------------
/backend/app.py:
--------------------------------------------------------------------------------
1 | from fastapi import FastAPI
2 | from fastapi.middleware.cors import CORSMiddleware
3 | from fastapi.responses import JSONResponse
4 | from motor.motor_asyncio import AsyncIOMotorClient
5 | from pydantic import BaseModel
6 | from bson import ObjectId
7 |
8 | app = FastAPI()
9 |
10 | app.add_middleware(
11 | CORSMiddleware,
12 | allow_origins=["*"], # Change this in production for security
13 | allow_credentials=True,
14 | allow_methods=["*"],
15 | allow_headers=["*"],
16 | )
17 |
18 | MONGO_URI = "mongodb+srv://me:Ns2Jd8zrfRB4JxxD@cluster0.lf78r.mongodb.net/fastapi?retryWrites=true&w=majority"
19 | client = AsyncIOMotorClient(MONGO_URI)
20 | db = client["fastapi"]
21 | collection = db["test"]
22 |
23 | class Item(BaseModel):
24 | name: str
25 | description: str
26 |
27 | @app.post("/additem")
28 | async def add_item(item: Item):
29 | try:
30 | new_item = {"name": item.name, "description": item.description}
31 | result = await collection.insert_one(new_item)
32 | return JSONResponse(content={"message": "Item added successfully", "id": str(result.inserted_id)}, status_code=201)
33 | except Exception as e:
34 | return JSONResponse(content={"error": str(e)}, status_code=500)
35 |
36 | @app.get("/getitems")
37 | async def get_items():
38 | try:
39 | items = []
40 | res = await collection.find().to_list(length=1000)
41 | for item in res:
42 | item["_id"] = str(item["_id"]) # Convert ObjectId to string
43 | items.append(item)
44 | return JSONResponse(content={"data": items}, status_code=200)
45 | except Exception as e:
46 | return JSONResponse(content={"error": str(e)}, status_code=500)
47 |
--------------------------------------------------------------------------------
/backend/auth.py:
--------------------------------------------------------------------------------
1 | from fastapi import FastAPI, HTTPException, Depends, status
2 | from bson import ObjectId
3 | from bson.errors import InvalidId
4 | from fastapi.security import OAuth2PasswordBearer
5 | from pydantic import BaseModel
6 | from motor.motor_asyncio import AsyncIOMotorClient
7 | from passlib.context import CryptContext
8 | from jose import jwt, JWTError
9 | from datetime import datetime, timedelta
10 | from typing import Optional, List
11 | from fastapi.responses import JSONResponse
12 | from fastapi.middleware.cors import CORSMiddleware
13 | from fastapi.encoders import jsonable_encoder
14 | from fastapi.security import OAuth2PasswordBearer
15 |
16 | app = FastAPI()
17 | app.add_middleware(
18 | CORSMiddleware,
19 | allow_origins=["http://localhost:5173"],
20 | allow_credentials=True,
21 | allow_methods=["*"],
22 | allow_headers=["*"],
23 | )
24 |
25 | pwd_context = CryptContext(schemes=["bcrypt"], deprecated="auto")
26 |
27 | # JWT Config
28 | SECRET_KEY = "supersecretkey"
29 | ALGORITHM = "HS256"
30 | ACCESS_TOKEN_EXPIRE_MINUTES = 300
31 |
32 | # MongoDB Connection
33 | MONGO_URI = "mongodb+srv://me:Ns2Jd8zrfRB4JxxD@cluster0.lf78r.mongodb.net/fastapi?retryWrites=true&w=majority"
34 | client = AsyncIOMotorClient(MONGO_URI)
35 | db = client["auth"]
36 | collection = db["users"]
37 | todos_collection = db["todos"]
38 | class User(BaseModel):
39 | username: str
40 | password: str
41 |
42 | class Token(BaseModel):
43 | access_token: str
44 |
45 | class Todo(BaseModel):
46 | title: str
47 | description: str
48 | completed: bool
49 |
50 | # OAuth2 scheme
51 | oauth2_scheme = OAuth2PasswordBearer(tokenUrl="token")
52 |
53 | # Password Hashing
54 | # Password Hashing
55 | def get_password_hash(password):
56 | return pwd_context.hash(password)
57 |
58 | def verify_password(plain_password, hash_password):
59 | return pwd_context.verify(plain_password, hash_password)
60 | def create_access_token(data: dict, expires_delta: Optional[timedelta] = None):
61 | to_encode = data.copy()
62 | expire = datetime.utcnow() + (expires_delta or timedelta(minutes=15))
63 | to_encode.update({"exp": expire})
64 | token = jwt.encode(to_encode, SECRET_KEY, algorithm=ALGORITHM)
65 | print("JWT Token:", token) # Debugging
66 |
67 | return token
68 | @app.post("/register")
69 | async def register(user: User):
70 | try:
71 | existing_user = await collection.find_one({"username": user.username})
72 | if existing_user:
73 | raise HTTPException(status_code=400, detail="User already registered")
74 | hashed_password = get_password_hash(user.password)
75 | await collection.insert_one({"username": user.username, "password": hashed_password})
76 | return {"message": "User registered successfully"}
77 | except Exception as e:
78 | return {"error": str(e)}
79 | @app.post("/login")
80 | async def login(user: User):
81 | db_user = await collection.find_one({"username": user.username})
82 | if not db_user or not verify_password(user.password, db_user["password"]):
83 | return JSONResponse(content={"error": "Invalid credentials"}, status_code=401)
84 | access_token = create_access_token({"sub": user.username}, timedelta(minutes=ACCESS_TOKEN_EXPIRE_MINUTES))
85 | response_data = {"access_token": access_token, "token_type": "bearer"}
86 | return JSONResponse(content=response_data, status_code=200)
87 |
88 | @app.get("/")
89 | async def get_users():
90 | try:
91 | users = await collection.find().to_list(length=1000)
92 |
93 | # Convert ObjectId to string
94 | for user in users:
95 | user["_id"] = str(user["_id"])
96 |
97 | return users
98 |
99 | except Exception as e:
100 | return {"error": str(e)}
101 |
102 | async def get_current_user(token: str = Depends(oauth2_scheme)):
103 | try:
104 | payload = jwt.decode(token, SECRET_KEY, algorithms=[ALGORITHM])
105 | username: str = payload.get("sub")
106 |
107 | if username is None:
108 | raise HTTPException(
109 | status_code=status.HTTP_401_UNAUTHORIZED,
110 | detail="Invalid token: missing subject",
111 | headers={"WWW-Authenticate": "Bearer"},
112 | )
113 |
114 | user = await collection.find_one({"username": username})
115 |
116 | if user is None:
117 | raise HTTPException(
118 | status_code=status.HTTP_404_NOT_FOUND,
119 | detail="User not found",
120 | )
121 |
122 | return user
123 |
124 | except JWTError:
125 | raise HTTPException(
126 | status_code=status.HTTP_401_UNAUTHORIZED,
127 | detail="Invalid token",
128 | headers={"WWW-Authenticate": "Bearer"},
129 | )
130 | def serialize_mongo_doc(doc):
131 | """Converts MongoDB document to a serializable format."""
132 | if doc:
133 | doc["_id"] = str(doc["_id"]) # Convert ObjectId to string
134 | return doc
135 | @app.get("/me")
136 | async def read_users_me(user: dict = Depends(get_current_user)):
137 | return jsonable_encoder(serialize_mongo_doc(user))
138 |
139 | # //////////////////////////// todo.py ////////////////////////////
140 |
141 | @app.get("/gettodos", response_model=List[dict])
142 | async def get_todos():
143 | todos_cursor = todos_collection.find().sort("_id", -1) # Get cursor
144 | todos = await todos_cursor.to_list(length=100) # Convert to list
145 |
146 | if not todos:
147 | return {"message": "No todos found"} # Return a proper response instead of print
148 |
149 | # Convert ObjectId to string
150 | for todo in todos:
151 | todo["_id"] = str(todo["_id"])
152 |
153 | return todos
154 |
155 |
156 |
157 | @app.post("/addtodo")
158 | async def add_todo(todo: Todo, user: dict = Depends(get_current_user)):
159 | try:
160 | new_todo = {"title": todo.title, "description": todo.description, "completed": todo.completed}
161 | result = await todos_collection.insert_one(new_todo) # ✅ `await` the insert operation
162 | return {"message": "Todo added successfully", "id": str(result.inserted_id)}
163 | except Exception as e:
164 | return {"error": str(e)}
165 |
166 |
167 |
168 |
--------------------------------------------------------------------------------
/backend/test.py:
--------------------------------------------------------------------------------
1 | from fastapi import FastAPI
2 | from fastapi.middleware.cors import CORSMiddleware
3 | from fastapi.responses import JSONResponse
4 | from motor.motor_asyncio import AsyncIOMotorClient
5 | from pydantic import BaseModel
6 | from bson import ObjectId
7 |
8 | app = FastAPI()
9 |
10 |
11 | app.add_middleware(
12 | CORSMiddleware,
13 | allow_origins=["*"], # Change this in production for security
14 | allow_credentials=True,
15 | allow_methods=["*"],
16 | allow_headers=["*"],
17 | )
18 |
19 |
20 |
21 | MONGO_URI = "mongodb+srv://me:Ns2Jd8zrfRB4JxxD@cluster0.lf78r.mongodb.net/fastapi?retryWrites=true&w=majority"
22 |
23 | client = AsyncIOMotorClient(MONGO_URI)
24 | db = client["fastapi_test"]
25 | collection = db["test_test"]
26 |
27 |
28 | class User(BaseModel):
29 | name: str
30 | email: str
31 |
32 |
33 | @app.post('/adduser')
34 | async def add_user(user:User):
35 | try:
36 | newUser = {"name": user.name, "email": user.email }
37 | result = await collection.insert_one(newUser)
38 | return JSONResponse(
39 | content={"message":"User added successfully", "id": str(result.inserted_id)},
40 | status_code=201
41 | )
42 | except Exception as e:
43 | return JSONResponse(content={"error": str(e)}, status_code=500)
44 |
45 |
46 |
47 | @app.get('/getusers')
48 | async def get_users():
49 |
50 |
51 | try:
52 | users = []
53 | res = await collection.find().to_list(length=1000)
54 | for user in res:
55 | user["_id"] = str(user["_id"])
56 | users.append(user)
57 | return JSONResponse(content={"data": users}, status_code=200)
58 |
59 |
60 |
61 | except Exception as e:
62 | return JSONResponse(content={"error": str(e)}, status_code=500)
63 |
64 |
65 |
66 |
67 |
68 |
69 |
70 |
71 |
72 |
73 | except Exception as e:
74 | return JSONResponse(content={"error": str(e)}, status_code=500)
75 |
76 |
77 |
78 | @app.delete("/deleteUser/{id}")
79 | async def delete_user(id: str):
80 | try:
81 | result = await collection.delete_one({"_id": ObjectId(id)})
82 | if result.deleted_count == 1:
83 | return JSONResponse(content={"message":"User deleted successfully"}, status_code=200)
84 | else:
85 | return JSONResponse(content={"message":"User not found"}, status_code=404)
86 | except Exception as e:
87 | return JSONResponse(content={"error": str(e)}, status_code=500)
--------------------------------------------------------------------------------
/react/.gitignore:
--------------------------------------------------------------------------------
1 | # Logs
2 | logs
3 | *.log
4 | npm-debug.log*
5 | yarn-debug.log*
6 | yarn-error.log*
7 | pnpm-debug.log*
8 | lerna-debug.log*
9 |
10 | node_modules
11 | dist
12 | dist-ssr
13 | *.local
14 |
15 | # Editor directories and files
16 | .vscode/*
17 | !.vscode/extensions.json
18 | .idea
19 | .DS_Store
20 | *.suo
21 | *.ntvs*
22 | *.njsproj
23 | *.sln
24 | *.sw?
25 |
--------------------------------------------------------------------------------
/react/README.md:
--------------------------------------------------------------------------------
1 | # React + Vite
2 |
3 | This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.
4 |
5 | Currently, two official plugins are available:
6 |
7 | - [@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
8 | - [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react-swc) uses [SWC](https://swc.rs/) for Fast Refresh
9 |
--------------------------------------------------------------------------------
/react/eslint.config.js:
--------------------------------------------------------------------------------
1 | import js from '@eslint/js'
2 | import globals from 'globals'
3 | import react from 'eslint-plugin-react'
4 | import reactHooks from 'eslint-plugin-react-hooks'
5 | import reactRefresh from 'eslint-plugin-react-refresh'
6 |
7 | export default [
8 | { ignores: ['dist'] },
9 | {
10 | files: ['**/*.{js,jsx}'],
11 | languageOptions: {
12 | ecmaVersion: 2020,
13 | globals: globals.browser,
14 | parserOptions: {
15 | ecmaVersion: 'latest',
16 | ecmaFeatures: { jsx: true },
17 | sourceType: 'module',
18 | },
19 | },
20 | settings: { react: { version: '18.3' } },
21 | plugins: {
22 | react,
23 | 'react-hooks': reactHooks,
24 | 'react-refresh': reactRefresh,
25 | },
26 | rules: {
27 | ...js.configs.recommended.rules,
28 | ...react.configs.recommended.rules,
29 | ...react.configs['jsx-runtime'].rules,
30 | ...reactHooks.configs.recommended.rules,
31 | 'react/jsx-no-target-blank': 'off',
32 | 'react-refresh/only-export-components': [
33 | 'warn',
34 | { allowConstantExport: true },
35 | ],
36 | },
37 | },
38 | ]
39 |
--------------------------------------------------------------------------------
/react/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | Vite + React
8 |
9 |
10 |
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/react/package-lock.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "react",
3 | "version": "0.0.0",
4 | "lockfileVersion": 3,
5 | "requires": true,
6 | "packages": {
7 | "": {
8 | "name": "react",
9 | "version": "0.0.0",
10 | "dependencies": {
11 | "react": "^19.0.0",
12 | "react-dom": "^19.0.0",
13 | "react-router-dom": "^7.2.0"
14 | },
15 | "devDependencies": {
16 | "@eslint/js": "^9.19.0",
17 | "@types/react": "^19.0.8",
18 | "@types/react-dom": "^19.0.3",
19 | "@vitejs/plugin-react": "^4.3.4",
20 | "eslint": "^9.19.0",
21 | "eslint-plugin-react": "^7.37.4",
22 | "eslint-plugin-react-hooks": "^5.0.0",
23 | "eslint-plugin-react-refresh": "^0.4.18",
24 | "globals": "^15.14.0",
25 | "vite": "^6.1.0"
26 | }
27 | },
28 | "node_modules/@ampproject/remapping": {
29 | "version": "2.3.0",
30 | "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.3.0.tgz",
31 | "integrity": "sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==",
32 | "dev": true,
33 | "license": "Apache-2.0",
34 | "dependencies": {
35 | "@jridgewell/gen-mapping": "^0.3.5",
36 | "@jridgewell/trace-mapping": "^0.3.24"
37 | },
38 | "engines": {
39 | "node": ">=6.0.0"
40 | }
41 | },
42 | "node_modules/@babel/code-frame": {
43 | "version": "7.26.2",
44 | "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.26.2.tgz",
45 | "integrity": "sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ==",
46 | "dev": true,
47 | "license": "MIT",
48 | "dependencies": {
49 | "@babel/helper-validator-identifier": "^7.25.9",
50 | "js-tokens": "^4.0.0",
51 | "picocolors": "^1.0.0"
52 | },
53 | "engines": {
54 | "node": ">=6.9.0"
55 | }
56 | },
57 | "node_modules/@babel/compat-data": {
58 | "version": "7.26.8",
59 | "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.26.8.tgz",
60 | "integrity": "sha512-oH5UPLMWR3L2wEFLnFJ1TZXqHufiTKAiLfqw5zkhS4dKXLJ10yVztfil/twG8EDTA4F/tvVNw9nOl4ZMslB8rQ==",
61 | "dev": true,
62 | "license": "MIT",
63 | "engines": {
64 | "node": ">=6.9.0"
65 | }
66 | },
67 | "node_modules/@babel/core": {
68 | "version": "7.26.9",
69 | "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.26.9.tgz",
70 | "integrity": "sha512-lWBYIrF7qK5+GjY5Uy+/hEgp8OJWOD/rpy74GplYRhEauvbHDeFB8t5hPOZxCZ0Oxf4Cc36tK51/l3ymJysrKw==",
71 | "dev": true,
72 | "license": "MIT",
73 | "dependencies": {
74 | "@ampproject/remapping": "^2.2.0",
75 | "@babel/code-frame": "^7.26.2",
76 | "@babel/generator": "^7.26.9",
77 | "@babel/helper-compilation-targets": "^7.26.5",
78 | "@babel/helper-module-transforms": "^7.26.0",
79 | "@babel/helpers": "^7.26.9",
80 | "@babel/parser": "^7.26.9",
81 | "@babel/template": "^7.26.9",
82 | "@babel/traverse": "^7.26.9",
83 | "@babel/types": "^7.26.9",
84 | "convert-source-map": "^2.0.0",
85 | "debug": "^4.1.0",
86 | "gensync": "^1.0.0-beta.2",
87 | "json5": "^2.2.3",
88 | "semver": "^6.3.1"
89 | },
90 | "engines": {
91 | "node": ">=6.9.0"
92 | },
93 | "funding": {
94 | "type": "opencollective",
95 | "url": "https://opencollective.com/babel"
96 | }
97 | },
98 | "node_modules/@babel/generator": {
99 | "version": "7.26.9",
100 | "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.26.9.tgz",
101 | "integrity": "sha512-kEWdzjOAUMW4hAyrzJ0ZaTOu9OmpyDIQicIh0zg0EEcEkYXZb2TjtBhnHi2ViX7PKwZqF4xwqfAm299/QMP3lg==",
102 | "dev": true,
103 | "license": "MIT",
104 | "dependencies": {
105 | "@babel/parser": "^7.26.9",
106 | "@babel/types": "^7.26.9",
107 | "@jridgewell/gen-mapping": "^0.3.5",
108 | "@jridgewell/trace-mapping": "^0.3.25",
109 | "jsesc": "^3.0.2"
110 | },
111 | "engines": {
112 | "node": ">=6.9.0"
113 | }
114 | },
115 | "node_modules/@babel/helper-compilation-targets": {
116 | "version": "7.26.5",
117 | "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.26.5.tgz",
118 | "integrity": "sha512-IXuyn5EkouFJscIDuFF5EsiSolseme1s0CZB+QxVugqJLYmKdxI1VfIBOst0SUu4rnk2Z7kqTwmoO1lp3HIfnA==",
119 | "dev": true,
120 | "license": "MIT",
121 | "dependencies": {
122 | "@babel/compat-data": "^7.26.5",
123 | "@babel/helper-validator-option": "^7.25.9",
124 | "browserslist": "^4.24.0",
125 | "lru-cache": "^5.1.1",
126 | "semver": "^6.3.1"
127 | },
128 | "engines": {
129 | "node": ">=6.9.0"
130 | }
131 | },
132 | "node_modules/@babel/helper-module-imports": {
133 | "version": "7.25.9",
134 | "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.25.9.tgz",
135 | "integrity": "sha512-tnUA4RsrmflIM6W6RFTLFSXITtl0wKjgpnLgXyowocVPrbYrLUXSBXDgTs8BlbmIzIdlBySRQjINYs2BAkiLtw==",
136 | "dev": true,
137 | "license": "MIT",
138 | "dependencies": {
139 | "@babel/traverse": "^7.25.9",
140 | "@babel/types": "^7.25.9"
141 | },
142 | "engines": {
143 | "node": ">=6.9.0"
144 | }
145 | },
146 | "node_modules/@babel/helper-module-transforms": {
147 | "version": "7.26.0",
148 | "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.26.0.tgz",
149 | "integrity": "sha512-xO+xu6B5K2czEnQye6BHA7DolFFmS3LB7stHZFaOLb1pAwO1HWLS8fXA+eh0A2yIvltPVmx3eNNDBJA2SLHXFw==",
150 | "dev": true,
151 | "license": "MIT",
152 | "dependencies": {
153 | "@babel/helper-module-imports": "^7.25.9",
154 | "@babel/helper-validator-identifier": "^7.25.9",
155 | "@babel/traverse": "^7.25.9"
156 | },
157 | "engines": {
158 | "node": ">=6.9.0"
159 | },
160 | "peerDependencies": {
161 | "@babel/core": "^7.0.0"
162 | }
163 | },
164 | "node_modules/@babel/helper-plugin-utils": {
165 | "version": "7.26.5",
166 | "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.26.5.tgz",
167 | "integrity": "sha512-RS+jZcRdZdRFzMyr+wcsaqOmld1/EqTghfaBGQQd/WnRdzdlvSZ//kF7U8VQTxf1ynZ4cjUcYgjVGx13ewNPMg==",
168 | "dev": true,
169 | "license": "MIT",
170 | "engines": {
171 | "node": ">=6.9.0"
172 | }
173 | },
174 | "node_modules/@babel/helper-string-parser": {
175 | "version": "7.25.9",
176 | "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.25.9.tgz",
177 | "integrity": "sha512-4A/SCr/2KLd5jrtOMFzaKjVtAei3+2r/NChoBNoZ3EyP/+GlhoaEGoWOZUmFmoITP7zOJyHIMm+DYRd8o3PvHA==",
178 | "dev": true,
179 | "license": "MIT",
180 | "engines": {
181 | "node": ">=6.9.0"
182 | }
183 | },
184 | "node_modules/@babel/helper-validator-identifier": {
185 | "version": "7.25.9",
186 | "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.9.tgz",
187 | "integrity": "sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ==",
188 | "dev": true,
189 | "license": "MIT",
190 | "engines": {
191 | "node": ">=6.9.0"
192 | }
193 | },
194 | "node_modules/@babel/helper-validator-option": {
195 | "version": "7.25.9",
196 | "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.25.9.tgz",
197 | "integrity": "sha512-e/zv1co8pp55dNdEcCynfj9X7nyUKUXoUEwfXqaZt0omVOmDe9oOTdKStH4GmAw6zxMFs50ZayuMfHDKlO7Tfw==",
198 | "dev": true,
199 | "license": "MIT",
200 | "engines": {
201 | "node": ">=6.9.0"
202 | }
203 | },
204 | "node_modules/@babel/helpers": {
205 | "version": "7.26.9",
206 | "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.26.9.tgz",
207 | "integrity": "sha512-Mz/4+y8udxBKdmzt/UjPACs4G3j5SshJJEFFKxlCGPydG4JAHXxjWjAwjd09tf6oINvl1VfMJo+nB7H2YKQ0dA==",
208 | "dev": true,
209 | "license": "MIT",
210 | "dependencies": {
211 | "@babel/template": "^7.26.9",
212 | "@babel/types": "^7.26.9"
213 | },
214 | "engines": {
215 | "node": ">=6.9.0"
216 | }
217 | },
218 | "node_modules/@babel/parser": {
219 | "version": "7.26.9",
220 | "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.26.9.tgz",
221 | "integrity": "sha512-81NWa1njQblgZbQHxWHpxxCzNsa3ZwvFqpUg7P+NNUU6f3UU2jBEg4OlF/J6rl8+PQGh1q6/zWScd001YwcA5A==",
222 | "dev": true,
223 | "license": "MIT",
224 | "dependencies": {
225 | "@babel/types": "^7.26.9"
226 | },
227 | "bin": {
228 | "parser": "bin/babel-parser.js"
229 | },
230 | "engines": {
231 | "node": ">=6.0.0"
232 | }
233 | },
234 | "node_modules/@babel/plugin-transform-react-jsx-self": {
235 | "version": "7.25.9",
236 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.25.9.tgz",
237 | "integrity": "sha512-y8quW6p0WHkEhmErnfe58r7x0A70uKphQm8Sp8cV7tjNQwK56sNVK0M73LK3WuYmsuyrftut4xAkjjgU0twaMg==",
238 | "dev": true,
239 | "license": "MIT",
240 | "dependencies": {
241 | "@babel/helper-plugin-utils": "^7.25.9"
242 | },
243 | "engines": {
244 | "node": ">=6.9.0"
245 | },
246 | "peerDependencies": {
247 | "@babel/core": "^7.0.0-0"
248 | }
249 | },
250 | "node_modules/@babel/plugin-transform-react-jsx-source": {
251 | "version": "7.25.9",
252 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.25.9.tgz",
253 | "integrity": "sha512-+iqjT8xmXhhYv4/uiYd8FNQsraMFZIfxVSqxxVSZP0WbbSAWvBXAul0m/zu+7Vv4O/3WtApy9pmaTMiumEZgfg==",
254 | "dev": true,
255 | "license": "MIT",
256 | "dependencies": {
257 | "@babel/helper-plugin-utils": "^7.25.9"
258 | },
259 | "engines": {
260 | "node": ">=6.9.0"
261 | },
262 | "peerDependencies": {
263 | "@babel/core": "^7.0.0-0"
264 | }
265 | },
266 | "node_modules/@babel/template": {
267 | "version": "7.26.9",
268 | "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.26.9.tgz",
269 | "integrity": "sha512-qyRplbeIpNZhmzOysF/wFMuP9sctmh2cFzRAZOn1YapxBsE1i9bJIY586R/WBLfLcmcBlM8ROBiQURnnNy+zfA==",
270 | "dev": true,
271 | "license": "MIT",
272 | "dependencies": {
273 | "@babel/code-frame": "^7.26.2",
274 | "@babel/parser": "^7.26.9",
275 | "@babel/types": "^7.26.9"
276 | },
277 | "engines": {
278 | "node": ">=6.9.0"
279 | }
280 | },
281 | "node_modules/@babel/traverse": {
282 | "version": "7.26.9",
283 | "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.26.9.tgz",
284 | "integrity": "sha512-ZYW7L+pL8ahU5fXmNbPF+iZFHCv5scFak7MZ9bwaRPLUhHh7QQEMjZUg0HevihoqCM5iSYHN61EyCoZvqC+bxg==",
285 | "dev": true,
286 | "license": "MIT",
287 | "dependencies": {
288 | "@babel/code-frame": "^7.26.2",
289 | "@babel/generator": "^7.26.9",
290 | "@babel/parser": "^7.26.9",
291 | "@babel/template": "^7.26.9",
292 | "@babel/types": "^7.26.9",
293 | "debug": "^4.3.1",
294 | "globals": "^11.1.0"
295 | },
296 | "engines": {
297 | "node": ">=6.9.0"
298 | }
299 | },
300 | "node_modules/@babel/traverse/node_modules/globals": {
301 | "version": "11.12.0",
302 | "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz",
303 | "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==",
304 | "dev": true,
305 | "license": "MIT",
306 | "engines": {
307 | "node": ">=4"
308 | }
309 | },
310 | "node_modules/@babel/types": {
311 | "version": "7.26.9",
312 | "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.26.9.tgz",
313 | "integrity": "sha512-Y3IR1cRnOxOCDvMmNiym7XpXQ93iGDDPHx+Zj+NM+rg0fBaShfQLkg+hKPaZCEvg5N/LeCo4+Rj/i3FuJsIQaw==",
314 | "dev": true,
315 | "license": "MIT",
316 | "dependencies": {
317 | "@babel/helper-string-parser": "^7.25.9",
318 | "@babel/helper-validator-identifier": "^7.25.9"
319 | },
320 | "engines": {
321 | "node": ">=6.9.0"
322 | }
323 | },
324 | "node_modules/@esbuild/aix-ppc64": {
325 | "version": "0.24.2",
326 | "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.24.2.tgz",
327 | "integrity": "sha512-thpVCb/rhxE/BnMLQ7GReQLLN8q9qbHmI55F4489/ByVg2aQaQ6kbcLb6FHkocZzQhxc4gx0sCk0tJkKBFzDhA==",
328 | "cpu": [
329 | "ppc64"
330 | ],
331 | "dev": true,
332 | "license": "MIT",
333 | "optional": true,
334 | "os": [
335 | "aix"
336 | ],
337 | "engines": {
338 | "node": ">=18"
339 | }
340 | },
341 | "node_modules/@esbuild/android-arm": {
342 | "version": "0.24.2",
343 | "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.24.2.tgz",
344 | "integrity": "sha512-tmwl4hJkCfNHwFB3nBa8z1Uy3ypZpxqxfTQOcHX+xRByyYgunVbZ9MzUUfb0RxaHIMnbHagwAxuTL+tnNM+1/Q==",
345 | "cpu": [
346 | "arm"
347 | ],
348 | "dev": true,
349 | "license": "MIT",
350 | "optional": true,
351 | "os": [
352 | "android"
353 | ],
354 | "engines": {
355 | "node": ">=18"
356 | }
357 | },
358 | "node_modules/@esbuild/android-arm64": {
359 | "version": "0.24.2",
360 | "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.24.2.tgz",
361 | "integrity": "sha512-cNLgeqCqV8WxfcTIOeL4OAtSmL8JjcN6m09XIgro1Wi7cF4t/THaWEa7eL5CMoMBdjoHOTh/vwTO/o2TRXIyzg==",
362 | "cpu": [
363 | "arm64"
364 | ],
365 | "dev": true,
366 | "license": "MIT",
367 | "optional": true,
368 | "os": [
369 | "android"
370 | ],
371 | "engines": {
372 | "node": ">=18"
373 | }
374 | },
375 | "node_modules/@esbuild/android-x64": {
376 | "version": "0.24.2",
377 | "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.24.2.tgz",
378 | "integrity": "sha512-B6Q0YQDqMx9D7rvIcsXfmJfvUYLoP722bgfBlO5cGvNVb5V/+Y7nhBE3mHV9OpxBf4eAS2S68KZztiPaWq4XYw==",
379 | "cpu": [
380 | "x64"
381 | ],
382 | "dev": true,
383 | "license": "MIT",
384 | "optional": true,
385 | "os": [
386 | "android"
387 | ],
388 | "engines": {
389 | "node": ">=18"
390 | }
391 | },
392 | "node_modules/@esbuild/darwin-arm64": {
393 | "version": "0.24.2",
394 | "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.24.2.tgz",
395 | "integrity": "sha512-kj3AnYWc+CekmZnS5IPu9D+HWtUI49hbnyqk0FLEJDbzCIQt7hg7ucF1SQAilhtYpIujfaHr6O0UHlzzSPdOeA==",
396 | "cpu": [
397 | "arm64"
398 | ],
399 | "dev": true,
400 | "license": "MIT",
401 | "optional": true,
402 | "os": [
403 | "darwin"
404 | ],
405 | "engines": {
406 | "node": ">=18"
407 | }
408 | },
409 | "node_modules/@esbuild/darwin-x64": {
410 | "version": "0.24.2",
411 | "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.24.2.tgz",
412 | "integrity": "sha512-WeSrmwwHaPkNR5H3yYfowhZcbriGqooyu3zI/3GGpF8AyUdsrrP0X6KumITGA9WOyiJavnGZUwPGvxvwfWPHIA==",
413 | "cpu": [
414 | "x64"
415 | ],
416 | "dev": true,
417 | "license": "MIT",
418 | "optional": true,
419 | "os": [
420 | "darwin"
421 | ],
422 | "engines": {
423 | "node": ">=18"
424 | }
425 | },
426 | "node_modules/@esbuild/freebsd-arm64": {
427 | "version": "0.24.2",
428 | "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.24.2.tgz",
429 | "integrity": "sha512-UN8HXjtJ0k/Mj6a9+5u6+2eZ2ERD7Edt1Q9IZiB5UZAIdPnVKDoG7mdTVGhHJIeEml60JteamR3qhsr1r8gXvg==",
430 | "cpu": [
431 | "arm64"
432 | ],
433 | "dev": true,
434 | "license": "MIT",
435 | "optional": true,
436 | "os": [
437 | "freebsd"
438 | ],
439 | "engines": {
440 | "node": ">=18"
441 | }
442 | },
443 | "node_modules/@esbuild/freebsd-x64": {
444 | "version": "0.24.2",
445 | "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.24.2.tgz",
446 | "integrity": "sha512-TvW7wE/89PYW+IevEJXZ5sF6gJRDY/14hyIGFXdIucxCsbRmLUcjseQu1SyTko+2idmCw94TgyaEZi9HUSOe3Q==",
447 | "cpu": [
448 | "x64"
449 | ],
450 | "dev": true,
451 | "license": "MIT",
452 | "optional": true,
453 | "os": [
454 | "freebsd"
455 | ],
456 | "engines": {
457 | "node": ">=18"
458 | }
459 | },
460 | "node_modules/@esbuild/linux-arm": {
461 | "version": "0.24.2",
462 | "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.24.2.tgz",
463 | "integrity": "sha512-n0WRM/gWIdU29J57hJyUdIsk0WarGd6To0s+Y+LwvlC55wt+GT/OgkwoXCXvIue1i1sSNWblHEig00GBWiJgfA==",
464 | "cpu": [
465 | "arm"
466 | ],
467 | "dev": true,
468 | "license": "MIT",
469 | "optional": true,
470 | "os": [
471 | "linux"
472 | ],
473 | "engines": {
474 | "node": ">=18"
475 | }
476 | },
477 | "node_modules/@esbuild/linux-arm64": {
478 | "version": "0.24.2",
479 | "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.24.2.tgz",
480 | "integrity": "sha512-7HnAD6074BW43YvvUmE/35Id9/NB7BeX5EoNkK9obndmZBUk8xmJJeU7DwmUeN7tkysslb2eSl6CTrYz6oEMQg==",
481 | "cpu": [
482 | "arm64"
483 | ],
484 | "dev": true,
485 | "license": "MIT",
486 | "optional": true,
487 | "os": [
488 | "linux"
489 | ],
490 | "engines": {
491 | "node": ">=18"
492 | }
493 | },
494 | "node_modules/@esbuild/linux-ia32": {
495 | "version": "0.24.2",
496 | "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.24.2.tgz",
497 | "integrity": "sha512-sfv0tGPQhcZOgTKO3oBE9xpHuUqguHvSo4jl+wjnKwFpapx+vUDcawbwPNuBIAYdRAvIDBfZVvXprIj3HA+Ugw==",
498 | "cpu": [
499 | "ia32"
500 | ],
501 | "dev": true,
502 | "license": "MIT",
503 | "optional": true,
504 | "os": [
505 | "linux"
506 | ],
507 | "engines": {
508 | "node": ">=18"
509 | }
510 | },
511 | "node_modules/@esbuild/linux-loong64": {
512 | "version": "0.24.2",
513 | "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.24.2.tgz",
514 | "integrity": "sha512-CN9AZr8kEndGooS35ntToZLTQLHEjtVB5n7dl8ZcTZMonJ7CCfStrYhrzF97eAecqVbVJ7APOEe18RPI4KLhwQ==",
515 | "cpu": [
516 | "loong64"
517 | ],
518 | "dev": true,
519 | "license": "MIT",
520 | "optional": true,
521 | "os": [
522 | "linux"
523 | ],
524 | "engines": {
525 | "node": ">=18"
526 | }
527 | },
528 | "node_modules/@esbuild/linux-mips64el": {
529 | "version": "0.24.2",
530 | "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.24.2.tgz",
531 | "integrity": "sha512-iMkk7qr/wl3exJATwkISxI7kTcmHKE+BlymIAbHO8xanq/TjHaaVThFF6ipWzPHryoFsesNQJPE/3wFJw4+huw==",
532 | "cpu": [
533 | "mips64el"
534 | ],
535 | "dev": true,
536 | "license": "MIT",
537 | "optional": true,
538 | "os": [
539 | "linux"
540 | ],
541 | "engines": {
542 | "node": ">=18"
543 | }
544 | },
545 | "node_modules/@esbuild/linux-ppc64": {
546 | "version": "0.24.2",
547 | "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.24.2.tgz",
548 | "integrity": "sha512-shsVrgCZ57Vr2L8mm39kO5PPIb+843FStGt7sGGoqiiWYconSxwTiuswC1VJZLCjNiMLAMh34jg4VSEQb+iEbw==",
549 | "cpu": [
550 | "ppc64"
551 | ],
552 | "dev": true,
553 | "license": "MIT",
554 | "optional": true,
555 | "os": [
556 | "linux"
557 | ],
558 | "engines": {
559 | "node": ">=18"
560 | }
561 | },
562 | "node_modules/@esbuild/linux-riscv64": {
563 | "version": "0.24.2",
564 | "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.24.2.tgz",
565 | "integrity": "sha512-4eSFWnU9Hhd68fW16GD0TINewo1L6dRrB+oLNNbYyMUAeOD2yCK5KXGK1GH4qD/kT+bTEXjsyTCiJGHPZ3eM9Q==",
566 | "cpu": [
567 | "riscv64"
568 | ],
569 | "dev": true,
570 | "license": "MIT",
571 | "optional": true,
572 | "os": [
573 | "linux"
574 | ],
575 | "engines": {
576 | "node": ">=18"
577 | }
578 | },
579 | "node_modules/@esbuild/linux-s390x": {
580 | "version": "0.24.2",
581 | "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.24.2.tgz",
582 | "integrity": "sha512-S0Bh0A53b0YHL2XEXC20bHLuGMOhFDO6GN4b3YjRLK//Ep3ql3erpNcPlEFed93hsQAjAQDNsvcK+hV90FubSw==",
583 | "cpu": [
584 | "s390x"
585 | ],
586 | "dev": true,
587 | "license": "MIT",
588 | "optional": true,
589 | "os": [
590 | "linux"
591 | ],
592 | "engines": {
593 | "node": ">=18"
594 | }
595 | },
596 | "node_modules/@esbuild/linux-x64": {
597 | "version": "0.24.2",
598 | "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.24.2.tgz",
599 | "integrity": "sha512-8Qi4nQcCTbLnK9WoMjdC9NiTG6/E38RNICU6sUNqK0QFxCYgoARqVqxdFmWkdonVsvGqWhmm7MO0jyTqLqwj0Q==",
600 | "cpu": [
601 | "x64"
602 | ],
603 | "dev": true,
604 | "license": "MIT",
605 | "optional": true,
606 | "os": [
607 | "linux"
608 | ],
609 | "engines": {
610 | "node": ">=18"
611 | }
612 | },
613 | "node_modules/@esbuild/netbsd-arm64": {
614 | "version": "0.24.2",
615 | "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.24.2.tgz",
616 | "integrity": "sha512-wuLK/VztRRpMt9zyHSazyCVdCXlpHkKm34WUyinD2lzK07FAHTq0KQvZZlXikNWkDGoT6x3TD51jKQ7gMVpopw==",
617 | "cpu": [
618 | "arm64"
619 | ],
620 | "dev": true,
621 | "license": "MIT",
622 | "optional": true,
623 | "os": [
624 | "netbsd"
625 | ],
626 | "engines": {
627 | "node": ">=18"
628 | }
629 | },
630 | "node_modules/@esbuild/netbsd-x64": {
631 | "version": "0.24.2",
632 | "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.24.2.tgz",
633 | "integrity": "sha512-VefFaQUc4FMmJuAxmIHgUmfNiLXY438XrL4GDNV1Y1H/RW3qow68xTwjZKfj/+Plp9NANmzbH5R40Meudu8mmw==",
634 | "cpu": [
635 | "x64"
636 | ],
637 | "dev": true,
638 | "license": "MIT",
639 | "optional": true,
640 | "os": [
641 | "netbsd"
642 | ],
643 | "engines": {
644 | "node": ">=18"
645 | }
646 | },
647 | "node_modules/@esbuild/openbsd-arm64": {
648 | "version": "0.24.2",
649 | "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.24.2.tgz",
650 | "integrity": "sha512-YQbi46SBct6iKnszhSvdluqDmxCJA+Pu280Av9WICNwQmMxV7nLRHZfjQzwbPs3jeWnuAhE9Jy0NrnJ12Oz+0A==",
651 | "cpu": [
652 | "arm64"
653 | ],
654 | "dev": true,
655 | "license": "MIT",
656 | "optional": true,
657 | "os": [
658 | "openbsd"
659 | ],
660 | "engines": {
661 | "node": ">=18"
662 | }
663 | },
664 | "node_modules/@esbuild/openbsd-x64": {
665 | "version": "0.24.2",
666 | "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.24.2.tgz",
667 | "integrity": "sha512-+iDS6zpNM6EnJyWv0bMGLWSWeXGN/HTaF/LXHXHwejGsVi+ooqDfMCCTerNFxEkM3wYVcExkeGXNqshc9iMaOA==",
668 | "cpu": [
669 | "x64"
670 | ],
671 | "dev": true,
672 | "license": "MIT",
673 | "optional": true,
674 | "os": [
675 | "openbsd"
676 | ],
677 | "engines": {
678 | "node": ">=18"
679 | }
680 | },
681 | "node_modules/@esbuild/sunos-x64": {
682 | "version": "0.24.2",
683 | "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.24.2.tgz",
684 | "integrity": "sha512-hTdsW27jcktEvpwNHJU4ZwWFGkz2zRJUz8pvddmXPtXDzVKTTINmlmga3ZzwcuMpUvLw7JkLy9QLKyGpD2Yxig==",
685 | "cpu": [
686 | "x64"
687 | ],
688 | "dev": true,
689 | "license": "MIT",
690 | "optional": true,
691 | "os": [
692 | "sunos"
693 | ],
694 | "engines": {
695 | "node": ">=18"
696 | }
697 | },
698 | "node_modules/@esbuild/win32-arm64": {
699 | "version": "0.24.2",
700 | "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.24.2.tgz",
701 | "integrity": "sha512-LihEQ2BBKVFLOC9ZItT9iFprsE9tqjDjnbulhHoFxYQtQfai7qfluVODIYxt1PgdoyQkz23+01rzwNwYfutxUQ==",
702 | "cpu": [
703 | "arm64"
704 | ],
705 | "dev": true,
706 | "license": "MIT",
707 | "optional": true,
708 | "os": [
709 | "win32"
710 | ],
711 | "engines": {
712 | "node": ">=18"
713 | }
714 | },
715 | "node_modules/@esbuild/win32-ia32": {
716 | "version": "0.24.2",
717 | "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.24.2.tgz",
718 | "integrity": "sha512-q+iGUwfs8tncmFC9pcnD5IvRHAzmbwQ3GPS5/ceCyHdjXubwQWI12MKWSNSMYLJMq23/IUCvJMS76PDqXe1fxA==",
719 | "cpu": [
720 | "ia32"
721 | ],
722 | "dev": true,
723 | "license": "MIT",
724 | "optional": true,
725 | "os": [
726 | "win32"
727 | ],
728 | "engines": {
729 | "node": ">=18"
730 | }
731 | },
732 | "node_modules/@esbuild/win32-x64": {
733 | "version": "0.24.2",
734 | "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.24.2.tgz",
735 | "integrity": "sha512-7VTgWzgMGvup6aSqDPLiW5zHaxYJGTO4OokMjIlrCtf+VpEL+cXKtCvg723iguPYI5oaUNdS+/V7OU2gvXVWEg==",
736 | "cpu": [
737 | "x64"
738 | ],
739 | "dev": true,
740 | "license": "MIT",
741 | "optional": true,
742 | "os": [
743 | "win32"
744 | ],
745 | "engines": {
746 | "node": ">=18"
747 | }
748 | },
749 | "node_modules/@eslint-community/eslint-utils": {
750 | "version": "4.4.1",
751 | "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.1.tgz",
752 | "integrity": "sha512-s3O3waFUrMV8P/XaF/+ZTp1X9XBZW1a4B97ZnjQF2KYWaFD2A8KyFBsrsfSjEmjn3RGWAIuvlneuZm3CUK3jbA==",
753 | "dev": true,
754 | "license": "MIT",
755 | "dependencies": {
756 | "eslint-visitor-keys": "^3.4.3"
757 | },
758 | "engines": {
759 | "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
760 | },
761 | "funding": {
762 | "url": "https://opencollective.com/eslint"
763 | },
764 | "peerDependencies": {
765 | "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0"
766 | }
767 | },
768 | "node_modules/@eslint-community/eslint-utils/node_modules/eslint-visitor-keys": {
769 | "version": "3.4.3",
770 | "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz",
771 | "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==",
772 | "dev": true,
773 | "license": "Apache-2.0",
774 | "engines": {
775 | "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
776 | },
777 | "funding": {
778 | "url": "https://opencollective.com/eslint"
779 | }
780 | },
781 | "node_modules/@eslint-community/regexpp": {
782 | "version": "4.12.1",
783 | "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.12.1.tgz",
784 | "integrity": "sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ==",
785 | "dev": true,
786 | "license": "MIT",
787 | "engines": {
788 | "node": "^12.0.0 || ^14.0.0 || >=16.0.0"
789 | }
790 | },
791 | "node_modules/@eslint/config-array": {
792 | "version": "0.19.2",
793 | "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.19.2.tgz",
794 | "integrity": "sha512-GNKqxfHG2ySmJOBSHg7LxeUx4xpuCoFjacmlCoYWEbaPXLwvfIjixRI12xCQZeULksQb23uiA8F40w5TojpV7w==",
795 | "dev": true,
796 | "license": "Apache-2.0",
797 | "dependencies": {
798 | "@eslint/object-schema": "^2.1.6",
799 | "debug": "^4.3.1",
800 | "minimatch": "^3.1.2"
801 | },
802 | "engines": {
803 | "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
804 | }
805 | },
806 | "node_modules/@eslint/core": {
807 | "version": "0.11.0",
808 | "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.11.0.tgz",
809 | "integrity": "sha512-DWUB2pksgNEb6Bz2fggIy1wh6fGgZP4Xyy/Mt0QZPiloKKXerbqq9D3SBQTlCRYOrcRPu4vuz+CGjwdfqxnoWA==",
810 | "dev": true,
811 | "license": "Apache-2.0",
812 | "dependencies": {
813 | "@types/json-schema": "^7.0.15"
814 | },
815 | "engines": {
816 | "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
817 | }
818 | },
819 | "node_modules/@eslint/eslintrc": {
820 | "version": "3.2.0",
821 | "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.2.0.tgz",
822 | "integrity": "sha512-grOjVNN8P3hjJn/eIETF1wwd12DdnwFDoyceUJLYYdkpbwq3nLi+4fqrTAONx7XDALqlL220wC/RHSC/QTI/0w==",
823 | "dev": true,
824 | "license": "MIT",
825 | "dependencies": {
826 | "ajv": "^6.12.4",
827 | "debug": "^4.3.2",
828 | "espree": "^10.0.1",
829 | "globals": "^14.0.0",
830 | "ignore": "^5.2.0",
831 | "import-fresh": "^3.2.1",
832 | "js-yaml": "^4.1.0",
833 | "minimatch": "^3.1.2",
834 | "strip-json-comments": "^3.1.1"
835 | },
836 | "engines": {
837 | "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
838 | },
839 | "funding": {
840 | "url": "https://opencollective.com/eslint"
841 | }
842 | },
843 | "node_modules/@eslint/eslintrc/node_modules/globals": {
844 | "version": "14.0.0",
845 | "resolved": "https://registry.npmjs.org/globals/-/globals-14.0.0.tgz",
846 | "integrity": "sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==",
847 | "dev": true,
848 | "license": "MIT",
849 | "engines": {
850 | "node": ">=18"
851 | },
852 | "funding": {
853 | "url": "https://github.com/sponsors/sindresorhus"
854 | }
855 | },
856 | "node_modules/@eslint/js": {
857 | "version": "9.20.0",
858 | "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.20.0.tgz",
859 | "integrity": "sha512-iZA07H9io9Wn836aVTytRaNqh00Sad+EamwOVJT12GTLw1VGMFV/4JaME+JjLtr9fiGaoWgYnS54wrfWsSs4oQ==",
860 | "dev": true,
861 | "license": "MIT",
862 | "engines": {
863 | "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
864 | }
865 | },
866 | "node_modules/@eslint/object-schema": {
867 | "version": "2.1.6",
868 | "resolved": "https://registry.npmjs.org/@eslint/object-schema/-/object-schema-2.1.6.tgz",
869 | "integrity": "sha512-RBMg5FRL0I0gs51M/guSAj5/e14VQ4tpZnQNWwuDT66P14I43ItmPfIZRhO9fUVIPOAQXU47atlywZ/czoqFPA==",
870 | "dev": true,
871 | "license": "Apache-2.0",
872 | "engines": {
873 | "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
874 | }
875 | },
876 | "node_modules/@eslint/plugin-kit": {
877 | "version": "0.2.6",
878 | "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.2.6.tgz",
879 | "integrity": "sha512-+0TjwR1eAUdZtvv/ir1mGX+v0tUoR3VEPB8Up0LLJC+whRW0GgBBtpbOkg/a/U4Dxa6l5a3l9AJ1aWIQVyoWJA==",
880 | "dev": true,
881 | "license": "Apache-2.0",
882 | "dependencies": {
883 | "@eslint/core": "^0.11.0",
884 | "levn": "^0.4.1"
885 | },
886 | "engines": {
887 | "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
888 | }
889 | },
890 | "node_modules/@humanfs/core": {
891 | "version": "0.19.1",
892 | "resolved": "https://registry.npmjs.org/@humanfs/core/-/core-0.19.1.tgz",
893 | "integrity": "sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA==",
894 | "dev": true,
895 | "license": "Apache-2.0",
896 | "engines": {
897 | "node": ">=18.18.0"
898 | }
899 | },
900 | "node_modules/@humanfs/node": {
901 | "version": "0.16.6",
902 | "resolved": "https://registry.npmjs.org/@humanfs/node/-/node-0.16.6.tgz",
903 | "integrity": "sha512-YuI2ZHQL78Q5HbhDiBA1X4LmYdXCKCMQIfw0pw7piHJwyREFebJUvrQN4cMssyES6x+vfUbx1CIpaQUKYdQZOw==",
904 | "dev": true,
905 | "license": "Apache-2.0",
906 | "dependencies": {
907 | "@humanfs/core": "^0.19.1",
908 | "@humanwhocodes/retry": "^0.3.0"
909 | },
910 | "engines": {
911 | "node": ">=18.18.0"
912 | }
913 | },
914 | "node_modules/@humanfs/node/node_modules/@humanwhocodes/retry": {
915 | "version": "0.3.1",
916 | "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.3.1.tgz",
917 | "integrity": "sha512-JBxkERygn7Bv/GbN5Rv8Ul6LVknS+5Bp6RgDC/O8gEBU/yeH5Ui5C/OlWrTb6qct7LjjfT6Re2NxB0ln0yYybA==",
918 | "dev": true,
919 | "license": "Apache-2.0",
920 | "engines": {
921 | "node": ">=18.18"
922 | },
923 | "funding": {
924 | "type": "github",
925 | "url": "https://github.com/sponsors/nzakas"
926 | }
927 | },
928 | "node_modules/@humanwhocodes/module-importer": {
929 | "version": "1.0.1",
930 | "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz",
931 | "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==",
932 | "dev": true,
933 | "license": "Apache-2.0",
934 | "engines": {
935 | "node": ">=12.22"
936 | },
937 | "funding": {
938 | "type": "github",
939 | "url": "https://github.com/sponsors/nzakas"
940 | }
941 | },
942 | "node_modules/@humanwhocodes/retry": {
943 | "version": "0.4.2",
944 | "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.4.2.tgz",
945 | "integrity": "sha512-xeO57FpIu4p1Ri3Jq/EXq4ClRm86dVF2z/+kvFnyqVYRavTZmaFaUBbWCOuuTh0o/g7DSsk6kc2vrS4Vl5oPOQ==",
946 | "dev": true,
947 | "license": "Apache-2.0",
948 | "engines": {
949 | "node": ">=18.18"
950 | },
951 | "funding": {
952 | "type": "github",
953 | "url": "https://github.com/sponsors/nzakas"
954 | }
955 | },
956 | "node_modules/@jridgewell/gen-mapping": {
957 | "version": "0.3.8",
958 | "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.8.tgz",
959 | "integrity": "sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA==",
960 | "dev": true,
961 | "license": "MIT",
962 | "dependencies": {
963 | "@jridgewell/set-array": "^1.2.1",
964 | "@jridgewell/sourcemap-codec": "^1.4.10",
965 | "@jridgewell/trace-mapping": "^0.3.24"
966 | },
967 | "engines": {
968 | "node": ">=6.0.0"
969 | }
970 | },
971 | "node_modules/@jridgewell/resolve-uri": {
972 | "version": "3.1.2",
973 | "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz",
974 | "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==",
975 | "dev": true,
976 | "license": "MIT",
977 | "engines": {
978 | "node": ">=6.0.0"
979 | }
980 | },
981 | "node_modules/@jridgewell/set-array": {
982 | "version": "1.2.1",
983 | "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz",
984 | "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==",
985 | "dev": true,
986 | "license": "MIT",
987 | "engines": {
988 | "node": ">=6.0.0"
989 | }
990 | },
991 | "node_modules/@jridgewell/sourcemap-codec": {
992 | "version": "1.5.0",
993 | "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz",
994 | "integrity": "sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==",
995 | "dev": true,
996 | "license": "MIT"
997 | },
998 | "node_modules/@jridgewell/trace-mapping": {
999 | "version": "0.3.25",
1000 | "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz",
1001 | "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==",
1002 | "dev": true,
1003 | "license": "MIT",
1004 | "dependencies": {
1005 | "@jridgewell/resolve-uri": "^3.1.0",
1006 | "@jridgewell/sourcemap-codec": "^1.4.14"
1007 | }
1008 | },
1009 | "node_modules/@rollup/rollup-android-arm-eabi": {
1010 | "version": "4.34.8",
1011 | "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.34.8.tgz",
1012 | "integrity": "sha512-q217OSE8DTp8AFHuNHXo0Y86e1wtlfVrXiAlwkIvGRQv9zbc6mE3sjIVfwI8sYUyNxwOg0j/Vm1RKM04JcWLJw==",
1013 | "cpu": [
1014 | "arm"
1015 | ],
1016 | "dev": true,
1017 | "license": "MIT",
1018 | "optional": true,
1019 | "os": [
1020 | "android"
1021 | ]
1022 | },
1023 | "node_modules/@rollup/rollup-android-arm64": {
1024 | "version": "4.34.8",
1025 | "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.34.8.tgz",
1026 | "integrity": "sha512-Gigjz7mNWaOL9wCggvoK3jEIUUbGul656opstjaUSGC3eT0BM7PofdAJaBfPFWWkXNVAXbaQtC99OCg4sJv70Q==",
1027 | "cpu": [
1028 | "arm64"
1029 | ],
1030 | "dev": true,
1031 | "license": "MIT",
1032 | "optional": true,
1033 | "os": [
1034 | "android"
1035 | ]
1036 | },
1037 | "node_modules/@rollup/rollup-darwin-arm64": {
1038 | "version": "4.34.8",
1039 | "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.34.8.tgz",
1040 | "integrity": "sha512-02rVdZ5tgdUNRxIUrFdcMBZQoaPMrxtwSb+/hOfBdqkatYHR3lZ2A2EGyHq2sGOd0Owk80oV3snlDASC24He3Q==",
1041 | "cpu": [
1042 | "arm64"
1043 | ],
1044 | "dev": true,
1045 | "license": "MIT",
1046 | "optional": true,
1047 | "os": [
1048 | "darwin"
1049 | ]
1050 | },
1051 | "node_modules/@rollup/rollup-darwin-x64": {
1052 | "version": "4.34.8",
1053 | "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.34.8.tgz",
1054 | "integrity": "sha512-qIP/elwR/tq/dYRx3lgwK31jkZvMiD6qUtOycLhTzCvrjbZ3LjQnEM9rNhSGpbLXVJYQ3rq39A6Re0h9tU2ynw==",
1055 | "cpu": [
1056 | "x64"
1057 | ],
1058 | "dev": true,
1059 | "license": "MIT",
1060 | "optional": true,
1061 | "os": [
1062 | "darwin"
1063 | ]
1064 | },
1065 | "node_modules/@rollup/rollup-freebsd-arm64": {
1066 | "version": "4.34.8",
1067 | "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.34.8.tgz",
1068 | "integrity": "sha512-IQNVXL9iY6NniYbTaOKdrlVP3XIqazBgJOVkddzJlqnCpRi/yAeSOa8PLcECFSQochzqApIOE1GHNu3pCz+BDA==",
1069 | "cpu": [
1070 | "arm64"
1071 | ],
1072 | "dev": true,
1073 | "license": "MIT",
1074 | "optional": true,
1075 | "os": [
1076 | "freebsd"
1077 | ]
1078 | },
1079 | "node_modules/@rollup/rollup-freebsd-x64": {
1080 | "version": "4.34.8",
1081 | "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.34.8.tgz",
1082 | "integrity": "sha512-TYXcHghgnCqYFiE3FT5QwXtOZqDj5GmaFNTNt3jNC+vh22dc/ukG2cG+pi75QO4kACohZzidsq7yKTKwq/Jq7Q==",
1083 | "cpu": [
1084 | "x64"
1085 | ],
1086 | "dev": true,
1087 | "license": "MIT",
1088 | "optional": true,
1089 | "os": [
1090 | "freebsd"
1091 | ]
1092 | },
1093 | "node_modules/@rollup/rollup-linux-arm-gnueabihf": {
1094 | "version": "4.34.8",
1095 | "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.34.8.tgz",
1096 | "integrity": "sha512-A4iphFGNkWRd+5m3VIGuqHnG3MVnqKe7Al57u9mwgbyZ2/xF9Jio72MaY7xxh+Y87VAHmGQr73qoKL9HPbXj1g==",
1097 | "cpu": [
1098 | "arm"
1099 | ],
1100 | "dev": true,
1101 | "license": "MIT",
1102 | "optional": true,
1103 | "os": [
1104 | "linux"
1105 | ]
1106 | },
1107 | "node_modules/@rollup/rollup-linux-arm-musleabihf": {
1108 | "version": "4.34.8",
1109 | "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.34.8.tgz",
1110 | "integrity": "sha512-S0lqKLfTm5u+QTxlFiAnb2J/2dgQqRy/XvziPtDd1rKZFXHTyYLoVL58M/XFwDI01AQCDIevGLbQrMAtdyanpA==",
1111 | "cpu": [
1112 | "arm"
1113 | ],
1114 | "dev": true,
1115 | "license": "MIT",
1116 | "optional": true,
1117 | "os": [
1118 | "linux"
1119 | ]
1120 | },
1121 | "node_modules/@rollup/rollup-linux-arm64-gnu": {
1122 | "version": "4.34.8",
1123 | "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.34.8.tgz",
1124 | "integrity": "sha512-jpz9YOuPiSkL4G4pqKrus0pn9aYwpImGkosRKwNi+sJSkz+WU3anZe6hi73StLOQdfXYXC7hUfsQlTnjMd3s1A==",
1125 | "cpu": [
1126 | "arm64"
1127 | ],
1128 | "dev": true,
1129 | "license": "MIT",
1130 | "optional": true,
1131 | "os": [
1132 | "linux"
1133 | ]
1134 | },
1135 | "node_modules/@rollup/rollup-linux-arm64-musl": {
1136 | "version": "4.34.8",
1137 | "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.34.8.tgz",
1138 | "integrity": "sha512-KdSfaROOUJXgTVxJNAZ3KwkRc5nggDk+06P6lgi1HLv1hskgvxHUKZ4xtwHkVYJ1Rep4GNo+uEfycCRRxht7+Q==",
1139 | "cpu": [
1140 | "arm64"
1141 | ],
1142 | "dev": true,
1143 | "license": "MIT",
1144 | "optional": true,
1145 | "os": [
1146 | "linux"
1147 | ]
1148 | },
1149 | "node_modules/@rollup/rollup-linux-loongarch64-gnu": {
1150 | "version": "4.34.8",
1151 | "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loongarch64-gnu/-/rollup-linux-loongarch64-gnu-4.34.8.tgz",
1152 | "integrity": "sha512-NyF4gcxwkMFRjgXBM6g2lkT58OWztZvw5KkV2K0qqSnUEqCVcqdh2jN4gQrTn/YUpAcNKyFHfoOZEer9nwo6uQ==",
1153 | "cpu": [
1154 | "loong64"
1155 | ],
1156 | "dev": true,
1157 | "license": "MIT",
1158 | "optional": true,
1159 | "os": [
1160 | "linux"
1161 | ]
1162 | },
1163 | "node_modules/@rollup/rollup-linux-powerpc64le-gnu": {
1164 | "version": "4.34.8",
1165 | "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.34.8.tgz",
1166 | "integrity": "sha512-LMJc999GkhGvktHU85zNTDImZVUCJ1z/MbAJTnviiWmmjyckP5aQsHtcujMjpNdMZPT2rQEDBlJfubhs3jsMfw==",
1167 | "cpu": [
1168 | "ppc64"
1169 | ],
1170 | "dev": true,
1171 | "license": "MIT",
1172 | "optional": true,
1173 | "os": [
1174 | "linux"
1175 | ]
1176 | },
1177 | "node_modules/@rollup/rollup-linux-riscv64-gnu": {
1178 | "version": "4.34.8",
1179 | "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.34.8.tgz",
1180 | "integrity": "sha512-xAQCAHPj8nJq1PI3z8CIZzXuXCstquz7cIOL73HHdXiRcKk8Ywwqtx2wrIy23EcTn4aZ2fLJNBB8d0tQENPCmw==",
1181 | "cpu": [
1182 | "riscv64"
1183 | ],
1184 | "dev": true,
1185 | "license": "MIT",
1186 | "optional": true,
1187 | "os": [
1188 | "linux"
1189 | ]
1190 | },
1191 | "node_modules/@rollup/rollup-linux-s390x-gnu": {
1192 | "version": "4.34.8",
1193 | "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.34.8.tgz",
1194 | "integrity": "sha512-DdePVk1NDEuc3fOe3dPPTb+rjMtuFw89gw6gVWxQFAuEqqSdDKnrwzZHrUYdac7A7dXl9Q2Vflxpme15gUWQFA==",
1195 | "cpu": [
1196 | "s390x"
1197 | ],
1198 | "dev": true,
1199 | "license": "MIT",
1200 | "optional": true,
1201 | "os": [
1202 | "linux"
1203 | ]
1204 | },
1205 | "node_modules/@rollup/rollup-linux-x64-gnu": {
1206 | "version": "4.34.8",
1207 | "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.34.8.tgz",
1208 | "integrity": "sha512-8y7ED8gjxITUltTUEJLQdgpbPh1sUQ0kMTmufRF/Ns5tI9TNMNlhWtmPKKHCU0SilX+3MJkZ0zERYYGIVBYHIA==",
1209 | "cpu": [
1210 | "x64"
1211 | ],
1212 | "dev": true,
1213 | "license": "MIT",
1214 | "optional": true,
1215 | "os": [
1216 | "linux"
1217 | ]
1218 | },
1219 | "node_modules/@rollup/rollup-linux-x64-musl": {
1220 | "version": "4.34.8",
1221 | "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.34.8.tgz",
1222 | "integrity": "sha512-SCXcP0ZpGFIe7Ge+McxY5zKxiEI5ra+GT3QRxL0pMMtxPfpyLAKleZODi1zdRHkz5/BhueUrYtYVgubqe9JBNQ==",
1223 | "cpu": [
1224 | "x64"
1225 | ],
1226 | "dev": true,
1227 | "license": "MIT",
1228 | "optional": true,
1229 | "os": [
1230 | "linux"
1231 | ]
1232 | },
1233 | "node_modules/@rollup/rollup-win32-arm64-msvc": {
1234 | "version": "4.34.8",
1235 | "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.34.8.tgz",
1236 | "integrity": "sha512-YHYsgzZgFJzTRbth4h7Or0m5O74Yda+hLin0irAIobkLQFRQd1qWmnoVfwmKm9TXIZVAD0nZ+GEb2ICicLyCnQ==",
1237 | "cpu": [
1238 | "arm64"
1239 | ],
1240 | "dev": true,
1241 | "license": "MIT",
1242 | "optional": true,
1243 | "os": [
1244 | "win32"
1245 | ]
1246 | },
1247 | "node_modules/@rollup/rollup-win32-ia32-msvc": {
1248 | "version": "4.34.8",
1249 | "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.34.8.tgz",
1250 | "integrity": "sha512-r3NRQrXkHr4uWy5TOjTpTYojR9XmF0j/RYgKCef+Ag46FWUTltm5ziticv8LdNsDMehjJ543x/+TJAek/xBA2w==",
1251 | "cpu": [
1252 | "ia32"
1253 | ],
1254 | "dev": true,
1255 | "license": "MIT",
1256 | "optional": true,
1257 | "os": [
1258 | "win32"
1259 | ]
1260 | },
1261 | "node_modules/@rollup/rollup-win32-x64-msvc": {
1262 | "version": "4.34.8",
1263 | "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.34.8.tgz",
1264 | "integrity": "sha512-U0FaE5O1BCpZSeE6gBl3c5ObhePQSfk9vDRToMmTkbhCOgW4jqvtS5LGyQ76L1fH8sM0keRp4uDTsbjiUyjk0g==",
1265 | "cpu": [
1266 | "x64"
1267 | ],
1268 | "dev": true,
1269 | "license": "MIT",
1270 | "optional": true,
1271 | "os": [
1272 | "win32"
1273 | ]
1274 | },
1275 | "node_modules/@types/babel__core": {
1276 | "version": "7.20.5",
1277 | "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz",
1278 | "integrity": "sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==",
1279 | "dev": true,
1280 | "license": "MIT",
1281 | "dependencies": {
1282 | "@babel/parser": "^7.20.7",
1283 | "@babel/types": "^7.20.7",
1284 | "@types/babel__generator": "*",
1285 | "@types/babel__template": "*",
1286 | "@types/babel__traverse": "*"
1287 | }
1288 | },
1289 | "node_modules/@types/babel__generator": {
1290 | "version": "7.6.8",
1291 | "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.8.tgz",
1292 | "integrity": "sha512-ASsj+tpEDsEiFr1arWrlN6V3mdfjRMZt6LtK/Vp/kreFLnr5QH5+DhvD5nINYZXzwJvXeGq+05iUXcAzVrqWtw==",
1293 | "dev": true,
1294 | "license": "MIT",
1295 | "dependencies": {
1296 | "@babel/types": "^7.0.0"
1297 | }
1298 | },
1299 | "node_modules/@types/babel__template": {
1300 | "version": "7.4.4",
1301 | "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.4.tgz",
1302 | "integrity": "sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==",
1303 | "dev": true,
1304 | "license": "MIT",
1305 | "dependencies": {
1306 | "@babel/parser": "^7.1.0",
1307 | "@babel/types": "^7.0.0"
1308 | }
1309 | },
1310 | "node_modules/@types/babel__traverse": {
1311 | "version": "7.20.6",
1312 | "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.6.tgz",
1313 | "integrity": "sha512-r1bzfrm0tomOI8g1SzvCaQHo6Lcv6zu0EA+W2kHrt8dyrHQxGzBBL4kdkzIS+jBMV+EYcMAEAqXqYaLJq5rOZg==",
1314 | "dev": true,
1315 | "license": "MIT",
1316 | "dependencies": {
1317 | "@babel/types": "^7.20.7"
1318 | }
1319 | },
1320 | "node_modules/@types/cookie": {
1321 | "version": "0.6.0",
1322 | "resolved": "https://registry.npmjs.org/@types/cookie/-/cookie-0.6.0.tgz",
1323 | "integrity": "sha512-4Kh9a6B2bQciAhf7FSuMRRkUWecJgJu9nPnx3yzpsfXX/c50REIqpHY4C82bXP90qrLtXtkDxTZosYO3UpOwlA==",
1324 | "license": "MIT"
1325 | },
1326 | "node_modules/@types/estree": {
1327 | "version": "1.0.6",
1328 | "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.6.tgz",
1329 | "integrity": "sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==",
1330 | "dev": true,
1331 | "license": "MIT"
1332 | },
1333 | "node_modules/@types/json-schema": {
1334 | "version": "7.0.15",
1335 | "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz",
1336 | "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==",
1337 | "dev": true,
1338 | "license": "MIT"
1339 | },
1340 | "node_modules/@types/react": {
1341 | "version": "19.0.10",
1342 | "resolved": "https://registry.npmjs.org/@types/react/-/react-19.0.10.tgz",
1343 | "integrity": "sha512-JuRQ9KXLEjaUNjTWpzuR231Z2WpIwczOkBEIvbHNCzQefFIT0L8IqE6NV6ULLyC1SI/i234JnDoMkfg+RjQj2g==",
1344 | "dev": true,
1345 | "license": "MIT",
1346 | "dependencies": {
1347 | "csstype": "^3.0.2"
1348 | }
1349 | },
1350 | "node_modules/@types/react-dom": {
1351 | "version": "19.0.4",
1352 | "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-19.0.4.tgz",
1353 | "integrity": "sha512-4fSQ8vWFkg+TGhePfUzVmat3eC14TXYSsiiDSLI0dVLsrm9gZFABjPy/Qu6TKgl1tq1Bu1yDsuQgY3A3DOjCcg==",
1354 | "dev": true,
1355 | "license": "MIT",
1356 | "peerDependencies": {
1357 | "@types/react": "^19.0.0"
1358 | }
1359 | },
1360 | "node_modules/@vitejs/plugin-react": {
1361 | "version": "4.3.4",
1362 | "resolved": "https://registry.npmjs.org/@vitejs/plugin-react/-/plugin-react-4.3.4.tgz",
1363 | "integrity": "sha512-SCCPBJtYLdE8PX/7ZQAs1QAZ8Jqwih+0VBLum1EGqmCCQal+MIUqLCzj3ZUy8ufbC0cAM4LRlSTm7IQJwWT4ug==",
1364 | "dev": true,
1365 | "license": "MIT",
1366 | "dependencies": {
1367 | "@babel/core": "^7.26.0",
1368 | "@babel/plugin-transform-react-jsx-self": "^7.25.9",
1369 | "@babel/plugin-transform-react-jsx-source": "^7.25.9",
1370 | "@types/babel__core": "^7.20.5",
1371 | "react-refresh": "^0.14.2"
1372 | },
1373 | "engines": {
1374 | "node": "^14.18.0 || >=16.0.0"
1375 | },
1376 | "peerDependencies": {
1377 | "vite": "^4.2.0 || ^5.0.0 || ^6.0.0"
1378 | }
1379 | },
1380 | "node_modules/acorn": {
1381 | "version": "8.14.0",
1382 | "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.0.tgz",
1383 | "integrity": "sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA==",
1384 | "dev": true,
1385 | "license": "MIT",
1386 | "bin": {
1387 | "acorn": "bin/acorn"
1388 | },
1389 | "engines": {
1390 | "node": ">=0.4.0"
1391 | }
1392 | },
1393 | "node_modules/acorn-jsx": {
1394 | "version": "5.3.2",
1395 | "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz",
1396 | "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==",
1397 | "dev": true,
1398 | "license": "MIT",
1399 | "peerDependencies": {
1400 | "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0"
1401 | }
1402 | },
1403 | "node_modules/ajv": {
1404 | "version": "6.12.6",
1405 | "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz",
1406 | "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==",
1407 | "dev": true,
1408 | "license": "MIT",
1409 | "dependencies": {
1410 | "fast-deep-equal": "^3.1.1",
1411 | "fast-json-stable-stringify": "^2.0.0",
1412 | "json-schema-traverse": "^0.4.1",
1413 | "uri-js": "^4.2.2"
1414 | },
1415 | "funding": {
1416 | "type": "github",
1417 | "url": "https://github.com/sponsors/epoberezkin"
1418 | }
1419 | },
1420 | "node_modules/ansi-styles": {
1421 | "version": "4.3.0",
1422 | "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
1423 | "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
1424 | "dev": true,
1425 | "license": "MIT",
1426 | "dependencies": {
1427 | "color-convert": "^2.0.1"
1428 | },
1429 | "engines": {
1430 | "node": ">=8"
1431 | },
1432 | "funding": {
1433 | "url": "https://github.com/chalk/ansi-styles?sponsor=1"
1434 | }
1435 | },
1436 | "node_modules/argparse": {
1437 | "version": "2.0.1",
1438 | "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz",
1439 | "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==",
1440 | "dev": true,
1441 | "license": "Python-2.0"
1442 | },
1443 | "node_modules/array-buffer-byte-length": {
1444 | "version": "1.0.2",
1445 | "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.2.tgz",
1446 | "integrity": "sha512-LHE+8BuR7RYGDKvnrmcuSq3tDcKv9OFEXQt/HpbZhY7V6h0zlUXutnAD82GiFx9rdieCMjkvtcsPqBwgUl1Iiw==",
1447 | "dev": true,
1448 | "license": "MIT",
1449 | "dependencies": {
1450 | "call-bound": "^1.0.3",
1451 | "is-array-buffer": "^3.0.5"
1452 | },
1453 | "engines": {
1454 | "node": ">= 0.4"
1455 | },
1456 | "funding": {
1457 | "url": "https://github.com/sponsors/ljharb"
1458 | }
1459 | },
1460 | "node_modules/array-includes": {
1461 | "version": "3.1.8",
1462 | "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.8.tgz",
1463 | "integrity": "sha512-itaWrbYbqpGXkGhZPGUulwnhVf5Hpy1xiCFsGqyIGglbBxmG5vSjxQen3/WGOjPpNEv1RtBLKxbmVXm8HpJStQ==",
1464 | "dev": true,
1465 | "license": "MIT",
1466 | "dependencies": {
1467 | "call-bind": "^1.0.7",
1468 | "define-properties": "^1.2.1",
1469 | "es-abstract": "^1.23.2",
1470 | "es-object-atoms": "^1.0.0",
1471 | "get-intrinsic": "^1.2.4",
1472 | "is-string": "^1.0.7"
1473 | },
1474 | "engines": {
1475 | "node": ">= 0.4"
1476 | },
1477 | "funding": {
1478 | "url": "https://github.com/sponsors/ljharb"
1479 | }
1480 | },
1481 | "node_modules/array.prototype.findlast": {
1482 | "version": "1.2.5",
1483 | "resolved": "https://registry.npmjs.org/array.prototype.findlast/-/array.prototype.findlast-1.2.5.tgz",
1484 | "integrity": "sha512-CVvd6FHg1Z3POpBLxO6E6zr+rSKEQ9L6rZHAaY7lLfhKsWYUBBOuMs0e9o24oopj6H+geRCX0YJ+TJLBK2eHyQ==",
1485 | "dev": true,
1486 | "license": "MIT",
1487 | "dependencies": {
1488 | "call-bind": "^1.0.7",
1489 | "define-properties": "^1.2.1",
1490 | "es-abstract": "^1.23.2",
1491 | "es-errors": "^1.3.0",
1492 | "es-object-atoms": "^1.0.0",
1493 | "es-shim-unscopables": "^1.0.2"
1494 | },
1495 | "engines": {
1496 | "node": ">= 0.4"
1497 | },
1498 | "funding": {
1499 | "url": "https://github.com/sponsors/ljharb"
1500 | }
1501 | },
1502 | "node_modules/array.prototype.flat": {
1503 | "version": "1.3.3",
1504 | "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.3.tgz",
1505 | "integrity": "sha512-rwG/ja1neyLqCuGZ5YYrznA62D4mZXg0i1cIskIUKSiqF3Cje9/wXAls9B9s1Wa2fomMsIv8czB8jZcPmxCXFg==",
1506 | "dev": true,
1507 | "license": "MIT",
1508 | "dependencies": {
1509 | "call-bind": "^1.0.8",
1510 | "define-properties": "^1.2.1",
1511 | "es-abstract": "^1.23.5",
1512 | "es-shim-unscopables": "^1.0.2"
1513 | },
1514 | "engines": {
1515 | "node": ">= 0.4"
1516 | },
1517 | "funding": {
1518 | "url": "https://github.com/sponsors/ljharb"
1519 | }
1520 | },
1521 | "node_modules/array.prototype.flatmap": {
1522 | "version": "1.3.3",
1523 | "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.3.tgz",
1524 | "integrity": "sha512-Y7Wt51eKJSyi80hFrJCePGGNo5ktJCslFuboqJsbf57CCPcm5zztluPlc4/aD8sWsKvlwatezpV4U1efk8kpjg==",
1525 | "dev": true,
1526 | "license": "MIT",
1527 | "dependencies": {
1528 | "call-bind": "^1.0.8",
1529 | "define-properties": "^1.2.1",
1530 | "es-abstract": "^1.23.5",
1531 | "es-shim-unscopables": "^1.0.2"
1532 | },
1533 | "engines": {
1534 | "node": ">= 0.4"
1535 | },
1536 | "funding": {
1537 | "url": "https://github.com/sponsors/ljharb"
1538 | }
1539 | },
1540 | "node_modules/array.prototype.tosorted": {
1541 | "version": "1.1.4",
1542 | "resolved": "https://registry.npmjs.org/array.prototype.tosorted/-/array.prototype.tosorted-1.1.4.tgz",
1543 | "integrity": "sha512-p6Fx8B7b7ZhL/gmUsAy0D15WhvDccw3mnGNbZpi3pmeJdxtWsj2jEaI4Y6oo3XiHfzuSgPwKc04MYt6KgvC/wA==",
1544 | "dev": true,
1545 | "license": "MIT",
1546 | "dependencies": {
1547 | "call-bind": "^1.0.7",
1548 | "define-properties": "^1.2.1",
1549 | "es-abstract": "^1.23.3",
1550 | "es-errors": "^1.3.0",
1551 | "es-shim-unscopables": "^1.0.2"
1552 | },
1553 | "engines": {
1554 | "node": ">= 0.4"
1555 | }
1556 | },
1557 | "node_modules/arraybuffer.prototype.slice": {
1558 | "version": "1.0.4",
1559 | "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.4.tgz",
1560 | "integrity": "sha512-BNoCY6SXXPQ7gF2opIP4GBE+Xw7U+pHMYKuzjgCN3GwiaIR09UUeKfheyIry77QtrCBlC0KK0q5/TER/tYh3PQ==",
1561 | "dev": true,
1562 | "license": "MIT",
1563 | "dependencies": {
1564 | "array-buffer-byte-length": "^1.0.1",
1565 | "call-bind": "^1.0.8",
1566 | "define-properties": "^1.2.1",
1567 | "es-abstract": "^1.23.5",
1568 | "es-errors": "^1.3.0",
1569 | "get-intrinsic": "^1.2.6",
1570 | "is-array-buffer": "^3.0.4"
1571 | },
1572 | "engines": {
1573 | "node": ">= 0.4"
1574 | },
1575 | "funding": {
1576 | "url": "https://github.com/sponsors/ljharb"
1577 | }
1578 | },
1579 | "node_modules/async-function": {
1580 | "version": "1.0.0",
1581 | "resolved": "https://registry.npmjs.org/async-function/-/async-function-1.0.0.tgz",
1582 | "integrity": "sha512-hsU18Ae8CDTR6Kgu9DYf0EbCr/a5iGL0rytQDobUcdpYOKokk8LEjVphnXkDkgpi0wYVsqrXuP0bZxJaTqdgoA==",
1583 | "dev": true,
1584 | "license": "MIT",
1585 | "engines": {
1586 | "node": ">= 0.4"
1587 | }
1588 | },
1589 | "node_modules/available-typed-arrays": {
1590 | "version": "1.0.7",
1591 | "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz",
1592 | "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==",
1593 | "dev": true,
1594 | "license": "MIT",
1595 | "dependencies": {
1596 | "possible-typed-array-names": "^1.0.0"
1597 | },
1598 | "engines": {
1599 | "node": ">= 0.4"
1600 | },
1601 | "funding": {
1602 | "url": "https://github.com/sponsors/ljharb"
1603 | }
1604 | },
1605 | "node_modules/balanced-match": {
1606 | "version": "1.0.2",
1607 | "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
1608 | "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==",
1609 | "dev": true,
1610 | "license": "MIT"
1611 | },
1612 | "node_modules/brace-expansion": {
1613 | "version": "1.1.11",
1614 | "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
1615 | "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
1616 | "dev": true,
1617 | "license": "MIT",
1618 | "dependencies": {
1619 | "balanced-match": "^1.0.0",
1620 | "concat-map": "0.0.1"
1621 | }
1622 | },
1623 | "node_modules/browserslist": {
1624 | "version": "4.24.4",
1625 | "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.24.4.tgz",
1626 | "integrity": "sha512-KDi1Ny1gSePi1vm0q4oxSF8b4DR44GF4BbmS2YdhPLOEqd8pDviZOGH/GsmRwoWJ2+5Lr085X7naowMwKHDG1A==",
1627 | "dev": true,
1628 | "funding": [
1629 | {
1630 | "type": "opencollective",
1631 | "url": "https://opencollective.com/browserslist"
1632 | },
1633 | {
1634 | "type": "tidelift",
1635 | "url": "https://tidelift.com/funding/github/npm/browserslist"
1636 | },
1637 | {
1638 | "type": "github",
1639 | "url": "https://github.com/sponsors/ai"
1640 | }
1641 | ],
1642 | "license": "MIT",
1643 | "dependencies": {
1644 | "caniuse-lite": "^1.0.30001688",
1645 | "electron-to-chromium": "^1.5.73",
1646 | "node-releases": "^2.0.19",
1647 | "update-browserslist-db": "^1.1.1"
1648 | },
1649 | "bin": {
1650 | "browserslist": "cli.js"
1651 | },
1652 | "engines": {
1653 | "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7"
1654 | }
1655 | },
1656 | "node_modules/call-bind": {
1657 | "version": "1.0.8",
1658 | "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.8.tgz",
1659 | "integrity": "sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww==",
1660 | "dev": true,
1661 | "license": "MIT",
1662 | "dependencies": {
1663 | "call-bind-apply-helpers": "^1.0.0",
1664 | "es-define-property": "^1.0.0",
1665 | "get-intrinsic": "^1.2.4",
1666 | "set-function-length": "^1.2.2"
1667 | },
1668 | "engines": {
1669 | "node": ">= 0.4"
1670 | },
1671 | "funding": {
1672 | "url": "https://github.com/sponsors/ljharb"
1673 | }
1674 | },
1675 | "node_modules/call-bind-apply-helpers": {
1676 | "version": "1.0.2",
1677 | "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz",
1678 | "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==",
1679 | "dev": true,
1680 | "license": "MIT",
1681 | "dependencies": {
1682 | "es-errors": "^1.3.0",
1683 | "function-bind": "^1.1.2"
1684 | },
1685 | "engines": {
1686 | "node": ">= 0.4"
1687 | }
1688 | },
1689 | "node_modules/call-bound": {
1690 | "version": "1.0.3",
1691 | "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.3.tgz",
1692 | "integrity": "sha512-YTd+6wGlNlPxSuri7Y6X8tY2dmm12UMH66RpKMhiX6rsk5wXXnYgbUcOt8kiS31/AjfoTOvCsE+w8nZQLQnzHA==",
1693 | "dev": true,
1694 | "license": "MIT",
1695 | "dependencies": {
1696 | "call-bind-apply-helpers": "^1.0.1",
1697 | "get-intrinsic": "^1.2.6"
1698 | },
1699 | "engines": {
1700 | "node": ">= 0.4"
1701 | },
1702 | "funding": {
1703 | "url": "https://github.com/sponsors/ljharb"
1704 | }
1705 | },
1706 | "node_modules/callsites": {
1707 | "version": "3.1.0",
1708 | "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz",
1709 | "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==",
1710 | "dev": true,
1711 | "license": "MIT",
1712 | "engines": {
1713 | "node": ">=6"
1714 | }
1715 | },
1716 | "node_modules/caniuse-lite": {
1717 | "version": "1.0.30001700",
1718 | "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001700.tgz",
1719 | "integrity": "sha512-2S6XIXwaE7K7erT8dY+kLQcpa5ms63XlRkMkReXjle+kf6c5g38vyMl+Z5y8dSxOFDhcFe+nxnn261PLxBSQsQ==",
1720 | "dev": true,
1721 | "funding": [
1722 | {
1723 | "type": "opencollective",
1724 | "url": "https://opencollective.com/browserslist"
1725 | },
1726 | {
1727 | "type": "tidelift",
1728 | "url": "https://tidelift.com/funding/github/npm/caniuse-lite"
1729 | },
1730 | {
1731 | "type": "github",
1732 | "url": "https://github.com/sponsors/ai"
1733 | }
1734 | ],
1735 | "license": "CC-BY-4.0"
1736 | },
1737 | "node_modules/chalk": {
1738 | "version": "4.1.2",
1739 | "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
1740 | "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
1741 | "dev": true,
1742 | "license": "MIT",
1743 | "dependencies": {
1744 | "ansi-styles": "^4.1.0",
1745 | "supports-color": "^7.1.0"
1746 | },
1747 | "engines": {
1748 | "node": ">=10"
1749 | },
1750 | "funding": {
1751 | "url": "https://github.com/chalk/chalk?sponsor=1"
1752 | }
1753 | },
1754 | "node_modules/color-convert": {
1755 | "version": "2.0.1",
1756 | "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
1757 | "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
1758 | "dev": true,
1759 | "license": "MIT",
1760 | "dependencies": {
1761 | "color-name": "~1.1.4"
1762 | },
1763 | "engines": {
1764 | "node": ">=7.0.0"
1765 | }
1766 | },
1767 | "node_modules/color-name": {
1768 | "version": "1.1.4",
1769 | "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
1770 | "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
1771 | "dev": true,
1772 | "license": "MIT"
1773 | },
1774 | "node_modules/concat-map": {
1775 | "version": "0.0.1",
1776 | "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
1777 | "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==",
1778 | "dev": true,
1779 | "license": "MIT"
1780 | },
1781 | "node_modules/convert-source-map": {
1782 | "version": "2.0.0",
1783 | "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz",
1784 | "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==",
1785 | "dev": true,
1786 | "license": "MIT"
1787 | },
1788 | "node_modules/cookie": {
1789 | "version": "1.0.2",
1790 | "resolved": "https://registry.npmjs.org/cookie/-/cookie-1.0.2.tgz",
1791 | "integrity": "sha512-9Kr/j4O16ISv8zBBhJoi4bXOYNTkFLOqSL3UDB0njXxCXNezjeyVrJyGOWtgfs/q2km1gwBcfH8q1yEGoMYunA==",
1792 | "license": "MIT",
1793 | "engines": {
1794 | "node": ">=18"
1795 | }
1796 | },
1797 | "node_modules/cross-spawn": {
1798 | "version": "7.0.6",
1799 | "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz",
1800 | "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==",
1801 | "dev": true,
1802 | "license": "MIT",
1803 | "dependencies": {
1804 | "path-key": "^3.1.0",
1805 | "shebang-command": "^2.0.0",
1806 | "which": "^2.0.1"
1807 | },
1808 | "engines": {
1809 | "node": ">= 8"
1810 | }
1811 | },
1812 | "node_modules/csstype": {
1813 | "version": "3.1.3",
1814 | "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz",
1815 | "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==",
1816 | "dev": true,
1817 | "license": "MIT"
1818 | },
1819 | "node_modules/data-view-buffer": {
1820 | "version": "1.0.2",
1821 | "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.2.tgz",
1822 | "integrity": "sha512-EmKO5V3OLXh1rtK2wgXRansaK1/mtVdTUEiEI0W8RkvgT05kfxaH29PliLnpLP73yYO6142Q72QNa8Wx/A5CqQ==",
1823 | "dev": true,
1824 | "license": "MIT",
1825 | "dependencies": {
1826 | "call-bound": "^1.0.3",
1827 | "es-errors": "^1.3.0",
1828 | "is-data-view": "^1.0.2"
1829 | },
1830 | "engines": {
1831 | "node": ">= 0.4"
1832 | },
1833 | "funding": {
1834 | "url": "https://github.com/sponsors/ljharb"
1835 | }
1836 | },
1837 | "node_modules/data-view-byte-length": {
1838 | "version": "1.0.2",
1839 | "resolved": "https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.2.tgz",
1840 | "integrity": "sha512-tuhGbE6CfTM9+5ANGf+oQb72Ky/0+s3xKUpHvShfiz2RxMFgFPjsXuRLBVMtvMs15awe45SRb83D6wH4ew6wlQ==",
1841 | "dev": true,
1842 | "license": "MIT",
1843 | "dependencies": {
1844 | "call-bound": "^1.0.3",
1845 | "es-errors": "^1.3.0",
1846 | "is-data-view": "^1.0.2"
1847 | },
1848 | "engines": {
1849 | "node": ">= 0.4"
1850 | },
1851 | "funding": {
1852 | "url": "https://github.com/sponsors/inspect-js"
1853 | }
1854 | },
1855 | "node_modules/data-view-byte-offset": {
1856 | "version": "1.0.1",
1857 | "resolved": "https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.1.tgz",
1858 | "integrity": "sha512-BS8PfmtDGnrgYdOonGZQdLZslWIeCGFP9tpan0hi1Co2Zr2NKADsvGYA8XxuG/4UWgJ6Cjtv+YJnB6MM69QGlQ==",
1859 | "dev": true,
1860 | "license": "MIT",
1861 | "dependencies": {
1862 | "call-bound": "^1.0.2",
1863 | "es-errors": "^1.3.0",
1864 | "is-data-view": "^1.0.1"
1865 | },
1866 | "engines": {
1867 | "node": ">= 0.4"
1868 | },
1869 | "funding": {
1870 | "url": "https://github.com/sponsors/ljharb"
1871 | }
1872 | },
1873 | "node_modules/debug": {
1874 | "version": "4.4.0",
1875 | "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.0.tgz",
1876 | "integrity": "sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==",
1877 | "dev": true,
1878 | "license": "MIT",
1879 | "dependencies": {
1880 | "ms": "^2.1.3"
1881 | },
1882 | "engines": {
1883 | "node": ">=6.0"
1884 | },
1885 | "peerDependenciesMeta": {
1886 | "supports-color": {
1887 | "optional": true
1888 | }
1889 | }
1890 | },
1891 | "node_modules/deep-is": {
1892 | "version": "0.1.4",
1893 | "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz",
1894 | "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==",
1895 | "dev": true,
1896 | "license": "MIT"
1897 | },
1898 | "node_modules/define-data-property": {
1899 | "version": "1.1.4",
1900 | "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz",
1901 | "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==",
1902 | "dev": true,
1903 | "license": "MIT",
1904 | "dependencies": {
1905 | "es-define-property": "^1.0.0",
1906 | "es-errors": "^1.3.0",
1907 | "gopd": "^1.0.1"
1908 | },
1909 | "engines": {
1910 | "node": ">= 0.4"
1911 | },
1912 | "funding": {
1913 | "url": "https://github.com/sponsors/ljharb"
1914 | }
1915 | },
1916 | "node_modules/define-properties": {
1917 | "version": "1.2.1",
1918 | "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz",
1919 | "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==",
1920 | "dev": true,
1921 | "license": "MIT",
1922 | "dependencies": {
1923 | "define-data-property": "^1.0.1",
1924 | "has-property-descriptors": "^1.0.0",
1925 | "object-keys": "^1.1.1"
1926 | },
1927 | "engines": {
1928 | "node": ">= 0.4"
1929 | },
1930 | "funding": {
1931 | "url": "https://github.com/sponsors/ljharb"
1932 | }
1933 | },
1934 | "node_modules/doctrine": {
1935 | "version": "2.1.0",
1936 | "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz",
1937 | "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==",
1938 | "dev": true,
1939 | "license": "Apache-2.0",
1940 | "dependencies": {
1941 | "esutils": "^2.0.2"
1942 | },
1943 | "engines": {
1944 | "node": ">=0.10.0"
1945 | }
1946 | },
1947 | "node_modules/dunder-proto": {
1948 | "version": "1.0.1",
1949 | "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz",
1950 | "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==",
1951 | "dev": true,
1952 | "license": "MIT",
1953 | "dependencies": {
1954 | "call-bind-apply-helpers": "^1.0.1",
1955 | "es-errors": "^1.3.0",
1956 | "gopd": "^1.2.0"
1957 | },
1958 | "engines": {
1959 | "node": ">= 0.4"
1960 | }
1961 | },
1962 | "node_modules/electron-to-chromium": {
1963 | "version": "1.5.102",
1964 | "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.102.tgz",
1965 | "integrity": "sha512-eHhqaja8tE/FNpIiBrvBjFV/SSKpyWHLvxuR9dPTdo+3V9ppdLmFB7ZZQ98qNovcngPLYIz0oOBF9P0FfZef5Q==",
1966 | "dev": true,
1967 | "license": "ISC"
1968 | },
1969 | "node_modules/es-abstract": {
1970 | "version": "1.23.9",
1971 | "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.23.9.tgz",
1972 | "integrity": "sha512-py07lI0wjxAC/DcfK1S6G7iANonniZwTISvdPzk9hzeH0IZIshbuuFxLIU96OyF89Yb9hiqWn8M/bY83KY5vzA==",
1973 | "dev": true,
1974 | "license": "MIT",
1975 | "dependencies": {
1976 | "array-buffer-byte-length": "^1.0.2",
1977 | "arraybuffer.prototype.slice": "^1.0.4",
1978 | "available-typed-arrays": "^1.0.7",
1979 | "call-bind": "^1.0.8",
1980 | "call-bound": "^1.0.3",
1981 | "data-view-buffer": "^1.0.2",
1982 | "data-view-byte-length": "^1.0.2",
1983 | "data-view-byte-offset": "^1.0.1",
1984 | "es-define-property": "^1.0.1",
1985 | "es-errors": "^1.3.0",
1986 | "es-object-atoms": "^1.0.0",
1987 | "es-set-tostringtag": "^2.1.0",
1988 | "es-to-primitive": "^1.3.0",
1989 | "function.prototype.name": "^1.1.8",
1990 | "get-intrinsic": "^1.2.7",
1991 | "get-proto": "^1.0.0",
1992 | "get-symbol-description": "^1.1.0",
1993 | "globalthis": "^1.0.4",
1994 | "gopd": "^1.2.0",
1995 | "has-property-descriptors": "^1.0.2",
1996 | "has-proto": "^1.2.0",
1997 | "has-symbols": "^1.1.0",
1998 | "hasown": "^2.0.2",
1999 | "internal-slot": "^1.1.0",
2000 | "is-array-buffer": "^3.0.5",
2001 | "is-callable": "^1.2.7",
2002 | "is-data-view": "^1.0.2",
2003 | "is-regex": "^1.2.1",
2004 | "is-shared-array-buffer": "^1.0.4",
2005 | "is-string": "^1.1.1",
2006 | "is-typed-array": "^1.1.15",
2007 | "is-weakref": "^1.1.0",
2008 | "math-intrinsics": "^1.1.0",
2009 | "object-inspect": "^1.13.3",
2010 | "object-keys": "^1.1.1",
2011 | "object.assign": "^4.1.7",
2012 | "own-keys": "^1.0.1",
2013 | "regexp.prototype.flags": "^1.5.3",
2014 | "safe-array-concat": "^1.1.3",
2015 | "safe-push-apply": "^1.0.0",
2016 | "safe-regex-test": "^1.1.0",
2017 | "set-proto": "^1.0.0",
2018 | "string.prototype.trim": "^1.2.10",
2019 | "string.prototype.trimend": "^1.0.9",
2020 | "string.prototype.trimstart": "^1.0.8",
2021 | "typed-array-buffer": "^1.0.3",
2022 | "typed-array-byte-length": "^1.0.3",
2023 | "typed-array-byte-offset": "^1.0.4",
2024 | "typed-array-length": "^1.0.7",
2025 | "unbox-primitive": "^1.1.0",
2026 | "which-typed-array": "^1.1.18"
2027 | },
2028 | "engines": {
2029 | "node": ">= 0.4"
2030 | },
2031 | "funding": {
2032 | "url": "https://github.com/sponsors/ljharb"
2033 | }
2034 | },
2035 | "node_modules/es-define-property": {
2036 | "version": "1.0.1",
2037 | "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz",
2038 | "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==",
2039 | "dev": true,
2040 | "license": "MIT",
2041 | "engines": {
2042 | "node": ">= 0.4"
2043 | }
2044 | },
2045 | "node_modules/es-errors": {
2046 | "version": "1.3.0",
2047 | "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz",
2048 | "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==",
2049 | "dev": true,
2050 | "license": "MIT",
2051 | "engines": {
2052 | "node": ">= 0.4"
2053 | }
2054 | },
2055 | "node_modules/es-iterator-helpers": {
2056 | "version": "1.2.1",
2057 | "resolved": "https://registry.npmjs.org/es-iterator-helpers/-/es-iterator-helpers-1.2.1.tgz",
2058 | "integrity": "sha512-uDn+FE1yrDzyC0pCo961B2IHbdM8y/ACZsKD4dG6WqrjV53BADjwa7D+1aom2rsNVfLyDgU/eigvlJGJ08OQ4w==",
2059 | "dev": true,
2060 | "license": "MIT",
2061 | "dependencies": {
2062 | "call-bind": "^1.0.8",
2063 | "call-bound": "^1.0.3",
2064 | "define-properties": "^1.2.1",
2065 | "es-abstract": "^1.23.6",
2066 | "es-errors": "^1.3.0",
2067 | "es-set-tostringtag": "^2.0.3",
2068 | "function-bind": "^1.1.2",
2069 | "get-intrinsic": "^1.2.6",
2070 | "globalthis": "^1.0.4",
2071 | "gopd": "^1.2.0",
2072 | "has-property-descriptors": "^1.0.2",
2073 | "has-proto": "^1.2.0",
2074 | "has-symbols": "^1.1.0",
2075 | "internal-slot": "^1.1.0",
2076 | "iterator.prototype": "^1.1.4",
2077 | "safe-array-concat": "^1.1.3"
2078 | },
2079 | "engines": {
2080 | "node": ">= 0.4"
2081 | }
2082 | },
2083 | "node_modules/es-object-atoms": {
2084 | "version": "1.1.1",
2085 | "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz",
2086 | "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==",
2087 | "dev": true,
2088 | "license": "MIT",
2089 | "dependencies": {
2090 | "es-errors": "^1.3.0"
2091 | },
2092 | "engines": {
2093 | "node": ">= 0.4"
2094 | }
2095 | },
2096 | "node_modules/es-set-tostringtag": {
2097 | "version": "2.1.0",
2098 | "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz",
2099 | "integrity": "sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==",
2100 | "dev": true,
2101 | "license": "MIT",
2102 | "dependencies": {
2103 | "es-errors": "^1.3.0",
2104 | "get-intrinsic": "^1.2.6",
2105 | "has-tostringtag": "^1.0.2",
2106 | "hasown": "^2.0.2"
2107 | },
2108 | "engines": {
2109 | "node": ">= 0.4"
2110 | }
2111 | },
2112 | "node_modules/es-shim-unscopables": {
2113 | "version": "1.1.0",
2114 | "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.1.0.tgz",
2115 | "integrity": "sha512-d9T8ucsEhh8Bi1woXCf+TIKDIROLG5WCkxg8geBCbvk22kzwC5G2OnXVMO6FUsvQlgUUXQ2itephWDLqDzbeCw==",
2116 | "dev": true,
2117 | "license": "MIT",
2118 | "dependencies": {
2119 | "hasown": "^2.0.2"
2120 | },
2121 | "engines": {
2122 | "node": ">= 0.4"
2123 | }
2124 | },
2125 | "node_modules/es-to-primitive": {
2126 | "version": "1.3.0",
2127 | "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.3.0.tgz",
2128 | "integrity": "sha512-w+5mJ3GuFL+NjVtJlvydShqE1eN3h3PbI7/5LAsYJP/2qtuMXjfL2LpHSRqo4b4eSF5K/DH1JXKUAHSB2UW50g==",
2129 | "dev": true,
2130 | "license": "MIT",
2131 | "dependencies": {
2132 | "is-callable": "^1.2.7",
2133 | "is-date-object": "^1.0.5",
2134 | "is-symbol": "^1.0.4"
2135 | },
2136 | "engines": {
2137 | "node": ">= 0.4"
2138 | },
2139 | "funding": {
2140 | "url": "https://github.com/sponsors/ljharb"
2141 | }
2142 | },
2143 | "node_modules/esbuild": {
2144 | "version": "0.24.2",
2145 | "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.24.2.tgz",
2146 | "integrity": "sha512-+9egpBW8I3CD5XPe0n6BfT5fxLzxrlDzqydF3aviG+9ni1lDC/OvMHcxqEFV0+LANZG5R1bFMWfUrjVsdwxJvA==",
2147 | "dev": true,
2148 | "hasInstallScript": true,
2149 | "license": "MIT",
2150 | "bin": {
2151 | "esbuild": "bin/esbuild"
2152 | },
2153 | "engines": {
2154 | "node": ">=18"
2155 | },
2156 | "optionalDependencies": {
2157 | "@esbuild/aix-ppc64": "0.24.2",
2158 | "@esbuild/android-arm": "0.24.2",
2159 | "@esbuild/android-arm64": "0.24.2",
2160 | "@esbuild/android-x64": "0.24.2",
2161 | "@esbuild/darwin-arm64": "0.24.2",
2162 | "@esbuild/darwin-x64": "0.24.2",
2163 | "@esbuild/freebsd-arm64": "0.24.2",
2164 | "@esbuild/freebsd-x64": "0.24.2",
2165 | "@esbuild/linux-arm": "0.24.2",
2166 | "@esbuild/linux-arm64": "0.24.2",
2167 | "@esbuild/linux-ia32": "0.24.2",
2168 | "@esbuild/linux-loong64": "0.24.2",
2169 | "@esbuild/linux-mips64el": "0.24.2",
2170 | "@esbuild/linux-ppc64": "0.24.2",
2171 | "@esbuild/linux-riscv64": "0.24.2",
2172 | "@esbuild/linux-s390x": "0.24.2",
2173 | "@esbuild/linux-x64": "0.24.2",
2174 | "@esbuild/netbsd-arm64": "0.24.2",
2175 | "@esbuild/netbsd-x64": "0.24.2",
2176 | "@esbuild/openbsd-arm64": "0.24.2",
2177 | "@esbuild/openbsd-x64": "0.24.2",
2178 | "@esbuild/sunos-x64": "0.24.2",
2179 | "@esbuild/win32-arm64": "0.24.2",
2180 | "@esbuild/win32-ia32": "0.24.2",
2181 | "@esbuild/win32-x64": "0.24.2"
2182 | }
2183 | },
2184 | "node_modules/escalade": {
2185 | "version": "3.2.0",
2186 | "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz",
2187 | "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==",
2188 | "dev": true,
2189 | "license": "MIT",
2190 | "engines": {
2191 | "node": ">=6"
2192 | }
2193 | },
2194 | "node_modules/escape-string-regexp": {
2195 | "version": "4.0.0",
2196 | "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz",
2197 | "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==",
2198 | "dev": true,
2199 | "license": "MIT",
2200 | "engines": {
2201 | "node": ">=10"
2202 | },
2203 | "funding": {
2204 | "url": "https://github.com/sponsors/sindresorhus"
2205 | }
2206 | },
2207 | "node_modules/eslint": {
2208 | "version": "9.20.1",
2209 | "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.20.1.tgz",
2210 | "integrity": "sha512-m1mM33o6dBUjxl2qb6wv6nGNwCAsns1eKtaQ4l/NPHeTvhiUPbtdfMyktxN4B3fgHIgsYh1VT3V9txblpQHq+g==",
2211 | "dev": true,
2212 | "license": "MIT",
2213 | "dependencies": {
2214 | "@eslint-community/eslint-utils": "^4.2.0",
2215 | "@eslint-community/regexpp": "^4.12.1",
2216 | "@eslint/config-array": "^0.19.0",
2217 | "@eslint/core": "^0.11.0",
2218 | "@eslint/eslintrc": "^3.2.0",
2219 | "@eslint/js": "9.20.0",
2220 | "@eslint/plugin-kit": "^0.2.5",
2221 | "@humanfs/node": "^0.16.6",
2222 | "@humanwhocodes/module-importer": "^1.0.1",
2223 | "@humanwhocodes/retry": "^0.4.1",
2224 | "@types/estree": "^1.0.6",
2225 | "@types/json-schema": "^7.0.15",
2226 | "ajv": "^6.12.4",
2227 | "chalk": "^4.0.0",
2228 | "cross-spawn": "^7.0.6",
2229 | "debug": "^4.3.2",
2230 | "escape-string-regexp": "^4.0.0",
2231 | "eslint-scope": "^8.2.0",
2232 | "eslint-visitor-keys": "^4.2.0",
2233 | "espree": "^10.3.0",
2234 | "esquery": "^1.5.0",
2235 | "esutils": "^2.0.2",
2236 | "fast-deep-equal": "^3.1.3",
2237 | "file-entry-cache": "^8.0.0",
2238 | "find-up": "^5.0.0",
2239 | "glob-parent": "^6.0.2",
2240 | "ignore": "^5.2.0",
2241 | "imurmurhash": "^0.1.4",
2242 | "is-glob": "^4.0.0",
2243 | "json-stable-stringify-without-jsonify": "^1.0.1",
2244 | "lodash.merge": "^4.6.2",
2245 | "minimatch": "^3.1.2",
2246 | "natural-compare": "^1.4.0",
2247 | "optionator": "^0.9.3"
2248 | },
2249 | "bin": {
2250 | "eslint": "bin/eslint.js"
2251 | },
2252 | "engines": {
2253 | "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
2254 | },
2255 | "funding": {
2256 | "url": "https://eslint.org/donate"
2257 | },
2258 | "peerDependencies": {
2259 | "jiti": "*"
2260 | },
2261 | "peerDependenciesMeta": {
2262 | "jiti": {
2263 | "optional": true
2264 | }
2265 | }
2266 | },
2267 | "node_modules/eslint-plugin-react": {
2268 | "version": "7.37.4",
2269 | "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.37.4.tgz",
2270 | "integrity": "sha512-BGP0jRmfYyvOyvMoRX/uoUeW+GqNj9y16bPQzqAHf3AYII/tDs+jMN0dBVkl88/OZwNGwrVFxE7riHsXVfy/LQ==",
2271 | "dev": true,
2272 | "license": "MIT",
2273 | "dependencies": {
2274 | "array-includes": "^3.1.8",
2275 | "array.prototype.findlast": "^1.2.5",
2276 | "array.prototype.flatmap": "^1.3.3",
2277 | "array.prototype.tosorted": "^1.1.4",
2278 | "doctrine": "^2.1.0",
2279 | "es-iterator-helpers": "^1.2.1",
2280 | "estraverse": "^5.3.0",
2281 | "hasown": "^2.0.2",
2282 | "jsx-ast-utils": "^2.4.1 || ^3.0.0",
2283 | "minimatch": "^3.1.2",
2284 | "object.entries": "^1.1.8",
2285 | "object.fromentries": "^2.0.8",
2286 | "object.values": "^1.2.1",
2287 | "prop-types": "^15.8.1",
2288 | "resolve": "^2.0.0-next.5",
2289 | "semver": "^6.3.1",
2290 | "string.prototype.matchall": "^4.0.12",
2291 | "string.prototype.repeat": "^1.0.0"
2292 | },
2293 | "engines": {
2294 | "node": ">=4"
2295 | },
2296 | "peerDependencies": {
2297 | "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7"
2298 | }
2299 | },
2300 | "node_modules/eslint-plugin-react-hooks": {
2301 | "version": "5.1.0",
2302 | "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-5.1.0.tgz",
2303 | "integrity": "sha512-mpJRtPgHN2tNAvZ35AMfqeB3Xqeo273QxrHJsbBEPWODRM4r0yB6jfoROqKEYrOn27UtRPpcpHc2UqyBSuUNTw==",
2304 | "dev": true,
2305 | "license": "MIT",
2306 | "engines": {
2307 | "node": ">=10"
2308 | },
2309 | "peerDependencies": {
2310 | "eslint": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 || ^9.0.0"
2311 | }
2312 | },
2313 | "node_modules/eslint-plugin-react-refresh": {
2314 | "version": "0.4.19",
2315 | "resolved": "https://registry.npmjs.org/eslint-plugin-react-refresh/-/eslint-plugin-react-refresh-0.4.19.tgz",
2316 | "integrity": "sha512-eyy8pcr/YxSYjBoqIFSrlbn9i/xvxUFa8CjzAYo9cFjgGXqq1hyjihcpZvxRLalpaWmueWR81xn7vuKmAFijDQ==",
2317 | "dev": true,
2318 | "license": "MIT",
2319 | "peerDependencies": {
2320 | "eslint": ">=8.40"
2321 | }
2322 | },
2323 | "node_modules/eslint-scope": {
2324 | "version": "8.2.0",
2325 | "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-8.2.0.tgz",
2326 | "integrity": "sha512-PHlWUfG6lvPc3yvP5A4PNyBL1W8fkDUccmI21JUu/+GKZBoH/W5u6usENXUrWFRsyoW5ACUjFGgAFQp5gUlb/A==",
2327 | "dev": true,
2328 | "license": "BSD-2-Clause",
2329 | "dependencies": {
2330 | "esrecurse": "^4.3.0",
2331 | "estraverse": "^5.2.0"
2332 | },
2333 | "engines": {
2334 | "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
2335 | },
2336 | "funding": {
2337 | "url": "https://opencollective.com/eslint"
2338 | }
2339 | },
2340 | "node_modules/eslint-visitor-keys": {
2341 | "version": "4.2.0",
2342 | "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.0.tgz",
2343 | "integrity": "sha512-UyLnSehNt62FFhSwjZlHmeokpRK59rcz29j+F1/aDgbkbRTk7wIc9XzdoasMUbRNKDM0qQt/+BJ4BrpFeABemw==",
2344 | "dev": true,
2345 | "license": "Apache-2.0",
2346 | "engines": {
2347 | "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
2348 | },
2349 | "funding": {
2350 | "url": "https://opencollective.com/eslint"
2351 | }
2352 | },
2353 | "node_modules/espree": {
2354 | "version": "10.3.0",
2355 | "resolved": "https://registry.npmjs.org/espree/-/espree-10.3.0.tgz",
2356 | "integrity": "sha512-0QYC8b24HWY8zjRnDTL6RiHfDbAWn63qb4LMj1Z4b076A4une81+z03Kg7l7mn/48PUTqoLptSXez8oknU8Clg==",
2357 | "dev": true,
2358 | "license": "BSD-2-Clause",
2359 | "dependencies": {
2360 | "acorn": "^8.14.0",
2361 | "acorn-jsx": "^5.3.2",
2362 | "eslint-visitor-keys": "^4.2.0"
2363 | },
2364 | "engines": {
2365 | "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
2366 | },
2367 | "funding": {
2368 | "url": "https://opencollective.com/eslint"
2369 | }
2370 | },
2371 | "node_modules/esquery": {
2372 | "version": "1.6.0",
2373 | "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.6.0.tgz",
2374 | "integrity": "sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==",
2375 | "dev": true,
2376 | "license": "BSD-3-Clause",
2377 | "dependencies": {
2378 | "estraverse": "^5.1.0"
2379 | },
2380 | "engines": {
2381 | "node": ">=0.10"
2382 | }
2383 | },
2384 | "node_modules/esrecurse": {
2385 | "version": "4.3.0",
2386 | "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz",
2387 | "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==",
2388 | "dev": true,
2389 | "license": "BSD-2-Clause",
2390 | "dependencies": {
2391 | "estraverse": "^5.2.0"
2392 | },
2393 | "engines": {
2394 | "node": ">=4.0"
2395 | }
2396 | },
2397 | "node_modules/estraverse": {
2398 | "version": "5.3.0",
2399 | "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz",
2400 | "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==",
2401 | "dev": true,
2402 | "license": "BSD-2-Clause",
2403 | "engines": {
2404 | "node": ">=4.0"
2405 | }
2406 | },
2407 | "node_modules/esutils": {
2408 | "version": "2.0.3",
2409 | "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz",
2410 | "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==",
2411 | "dev": true,
2412 | "license": "BSD-2-Clause",
2413 | "engines": {
2414 | "node": ">=0.10.0"
2415 | }
2416 | },
2417 | "node_modules/fast-deep-equal": {
2418 | "version": "3.1.3",
2419 | "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
2420 | "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==",
2421 | "dev": true,
2422 | "license": "MIT"
2423 | },
2424 | "node_modules/fast-json-stable-stringify": {
2425 | "version": "2.1.0",
2426 | "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz",
2427 | "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==",
2428 | "dev": true,
2429 | "license": "MIT"
2430 | },
2431 | "node_modules/fast-levenshtein": {
2432 | "version": "2.0.6",
2433 | "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz",
2434 | "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==",
2435 | "dev": true,
2436 | "license": "MIT"
2437 | },
2438 | "node_modules/file-entry-cache": {
2439 | "version": "8.0.0",
2440 | "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-8.0.0.tgz",
2441 | "integrity": "sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==",
2442 | "dev": true,
2443 | "license": "MIT",
2444 | "dependencies": {
2445 | "flat-cache": "^4.0.0"
2446 | },
2447 | "engines": {
2448 | "node": ">=16.0.0"
2449 | }
2450 | },
2451 | "node_modules/find-up": {
2452 | "version": "5.0.0",
2453 | "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz",
2454 | "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==",
2455 | "dev": true,
2456 | "license": "MIT",
2457 | "dependencies": {
2458 | "locate-path": "^6.0.0",
2459 | "path-exists": "^4.0.0"
2460 | },
2461 | "engines": {
2462 | "node": ">=10"
2463 | },
2464 | "funding": {
2465 | "url": "https://github.com/sponsors/sindresorhus"
2466 | }
2467 | },
2468 | "node_modules/flat-cache": {
2469 | "version": "4.0.1",
2470 | "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-4.0.1.tgz",
2471 | "integrity": "sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==",
2472 | "dev": true,
2473 | "license": "MIT",
2474 | "dependencies": {
2475 | "flatted": "^3.2.9",
2476 | "keyv": "^4.5.4"
2477 | },
2478 | "engines": {
2479 | "node": ">=16"
2480 | }
2481 | },
2482 | "node_modules/flatted": {
2483 | "version": "3.3.3",
2484 | "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.3.tgz",
2485 | "integrity": "sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==",
2486 | "dev": true,
2487 | "license": "ISC"
2488 | },
2489 | "node_modules/for-each": {
2490 | "version": "0.3.5",
2491 | "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.5.tgz",
2492 | "integrity": "sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg==",
2493 | "dev": true,
2494 | "license": "MIT",
2495 | "dependencies": {
2496 | "is-callable": "^1.2.7"
2497 | },
2498 | "engines": {
2499 | "node": ">= 0.4"
2500 | },
2501 | "funding": {
2502 | "url": "https://github.com/sponsors/ljharb"
2503 | }
2504 | },
2505 | "node_modules/fsevents": {
2506 | "version": "2.3.3",
2507 | "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz",
2508 | "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==",
2509 | "dev": true,
2510 | "hasInstallScript": true,
2511 | "license": "MIT",
2512 | "optional": true,
2513 | "os": [
2514 | "darwin"
2515 | ],
2516 | "engines": {
2517 | "node": "^8.16.0 || ^10.6.0 || >=11.0.0"
2518 | }
2519 | },
2520 | "node_modules/function-bind": {
2521 | "version": "1.1.2",
2522 | "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz",
2523 | "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==",
2524 | "dev": true,
2525 | "license": "MIT",
2526 | "funding": {
2527 | "url": "https://github.com/sponsors/ljharb"
2528 | }
2529 | },
2530 | "node_modules/function.prototype.name": {
2531 | "version": "1.1.8",
2532 | "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.8.tgz",
2533 | "integrity": "sha512-e5iwyodOHhbMr/yNrc7fDYG4qlbIvI5gajyzPnb5TCwyhjApznQh1BMFou9b30SevY43gCJKXycoCBjMbsuW0Q==",
2534 | "dev": true,
2535 | "license": "MIT",
2536 | "dependencies": {
2537 | "call-bind": "^1.0.8",
2538 | "call-bound": "^1.0.3",
2539 | "define-properties": "^1.2.1",
2540 | "functions-have-names": "^1.2.3",
2541 | "hasown": "^2.0.2",
2542 | "is-callable": "^1.2.7"
2543 | },
2544 | "engines": {
2545 | "node": ">= 0.4"
2546 | },
2547 | "funding": {
2548 | "url": "https://github.com/sponsors/ljharb"
2549 | }
2550 | },
2551 | "node_modules/functions-have-names": {
2552 | "version": "1.2.3",
2553 | "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz",
2554 | "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==",
2555 | "dev": true,
2556 | "license": "MIT",
2557 | "funding": {
2558 | "url": "https://github.com/sponsors/ljharb"
2559 | }
2560 | },
2561 | "node_modules/gensync": {
2562 | "version": "1.0.0-beta.2",
2563 | "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz",
2564 | "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==",
2565 | "dev": true,
2566 | "license": "MIT",
2567 | "engines": {
2568 | "node": ">=6.9.0"
2569 | }
2570 | },
2571 | "node_modules/get-intrinsic": {
2572 | "version": "1.2.7",
2573 | "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.7.tgz",
2574 | "integrity": "sha512-VW6Pxhsrk0KAOqs3WEd0klDiF/+V7gQOpAvY1jVU/LHmaD/kQO4523aiJuikX/QAKYiW6x8Jh+RJej1almdtCA==",
2575 | "dev": true,
2576 | "license": "MIT",
2577 | "dependencies": {
2578 | "call-bind-apply-helpers": "^1.0.1",
2579 | "es-define-property": "^1.0.1",
2580 | "es-errors": "^1.3.0",
2581 | "es-object-atoms": "^1.0.0",
2582 | "function-bind": "^1.1.2",
2583 | "get-proto": "^1.0.0",
2584 | "gopd": "^1.2.0",
2585 | "has-symbols": "^1.1.0",
2586 | "hasown": "^2.0.2",
2587 | "math-intrinsics": "^1.1.0"
2588 | },
2589 | "engines": {
2590 | "node": ">= 0.4"
2591 | },
2592 | "funding": {
2593 | "url": "https://github.com/sponsors/ljharb"
2594 | }
2595 | },
2596 | "node_modules/get-proto": {
2597 | "version": "1.0.1",
2598 | "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz",
2599 | "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==",
2600 | "dev": true,
2601 | "license": "MIT",
2602 | "dependencies": {
2603 | "dunder-proto": "^1.0.1",
2604 | "es-object-atoms": "^1.0.0"
2605 | },
2606 | "engines": {
2607 | "node": ">= 0.4"
2608 | }
2609 | },
2610 | "node_modules/get-symbol-description": {
2611 | "version": "1.1.0",
2612 | "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.1.0.tgz",
2613 | "integrity": "sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg==",
2614 | "dev": true,
2615 | "license": "MIT",
2616 | "dependencies": {
2617 | "call-bound": "^1.0.3",
2618 | "es-errors": "^1.3.0",
2619 | "get-intrinsic": "^1.2.6"
2620 | },
2621 | "engines": {
2622 | "node": ">= 0.4"
2623 | },
2624 | "funding": {
2625 | "url": "https://github.com/sponsors/ljharb"
2626 | }
2627 | },
2628 | "node_modules/glob-parent": {
2629 | "version": "6.0.2",
2630 | "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz",
2631 | "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==",
2632 | "dev": true,
2633 | "license": "ISC",
2634 | "dependencies": {
2635 | "is-glob": "^4.0.3"
2636 | },
2637 | "engines": {
2638 | "node": ">=10.13.0"
2639 | }
2640 | },
2641 | "node_modules/globals": {
2642 | "version": "15.15.0",
2643 | "resolved": "https://registry.npmjs.org/globals/-/globals-15.15.0.tgz",
2644 | "integrity": "sha512-7ACyT3wmyp3I61S4fG682L0VA2RGD9otkqGJIwNUMF1SWUombIIk+af1unuDYgMm082aHYwD+mzJvv9Iu8dsgg==",
2645 | "dev": true,
2646 | "license": "MIT",
2647 | "engines": {
2648 | "node": ">=18"
2649 | },
2650 | "funding": {
2651 | "url": "https://github.com/sponsors/sindresorhus"
2652 | }
2653 | },
2654 | "node_modules/globalthis": {
2655 | "version": "1.0.4",
2656 | "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz",
2657 | "integrity": "sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==",
2658 | "dev": true,
2659 | "license": "MIT",
2660 | "dependencies": {
2661 | "define-properties": "^1.2.1",
2662 | "gopd": "^1.0.1"
2663 | },
2664 | "engines": {
2665 | "node": ">= 0.4"
2666 | },
2667 | "funding": {
2668 | "url": "https://github.com/sponsors/ljharb"
2669 | }
2670 | },
2671 | "node_modules/gopd": {
2672 | "version": "1.2.0",
2673 | "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz",
2674 | "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==",
2675 | "dev": true,
2676 | "license": "MIT",
2677 | "engines": {
2678 | "node": ">= 0.4"
2679 | },
2680 | "funding": {
2681 | "url": "https://github.com/sponsors/ljharb"
2682 | }
2683 | },
2684 | "node_modules/has-bigints": {
2685 | "version": "1.1.0",
2686 | "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.1.0.tgz",
2687 | "integrity": "sha512-R3pbpkcIqv2Pm3dUwgjclDRVmWpTJW2DcMzcIhEXEx1oh/CEMObMm3KLmRJOdvhM7o4uQBnwr8pzRK2sJWIqfg==",
2688 | "dev": true,
2689 | "license": "MIT",
2690 | "engines": {
2691 | "node": ">= 0.4"
2692 | },
2693 | "funding": {
2694 | "url": "https://github.com/sponsors/ljharb"
2695 | }
2696 | },
2697 | "node_modules/has-flag": {
2698 | "version": "4.0.0",
2699 | "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
2700 | "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
2701 | "dev": true,
2702 | "license": "MIT",
2703 | "engines": {
2704 | "node": ">=8"
2705 | }
2706 | },
2707 | "node_modules/has-property-descriptors": {
2708 | "version": "1.0.2",
2709 | "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz",
2710 | "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==",
2711 | "dev": true,
2712 | "license": "MIT",
2713 | "dependencies": {
2714 | "es-define-property": "^1.0.0"
2715 | },
2716 | "funding": {
2717 | "url": "https://github.com/sponsors/ljharb"
2718 | }
2719 | },
2720 | "node_modules/has-proto": {
2721 | "version": "1.2.0",
2722 | "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.2.0.tgz",
2723 | "integrity": "sha512-KIL7eQPfHQRC8+XluaIw7BHUwwqL19bQn4hzNgdr+1wXoU0KKj6rufu47lhY7KbJR2C6T6+PfyN0Ea7wkSS+qQ==",
2724 | "dev": true,
2725 | "license": "MIT",
2726 | "dependencies": {
2727 | "dunder-proto": "^1.0.0"
2728 | },
2729 | "engines": {
2730 | "node": ">= 0.4"
2731 | },
2732 | "funding": {
2733 | "url": "https://github.com/sponsors/ljharb"
2734 | }
2735 | },
2736 | "node_modules/has-symbols": {
2737 | "version": "1.1.0",
2738 | "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz",
2739 | "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==",
2740 | "dev": true,
2741 | "license": "MIT",
2742 | "engines": {
2743 | "node": ">= 0.4"
2744 | },
2745 | "funding": {
2746 | "url": "https://github.com/sponsors/ljharb"
2747 | }
2748 | },
2749 | "node_modules/has-tostringtag": {
2750 | "version": "1.0.2",
2751 | "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz",
2752 | "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==",
2753 | "dev": true,
2754 | "license": "MIT",
2755 | "dependencies": {
2756 | "has-symbols": "^1.0.3"
2757 | },
2758 | "engines": {
2759 | "node": ">= 0.4"
2760 | },
2761 | "funding": {
2762 | "url": "https://github.com/sponsors/ljharb"
2763 | }
2764 | },
2765 | "node_modules/hasown": {
2766 | "version": "2.0.2",
2767 | "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz",
2768 | "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==",
2769 | "dev": true,
2770 | "license": "MIT",
2771 | "dependencies": {
2772 | "function-bind": "^1.1.2"
2773 | },
2774 | "engines": {
2775 | "node": ">= 0.4"
2776 | }
2777 | },
2778 | "node_modules/ignore": {
2779 | "version": "5.3.2",
2780 | "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz",
2781 | "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==",
2782 | "dev": true,
2783 | "license": "MIT",
2784 | "engines": {
2785 | "node": ">= 4"
2786 | }
2787 | },
2788 | "node_modules/import-fresh": {
2789 | "version": "3.3.1",
2790 | "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.1.tgz",
2791 | "integrity": "sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==",
2792 | "dev": true,
2793 | "license": "MIT",
2794 | "dependencies": {
2795 | "parent-module": "^1.0.0",
2796 | "resolve-from": "^4.0.0"
2797 | },
2798 | "engines": {
2799 | "node": ">=6"
2800 | },
2801 | "funding": {
2802 | "url": "https://github.com/sponsors/sindresorhus"
2803 | }
2804 | },
2805 | "node_modules/imurmurhash": {
2806 | "version": "0.1.4",
2807 | "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz",
2808 | "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==",
2809 | "dev": true,
2810 | "license": "MIT",
2811 | "engines": {
2812 | "node": ">=0.8.19"
2813 | }
2814 | },
2815 | "node_modules/internal-slot": {
2816 | "version": "1.1.0",
2817 | "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.1.0.tgz",
2818 | "integrity": "sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw==",
2819 | "dev": true,
2820 | "license": "MIT",
2821 | "dependencies": {
2822 | "es-errors": "^1.3.0",
2823 | "hasown": "^2.0.2",
2824 | "side-channel": "^1.1.0"
2825 | },
2826 | "engines": {
2827 | "node": ">= 0.4"
2828 | }
2829 | },
2830 | "node_modules/is-array-buffer": {
2831 | "version": "3.0.5",
2832 | "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.5.tgz",
2833 | "integrity": "sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A==",
2834 | "dev": true,
2835 | "license": "MIT",
2836 | "dependencies": {
2837 | "call-bind": "^1.0.8",
2838 | "call-bound": "^1.0.3",
2839 | "get-intrinsic": "^1.2.6"
2840 | },
2841 | "engines": {
2842 | "node": ">= 0.4"
2843 | },
2844 | "funding": {
2845 | "url": "https://github.com/sponsors/ljharb"
2846 | }
2847 | },
2848 | "node_modules/is-async-function": {
2849 | "version": "2.1.1",
2850 | "resolved": "https://registry.npmjs.org/is-async-function/-/is-async-function-2.1.1.tgz",
2851 | "integrity": "sha512-9dgM/cZBnNvjzaMYHVoxxfPj2QXt22Ev7SuuPrs+xav0ukGB0S6d4ydZdEiM48kLx5kDV+QBPrpVnFyefL8kkQ==",
2852 | "dev": true,
2853 | "license": "MIT",
2854 | "dependencies": {
2855 | "async-function": "^1.0.0",
2856 | "call-bound": "^1.0.3",
2857 | "get-proto": "^1.0.1",
2858 | "has-tostringtag": "^1.0.2",
2859 | "safe-regex-test": "^1.1.0"
2860 | },
2861 | "engines": {
2862 | "node": ">= 0.4"
2863 | },
2864 | "funding": {
2865 | "url": "https://github.com/sponsors/ljharb"
2866 | }
2867 | },
2868 | "node_modules/is-bigint": {
2869 | "version": "1.1.0",
2870 | "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.1.0.tgz",
2871 | "integrity": "sha512-n4ZT37wG78iz03xPRKJrHTdZbe3IicyucEtdRsV5yglwc3GyUfbAfpSeD0FJ41NbUNSt5wbhqfp1fS+BgnvDFQ==",
2872 | "dev": true,
2873 | "license": "MIT",
2874 | "dependencies": {
2875 | "has-bigints": "^1.0.2"
2876 | },
2877 | "engines": {
2878 | "node": ">= 0.4"
2879 | },
2880 | "funding": {
2881 | "url": "https://github.com/sponsors/ljharb"
2882 | }
2883 | },
2884 | "node_modules/is-boolean-object": {
2885 | "version": "1.2.2",
2886 | "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.2.2.tgz",
2887 | "integrity": "sha512-wa56o2/ElJMYqjCjGkXri7it5FbebW5usLw/nPmCMs5DeZ7eziSYZhSmPRn0txqeW4LnAmQQU7FgqLpsEFKM4A==",
2888 | "dev": true,
2889 | "license": "MIT",
2890 | "dependencies": {
2891 | "call-bound": "^1.0.3",
2892 | "has-tostringtag": "^1.0.2"
2893 | },
2894 | "engines": {
2895 | "node": ">= 0.4"
2896 | },
2897 | "funding": {
2898 | "url": "https://github.com/sponsors/ljharb"
2899 | }
2900 | },
2901 | "node_modules/is-callable": {
2902 | "version": "1.2.7",
2903 | "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz",
2904 | "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==",
2905 | "dev": true,
2906 | "license": "MIT",
2907 | "engines": {
2908 | "node": ">= 0.4"
2909 | },
2910 | "funding": {
2911 | "url": "https://github.com/sponsors/ljharb"
2912 | }
2913 | },
2914 | "node_modules/is-core-module": {
2915 | "version": "2.16.1",
2916 | "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.1.tgz",
2917 | "integrity": "sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==",
2918 | "dev": true,
2919 | "license": "MIT",
2920 | "dependencies": {
2921 | "hasown": "^2.0.2"
2922 | },
2923 | "engines": {
2924 | "node": ">= 0.4"
2925 | },
2926 | "funding": {
2927 | "url": "https://github.com/sponsors/ljharb"
2928 | }
2929 | },
2930 | "node_modules/is-data-view": {
2931 | "version": "1.0.2",
2932 | "resolved": "https://registry.npmjs.org/is-data-view/-/is-data-view-1.0.2.tgz",
2933 | "integrity": "sha512-RKtWF8pGmS87i2D6gqQu/l7EYRlVdfzemCJN/P3UOs//x1QE7mfhvzHIApBTRf7axvT6DMGwSwBXYCT0nfB9xw==",
2934 | "dev": true,
2935 | "license": "MIT",
2936 | "dependencies": {
2937 | "call-bound": "^1.0.2",
2938 | "get-intrinsic": "^1.2.6",
2939 | "is-typed-array": "^1.1.13"
2940 | },
2941 | "engines": {
2942 | "node": ">= 0.4"
2943 | },
2944 | "funding": {
2945 | "url": "https://github.com/sponsors/ljharb"
2946 | }
2947 | },
2948 | "node_modules/is-date-object": {
2949 | "version": "1.1.0",
2950 | "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.1.0.tgz",
2951 | "integrity": "sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg==",
2952 | "dev": true,
2953 | "license": "MIT",
2954 | "dependencies": {
2955 | "call-bound": "^1.0.2",
2956 | "has-tostringtag": "^1.0.2"
2957 | },
2958 | "engines": {
2959 | "node": ">= 0.4"
2960 | },
2961 | "funding": {
2962 | "url": "https://github.com/sponsors/ljharb"
2963 | }
2964 | },
2965 | "node_modules/is-extglob": {
2966 | "version": "2.1.1",
2967 | "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
2968 | "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==",
2969 | "dev": true,
2970 | "license": "MIT",
2971 | "engines": {
2972 | "node": ">=0.10.0"
2973 | }
2974 | },
2975 | "node_modules/is-finalizationregistry": {
2976 | "version": "1.1.1",
2977 | "resolved": "https://registry.npmjs.org/is-finalizationregistry/-/is-finalizationregistry-1.1.1.tgz",
2978 | "integrity": "sha512-1pC6N8qWJbWoPtEjgcL2xyhQOP491EQjeUo3qTKcmV8YSDDJrOepfG8pcC7h/QgnQHYSv0mJ3Z/ZWxmatVrysg==",
2979 | "dev": true,
2980 | "license": "MIT",
2981 | "dependencies": {
2982 | "call-bound": "^1.0.3"
2983 | },
2984 | "engines": {
2985 | "node": ">= 0.4"
2986 | },
2987 | "funding": {
2988 | "url": "https://github.com/sponsors/ljharb"
2989 | }
2990 | },
2991 | "node_modules/is-generator-function": {
2992 | "version": "1.1.0",
2993 | "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.1.0.tgz",
2994 | "integrity": "sha512-nPUB5km40q9e8UfN/Zc24eLlzdSf9OfKByBw9CIdw4H1giPMeA0OIJvbchsCu4npfI2QcMVBsGEBHKZ7wLTWmQ==",
2995 | "dev": true,
2996 | "license": "MIT",
2997 | "dependencies": {
2998 | "call-bound": "^1.0.3",
2999 | "get-proto": "^1.0.0",
3000 | "has-tostringtag": "^1.0.2",
3001 | "safe-regex-test": "^1.1.0"
3002 | },
3003 | "engines": {
3004 | "node": ">= 0.4"
3005 | },
3006 | "funding": {
3007 | "url": "https://github.com/sponsors/ljharb"
3008 | }
3009 | },
3010 | "node_modules/is-glob": {
3011 | "version": "4.0.3",
3012 | "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz",
3013 | "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==",
3014 | "dev": true,
3015 | "license": "MIT",
3016 | "dependencies": {
3017 | "is-extglob": "^2.1.1"
3018 | },
3019 | "engines": {
3020 | "node": ">=0.10.0"
3021 | }
3022 | },
3023 | "node_modules/is-map": {
3024 | "version": "2.0.3",
3025 | "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.3.tgz",
3026 | "integrity": "sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==",
3027 | "dev": true,
3028 | "license": "MIT",
3029 | "engines": {
3030 | "node": ">= 0.4"
3031 | },
3032 | "funding": {
3033 | "url": "https://github.com/sponsors/ljharb"
3034 | }
3035 | },
3036 | "node_modules/is-number-object": {
3037 | "version": "1.1.1",
3038 | "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.1.1.tgz",
3039 | "integrity": "sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw==",
3040 | "dev": true,
3041 | "license": "MIT",
3042 | "dependencies": {
3043 | "call-bound": "^1.0.3",
3044 | "has-tostringtag": "^1.0.2"
3045 | },
3046 | "engines": {
3047 | "node": ">= 0.4"
3048 | },
3049 | "funding": {
3050 | "url": "https://github.com/sponsors/ljharb"
3051 | }
3052 | },
3053 | "node_modules/is-regex": {
3054 | "version": "1.2.1",
3055 | "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.2.1.tgz",
3056 | "integrity": "sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==",
3057 | "dev": true,
3058 | "license": "MIT",
3059 | "dependencies": {
3060 | "call-bound": "^1.0.2",
3061 | "gopd": "^1.2.0",
3062 | "has-tostringtag": "^1.0.2",
3063 | "hasown": "^2.0.2"
3064 | },
3065 | "engines": {
3066 | "node": ">= 0.4"
3067 | },
3068 | "funding": {
3069 | "url": "https://github.com/sponsors/ljharb"
3070 | }
3071 | },
3072 | "node_modules/is-set": {
3073 | "version": "2.0.3",
3074 | "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.3.tgz",
3075 | "integrity": "sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==",
3076 | "dev": true,
3077 | "license": "MIT",
3078 | "engines": {
3079 | "node": ">= 0.4"
3080 | },
3081 | "funding": {
3082 | "url": "https://github.com/sponsors/ljharb"
3083 | }
3084 | },
3085 | "node_modules/is-shared-array-buffer": {
3086 | "version": "1.0.4",
3087 | "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.4.tgz",
3088 | "integrity": "sha512-ISWac8drv4ZGfwKl5slpHG9OwPNty4jOWPRIhBpxOoD+hqITiwuipOQ2bNthAzwA3B4fIjO4Nln74N0S9byq8A==",
3089 | "dev": true,
3090 | "license": "MIT",
3091 | "dependencies": {
3092 | "call-bound": "^1.0.3"
3093 | },
3094 | "engines": {
3095 | "node": ">= 0.4"
3096 | },
3097 | "funding": {
3098 | "url": "https://github.com/sponsors/ljharb"
3099 | }
3100 | },
3101 | "node_modules/is-string": {
3102 | "version": "1.1.1",
3103 | "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.1.1.tgz",
3104 | "integrity": "sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA==",
3105 | "dev": true,
3106 | "license": "MIT",
3107 | "dependencies": {
3108 | "call-bound": "^1.0.3",
3109 | "has-tostringtag": "^1.0.2"
3110 | },
3111 | "engines": {
3112 | "node": ">= 0.4"
3113 | },
3114 | "funding": {
3115 | "url": "https://github.com/sponsors/ljharb"
3116 | }
3117 | },
3118 | "node_modules/is-symbol": {
3119 | "version": "1.1.1",
3120 | "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.1.1.tgz",
3121 | "integrity": "sha512-9gGx6GTtCQM73BgmHQXfDmLtfjjTUDSyoxTCbp5WtoixAhfgsDirWIcVQ/IHpvI5Vgd5i/J5F7B9cN/WlVbC/w==",
3122 | "dev": true,
3123 | "license": "MIT",
3124 | "dependencies": {
3125 | "call-bound": "^1.0.2",
3126 | "has-symbols": "^1.1.0",
3127 | "safe-regex-test": "^1.1.0"
3128 | },
3129 | "engines": {
3130 | "node": ">= 0.4"
3131 | },
3132 | "funding": {
3133 | "url": "https://github.com/sponsors/ljharb"
3134 | }
3135 | },
3136 | "node_modules/is-typed-array": {
3137 | "version": "1.1.15",
3138 | "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.15.tgz",
3139 | "integrity": "sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ==",
3140 | "dev": true,
3141 | "license": "MIT",
3142 | "dependencies": {
3143 | "which-typed-array": "^1.1.16"
3144 | },
3145 | "engines": {
3146 | "node": ">= 0.4"
3147 | },
3148 | "funding": {
3149 | "url": "https://github.com/sponsors/ljharb"
3150 | }
3151 | },
3152 | "node_modules/is-weakmap": {
3153 | "version": "2.0.2",
3154 | "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.2.tgz",
3155 | "integrity": "sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==",
3156 | "dev": true,
3157 | "license": "MIT",
3158 | "engines": {
3159 | "node": ">= 0.4"
3160 | },
3161 | "funding": {
3162 | "url": "https://github.com/sponsors/ljharb"
3163 | }
3164 | },
3165 | "node_modules/is-weakref": {
3166 | "version": "1.1.1",
3167 | "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.1.1.tgz",
3168 | "integrity": "sha512-6i9mGWSlqzNMEqpCp93KwRS1uUOodk2OJ6b+sq7ZPDSy2WuI5NFIxp/254TytR8ftefexkWn5xNiHUNpPOfSew==",
3169 | "dev": true,
3170 | "license": "MIT",
3171 | "dependencies": {
3172 | "call-bound": "^1.0.3"
3173 | },
3174 | "engines": {
3175 | "node": ">= 0.4"
3176 | },
3177 | "funding": {
3178 | "url": "https://github.com/sponsors/ljharb"
3179 | }
3180 | },
3181 | "node_modules/is-weakset": {
3182 | "version": "2.0.4",
3183 | "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.4.tgz",
3184 | "integrity": "sha512-mfcwb6IzQyOKTs84CQMrOwW4gQcaTOAWJ0zzJCl2WSPDrWk/OzDaImWFH3djXhb24g4eudZfLRozAvPGw4d9hQ==",
3185 | "dev": true,
3186 | "license": "MIT",
3187 | "dependencies": {
3188 | "call-bound": "^1.0.3",
3189 | "get-intrinsic": "^1.2.6"
3190 | },
3191 | "engines": {
3192 | "node": ">= 0.4"
3193 | },
3194 | "funding": {
3195 | "url": "https://github.com/sponsors/ljharb"
3196 | }
3197 | },
3198 | "node_modules/isarray": {
3199 | "version": "2.0.5",
3200 | "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz",
3201 | "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==",
3202 | "dev": true,
3203 | "license": "MIT"
3204 | },
3205 | "node_modules/isexe": {
3206 | "version": "2.0.0",
3207 | "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
3208 | "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==",
3209 | "dev": true,
3210 | "license": "ISC"
3211 | },
3212 | "node_modules/iterator.prototype": {
3213 | "version": "1.1.5",
3214 | "resolved": "https://registry.npmjs.org/iterator.prototype/-/iterator.prototype-1.1.5.tgz",
3215 | "integrity": "sha512-H0dkQoCa3b2VEeKQBOxFph+JAbcrQdE7KC0UkqwpLmv2EC4P41QXP+rqo9wYodACiG5/WM5s9oDApTU8utwj9g==",
3216 | "dev": true,
3217 | "license": "MIT",
3218 | "dependencies": {
3219 | "define-data-property": "^1.1.4",
3220 | "es-object-atoms": "^1.0.0",
3221 | "get-intrinsic": "^1.2.6",
3222 | "get-proto": "^1.0.0",
3223 | "has-symbols": "^1.1.0",
3224 | "set-function-name": "^2.0.2"
3225 | },
3226 | "engines": {
3227 | "node": ">= 0.4"
3228 | }
3229 | },
3230 | "node_modules/js-tokens": {
3231 | "version": "4.0.0",
3232 | "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz",
3233 | "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==",
3234 | "dev": true,
3235 | "license": "MIT"
3236 | },
3237 | "node_modules/js-yaml": {
3238 | "version": "4.1.0",
3239 | "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz",
3240 | "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==",
3241 | "dev": true,
3242 | "license": "MIT",
3243 | "dependencies": {
3244 | "argparse": "^2.0.1"
3245 | },
3246 | "bin": {
3247 | "js-yaml": "bin/js-yaml.js"
3248 | }
3249 | },
3250 | "node_modules/jsesc": {
3251 | "version": "3.1.0",
3252 | "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz",
3253 | "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==",
3254 | "dev": true,
3255 | "license": "MIT",
3256 | "bin": {
3257 | "jsesc": "bin/jsesc"
3258 | },
3259 | "engines": {
3260 | "node": ">=6"
3261 | }
3262 | },
3263 | "node_modules/json-buffer": {
3264 | "version": "3.0.1",
3265 | "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz",
3266 | "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==",
3267 | "dev": true,
3268 | "license": "MIT"
3269 | },
3270 | "node_modules/json-schema-traverse": {
3271 | "version": "0.4.1",
3272 | "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
3273 | "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==",
3274 | "dev": true,
3275 | "license": "MIT"
3276 | },
3277 | "node_modules/json-stable-stringify-without-jsonify": {
3278 | "version": "1.0.1",
3279 | "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz",
3280 | "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==",
3281 | "dev": true,
3282 | "license": "MIT"
3283 | },
3284 | "node_modules/json5": {
3285 | "version": "2.2.3",
3286 | "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz",
3287 | "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==",
3288 | "dev": true,
3289 | "license": "MIT",
3290 | "bin": {
3291 | "json5": "lib/cli.js"
3292 | },
3293 | "engines": {
3294 | "node": ">=6"
3295 | }
3296 | },
3297 | "node_modules/jsx-ast-utils": {
3298 | "version": "3.3.5",
3299 | "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.3.5.tgz",
3300 | "integrity": "sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==",
3301 | "dev": true,
3302 | "license": "MIT",
3303 | "dependencies": {
3304 | "array-includes": "^3.1.6",
3305 | "array.prototype.flat": "^1.3.1",
3306 | "object.assign": "^4.1.4",
3307 | "object.values": "^1.1.6"
3308 | },
3309 | "engines": {
3310 | "node": ">=4.0"
3311 | }
3312 | },
3313 | "node_modules/keyv": {
3314 | "version": "4.5.4",
3315 | "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz",
3316 | "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==",
3317 | "dev": true,
3318 | "license": "MIT",
3319 | "dependencies": {
3320 | "json-buffer": "3.0.1"
3321 | }
3322 | },
3323 | "node_modules/levn": {
3324 | "version": "0.4.1",
3325 | "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz",
3326 | "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==",
3327 | "dev": true,
3328 | "license": "MIT",
3329 | "dependencies": {
3330 | "prelude-ls": "^1.2.1",
3331 | "type-check": "~0.4.0"
3332 | },
3333 | "engines": {
3334 | "node": ">= 0.8.0"
3335 | }
3336 | },
3337 | "node_modules/locate-path": {
3338 | "version": "6.0.0",
3339 | "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz",
3340 | "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==",
3341 | "dev": true,
3342 | "license": "MIT",
3343 | "dependencies": {
3344 | "p-locate": "^5.0.0"
3345 | },
3346 | "engines": {
3347 | "node": ">=10"
3348 | },
3349 | "funding": {
3350 | "url": "https://github.com/sponsors/sindresorhus"
3351 | }
3352 | },
3353 | "node_modules/lodash.merge": {
3354 | "version": "4.6.2",
3355 | "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz",
3356 | "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==",
3357 | "dev": true,
3358 | "license": "MIT"
3359 | },
3360 | "node_modules/loose-envify": {
3361 | "version": "1.4.0",
3362 | "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz",
3363 | "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==",
3364 | "dev": true,
3365 | "license": "MIT",
3366 | "dependencies": {
3367 | "js-tokens": "^3.0.0 || ^4.0.0"
3368 | },
3369 | "bin": {
3370 | "loose-envify": "cli.js"
3371 | }
3372 | },
3373 | "node_modules/lru-cache": {
3374 | "version": "5.1.1",
3375 | "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz",
3376 | "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==",
3377 | "dev": true,
3378 | "license": "ISC",
3379 | "dependencies": {
3380 | "yallist": "^3.0.2"
3381 | }
3382 | },
3383 | "node_modules/math-intrinsics": {
3384 | "version": "1.1.0",
3385 | "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz",
3386 | "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==",
3387 | "dev": true,
3388 | "license": "MIT",
3389 | "engines": {
3390 | "node": ">= 0.4"
3391 | }
3392 | },
3393 | "node_modules/minimatch": {
3394 | "version": "3.1.2",
3395 | "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
3396 | "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
3397 | "dev": true,
3398 | "license": "ISC",
3399 | "dependencies": {
3400 | "brace-expansion": "^1.1.7"
3401 | },
3402 | "engines": {
3403 | "node": "*"
3404 | }
3405 | },
3406 | "node_modules/ms": {
3407 | "version": "2.1.3",
3408 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
3409 | "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==",
3410 | "dev": true,
3411 | "license": "MIT"
3412 | },
3413 | "node_modules/nanoid": {
3414 | "version": "3.3.8",
3415 | "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.8.tgz",
3416 | "integrity": "sha512-WNLf5Sd8oZxOm+TzppcYk8gVOgP+l58xNy58D0nbUnOxOWRWvlcCV4kUF7ltmI6PsrLl/BgKEyS4mqsGChFN0w==",
3417 | "dev": true,
3418 | "funding": [
3419 | {
3420 | "type": "github",
3421 | "url": "https://github.com/sponsors/ai"
3422 | }
3423 | ],
3424 | "license": "MIT",
3425 | "bin": {
3426 | "nanoid": "bin/nanoid.cjs"
3427 | },
3428 | "engines": {
3429 | "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1"
3430 | }
3431 | },
3432 | "node_modules/natural-compare": {
3433 | "version": "1.4.0",
3434 | "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz",
3435 | "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==",
3436 | "dev": true,
3437 | "license": "MIT"
3438 | },
3439 | "node_modules/node-releases": {
3440 | "version": "2.0.19",
3441 | "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.19.tgz",
3442 | "integrity": "sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==",
3443 | "dev": true,
3444 | "license": "MIT"
3445 | },
3446 | "node_modules/object-assign": {
3447 | "version": "4.1.1",
3448 | "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
3449 | "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==",
3450 | "dev": true,
3451 | "license": "MIT",
3452 | "engines": {
3453 | "node": ">=0.10.0"
3454 | }
3455 | },
3456 | "node_modules/object-inspect": {
3457 | "version": "1.13.4",
3458 | "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.4.tgz",
3459 | "integrity": "sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==",
3460 | "dev": true,
3461 | "license": "MIT",
3462 | "engines": {
3463 | "node": ">= 0.4"
3464 | },
3465 | "funding": {
3466 | "url": "https://github.com/sponsors/ljharb"
3467 | }
3468 | },
3469 | "node_modules/object-keys": {
3470 | "version": "1.1.1",
3471 | "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz",
3472 | "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==",
3473 | "dev": true,
3474 | "license": "MIT",
3475 | "engines": {
3476 | "node": ">= 0.4"
3477 | }
3478 | },
3479 | "node_modules/object.assign": {
3480 | "version": "4.1.7",
3481 | "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.7.tgz",
3482 | "integrity": "sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw==",
3483 | "dev": true,
3484 | "license": "MIT",
3485 | "dependencies": {
3486 | "call-bind": "^1.0.8",
3487 | "call-bound": "^1.0.3",
3488 | "define-properties": "^1.2.1",
3489 | "es-object-atoms": "^1.0.0",
3490 | "has-symbols": "^1.1.0",
3491 | "object-keys": "^1.1.1"
3492 | },
3493 | "engines": {
3494 | "node": ">= 0.4"
3495 | },
3496 | "funding": {
3497 | "url": "https://github.com/sponsors/ljharb"
3498 | }
3499 | },
3500 | "node_modules/object.entries": {
3501 | "version": "1.1.8",
3502 | "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.8.tgz",
3503 | "integrity": "sha512-cmopxi8VwRIAw/fkijJohSfpef5PdN0pMQJN6VC/ZKvn0LIknWD8KtgY6KlQdEc4tIjcQ3HxSMmnvtzIscdaYQ==",
3504 | "dev": true,
3505 | "license": "MIT",
3506 | "dependencies": {
3507 | "call-bind": "^1.0.7",
3508 | "define-properties": "^1.2.1",
3509 | "es-object-atoms": "^1.0.0"
3510 | },
3511 | "engines": {
3512 | "node": ">= 0.4"
3513 | }
3514 | },
3515 | "node_modules/object.fromentries": {
3516 | "version": "2.0.8",
3517 | "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.8.tgz",
3518 | "integrity": "sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ==",
3519 | "dev": true,
3520 | "license": "MIT",
3521 | "dependencies": {
3522 | "call-bind": "^1.0.7",
3523 | "define-properties": "^1.2.1",
3524 | "es-abstract": "^1.23.2",
3525 | "es-object-atoms": "^1.0.0"
3526 | },
3527 | "engines": {
3528 | "node": ">= 0.4"
3529 | },
3530 | "funding": {
3531 | "url": "https://github.com/sponsors/ljharb"
3532 | }
3533 | },
3534 | "node_modules/object.values": {
3535 | "version": "1.2.1",
3536 | "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.2.1.tgz",
3537 | "integrity": "sha512-gXah6aZrcUxjWg2zR2MwouP2eHlCBzdV4pygudehaKXSGW4v2AsRQUK+lwwXhii6KFZcunEnmSUoYp5CXibxtA==",
3538 | "dev": true,
3539 | "license": "MIT",
3540 | "dependencies": {
3541 | "call-bind": "^1.0.8",
3542 | "call-bound": "^1.0.3",
3543 | "define-properties": "^1.2.1",
3544 | "es-object-atoms": "^1.0.0"
3545 | },
3546 | "engines": {
3547 | "node": ">= 0.4"
3548 | },
3549 | "funding": {
3550 | "url": "https://github.com/sponsors/ljharb"
3551 | }
3552 | },
3553 | "node_modules/optionator": {
3554 | "version": "0.9.4",
3555 | "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.4.tgz",
3556 | "integrity": "sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==",
3557 | "dev": true,
3558 | "license": "MIT",
3559 | "dependencies": {
3560 | "deep-is": "^0.1.3",
3561 | "fast-levenshtein": "^2.0.6",
3562 | "levn": "^0.4.1",
3563 | "prelude-ls": "^1.2.1",
3564 | "type-check": "^0.4.0",
3565 | "word-wrap": "^1.2.5"
3566 | },
3567 | "engines": {
3568 | "node": ">= 0.8.0"
3569 | }
3570 | },
3571 | "node_modules/own-keys": {
3572 | "version": "1.0.1",
3573 | "resolved": "https://registry.npmjs.org/own-keys/-/own-keys-1.0.1.tgz",
3574 | "integrity": "sha512-qFOyK5PjiWZd+QQIh+1jhdb9LpxTF0qs7Pm8o5QHYZ0M3vKqSqzsZaEB6oWlxZ+q2sJBMI/Ktgd2N5ZwQoRHfg==",
3575 | "dev": true,
3576 | "license": "MIT",
3577 | "dependencies": {
3578 | "get-intrinsic": "^1.2.6",
3579 | "object-keys": "^1.1.1",
3580 | "safe-push-apply": "^1.0.0"
3581 | },
3582 | "engines": {
3583 | "node": ">= 0.4"
3584 | },
3585 | "funding": {
3586 | "url": "https://github.com/sponsors/ljharb"
3587 | }
3588 | },
3589 | "node_modules/p-limit": {
3590 | "version": "3.1.0",
3591 | "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz",
3592 | "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==",
3593 | "dev": true,
3594 | "license": "MIT",
3595 | "dependencies": {
3596 | "yocto-queue": "^0.1.0"
3597 | },
3598 | "engines": {
3599 | "node": ">=10"
3600 | },
3601 | "funding": {
3602 | "url": "https://github.com/sponsors/sindresorhus"
3603 | }
3604 | },
3605 | "node_modules/p-locate": {
3606 | "version": "5.0.0",
3607 | "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz",
3608 | "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==",
3609 | "dev": true,
3610 | "license": "MIT",
3611 | "dependencies": {
3612 | "p-limit": "^3.0.2"
3613 | },
3614 | "engines": {
3615 | "node": ">=10"
3616 | },
3617 | "funding": {
3618 | "url": "https://github.com/sponsors/sindresorhus"
3619 | }
3620 | },
3621 | "node_modules/parent-module": {
3622 | "version": "1.0.1",
3623 | "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz",
3624 | "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==",
3625 | "dev": true,
3626 | "license": "MIT",
3627 | "dependencies": {
3628 | "callsites": "^3.0.0"
3629 | },
3630 | "engines": {
3631 | "node": ">=6"
3632 | }
3633 | },
3634 | "node_modules/path-exists": {
3635 | "version": "4.0.0",
3636 | "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz",
3637 | "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==",
3638 | "dev": true,
3639 | "license": "MIT",
3640 | "engines": {
3641 | "node": ">=8"
3642 | }
3643 | },
3644 | "node_modules/path-key": {
3645 | "version": "3.1.1",
3646 | "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz",
3647 | "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==",
3648 | "dev": true,
3649 | "license": "MIT",
3650 | "engines": {
3651 | "node": ">=8"
3652 | }
3653 | },
3654 | "node_modules/path-parse": {
3655 | "version": "1.0.7",
3656 | "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz",
3657 | "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==",
3658 | "dev": true,
3659 | "license": "MIT"
3660 | },
3661 | "node_modules/picocolors": {
3662 | "version": "1.1.1",
3663 | "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz",
3664 | "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==",
3665 | "dev": true,
3666 | "license": "ISC"
3667 | },
3668 | "node_modules/possible-typed-array-names": {
3669 | "version": "1.1.0",
3670 | "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.1.0.tgz",
3671 | "integrity": "sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg==",
3672 | "dev": true,
3673 | "license": "MIT",
3674 | "engines": {
3675 | "node": ">= 0.4"
3676 | }
3677 | },
3678 | "node_modules/postcss": {
3679 | "version": "8.5.3",
3680 | "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.3.tgz",
3681 | "integrity": "sha512-dle9A3yYxlBSrt8Fu+IpjGT8SY8hN0mlaA6GY8t0P5PjIOZemULz/E2Bnm/2dcUOena75OTNkHI76uZBNUUq3A==",
3682 | "dev": true,
3683 | "funding": [
3684 | {
3685 | "type": "opencollective",
3686 | "url": "https://opencollective.com/postcss/"
3687 | },
3688 | {
3689 | "type": "tidelift",
3690 | "url": "https://tidelift.com/funding/github/npm/postcss"
3691 | },
3692 | {
3693 | "type": "github",
3694 | "url": "https://github.com/sponsors/ai"
3695 | }
3696 | ],
3697 | "license": "MIT",
3698 | "dependencies": {
3699 | "nanoid": "^3.3.8",
3700 | "picocolors": "^1.1.1",
3701 | "source-map-js": "^1.2.1"
3702 | },
3703 | "engines": {
3704 | "node": "^10 || ^12 || >=14"
3705 | }
3706 | },
3707 | "node_modules/prelude-ls": {
3708 | "version": "1.2.1",
3709 | "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz",
3710 | "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==",
3711 | "dev": true,
3712 | "license": "MIT",
3713 | "engines": {
3714 | "node": ">= 0.8.0"
3715 | }
3716 | },
3717 | "node_modules/prop-types": {
3718 | "version": "15.8.1",
3719 | "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz",
3720 | "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==",
3721 | "dev": true,
3722 | "license": "MIT",
3723 | "dependencies": {
3724 | "loose-envify": "^1.4.0",
3725 | "object-assign": "^4.1.1",
3726 | "react-is": "^16.13.1"
3727 | }
3728 | },
3729 | "node_modules/punycode": {
3730 | "version": "2.3.1",
3731 | "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz",
3732 | "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==",
3733 | "dev": true,
3734 | "license": "MIT",
3735 | "engines": {
3736 | "node": ">=6"
3737 | }
3738 | },
3739 | "node_modules/react": {
3740 | "version": "19.0.0",
3741 | "resolved": "https://registry.npmjs.org/react/-/react-19.0.0.tgz",
3742 | "integrity": "sha512-V8AVnmPIICiWpGfm6GLzCR/W5FXLchHop40W4nXBmdlEceh16rCN8O8LNWm5bh5XUX91fh7KpA+W0TgMKmgTpQ==",
3743 | "license": "MIT",
3744 | "engines": {
3745 | "node": ">=0.10.0"
3746 | }
3747 | },
3748 | "node_modules/react-dom": {
3749 | "version": "19.0.0",
3750 | "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-19.0.0.tgz",
3751 | "integrity": "sha512-4GV5sHFG0e/0AD4X+ySy6UJd3jVl1iNsNHdpad0qhABJ11twS3TTBnseqsKurKcsNqCEFeGL3uLpVChpIO3QfQ==",
3752 | "license": "MIT",
3753 | "dependencies": {
3754 | "scheduler": "^0.25.0"
3755 | },
3756 | "peerDependencies": {
3757 | "react": "^19.0.0"
3758 | }
3759 | },
3760 | "node_modules/react-is": {
3761 | "version": "16.13.1",
3762 | "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz",
3763 | "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==",
3764 | "dev": true,
3765 | "license": "MIT"
3766 | },
3767 | "node_modules/react-refresh": {
3768 | "version": "0.14.2",
3769 | "resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.14.2.tgz",
3770 | "integrity": "sha512-jCvmsr+1IUSMUyzOkRcvnVbX3ZYC6g9TDrDbFuFmRDq7PD4yaGbLKNQL6k2jnArV8hjYxh7hVhAZB6s9HDGpZA==",
3771 | "dev": true,
3772 | "license": "MIT",
3773 | "engines": {
3774 | "node": ">=0.10.0"
3775 | }
3776 | },
3777 | "node_modules/react-router": {
3778 | "version": "7.2.0",
3779 | "resolved": "https://registry.npmjs.org/react-router/-/react-router-7.2.0.tgz",
3780 | "integrity": "sha512-fXyqzPgCPZbqhrk7k3hPcCpYIlQ2ugIXDboHUzhJISFVy2DEPsmHgN588MyGmkIOv3jDgNfUE3kJi83L28s/LQ==",
3781 | "license": "MIT",
3782 | "dependencies": {
3783 | "@types/cookie": "^0.6.0",
3784 | "cookie": "^1.0.1",
3785 | "set-cookie-parser": "^2.6.0",
3786 | "turbo-stream": "2.4.0"
3787 | },
3788 | "engines": {
3789 | "node": ">=20.0.0"
3790 | },
3791 | "peerDependencies": {
3792 | "react": ">=18",
3793 | "react-dom": ">=18"
3794 | },
3795 | "peerDependenciesMeta": {
3796 | "react-dom": {
3797 | "optional": true
3798 | }
3799 | }
3800 | },
3801 | "node_modules/react-router-dom": {
3802 | "version": "7.2.0",
3803 | "resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-7.2.0.tgz",
3804 | "integrity": "sha512-cU7lTxETGtQRQbafJubvZKHEn5izNABxZhBY0Jlzdv0gqQhCPQt2J8aN5ZPjS6mQOXn5NnirWNh+FpE8TTYN0Q==",
3805 | "license": "MIT",
3806 | "dependencies": {
3807 | "react-router": "7.2.0"
3808 | },
3809 | "engines": {
3810 | "node": ">=20.0.0"
3811 | },
3812 | "peerDependencies": {
3813 | "react": ">=18",
3814 | "react-dom": ">=18"
3815 | }
3816 | },
3817 | "node_modules/reflect.getprototypeof": {
3818 | "version": "1.0.10",
3819 | "resolved": "https://registry.npmjs.org/reflect.getprototypeof/-/reflect.getprototypeof-1.0.10.tgz",
3820 | "integrity": "sha512-00o4I+DVrefhv+nX0ulyi3biSHCPDe+yLv5o/p6d/UVlirijB8E16FtfwSAi4g3tcqrQ4lRAqQSoFEZJehYEcw==",
3821 | "dev": true,
3822 | "license": "MIT",
3823 | "dependencies": {
3824 | "call-bind": "^1.0.8",
3825 | "define-properties": "^1.2.1",
3826 | "es-abstract": "^1.23.9",
3827 | "es-errors": "^1.3.0",
3828 | "es-object-atoms": "^1.0.0",
3829 | "get-intrinsic": "^1.2.7",
3830 | "get-proto": "^1.0.1",
3831 | "which-builtin-type": "^1.2.1"
3832 | },
3833 | "engines": {
3834 | "node": ">= 0.4"
3835 | },
3836 | "funding": {
3837 | "url": "https://github.com/sponsors/ljharb"
3838 | }
3839 | },
3840 | "node_modules/regexp.prototype.flags": {
3841 | "version": "1.5.4",
3842 | "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.4.tgz",
3843 | "integrity": "sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA==",
3844 | "dev": true,
3845 | "license": "MIT",
3846 | "dependencies": {
3847 | "call-bind": "^1.0.8",
3848 | "define-properties": "^1.2.1",
3849 | "es-errors": "^1.3.0",
3850 | "get-proto": "^1.0.1",
3851 | "gopd": "^1.2.0",
3852 | "set-function-name": "^2.0.2"
3853 | },
3854 | "engines": {
3855 | "node": ">= 0.4"
3856 | },
3857 | "funding": {
3858 | "url": "https://github.com/sponsors/ljharb"
3859 | }
3860 | },
3861 | "node_modules/resolve": {
3862 | "version": "2.0.0-next.5",
3863 | "resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.5.tgz",
3864 | "integrity": "sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==",
3865 | "dev": true,
3866 | "license": "MIT",
3867 | "dependencies": {
3868 | "is-core-module": "^2.13.0",
3869 | "path-parse": "^1.0.7",
3870 | "supports-preserve-symlinks-flag": "^1.0.0"
3871 | },
3872 | "bin": {
3873 | "resolve": "bin/resolve"
3874 | },
3875 | "funding": {
3876 | "url": "https://github.com/sponsors/ljharb"
3877 | }
3878 | },
3879 | "node_modules/resolve-from": {
3880 | "version": "4.0.0",
3881 | "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz",
3882 | "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==",
3883 | "dev": true,
3884 | "license": "MIT",
3885 | "engines": {
3886 | "node": ">=4"
3887 | }
3888 | },
3889 | "node_modules/rollup": {
3890 | "version": "4.34.8",
3891 | "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.34.8.tgz",
3892 | "integrity": "sha512-489gTVMzAYdiZHFVA/ig/iYFllCcWFHMvUHI1rpFmkoUtRlQxqh6/yiNqnYibjMZ2b/+FUQwldG+aLsEt6bglQ==",
3893 | "dev": true,
3894 | "license": "MIT",
3895 | "dependencies": {
3896 | "@types/estree": "1.0.6"
3897 | },
3898 | "bin": {
3899 | "rollup": "dist/bin/rollup"
3900 | },
3901 | "engines": {
3902 | "node": ">=18.0.0",
3903 | "npm": ">=8.0.0"
3904 | },
3905 | "optionalDependencies": {
3906 | "@rollup/rollup-android-arm-eabi": "4.34.8",
3907 | "@rollup/rollup-android-arm64": "4.34.8",
3908 | "@rollup/rollup-darwin-arm64": "4.34.8",
3909 | "@rollup/rollup-darwin-x64": "4.34.8",
3910 | "@rollup/rollup-freebsd-arm64": "4.34.8",
3911 | "@rollup/rollup-freebsd-x64": "4.34.8",
3912 | "@rollup/rollup-linux-arm-gnueabihf": "4.34.8",
3913 | "@rollup/rollup-linux-arm-musleabihf": "4.34.8",
3914 | "@rollup/rollup-linux-arm64-gnu": "4.34.8",
3915 | "@rollup/rollup-linux-arm64-musl": "4.34.8",
3916 | "@rollup/rollup-linux-loongarch64-gnu": "4.34.8",
3917 | "@rollup/rollup-linux-powerpc64le-gnu": "4.34.8",
3918 | "@rollup/rollup-linux-riscv64-gnu": "4.34.8",
3919 | "@rollup/rollup-linux-s390x-gnu": "4.34.8",
3920 | "@rollup/rollup-linux-x64-gnu": "4.34.8",
3921 | "@rollup/rollup-linux-x64-musl": "4.34.8",
3922 | "@rollup/rollup-win32-arm64-msvc": "4.34.8",
3923 | "@rollup/rollup-win32-ia32-msvc": "4.34.8",
3924 | "@rollup/rollup-win32-x64-msvc": "4.34.8",
3925 | "fsevents": "~2.3.2"
3926 | }
3927 | },
3928 | "node_modules/safe-array-concat": {
3929 | "version": "1.1.3",
3930 | "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.3.tgz",
3931 | "integrity": "sha512-AURm5f0jYEOydBj7VQlVvDrjeFgthDdEF5H1dP+6mNpoXOMo1quQqJ4wvJDyRZ9+pO3kGWoOdmV08cSv2aJV6Q==",
3932 | "dev": true,
3933 | "license": "MIT",
3934 | "dependencies": {
3935 | "call-bind": "^1.0.8",
3936 | "call-bound": "^1.0.2",
3937 | "get-intrinsic": "^1.2.6",
3938 | "has-symbols": "^1.1.0",
3939 | "isarray": "^2.0.5"
3940 | },
3941 | "engines": {
3942 | "node": ">=0.4"
3943 | },
3944 | "funding": {
3945 | "url": "https://github.com/sponsors/ljharb"
3946 | }
3947 | },
3948 | "node_modules/safe-push-apply": {
3949 | "version": "1.0.0",
3950 | "resolved": "https://registry.npmjs.org/safe-push-apply/-/safe-push-apply-1.0.0.tgz",
3951 | "integrity": "sha512-iKE9w/Z7xCzUMIZqdBsp6pEQvwuEebH4vdpjcDWnyzaI6yl6O9FHvVpmGelvEHNsoY6wGblkxR6Zty/h00WiSA==",
3952 | "dev": true,
3953 | "license": "MIT",
3954 | "dependencies": {
3955 | "es-errors": "^1.3.0",
3956 | "isarray": "^2.0.5"
3957 | },
3958 | "engines": {
3959 | "node": ">= 0.4"
3960 | },
3961 | "funding": {
3962 | "url": "https://github.com/sponsors/ljharb"
3963 | }
3964 | },
3965 | "node_modules/safe-regex-test": {
3966 | "version": "1.1.0",
3967 | "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.1.0.tgz",
3968 | "integrity": "sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==",
3969 | "dev": true,
3970 | "license": "MIT",
3971 | "dependencies": {
3972 | "call-bound": "^1.0.2",
3973 | "es-errors": "^1.3.0",
3974 | "is-regex": "^1.2.1"
3975 | },
3976 | "engines": {
3977 | "node": ">= 0.4"
3978 | },
3979 | "funding": {
3980 | "url": "https://github.com/sponsors/ljharb"
3981 | }
3982 | },
3983 | "node_modules/scheduler": {
3984 | "version": "0.25.0",
3985 | "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.25.0.tgz",
3986 | "integrity": "sha512-xFVuu11jh+xcO7JOAGJNOXld8/TcEHK/4CituBUeUb5hqxJLj9YuemAEuvm9gQ/+pgXYfbQuqAkiYu+u7YEsNA==",
3987 | "license": "MIT"
3988 | },
3989 | "node_modules/semver": {
3990 | "version": "6.3.1",
3991 | "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
3992 | "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
3993 | "dev": true,
3994 | "license": "ISC",
3995 | "bin": {
3996 | "semver": "bin/semver.js"
3997 | }
3998 | },
3999 | "node_modules/set-cookie-parser": {
4000 | "version": "2.7.1",
4001 | "resolved": "https://registry.npmjs.org/set-cookie-parser/-/set-cookie-parser-2.7.1.tgz",
4002 | "integrity": "sha512-IOc8uWeOZgnb3ptbCURJWNjWUPcO3ZnTTdzsurqERrP6nPyv+paC55vJM0LpOlT2ne+Ix+9+CRG1MNLlyZ4GjQ==",
4003 | "license": "MIT"
4004 | },
4005 | "node_modules/set-function-length": {
4006 | "version": "1.2.2",
4007 | "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz",
4008 | "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==",
4009 | "dev": true,
4010 | "license": "MIT",
4011 | "dependencies": {
4012 | "define-data-property": "^1.1.4",
4013 | "es-errors": "^1.3.0",
4014 | "function-bind": "^1.1.2",
4015 | "get-intrinsic": "^1.2.4",
4016 | "gopd": "^1.0.1",
4017 | "has-property-descriptors": "^1.0.2"
4018 | },
4019 | "engines": {
4020 | "node": ">= 0.4"
4021 | }
4022 | },
4023 | "node_modules/set-function-name": {
4024 | "version": "2.0.2",
4025 | "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.2.tgz",
4026 | "integrity": "sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==",
4027 | "dev": true,
4028 | "license": "MIT",
4029 | "dependencies": {
4030 | "define-data-property": "^1.1.4",
4031 | "es-errors": "^1.3.0",
4032 | "functions-have-names": "^1.2.3",
4033 | "has-property-descriptors": "^1.0.2"
4034 | },
4035 | "engines": {
4036 | "node": ">= 0.4"
4037 | }
4038 | },
4039 | "node_modules/set-proto": {
4040 | "version": "1.0.0",
4041 | "resolved": "https://registry.npmjs.org/set-proto/-/set-proto-1.0.0.tgz",
4042 | "integrity": "sha512-RJRdvCo6IAnPdsvP/7m6bsQqNnn1FCBX5ZNtFL98MmFF/4xAIJTIg1YbHW5DC2W5SKZanrC6i4HsJqlajw/dZw==",
4043 | "dev": true,
4044 | "license": "MIT",
4045 | "dependencies": {
4046 | "dunder-proto": "^1.0.1",
4047 | "es-errors": "^1.3.0",
4048 | "es-object-atoms": "^1.0.0"
4049 | },
4050 | "engines": {
4051 | "node": ">= 0.4"
4052 | }
4053 | },
4054 | "node_modules/shebang-command": {
4055 | "version": "2.0.0",
4056 | "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz",
4057 | "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==",
4058 | "dev": true,
4059 | "license": "MIT",
4060 | "dependencies": {
4061 | "shebang-regex": "^3.0.0"
4062 | },
4063 | "engines": {
4064 | "node": ">=8"
4065 | }
4066 | },
4067 | "node_modules/shebang-regex": {
4068 | "version": "3.0.0",
4069 | "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz",
4070 | "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==",
4071 | "dev": true,
4072 | "license": "MIT",
4073 | "engines": {
4074 | "node": ">=8"
4075 | }
4076 | },
4077 | "node_modules/side-channel": {
4078 | "version": "1.1.0",
4079 | "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.0.tgz",
4080 | "integrity": "sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==",
4081 | "dev": true,
4082 | "license": "MIT",
4083 | "dependencies": {
4084 | "es-errors": "^1.3.0",
4085 | "object-inspect": "^1.13.3",
4086 | "side-channel-list": "^1.0.0",
4087 | "side-channel-map": "^1.0.1",
4088 | "side-channel-weakmap": "^1.0.2"
4089 | },
4090 | "engines": {
4091 | "node": ">= 0.4"
4092 | },
4093 | "funding": {
4094 | "url": "https://github.com/sponsors/ljharb"
4095 | }
4096 | },
4097 | "node_modules/side-channel-list": {
4098 | "version": "1.0.0",
4099 | "resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.0.tgz",
4100 | "integrity": "sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==",
4101 | "dev": true,
4102 | "license": "MIT",
4103 | "dependencies": {
4104 | "es-errors": "^1.3.0",
4105 | "object-inspect": "^1.13.3"
4106 | },
4107 | "engines": {
4108 | "node": ">= 0.4"
4109 | },
4110 | "funding": {
4111 | "url": "https://github.com/sponsors/ljharb"
4112 | }
4113 | },
4114 | "node_modules/side-channel-map": {
4115 | "version": "1.0.1",
4116 | "resolved": "https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz",
4117 | "integrity": "sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==",
4118 | "dev": true,
4119 | "license": "MIT",
4120 | "dependencies": {
4121 | "call-bound": "^1.0.2",
4122 | "es-errors": "^1.3.0",
4123 | "get-intrinsic": "^1.2.5",
4124 | "object-inspect": "^1.13.3"
4125 | },
4126 | "engines": {
4127 | "node": ">= 0.4"
4128 | },
4129 | "funding": {
4130 | "url": "https://github.com/sponsors/ljharb"
4131 | }
4132 | },
4133 | "node_modules/side-channel-weakmap": {
4134 | "version": "1.0.2",
4135 | "resolved": "https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz",
4136 | "integrity": "sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==",
4137 | "dev": true,
4138 | "license": "MIT",
4139 | "dependencies": {
4140 | "call-bound": "^1.0.2",
4141 | "es-errors": "^1.3.0",
4142 | "get-intrinsic": "^1.2.5",
4143 | "object-inspect": "^1.13.3",
4144 | "side-channel-map": "^1.0.1"
4145 | },
4146 | "engines": {
4147 | "node": ">= 0.4"
4148 | },
4149 | "funding": {
4150 | "url": "https://github.com/sponsors/ljharb"
4151 | }
4152 | },
4153 | "node_modules/source-map-js": {
4154 | "version": "1.2.1",
4155 | "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz",
4156 | "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==",
4157 | "dev": true,
4158 | "license": "BSD-3-Clause",
4159 | "engines": {
4160 | "node": ">=0.10.0"
4161 | }
4162 | },
4163 | "node_modules/string.prototype.matchall": {
4164 | "version": "4.0.12",
4165 | "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.12.tgz",
4166 | "integrity": "sha512-6CC9uyBL+/48dYizRf7H7VAYCMCNTBeM78x/VTUe9bFEaxBepPJDa1Ow99LqI/1yF7kuy7Q3cQsYMrcjGUcskA==",
4167 | "dev": true,
4168 | "license": "MIT",
4169 | "dependencies": {
4170 | "call-bind": "^1.0.8",
4171 | "call-bound": "^1.0.3",
4172 | "define-properties": "^1.2.1",
4173 | "es-abstract": "^1.23.6",
4174 | "es-errors": "^1.3.0",
4175 | "es-object-atoms": "^1.0.0",
4176 | "get-intrinsic": "^1.2.6",
4177 | "gopd": "^1.2.0",
4178 | "has-symbols": "^1.1.0",
4179 | "internal-slot": "^1.1.0",
4180 | "regexp.prototype.flags": "^1.5.3",
4181 | "set-function-name": "^2.0.2",
4182 | "side-channel": "^1.1.0"
4183 | },
4184 | "engines": {
4185 | "node": ">= 0.4"
4186 | },
4187 | "funding": {
4188 | "url": "https://github.com/sponsors/ljharb"
4189 | }
4190 | },
4191 | "node_modules/string.prototype.repeat": {
4192 | "version": "1.0.0",
4193 | "resolved": "https://registry.npmjs.org/string.prototype.repeat/-/string.prototype.repeat-1.0.0.tgz",
4194 | "integrity": "sha512-0u/TldDbKD8bFCQ/4f5+mNRrXwZ8hg2w7ZR8wa16e8z9XpePWl3eGEcUD0OXpEH/VJH/2G3gjUtR3ZOiBe2S/w==",
4195 | "dev": true,
4196 | "license": "MIT",
4197 | "dependencies": {
4198 | "define-properties": "^1.1.3",
4199 | "es-abstract": "^1.17.5"
4200 | }
4201 | },
4202 | "node_modules/string.prototype.trim": {
4203 | "version": "1.2.10",
4204 | "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.10.tgz",
4205 | "integrity": "sha512-Rs66F0P/1kedk5lyYyH9uBzuiI/kNRmwJAR9quK6VOtIpZ2G+hMZd+HQbbv25MgCA6gEffoMZYxlTod4WcdrKA==",
4206 | "dev": true,
4207 | "license": "MIT",
4208 | "dependencies": {
4209 | "call-bind": "^1.0.8",
4210 | "call-bound": "^1.0.2",
4211 | "define-data-property": "^1.1.4",
4212 | "define-properties": "^1.2.1",
4213 | "es-abstract": "^1.23.5",
4214 | "es-object-atoms": "^1.0.0",
4215 | "has-property-descriptors": "^1.0.2"
4216 | },
4217 | "engines": {
4218 | "node": ">= 0.4"
4219 | },
4220 | "funding": {
4221 | "url": "https://github.com/sponsors/ljharb"
4222 | }
4223 | },
4224 | "node_modules/string.prototype.trimend": {
4225 | "version": "1.0.9",
4226 | "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.9.tgz",
4227 | "integrity": "sha512-G7Ok5C6E/j4SGfyLCloXTrngQIQU3PWtXGst3yM7Bea9FRURf1S42ZHlZZtsNque2FN2PoUhfZXYLNWwEr4dLQ==",
4228 | "dev": true,
4229 | "license": "MIT",
4230 | "dependencies": {
4231 | "call-bind": "^1.0.8",
4232 | "call-bound": "^1.0.2",
4233 | "define-properties": "^1.2.1",
4234 | "es-object-atoms": "^1.0.0"
4235 | },
4236 | "engines": {
4237 | "node": ">= 0.4"
4238 | },
4239 | "funding": {
4240 | "url": "https://github.com/sponsors/ljharb"
4241 | }
4242 | },
4243 | "node_modules/string.prototype.trimstart": {
4244 | "version": "1.0.8",
4245 | "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz",
4246 | "integrity": "sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==",
4247 | "dev": true,
4248 | "license": "MIT",
4249 | "dependencies": {
4250 | "call-bind": "^1.0.7",
4251 | "define-properties": "^1.2.1",
4252 | "es-object-atoms": "^1.0.0"
4253 | },
4254 | "engines": {
4255 | "node": ">= 0.4"
4256 | },
4257 | "funding": {
4258 | "url": "https://github.com/sponsors/ljharb"
4259 | }
4260 | },
4261 | "node_modules/strip-json-comments": {
4262 | "version": "3.1.1",
4263 | "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz",
4264 | "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==",
4265 | "dev": true,
4266 | "license": "MIT",
4267 | "engines": {
4268 | "node": ">=8"
4269 | },
4270 | "funding": {
4271 | "url": "https://github.com/sponsors/sindresorhus"
4272 | }
4273 | },
4274 | "node_modules/supports-color": {
4275 | "version": "7.2.0",
4276 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
4277 | "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
4278 | "dev": true,
4279 | "license": "MIT",
4280 | "dependencies": {
4281 | "has-flag": "^4.0.0"
4282 | },
4283 | "engines": {
4284 | "node": ">=8"
4285 | }
4286 | },
4287 | "node_modules/supports-preserve-symlinks-flag": {
4288 | "version": "1.0.0",
4289 | "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz",
4290 | "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==",
4291 | "dev": true,
4292 | "license": "MIT",
4293 | "engines": {
4294 | "node": ">= 0.4"
4295 | },
4296 | "funding": {
4297 | "url": "https://github.com/sponsors/ljharb"
4298 | }
4299 | },
4300 | "node_modules/turbo-stream": {
4301 | "version": "2.4.0",
4302 | "resolved": "https://registry.npmjs.org/turbo-stream/-/turbo-stream-2.4.0.tgz",
4303 | "integrity": "sha512-FHncC10WpBd2eOmGwpmQsWLDoK4cqsA/UT/GqNoaKOQnT8uzhtCbg3EoUDMvqpOSAI0S26mr0rkjzbOO6S3v1g==",
4304 | "license": "ISC"
4305 | },
4306 | "node_modules/type-check": {
4307 | "version": "0.4.0",
4308 | "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz",
4309 | "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==",
4310 | "dev": true,
4311 | "license": "MIT",
4312 | "dependencies": {
4313 | "prelude-ls": "^1.2.1"
4314 | },
4315 | "engines": {
4316 | "node": ">= 0.8.0"
4317 | }
4318 | },
4319 | "node_modules/typed-array-buffer": {
4320 | "version": "1.0.3",
4321 | "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.3.tgz",
4322 | "integrity": "sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw==",
4323 | "dev": true,
4324 | "license": "MIT",
4325 | "dependencies": {
4326 | "call-bound": "^1.0.3",
4327 | "es-errors": "^1.3.0",
4328 | "is-typed-array": "^1.1.14"
4329 | },
4330 | "engines": {
4331 | "node": ">= 0.4"
4332 | }
4333 | },
4334 | "node_modules/typed-array-byte-length": {
4335 | "version": "1.0.3",
4336 | "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.3.tgz",
4337 | "integrity": "sha512-BaXgOuIxz8n8pIq3e7Atg/7s+DpiYrxn4vdot3w9KbnBhcRQq6o3xemQdIfynqSeXeDrF32x+WvfzmOjPiY9lg==",
4338 | "dev": true,
4339 | "license": "MIT",
4340 | "dependencies": {
4341 | "call-bind": "^1.0.8",
4342 | "for-each": "^0.3.3",
4343 | "gopd": "^1.2.0",
4344 | "has-proto": "^1.2.0",
4345 | "is-typed-array": "^1.1.14"
4346 | },
4347 | "engines": {
4348 | "node": ">= 0.4"
4349 | },
4350 | "funding": {
4351 | "url": "https://github.com/sponsors/ljharb"
4352 | }
4353 | },
4354 | "node_modules/typed-array-byte-offset": {
4355 | "version": "1.0.4",
4356 | "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.4.tgz",
4357 | "integrity": "sha512-bTlAFB/FBYMcuX81gbL4OcpH5PmlFHqlCCpAl8AlEzMz5k53oNDvN8p1PNOWLEmI2x4orp3raOFB51tv9X+MFQ==",
4358 | "dev": true,
4359 | "license": "MIT",
4360 | "dependencies": {
4361 | "available-typed-arrays": "^1.0.7",
4362 | "call-bind": "^1.0.8",
4363 | "for-each": "^0.3.3",
4364 | "gopd": "^1.2.0",
4365 | "has-proto": "^1.2.0",
4366 | "is-typed-array": "^1.1.15",
4367 | "reflect.getprototypeof": "^1.0.9"
4368 | },
4369 | "engines": {
4370 | "node": ">= 0.4"
4371 | },
4372 | "funding": {
4373 | "url": "https://github.com/sponsors/ljharb"
4374 | }
4375 | },
4376 | "node_modules/typed-array-length": {
4377 | "version": "1.0.7",
4378 | "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.7.tgz",
4379 | "integrity": "sha512-3KS2b+kL7fsuk/eJZ7EQdnEmQoaho/r6KUef7hxvltNA5DR8NAUM+8wJMbJyZ4G9/7i3v5zPBIMN5aybAh2/Jg==",
4380 | "dev": true,
4381 | "license": "MIT",
4382 | "dependencies": {
4383 | "call-bind": "^1.0.7",
4384 | "for-each": "^0.3.3",
4385 | "gopd": "^1.0.1",
4386 | "is-typed-array": "^1.1.13",
4387 | "possible-typed-array-names": "^1.0.0",
4388 | "reflect.getprototypeof": "^1.0.6"
4389 | },
4390 | "engines": {
4391 | "node": ">= 0.4"
4392 | },
4393 | "funding": {
4394 | "url": "https://github.com/sponsors/ljharb"
4395 | }
4396 | },
4397 | "node_modules/unbox-primitive": {
4398 | "version": "1.1.0",
4399 | "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.1.0.tgz",
4400 | "integrity": "sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw==",
4401 | "dev": true,
4402 | "license": "MIT",
4403 | "dependencies": {
4404 | "call-bound": "^1.0.3",
4405 | "has-bigints": "^1.0.2",
4406 | "has-symbols": "^1.1.0",
4407 | "which-boxed-primitive": "^1.1.1"
4408 | },
4409 | "engines": {
4410 | "node": ">= 0.4"
4411 | },
4412 | "funding": {
4413 | "url": "https://github.com/sponsors/ljharb"
4414 | }
4415 | },
4416 | "node_modules/update-browserslist-db": {
4417 | "version": "1.1.2",
4418 | "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.2.tgz",
4419 | "integrity": "sha512-PPypAm5qvlD7XMZC3BujecnaOxwhrtoFR+Dqkk5Aa/6DssiH0ibKoketaj9w8LP7Bont1rYeoV5plxD7RTEPRg==",
4420 | "dev": true,
4421 | "funding": [
4422 | {
4423 | "type": "opencollective",
4424 | "url": "https://opencollective.com/browserslist"
4425 | },
4426 | {
4427 | "type": "tidelift",
4428 | "url": "https://tidelift.com/funding/github/npm/browserslist"
4429 | },
4430 | {
4431 | "type": "github",
4432 | "url": "https://github.com/sponsors/ai"
4433 | }
4434 | ],
4435 | "license": "MIT",
4436 | "dependencies": {
4437 | "escalade": "^3.2.0",
4438 | "picocolors": "^1.1.1"
4439 | },
4440 | "bin": {
4441 | "update-browserslist-db": "cli.js"
4442 | },
4443 | "peerDependencies": {
4444 | "browserslist": ">= 4.21.0"
4445 | }
4446 | },
4447 | "node_modules/uri-js": {
4448 | "version": "4.4.1",
4449 | "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz",
4450 | "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==",
4451 | "dev": true,
4452 | "license": "BSD-2-Clause",
4453 | "dependencies": {
4454 | "punycode": "^2.1.0"
4455 | }
4456 | },
4457 | "node_modules/vite": {
4458 | "version": "6.1.1",
4459 | "resolved": "https://registry.npmjs.org/vite/-/vite-6.1.1.tgz",
4460 | "integrity": "sha512-4GgM54XrwRfrOp297aIYspIti66k56v16ZnqHvrIM7mG+HjDlAwS7p+Srr7J6fGvEdOJ5JcQ/D9T7HhtdXDTzA==",
4461 | "dev": true,
4462 | "license": "MIT",
4463 | "dependencies": {
4464 | "esbuild": "^0.24.2",
4465 | "postcss": "^8.5.2",
4466 | "rollup": "^4.30.1"
4467 | },
4468 | "bin": {
4469 | "vite": "bin/vite.js"
4470 | },
4471 | "engines": {
4472 | "node": "^18.0.0 || ^20.0.0 || >=22.0.0"
4473 | },
4474 | "funding": {
4475 | "url": "https://github.com/vitejs/vite?sponsor=1"
4476 | },
4477 | "optionalDependencies": {
4478 | "fsevents": "~2.3.3"
4479 | },
4480 | "peerDependencies": {
4481 | "@types/node": "^18.0.0 || ^20.0.0 || >=22.0.0",
4482 | "jiti": ">=1.21.0",
4483 | "less": "*",
4484 | "lightningcss": "^1.21.0",
4485 | "sass": "*",
4486 | "sass-embedded": "*",
4487 | "stylus": "*",
4488 | "sugarss": "*",
4489 | "terser": "^5.16.0",
4490 | "tsx": "^4.8.1",
4491 | "yaml": "^2.4.2"
4492 | },
4493 | "peerDependenciesMeta": {
4494 | "@types/node": {
4495 | "optional": true
4496 | },
4497 | "jiti": {
4498 | "optional": true
4499 | },
4500 | "less": {
4501 | "optional": true
4502 | },
4503 | "lightningcss": {
4504 | "optional": true
4505 | },
4506 | "sass": {
4507 | "optional": true
4508 | },
4509 | "sass-embedded": {
4510 | "optional": true
4511 | },
4512 | "stylus": {
4513 | "optional": true
4514 | },
4515 | "sugarss": {
4516 | "optional": true
4517 | },
4518 | "terser": {
4519 | "optional": true
4520 | },
4521 | "tsx": {
4522 | "optional": true
4523 | },
4524 | "yaml": {
4525 | "optional": true
4526 | }
4527 | }
4528 | },
4529 | "node_modules/which": {
4530 | "version": "2.0.2",
4531 | "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
4532 | "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==",
4533 | "dev": true,
4534 | "license": "ISC",
4535 | "dependencies": {
4536 | "isexe": "^2.0.0"
4537 | },
4538 | "bin": {
4539 | "node-which": "bin/node-which"
4540 | },
4541 | "engines": {
4542 | "node": ">= 8"
4543 | }
4544 | },
4545 | "node_modules/which-boxed-primitive": {
4546 | "version": "1.1.1",
4547 | "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.1.1.tgz",
4548 | "integrity": "sha512-TbX3mj8n0odCBFVlY8AxkqcHASw3L60jIuF8jFP78az3C2YhmGvqbHBpAjTRH2/xqYunrJ9g1jSyjCjpoWzIAA==",
4549 | "dev": true,
4550 | "license": "MIT",
4551 | "dependencies": {
4552 | "is-bigint": "^1.1.0",
4553 | "is-boolean-object": "^1.2.1",
4554 | "is-number-object": "^1.1.1",
4555 | "is-string": "^1.1.1",
4556 | "is-symbol": "^1.1.1"
4557 | },
4558 | "engines": {
4559 | "node": ">= 0.4"
4560 | },
4561 | "funding": {
4562 | "url": "https://github.com/sponsors/ljharb"
4563 | }
4564 | },
4565 | "node_modules/which-builtin-type": {
4566 | "version": "1.2.1",
4567 | "resolved": "https://registry.npmjs.org/which-builtin-type/-/which-builtin-type-1.2.1.tgz",
4568 | "integrity": "sha512-6iBczoX+kDQ7a3+YJBnh3T+KZRxM/iYNPXicqk66/Qfm1b93iu+yOImkg0zHbj5LNOcNv1TEADiZ0xa34B4q6Q==",
4569 | "dev": true,
4570 | "license": "MIT",
4571 | "dependencies": {
4572 | "call-bound": "^1.0.2",
4573 | "function.prototype.name": "^1.1.6",
4574 | "has-tostringtag": "^1.0.2",
4575 | "is-async-function": "^2.0.0",
4576 | "is-date-object": "^1.1.0",
4577 | "is-finalizationregistry": "^1.1.0",
4578 | "is-generator-function": "^1.0.10",
4579 | "is-regex": "^1.2.1",
4580 | "is-weakref": "^1.0.2",
4581 | "isarray": "^2.0.5",
4582 | "which-boxed-primitive": "^1.1.0",
4583 | "which-collection": "^1.0.2",
4584 | "which-typed-array": "^1.1.16"
4585 | },
4586 | "engines": {
4587 | "node": ">= 0.4"
4588 | },
4589 | "funding": {
4590 | "url": "https://github.com/sponsors/ljharb"
4591 | }
4592 | },
4593 | "node_modules/which-collection": {
4594 | "version": "1.0.2",
4595 | "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.2.tgz",
4596 | "integrity": "sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==",
4597 | "dev": true,
4598 | "license": "MIT",
4599 | "dependencies": {
4600 | "is-map": "^2.0.3",
4601 | "is-set": "^2.0.3",
4602 | "is-weakmap": "^2.0.2",
4603 | "is-weakset": "^2.0.3"
4604 | },
4605 | "engines": {
4606 | "node": ">= 0.4"
4607 | },
4608 | "funding": {
4609 | "url": "https://github.com/sponsors/ljharb"
4610 | }
4611 | },
4612 | "node_modules/which-typed-array": {
4613 | "version": "1.1.18",
4614 | "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.18.tgz",
4615 | "integrity": "sha512-qEcY+KJYlWyLH9vNbsr6/5j59AXk5ni5aakf8ldzBvGde6Iz4sxZGkJyWSAueTG7QhOvNRYb1lDdFmL5Td0QKA==",
4616 | "dev": true,
4617 | "license": "MIT",
4618 | "dependencies": {
4619 | "available-typed-arrays": "^1.0.7",
4620 | "call-bind": "^1.0.8",
4621 | "call-bound": "^1.0.3",
4622 | "for-each": "^0.3.3",
4623 | "gopd": "^1.2.0",
4624 | "has-tostringtag": "^1.0.2"
4625 | },
4626 | "engines": {
4627 | "node": ">= 0.4"
4628 | },
4629 | "funding": {
4630 | "url": "https://github.com/sponsors/ljharb"
4631 | }
4632 | },
4633 | "node_modules/word-wrap": {
4634 | "version": "1.2.5",
4635 | "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz",
4636 | "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==",
4637 | "dev": true,
4638 | "license": "MIT",
4639 | "engines": {
4640 | "node": ">=0.10.0"
4641 | }
4642 | },
4643 | "node_modules/yallist": {
4644 | "version": "3.1.1",
4645 | "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz",
4646 | "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==",
4647 | "dev": true,
4648 | "license": "ISC"
4649 | },
4650 | "node_modules/yocto-queue": {
4651 | "version": "0.1.0",
4652 | "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz",
4653 | "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==",
4654 | "dev": true,
4655 | "license": "MIT",
4656 | "engines": {
4657 | "node": ">=10"
4658 | },
4659 | "funding": {
4660 | "url": "https://github.com/sponsors/sindresorhus"
4661 | }
4662 | }
4663 | }
4664 | }
4665 |
--------------------------------------------------------------------------------
/react/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "react",
3 | "private": true,
4 | "version": "0.0.0",
5 | "type": "module",
6 | "scripts": {
7 | "dev": "vite",
8 | "build": "vite build",
9 | "lint": "eslint .",
10 | "preview": "vite preview"
11 | },
12 | "dependencies": {
13 | "react": "^19.0.0",
14 | "react-dom": "^19.0.0",
15 | "react-router-dom": "^7.2.0"
16 | },
17 | "devDependencies": {
18 | "@eslint/js": "^9.19.0",
19 | "@types/react": "^19.0.8",
20 | "@types/react-dom": "^19.0.3",
21 | "@vitejs/plugin-react": "^4.3.4",
22 | "eslint": "^9.19.0",
23 | "eslint-plugin-react": "^7.37.4",
24 | "eslint-plugin-react-hooks": "^5.0.0",
25 | "eslint-plugin-react-refresh": "^0.4.18",
26 | "globals": "^15.14.0",
27 | "vite": "^6.1.0"
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/react/public/vite.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/react/src/App.css:
--------------------------------------------------------------------------------
1 | #root {
2 | max-width: 1280px;
3 | margin: 0 auto;
4 | padding: 2rem;
5 | text-align: center;
6 | }
7 |
8 | .logo {
9 | height: 6em;
10 | padding: 1.5em;
11 | will-change: filter;
12 | transition: filter 300ms;
13 | }
14 | .logo:hover {
15 | filter: drop-shadow(0 0 2em #646cffaa);
16 | }
17 | .logo.react:hover {
18 | filter: drop-shadow(0 0 2em #61dafbaa);
19 | }
20 |
21 | @keyframes logo-spin {
22 | from {
23 | transform: rotate(0deg);
24 | }
25 | to {
26 | transform: rotate(360deg);
27 | }
28 | }
29 |
30 | @media (prefers-reduced-motion: no-preference) {
31 | a:nth-of-type(2) .logo {
32 | animation: logo-spin infinite 20s linear;
33 | }
34 | }
35 |
36 | .card {
37 | padding: 2em;
38 | }
39 |
40 | .read-the-docs {
41 | color: #888;
42 | }
43 |
--------------------------------------------------------------------------------
/react/src/App.jsx:
--------------------------------------------------------------------------------
1 | /* eslint-disable react/prop-types */
2 | import { BrowserRouter, Routes, Route, Navigate } from "react-router-dom";
3 | import Login from "./login";
4 | import Reg from "./resister";
5 | import Dashboard from "./Dasjboard";
6 | import TodoForm from "./todoform";
7 |
8 | // Protected Route Component
9 | const ProtectedRoute = ({ children }) => {
10 | const token = localStorage.getItem("token");
11 | return token ? children : ;
12 | };
13 |
14 | function App() {
15 | return (
16 |
17 |
18 | } />
19 | } />
20 | {/* Protecting the Dashboard Route */}
21 |
25 |
26 |
27 | }
28 | />
29 |
33 |
34 |
35 | }
36 | />
37 |
38 |
39 | );
40 | }
41 |
42 | export default App;
43 |
--------------------------------------------------------------------------------
/react/src/Dasjboard.jsx:
--------------------------------------------------------------------------------
1 | import { useEffect } from "react";
2 | import { useState } from "react";
3 | import { useNavigate } from "react-router-dom";
4 | import Me from "./Me";
5 |
6 | const API_URL = "http://localhost:8000/";
7 |
8 | const Dasjboard = () => {
9 | const [name, setName] = useState([]);
10 | const navigation = useNavigate();
11 |
12 | useEffect(() => {
13 | try {
14 | const fetchUsers = async () => {
15 | const res = await fetch(`${API_URL}`, {
16 | method: "GET",
17 | headers: {
18 | "Content-Type": "application/json",
19 | },
20 | });
21 |
22 | if (!res.ok) {
23 | throw new Error("Error fetching users");
24 | }
25 |
26 | const data = await res.json();
27 | console.log(data);
28 | setName(data);
29 | };
30 |
31 | fetchUsers();
32 | } catch (error) {
33 | console.error("Error fetching users:", error);
34 | }
35 | }, []);
36 |
37 | useEffect(() => {
38 | const fetchUsers = async () => {
39 | const token = localStorage.getItem("token"); // Get token from localStorage
40 |
41 | if (!token) {
42 | console.log("No token found, redirecting to login...");
43 | navigation("/login");
44 | return;
45 | }
46 |
47 | try {
48 | const res = await fetch(`${API_URL}me`, {
49 | method: "GET",
50 | headers: {
51 | "Content-Type": "application/json",
52 | Authorization: `Bearer ${token}`, // ✅ Include Token
53 | },
54 | });
55 |
56 | if (!res.ok) {
57 | const errorData = await res.json();
58 | throw new Error(errorData.detail || "Unauthorized");
59 | }
60 |
61 | const data = await res.json();
62 | console.log(data);
63 | } catch (error) {
64 | console.error("Error fetching users:", error);
65 | localStorage.removeItem("token"); // Remove invalid token
66 | navigation("/login"); // Redirect to login page
67 | }
68 | };
69 |
70 | fetchUsers();
71 | }, [navigation]);
72 |
73 | const handleLogout = () => {
74 | localStorage.removeItem("token");
75 | navigation("/login");
76 |
77 | window.alert("Logout success");
78 | };
79 |
80 | return (
81 |
82 |
Dasjboard
83 |
87 |
88 |
89 |
90 | {name.map((item) => (
91 | -
92 |
{item.username}
93 |
94 | ))}
95 |
96 |
97 | );
98 | };
99 |
100 | export default Dasjboard;
101 |
--------------------------------------------------------------------------------
/react/src/Me.jsx:
--------------------------------------------------------------------------------
1 | import { useEffect, useState } from "react";
2 | import { useNavigate } from "react-router-dom";
3 |
4 | const API_URL = "http://localhost:8000/";
5 |
6 | const Me = () => {
7 | const [user, setUser] = useState(null);
8 | const navigate = useNavigate();
9 |
10 | useEffect(() => {
11 | const fetchUser = async () => {
12 | const token = localStorage.getItem("token");
13 | if (!token) {
14 | console.log("No token found, redirecting to login...");
15 | navigate("/login");
16 | return;
17 | }
18 |
19 | try {
20 | const res = await fetch(`${API_URL}me`, {
21 | method: "GET",
22 | headers: {
23 | "Content-Type": "application/json",
24 | Authorization: `Bearer ${token}`, // ✅ Include Token in Header
25 | },
26 | });
27 |
28 | if (!res.ok) {
29 | throw new Error(`HTTP error! Status: ${res.status}`);
30 | }
31 |
32 | const data = await res.json();
33 | setUser(data);
34 | } catch (error) {
35 | console.error("Error fetching user:", error);
36 | localStorage.removeItem("token"); // Clear invalid token
37 | // Redirect to login
38 | }
39 | };
40 |
41 | fetchUser();
42 | }, [navigate]);
43 |
44 | return (
45 |
46 | {user ?
Welcome, {user.username}!
:
Loading user data...
}
47 |
48 | );
49 | };
50 |
51 | export default Me;
52 |
--------------------------------------------------------------------------------
/react/src/assets/react.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/react/src/getTodos.jsx:
--------------------------------------------------------------------------------
1 | import { useEffect, useState } from "react";
2 |
3 | const API_URL = "http://localhost:8000/gettodos";
4 |
5 | const GetTodos = () => {
6 | const [todos, setTodos] = useState([]);
7 | useEffect(() => {
8 | const fetchTodos = async () => {
9 | const token = localStorage.getItem("token");
10 |
11 | try {
12 | const response = await fetch(API_URL, {
13 | method: "GET",
14 | headers: {
15 | "Content-Type": "application/json",
16 | Authorization: `Bearer ${token}`,
17 | },
18 | });
19 |
20 | if (!response.ok) {
21 | throw new Error(`HTTP error! Status: ${response.status}`);
22 | }
23 |
24 | const data = await response.json(); // Parse JSON response
25 | console.log(data);
26 | setTodos(data);
27 | } catch (error) {
28 | console.error("Error fetching data:", error);
29 | }
30 | };
31 |
32 | fetchTodos(); // Call the async function inside useEffect
33 | }, []);
34 |
35 | return (
36 |
37 |
All Todos
38 |
39 | {todos.map((todo, i) => (
40 |
41 | {1 + i}
42 |
{todo.title}
43 | {todo.description}
44 | {todo.completed ? "Completed" : "Not Completed"}
45 |
46 | ))}
47 |
48 |
49 | );
50 | };
51 |
52 | export default GetTodos;
53 |
--------------------------------------------------------------------------------
/react/src/index.css:
--------------------------------------------------------------------------------
1 | :root {
2 | font-family: Inter, system-ui, Avenir, Helvetica, Arial, sans-serif;
3 | line-height: 1.5;
4 | font-weight: 400;
5 |
6 | color-scheme: light dark;
7 | color: rgba(255, 255, 255, 0.87);
8 | background-color: #242424;
9 |
10 | font-synthesis: none;
11 | text-rendering: optimizeLegibility;
12 | -webkit-font-smoothing: antialiased;
13 | -moz-osx-font-smoothing: grayscale;
14 | }
15 |
--------------------------------------------------------------------------------
/react/src/login.jsx:
--------------------------------------------------------------------------------
1 | import { useState } from "react";
2 | import { useNavigate } from "react-router-dom";
3 |
4 | const API_URL = "http://localhost:8000/";
5 |
6 | const Login = () => {
7 | const [name, setName] = useState("");
8 | const [password, setPassword] = useState("");
9 | const navigate = useNavigate();
10 |
11 | const handleSubmit = async (e) => {
12 | e.preventDefault();
13 | try {
14 | const res = await fetch(`${API_URL}login`, {
15 | method: "POST",
16 | headers: {
17 | "Content-Type": "application/json",
18 | },
19 | body: JSON.stringify({ username: name, password }),
20 | });
21 |
22 | const data = await res.json();
23 |
24 | if (res.status !== 200) {
25 | window.alert(data.error);
26 | console.log("Login error:", data.error);
27 | } else {
28 | localStorage.setItem("token", data.access_token); // Store token correctly
29 | window.alert("Login successful");
30 | navigate("/dashboard");
31 | console.log("Login success:", data);
32 | }
33 | } catch (error) {
34 | console.log("Request failed:", error);
35 | }
36 | };
37 |
38 | return (
39 | <>
40 | Login
41 |
57 | >
58 | );
59 | };
60 |
61 | export default Login;
62 |
--------------------------------------------------------------------------------
/react/src/main.jsx:
--------------------------------------------------------------------------------
1 | import { StrictMode } from 'react'
2 | import { createRoot } from 'react-dom/client'
3 | import './index.css'
4 | import App from './App.jsx'
5 |
6 | createRoot(document.getElementById('root')).render(
7 |
8 |
9 | ,
10 | )
11 |
--------------------------------------------------------------------------------
/react/src/resister.jsx:
--------------------------------------------------------------------------------
1 | import { useState } from "react";
2 | import { useNavigate } from "react-router-dom";
3 |
4 | const API_URL = "http://localhost:8000/";
5 |
6 | const Reg = () => {
7 | const [name, setName] = useState("");
8 | const [password, setPassword] = useState("");
9 |
10 | const navigate = useNavigate();
11 |
12 | const handleSubmit = async (e) => {
13 | e.preventDefault();
14 | try {
15 | const res = await fetch(`${API_URL}register`, {
16 | method: "POST",
17 | headers: {
18 | "Content-Type": "application/json",
19 | },
20 | body: JSON.stringify({
21 | username: name,
22 | password: password,
23 | }),
24 | });
25 |
26 | const data = await res.json();
27 |
28 | if (res.ok) {
29 | window.alert("Register success");
30 | console.log("Success:", data);
31 | navigate("/login");
32 | } else {
33 | window.alert(data.error || "Unknown error");
34 | console.error("Error:", data.error || "Unknown error");
35 | }
36 | } catch (error) {
37 | console.error("Request failed:", error);
38 | }
39 | };
40 |
41 | return (
42 | <>
43 | Register
44 |
60 | >
61 | );
62 | };
63 |
64 | export default Reg;
65 |
--------------------------------------------------------------------------------
/react/src/todoform.jsx:
--------------------------------------------------------------------------------
1 | //
2 | import { useState } from "react";
3 | import GetTodos from "./getTodos";
4 | const API_URL = "http://127.0.0.1:8000/addtodo";
5 | const TodoForm = () => {
6 | const [title, setTitle] = useState("");
7 | const [description, setDescription] = useState("");
8 | const [completed, setCompleted] = useState(false);
9 | const token = localStorage.getItem("token");
10 |
11 | const handleSubmit = (e) => {
12 | e.preventDefault();
13 |
14 | try {
15 | const response = fetch(API_URL, {
16 | method: "POST",
17 | headers: {
18 | "Content-Type": "application/json",
19 | Authorization: `Bearer ${token}`,
20 | },
21 | body: JSON.stringify({
22 | title,
23 | description,
24 | completed,
25 | }),
26 | }).then((res) => {
27 | console.log(res);
28 | console.log("Todo Added Successfully");
29 | });
30 |
31 | setTitle("");
32 | setDescription("");
33 | setCompleted(false);
34 | console.log(response);
35 | } catch (error) {
36 | console.error(error);
37 | }
38 | };
39 |
40 | return (
41 |
42 |
Todo Form
43 |
72 |
73 |
74 |
75 | );
76 | };
77 |
78 | export default TodoForm;
79 |
--------------------------------------------------------------------------------
/react/vite.config.js:
--------------------------------------------------------------------------------
1 | import { defineConfig } from 'vite'
2 | import react from '@vitejs/plugin-react'
3 |
4 | // https://vite.dev/config/
5 | export default defineConfig({
6 | plugins: [react()],
7 | })
8 |
--------------------------------------------------------------------------------