Artifact lookup soc (#230)
* feat: Add process_name field to IrisAlertContext model and add asset to iris alert during alert escalation * feat: Add artifact recommendation endpoint and hard-coded response for testing * refactor * configs refactor bis * update artifact components * added assets ArtifactsCollect tab * precommit fixes --------- Co-authored-by: Davide Di Modica <webmaster.ddm@gmail.com>
taylor_socfortress committed
Jun 5, 2024 at 14:07 UTC
ec24538150f6f823196760972ef37e83f35e0226
23 files changed
+305
-12100
.gitignore
+6
@@ -61,3 +61,9 @@ backend/report.pdf
61
62
backend/report.html
63
backend/app/integrations/office365/services/wazuh_config.xml
64
+
65
+frontend/tsconfig.app.tsbuildinfo
66
+
67
+frontend/tsconfig.node.tsbuildinfo
68
+
69
+frontend/tsconfig.vitest.tsbuildinfo
.vscode/settings.json
+5
@@ -20,12 +20,14 @@
20
"forgotpassword",
21
"Healthcheck",
22
"healthchecks",
23
+ "hoverable",
24
"iconoir",
25
"Indicies",
26
"Logsource",
27
"majesticons",
28
"mimecast",
29
"mynaui",
30
+ "nightwatch",
31
"ntime",
32
"nums",
33
"ochin",
@@ -41,8 +43,11 @@
43
"Socfortress",
44
"sparkline",
45
"Sysmon",
46
+ "tabler",
47
"taze",
48
"timerange",
49
+ "timesec",
50
+ "tsbuildinfo",
51
"uvicorn",
52
"venv",
53
"virustotal",
backend/app/integrations/alert_escalation/schema/escalate_alert.py
+4
@@ -209,5 +209,9 @@ class IrisAlertPayload(BaseModel):
209
description="Contextual information about the alert",
210
)
211
212
+ # Allow extra fields
213
+ class Config:
214
+ extra = Extra.allow
215
+
216
def to_dict(self):
217
return self.dict(exclude_none=True)
backend/app/integrations/alert_escalation/services/escalate_alert.py
+123
-6
@@ -11,6 +11,8 @@ from app.connectors.dfir_iris.utils.universal import fetch_and_validate_data
11
from app.connectors.dfir_iris.utils.universal import initialize_client_and_alert
12
from app.connectors.utils import get_connector_info_from_db
13
from app.connectors.wazuh_indexer.utils.universal import create_wazuh_indexer_client
14
+from app.db.universal_models import Agents
15
+from app.integrations.alert_creation.general.schema.alert import IrisAsset
16
from app.integrations.alert_creation_settings.models.alert_creation_settings import (
17
AlertCreationSettings,
18
)
@@ -23,6 +25,7 @@ from app.integrations.alert_escalation.schema.escalate_alert import IrisAlertCon
25
from app.integrations.alert_escalation.schema.escalate_alert import IrisAlertPayload
26
from app.integrations.alert_escalation.schema.escalate_alert import SourceFieldsToRemove
27
from app.integrations.alert_escalation.schema.escalate_alert import SyslogLevelMapping
28
+from app.integrations.utils.alerts import get_asset_type_id
29
30
31
async def fetch_settings(field: str, value: str, session: AsyncSession):
@@ -131,22 +134,62 @@ async def set_alert_level(syslog_level: str):
134
return 3
135
136
134
-async def get_process_name(source_dict: dict) -> List[str]:
137
+def remove_process_name_if_osquery(source_dict: dict) -> None:
138
"""
136
- Get the process name from the source dictionary.
139
+ Remove the process_name field from the source dictionary if rule_group1 is 'osquery'.
140
+
141
+ Args:
142
+ source_dict (dict): The source dictionary.
143
+ """
144
+ rule_group1 = source_dict.get("rule_group1")
145
+ if rule_group1 == "osquery":
146
+ logger.info("Removing process_name field")
147
+ source_dict.pop("process_name", None)
148
+
149
+
150
+def get_process_image(source_dict: dict) -> str:
151
+ """
152
+ Get the process_image field from the source dictionary.
153
154
Args:
155
source_dict (dict): The source dictionary.
156
157
Returns:
142
- List[str]: The process name as a list.
158
+ str: The process image.
159
"""
144
- # Get the last part of the process_image path
160
process_image = source_dict.get("process_image")
146
- if process_image is None:
147
- process_image = source_dict.get("data_win_eventdata_image")
161
+ logger.info(f"Process image: {process_image}")
162
+ return process_image if process_image else source_dict.get("data_win_eventdata_image")
163
+
164
165
+def get_process_name_from_image(process_image: str) -> str:
166
+ """
167
+ Get the process name from the process image.
168
+
169
+ Args:
170
+ process_image (str): The process image.
171
+
172
+ Returns:
173
+ str: The process name.
174
+ """
175
process_name = os.path.basename(process_image) if process_image else None
176
+ logger.info(f"Process name: {process_name}")
177
+ return process_name
178
+
179
+
180
+async def get_process_name(source_dict: dict) -> List[str]:
181
+ """
182
+ Get the process name from the source dictionary.
183
+
184
+ Args:
185
+ source_dict (dict): The source dictionary.
186
+
187
+ Returns:
188
+ List[str]: The process name as a list.
189
+ """
190
+ remove_process_name_if_osquery(source_dict)
191
+ process_image = get_process_image(source_dict)
192
+ process_name = get_process_name_from_image(process_image)
193
return [process_name] if process_name else []
194
195
@@ -314,6 +357,9 @@ async def build_alert_payload(
357
# Get the timefield value from the alert_details
358
if hasattr(alert_details, timefield):
359
alert_details.time_field = getattr(alert_details, timefield)
360
+ # Check if its part of _source
361
+ if hasattr(alert_details._source, timefield):
362
+ alert_details.time_field = getattr(alert_details._source, timefield)
363
logger.info(f"Alert has context: {context_payload}")
364
try:
365
return IrisAlertPayload(
@@ -335,6 +381,75 @@ async def build_alert_payload(
381
)
382
383
384
+async def retrieve_agent_details_from_db(agent_name: str, session: AsyncSession):
385
+ """
386
+ Retrieve agent details from the database.
387
+
388
+ Args:
389
+ agent_name (str): The name of the agent.
390
+ session (AsyncSession): The database session.
391
+
392
+ Returns:
393
+ Agents: The agent details.
394
+ """
395
+ logger.info(f"Retrieving agent details for {agent_name}")
396
+ result = await session.execute(
397
+ select(Agents).where(Agents.hostname == agent_name),
398
+ )
399
+ agent = result.scalars().first()
400
+ if agent:
401
+ return agent
402
+ return None
403
+
404
+
405
+async def add_asset_to_iris_alert(alert_id: int, asset_details: Agents, iris_alert_payload: IrisAlertPayload, session: AsyncSession):
406
+ client, alert_client = await initialize_client_and_alert("DFIR-IRIS")
407
+ asset_data = {
408
+ "assets": [
409
+ dict(
410
+ IrisAsset(
411
+ asset_name=asset_details.hostname,
412
+ asset_ip=asset_details.ip_address,
413
+ asset_description="",
414
+ asset_type_id=await get_asset_type_id(asset_details.os),
415
+ asset_tags=f"agent_id:{asset_details.agent_id}",
416
+ ).dict(),
417
+ ),
418
+ ],
419
+ }
420
+ logger.info(f"Adding asset to alert {alert_id} with asset data: {asset_data}")
421
+ await fetch_and_validate_data(
422
+ client,
423
+ alert_client.update_alert,
424
+ alert_id,
425
+ asset_data,
426
+ )
427
+
428
+
429
+async def add_asset_if_wazuh(alert_details: GenericAlertModel, alert_id: int, iris_alert_payload: IrisAlertPayload, session: AsyncSession):
430
+ """
431
+ Adds the asset to the alert if the alert is from Wazuh.
432
+
433
+ Args:
434
+ alert_details (GenericAlertModel): The details of the alert.
435
+ alert_id (int): The ID of the alert.
436
+ session (AsyncSession): The database session.
437
+ """
438
+ # Check if `agent_id` is present in the alert details and is not equal to `000`
439
+ if hasattr(alert_details._source, "agent_id") and alert_details._source.agent_id != "000":
440
+ logger.info(f"Adding asset to alert {alert_id}")
441
+ asset_details = await retrieve_agent_details_from_db(alert_details._source.agent_name, session)
442
+ if asset_details:
443
+ await add_asset_to_iris_alert(alert_id, asset_details, iris_alert_payload, session)
444
+ logger.info(f"Asset added to alert {alert_id}")
445
+ return None
446
+ else:
447
+ logger.error(f"Failed to retrieve asset details for {alert_details._source.agent_name}")
448
+ return None
449
+ logger.info(f"Alert {alert_id} is not from Wazuh. Skipping asset addition.")
450
+ return None
451
+
452
+
453
async def create_alert(
454
alert: CreateAlertRequest,
455
session: AsyncSession,
@@ -373,6 +488,8 @@ async def create_alert(
488
)
489
alert_id = result["data"]["alert_id"]
490
491
+ await add_asset_if_wazuh(alert_details, alert_id, iris_alert_payload, session)
492
+
493
es_client = await create_wazuh_indexer_client("Wazuh-Indexer")
494
iris_url = await add_alert_to_document(
495
es_client,
frontend/.eslintrc.cjs
+1
-1
@@ -14,7 +14,7 @@ module.exports = {
14
extends: ["plugin:vue/vue3-essential", "eslint:recommended", "@vue/eslint-config-typescript"],
15
overrides: [
16
{
17
- files: ["cypress/e2e/**.{cy,spec}.{js,ts,jsx,tsx}"],
17
+ files: ["cypress/e2e/**.{cy,spec}.{js,ts,jsx,tsx}", "cypress/support/**/*.{js,ts,jsx,tsx}"],
18
extends: ["plugin:cypress/recommended"]
19
}
20
],
frontend/package-lock.json
deleted
-11979
@@ -1,11979 +0,0 @@
1
-{
2
- "name": "copilot",
3
- "version": "1.0.0",
4
- "lockfileVersion": 3,
5
- "requires": true,
6
- "packages": {
7
- "": {
8
- "name": "copilot",
9
- "version": "1.0.0",
10
- "dependencies": {
11
- "@ajoelp/json-to-formdata": "^1.5.0",
12
- "@f3ve/vue-markdown-it": "^0.2.2",
13
- "@fontsource/jetbrains-mono": "^5.0.20",
14
- "@fontsource/lexend": "^5.0.20",
15
- "@fontsource/public-sans": "^5.0.18",
16
- "@popperjs/core": "^2.11.8",
17
- "@shikijs/markdown-it": "^1.6.1",
18
- "@vueuse/components": "^10.10.0",
19
- "@vueuse/core": "^10.10.0",
20
- "apexcharts": "^3.49.1",
21
- "bytes": "^3.1.2",
22
- "colord": "^2.9.3",
23
- "crypto-js": "^4.2.0",
24
- "dayjs": "^1.11.11",
25
- "detect-touch-device": "^1.1.6",
26
- "echarts": "^5.5.0",
27
- "file-saver": "^2.0.5",
28
- "html-entities": "^2.5.2",
29
- "jose": "^5.3.0",
30
- "js-md5": "^0.8.3",
31
- "lodash": "^4.17.21",
32
- "mitt": "^3.0.1",
33
- "naive-ui": "^2.38.2",
34
- "password-validator": "^5.3.0",
35
- "pinia": "^2.1.7",
36
- "pinia-plugin-persistedstate": "^3.2.1",
37
- "secure-ls": "^1.2.6",
38
- "shiki": "^1.6.1",
39
- "validator": "^13.12.0",
40
- "vue": "^3.4.27",
41
- "vue-advanced-cropper": "^2.8.8",
42
- "vue-highlight-words": "^3.0.1",
43
- "vue-i18n": "^9.13.1",
44
- "vue-router": "^4.3.2",
45
- "vue-sjv": "^0.0.6",
46
- "vue3-apexcharts": "^1.5.3",
47
- "vue3-marquee": "^4.2.0",
48
- "vuedraggable": "^4.1.0"
49
- },
50
- "devDependencies": {
51
- "@clack/prompts": "^0.7.0",
52
- "@iconify/vue": "^4.1.2",
53
- "@rushstack/eslint-patch": "^1.10.3",
54
- "@tsconfig/node18": "^18.2.4",
55
- "@types/bytes": "^3.1.4",
56
- "@types/file-saver": "^2.0.7",
57
- "@types/fs-extra": "^11.0.4",
58
- "@types/inquirer": "^9.0.7",
59
- "@types/jsdom": "^21.1.6",
60
- "@types/lodash": "^4.17.4",
61
- "@types/node": "^20.12.13",
62
- "@types/validator": "^13.11.10",
63
- "@vitejs/plugin-vue": "^5.0.4",
64
- "@vitejs/plugin-vue-jsx": "^3.1.0",
65
- "@vue/eslint-config-prettier": "^9.0.0",
66
- "@vue/eslint-config-typescript": "^13.0.0",
67
- "@vue/test-utils": "^2.4.6",
68
- "@vue/tsconfig": "^0.5.1",
69
- "autoprefixer": "^10.4.19",
70
- "cypress": "^13.10.0",
71
- "eslint": "^8.57.0",
72
- "eslint-plugin-cypress": "^3.3.0",
73
- "eslint-plugin-vue": "^9.26.0",
74
- "flourite": "^1.2.4",
75
- "fs-extra": "^11.2.0",
76
- "ip": "^2.0.1",
77
- "jsdom": "^24.1.0",
78
- "json5": "^2.2.3",
79
- "npm-run-all": "^4.1.5",
80
- "picocolors": "^1.0.1",
81
- "postcss": "^8.4.38",
82
- "prettier": "^3.2.5",
83
- "sass": "^1.77.3",
84
- "start-server-and-test": "^2.0.3",
85
- "tailwind-config-viewer": "^2.0.2",
86
- "tailwindcss": "^3.4.3",
87
- "taze": "^0.13.8",
88
- "unplugin-vue-components": "^0.27.0",
89
- "vite": "^5.2.12",
90
- "vite-bundle-analyzer": "^0.9.4",
91
- "vite-bundle-visualizer": "^1.2.1",
92
- "vite-svg-loader": "^5.1.0",
93
- "vitest": "^1.6.0",
94
- "vue-tsc": "^2.0.19"
95
- },
96
- "engines": {
97
- "node": ">=18.0.0"
98
- }
99
- },
100
- "node_modules/@ajoelp/json-to-formdata": {
101
- "version": "1.5.0",
102
- "resolved": "https://registry.npmjs.org/@ajoelp/json-to-formdata/-/json-to-formdata-1.5.0.tgz",
103
- "integrity": "sha512-nrlfeTSL0X0dtx5r2KpzPiqLSIQquiiJjUKsQAKzWaCmO2QoYZCyb5ENZwF3YoffKronOCJr25mxaD8JRJmK8w==",
104
- "dependencies": {
105
- "lodash": "4.17.21"
106
- }
107
- },
108
- "node_modules/@alloc/quick-lru": {
109
- "version": "5.2.0",
110
- "resolved": "https://registry.npmjs.org/@alloc/quick-lru/-/quick-lru-5.2.0.tgz",
111
- "integrity": "sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==",
112
- "dev": true,
113
- "engines": {
114
- "node": ">=10"
115
- },
116
- "funding": {
117
- "url": "https://github.com/sponsors/sindresorhus"
118
- }
119
- },
120
- "node_modules/@ampproject/remapping": {
121
- "version": "2.3.0",
122
- "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.3.0.tgz",
123
- "integrity": "sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==",
124
- "dev": true,
125
- "dependencies": {
126
- "@jridgewell/gen-mapping": "^0.3.5",
127
- "@jridgewell/trace-mapping": "^0.3.24"
128
- },
129
- "engines": {
130
- "node": ">=6.0.0"
131
- }
132
- },
133
- "node_modules/@antfu/ni": {
134
- "version": "0.21.12",
135
- "resolved": "https://registry.npmjs.org/@antfu/ni/-/ni-0.21.12.tgz",
136
- "integrity": "sha512-2aDL3WUv8hMJb2L3r/PIQWsTLyq7RQr3v9xD16fiz6O8ys1xEyLhhTOv8gxtZvJiTzjTF5pHoArvRdesGL1DMQ==",
137
- "dev": true,
138
- "bin": {
139
- "na": "bin/na.mjs",
140
- "nci": "bin/nci.mjs",
141
- "ni": "bin/ni.mjs",
142
- "nlx": "bin/nlx.mjs",
143
- "nr": "bin/nr.mjs",
144
- "nu": "bin/nu.mjs",
145
- "nun": "bin/nun.mjs"
146
- }
147
- },
148
- "node_modules/@antfu/utils": {
149
- "version": "0.7.8",
150
- "resolved": "https://registry.npmjs.org/@antfu/utils/-/utils-0.7.8.tgz",
151
- "integrity": "sha512-rWQkqXRESdjXtc+7NRfK9lASQjpXJu1ayp7qi1d23zZorY+wBHVLHHoVcMsEnkqEBWTFqbztO7/QdJFzyEcLTg==",
152
- "funding": {
153
- "url": "https://github.com/sponsors/antfu"
154
- }
155
- },
156
- "node_modules/@babel/code-frame": {
157
- "version": "7.24.2",
158
- "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.2.tgz",
159
- "integrity": "sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ==",
160
- "dev": true,
161
- "dependencies": {
162
- "@babel/highlight": "^7.24.2",
163
- "picocolors": "^1.0.0"
164
- },
165
- "engines": {
166
- "node": ">=6.9.0"
167
- }
168
- },
169
- "node_modules/@babel/compat-data": {
170
- "version": "7.24.4",
171
- "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.24.4.tgz",
172
- "integrity": "sha512-vg8Gih2MLK+kOkHJp4gBEIkyaIi00jgWot2D9QOmmfLC8jINSOzmCLta6Bvz/JSBCqnegV0L80jhxkol5GWNfQ==",
173
- "dev": true,
174
- "engines": {
175
- "node": ">=6.9.0"
176
- }
177
- },
178
- "node_modules/@babel/core": {
179
- "version": "7.24.5",
180
- "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.24.5.tgz",
181
- "integrity": "sha512-tVQRucExLQ02Boi4vdPp49svNGcfL2GhdTCT9aldhXgCJVAI21EtRfBettiuLUwce/7r6bFdgs6JFkcdTiFttA==",
182
- "dev": true,
183
- "dependencies": {
184
- "@ampproject/remapping": "^2.2.0",
185
- "@babel/code-frame": "^7.24.2",
186
- "@babel/generator": "^7.24.5",
187
- "@babel/helper-compilation-targets": "^7.23.6",
188
- "@babel/helper-module-transforms": "^7.24.5",
189
- "@babel/helpers": "^7.24.5",
190
- "@babel/parser": "^7.24.5",
191
- "@babel/template": "^7.24.0",
192
- "@babel/traverse": "^7.24.5",
193
- "@babel/types": "^7.24.5",
194
- "convert-source-map": "^2.0.0",
195
- "debug": "^4.1.0",
196
- "gensync": "^1.0.0-beta.2",
197
- "json5": "^2.2.3",
198
- "semver": "^6.3.1"
199
- },
200
- "engines": {
201
- "node": ">=6.9.0"
202
- },
203
- "funding": {
204
- "type": "opencollective",
205
- "url": "https://opencollective.com/babel"
206
- }
207
- },
208
- "node_modules/@babel/core/node_modules/semver": {
209
- "version": "6.3.1",
210
- "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
211
- "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
212
- "dev": true,
213
- "bin": {
214
- "semver": "bin/semver.js"
215
- }
216
- },
217
- "node_modules/@babel/generator": {
218
- "version": "7.24.5",
219
- "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.5.tgz",
220
- "integrity": "sha512-x32i4hEXvr+iI0NEoEfDKzlemF8AmtOP8CcrRaEcpzysWuoEb1KknpcvMsHKPONoKZiDuItklgWhB18xEhr9PA==",
221
- "dev": true,
222
- "dependencies": {
223
- "@babel/types": "^7.24.5",
224
- "@jridgewell/gen-mapping": "^0.3.5",
225
- "@jridgewell/trace-mapping": "^0.3.25",
226
- "jsesc": "^2.5.1"
227
- },
228
- "engines": {
229
- "node": ">=6.9.0"
230
- }
231
- },
232
- "node_modules/@babel/helper-annotate-as-pure": {
233
- "version": "7.22.5",
234
- "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.22.5.tgz",
235
- "integrity": "sha512-LvBTxu8bQSQkcyKOU+a1btnNFQ1dMAd0R6PyW3arXes06F6QLWLIrd681bxRPIXlrMGR3XYnW9JyML7dP3qgxg==",
236
- "dev": true,
237
- "dependencies": {
238
- "@babel/types": "^7.22.5"
239
- },
240
- "engines": {
241
- "node": ">=6.9.0"
242
- }
243
- },
244
- "node_modules/@babel/helper-compilation-targets": {
245
- "version": "7.23.6",
246
- "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.23.6.tgz",
247
- "integrity": "sha512-9JB548GZoQVmzrFgp8o7KxdgkTGm6xs9DW0o/Pim72UDjzr5ObUQ6ZzYPqA+g9OTS2bBQoctLJrky0RDCAWRgQ==",
248
- "dev": true,
249
- "dependencies": {
250
- "@babel/compat-data": "^7.23.5",
251
- "@babel/helper-validator-option": "^7.23.5",
252
- "browserslist": "^4.22.2",
253
- "lru-cache": "^5.1.1",
254
- "semver": "^6.3.1"
255
- },
256
- "engines": {
257
- "node": ">=6.9.0"
258
- }
259
- },
260
- "node_modules/@babel/helper-compilation-targets/node_modules/semver": {
261
- "version": "6.3.1",
262
- "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
263
- "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
264
- "dev": true,
265
- "bin": {
266
- "semver": "bin/semver.js"
267
- }
268
- },
269
- "node_modules/@babel/helper-create-class-features-plugin": {
270
- "version": "7.24.5",
271
- "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.24.5.tgz",
272
- "integrity": "sha512-uRc4Cv8UQWnE4NXlYTIIdM7wfFkOqlFztcC/gVXDKohKoVB3OyonfelUBaJzSwpBntZ2KYGF/9S7asCHsXwW6g==",
273
- "dev": true,
274
- "dependencies": {
275
- "@babel/helper-annotate-as-pure": "^7.22.5",
276
- "@babel/helper-environment-visitor": "^7.22.20",
277
- "@babel/helper-function-name": "^7.23.0",
278
- "@babel/helper-member-expression-to-functions": "^7.24.5",
279
- "@babel/helper-optimise-call-expression": "^7.22.5",
280
- "@babel/helper-replace-supers": "^7.24.1",
281
- "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5",
282
- "@babel/helper-split-export-declaration": "^7.24.5",
283
- "semver": "^6.3.1"
284
- },
285
- "engines": {
286
- "node": ">=6.9.0"
287
- },
288
- "peerDependencies": {
289
- "@babel/core": "^7.0.0"
290
- }
291
- },
292
- "node_modules/@babel/helper-create-class-features-plugin/node_modules/semver": {
293
- "version": "6.3.1",
294
- "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
295
- "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
296
- "dev": true,
297
- "bin": {
298
- "semver": "bin/semver.js"
299
- }
300
- },
301
- "node_modules/@babel/helper-environment-visitor": {
302
- "version": "7.22.20",
303
- "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz",
304
- "integrity": "sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==",
305
- "dev": true,
306
- "engines": {
307
- "node": ">=6.9.0"
308
- }
309
- },
310
- "node_modules/@babel/helper-function-name": {
311
- "version": "7.23.0",
312
- "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.23.0.tgz",
313
- "integrity": "sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==",
314
- "dev": true,
315
- "dependencies": {
316
- "@babel/template": "^7.22.15",
317
- "@babel/types": "^7.23.0"
318
- },
319
- "engines": {
320
- "node": ">=6.9.0"
321
- }
322
- },
323
- "node_modules/@babel/helper-hoist-variables": {
324
- "version": "7.22.5",
325
- "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz",
326
- "integrity": "sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==",
327
- "dev": true,
328
- "dependencies": {
329
- "@babel/types": "^7.22.5"
330
- },
331
- "engines": {
332
- "node": ">=6.9.0"
333
- }
334
- },
335
- "node_modules/@babel/helper-member-expression-to-functions": {
336
- "version": "7.24.5",
337
- "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.24.5.tgz",
338
- "integrity": "sha512-4owRteeihKWKamtqg4JmWSsEZU445xpFRXPEwp44HbgbxdWlUV1b4Agg4lkA806Lil5XM/e+FJyS0vj5T6vmcA==",
339
- "dev": true,
340
- "dependencies": {
341
- "@babel/types": "^7.24.5"
342
- },
343
- "engines": {
344
- "node": ">=6.9.0"
345
- }
346
- },
347
- "node_modules/@babel/helper-module-imports": {
348
- "version": "7.24.3",
349
- "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.24.3.tgz",
350
- "integrity": "sha512-viKb0F9f2s0BCS22QSF308z/+1YWKV/76mwt61NBzS5izMzDPwdq1pTrzf+Li3npBWX9KdQbkeCt1jSAM7lZqg==",
351
- "dev": true,
352
- "dependencies": {
353
- "@babel/types": "^7.24.0"
354
- },
355
- "engines": {
356
- "node": ">=6.9.0"
357
- }
358
- },
359
- "node_modules/@babel/helper-module-transforms": {
360
- "version": "7.24.5",
361
- "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.24.5.tgz",
362
- "integrity": "sha512-9GxeY8c2d2mdQUP1Dye0ks3VDyIMS98kt/llQ2nUId8IsWqTF0l1LkSX0/uP7l7MCDrzXS009Hyhe2gzTiGW8A==",
363
- "dev": true,
364
- "dependencies": {
365
- "@babel/helper-environment-visitor": "^7.22.20",
366
- "@babel/helper-module-imports": "^7.24.3",
367
- "@babel/helper-simple-access": "^7.24.5",
368
- "@babel/helper-split-export-declaration": "^7.24.5",
369
- "@babel/helper-validator-identifier": "^7.24.5"
370
- },
371
- "engines": {
372
- "node": ">=6.9.0"
373
- },
374
- "peerDependencies": {
375
- "@babel/core": "^7.0.0"
376
- }
377
- },
378
- "node_modules/@babel/helper-optimise-call-expression": {
379
- "version": "7.22.5",
380
- "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.22.5.tgz",
381
- "integrity": "sha512-HBwaojN0xFRx4yIvpwGqxiV2tUfl7401jlok564NgB9EHS1y6QT17FmKWm4ztqjeVdXLuC4fSvHc5ePpQjoTbw==",
382
- "dev": true,
383
- "dependencies": {
384
- "@babel/types": "^7.22.5"
385
- },
386
- "engines": {
387
- "node": ">=6.9.0"
388
- }
389
- },
390
- "node_modules/@babel/helper-plugin-utils": {
391
- "version": "7.24.5",
392
- "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.5.tgz",
393
- "integrity": "sha512-xjNLDopRzW2o6ba0gKbkZq5YWEBaK3PCyTOY1K2P/O07LGMhMqlMXPxwN4S5/RhWuCobT8z0jrlKGlYmeR1OhQ==",
394
- "dev": true,
395
- "engines": {
396
- "node": ">=6.9.0"
397
- }
398
- },
399
- "node_modules/@babel/helper-replace-supers": {
400
- "version": "7.24.1",
401
- "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.24.1.tgz",
402
- "integrity": "sha512-QCR1UqC9BzG5vZl8BMicmZ28RuUBnHhAMddD8yHFHDRH9lLTZ9uUPehX8ctVPT8l0TKblJidqcgUUKGVrePleQ==",
403
- "dev": true,
404
- "dependencies": {
405
- "@babel/helper-environment-visitor": "^7.22.20",
406
- "@babel/helper-member-expression-to-functions": "^7.23.0",
407
- "@babel/helper-optimise-call-expression": "^7.22.5"
408
- },
409
- "engines": {
410
- "node": ">=6.9.0"
411
- },
412
- "peerDependencies": {
413
- "@babel/core": "^7.0.0"
414
- }
415
- },
416
- "node_modules/@babel/helper-simple-access": {
417
- "version": "7.24.5",
418
- "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.24.5.tgz",
419
- "integrity": "sha512-uH3Hmf5q5n7n8mz7arjUlDOCbttY/DW4DYhE6FUsjKJ/oYC1kQQUvwEQWxRwUpX9qQKRXeqLwWxrqilMrf32sQ==",
420
- "dev": true,
421
- "dependencies": {
422
- "@babel/types": "^7.24.5"
423
- },
424
- "engines": {
425
- "node": ">=6.9.0"
426
- }
427
- },
428
- "node_modules/@babel/helper-skip-transparent-expression-wrappers": {
429
- "version": "7.22.5",
430
- "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.22.5.tgz",
431
- "integrity": "sha512-tK14r66JZKiC43p8Ki33yLBVJKlQDFoA8GYN67lWCDCqoL6EMMSuM9b+Iff2jHaM/RRFYl7K+iiru7hbRqNx8Q==",
432
- "dev": true,
433
- "dependencies": {
434
- "@babel/types": "^7.22.5"
435
- },
436
- "engines": {
437
- "node": ">=6.9.0"
438
- }
439
- },
440
- "node_modules/@babel/helper-split-export-declaration": {
441
- "version": "7.24.5",
442
- "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.24.5.tgz",
443
- "integrity": "sha512-5CHncttXohrHk8GWOFCcCl4oRD9fKosWlIRgWm4ql9VYioKm52Mk2xsmoohvm7f3JoiLSM5ZgJuRaf5QZZYd3Q==",
444
- "dev": true,
445
- "dependencies": {
446
- "@babel/types": "^7.24.5"
447
- },
448
- "engines": {
449
- "node": ">=6.9.0"
450
- }
451
- },
452
- "node_modules/@babel/helper-string-parser": {
453
- "version": "7.24.1",
454
- "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz",
455
- "integrity": "sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==",
456
- "dev": true,
457
- "engines": {
458
- "node": ">=6.9.0"
459
- }
460
- },
461
- "node_modules/@babel/helper-validator-identifier": {
462
- "version": "7.24.5",
463
- "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.5.tgz",
464
- "integrity": "sha512-3q93SSKX2TWCG30M2G2kwaKeTYgEUp5Snjuj8qm729SObL6nbtUldAi37qbxkD5gg3xnBio+f9nqpSepGZMvxA==",
465
- "dev": true,
466
- "engines": {
467
- "node": ">=6.9.0"
468
- }
469
- },
470
- "node_modules/@babel/helper-validator-option": {
471
- "version": "7.23.5",
472
- "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.23.5.tgz",
473
- "integrity": "sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw==",
474
- "dev": true,
475
- "engines": {
476
- "node": ">=6.9.0"
477
- }
478
- },
479
- "node_modules/@babel/helpers": {
480
- "version": "7.24.5",
481
- "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.24.5.tgz",
482
- "integrity": "sha512-CiQmBMMpMQHwM5m01YnrM6imUG1ebgYJ+fAIW4FZe6m4qHTPaRHti+R8cggAwkdz4oXhtO4/K9JWlh+8hIfR2Q==",
483
- "dev": true,
484
- "dependencies": {
485
- "@babel/template": "^7.24.0",
486
- "@babel/traverse": "^7.24.5",
487
- "@babel/types": "^7.24.5"
488
- },
489
- "engines": {
490
- "node": ">=6.9.0"
491
- }
492
- },
493
- "node_modules/@babel/highlight": {
494
- "version": "7.24.5",
495
- "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.5.tgz",
496
- "integrity": "sha512-8lLmua6AVh/8SLJRRVD6V8p73Hir9w5mJrhE+IPpILG31KKlI9iz5zmBYKcWPS59qSfgP9RaSBQSHHE81WKuEw==",
497
- "dev": true,
498
- "dependencies": {
499
- "@babel/helper-validator-identifier": "^7.24.5",
500
- "chalk": "^2.4.2",
501
- "js-tokens": "^4.0.0",
502
- "picocolors": "^1.0.0"
503
- },
504
- "engines": {
505
- "node": ">=6.9.0"
506
- }
507
- },
508
- "node_modules/@babel/parser": {
509
- "version": "7.24.5",
510
- "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.5.tgz",
511
- "integrity": "sha512-EOv5IK8arwh3LI47dz1b0tKUb/1uhHAnHJOrjgtQMIpu1uXd9mlFrJg9IUgGUgZ41Ch0K8REPTYpO7B76b4vJg==",
512
- "bin": {
513
- "parser": "bin/babel-parser.js"
514
- },
515
- "engines": {
516
- "node": ">=6.0.0"
517
- }
518
- },
519
- "node_modules/@babel/plugin-syntax-jsx": {
520
- "version": "7.24.1",
521
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.24.1.tgz",
522
- "integrity": "sha512-2eCtxZXf+kbkMIsXS4poTvT4Yu5rXiRa+9xGVT56raghjmBTKMpFNc9R4IDiB4emao9eO22Ox7CxuJG7BgExqA==",
523
- "dev": true,
524
- "dependencies": {
525
- "@babel/helper-plugin-utils": "^7.24.0"
526
- },
527
- "engines": {
528
- "node": ">=6.9.0"
529
- },
530
- "peerDependencies": {
531
- "@babel/core": "^7.0.0-0"
532
- }
533
- },
534
- "node_modules/@babel/plugin-syntax-typescript": {
535
- "version": "7.24.1",
536
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.24.1.tgz",
537
- "integrity": "sha512-Yhnmvy5HZEnHUty6i++gcfH1/l68AHnItFHnaCv6hn9dNh0hQvvQJsxpi4BMBFN5DLeHBuucT/0DgzXif/OyRw==",
538
- "dev": true,
539
- "dependencies": {
540
- "@babel/helper-plugin-utils": "^7.24.0"
541
- },
542
- "engines": {
543
- "node": ">=6.9.0"
544
- },
545
- "peerDependencies": {
546
- "@babel/core": "^7.0.0-0"
547
- }
548
- },
549
- "node_modules/@babel/plugin-transform-typescript": {
550
- "version": "7.24.5",
551
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.24.5.tgz",
552
- "integrity": "sha512-E0VWu/hk83BIFUWnsKZ4D81KXjN5L3MobvevOHErASk9IPwKHOkTgvqzvNo1yP/ePJWqqK2SpUR5z+KQbl6NVw==",
553
- "dev": true,
554
- "dependencies": {
555
- "@babel/helper-annotate-as-pure": "^7.22.5",
556
- "@babel/helper-create-class-features-plugin": "^7.24.5",
557
- "@babel/helper-plugin-utils": "^7.24.5",
558
- "@babel/plugin-syntax-typescript": "^7.24.1"
559
- },
560
- "engines": {
561
- "node": ">=6.9.0"
562
- },
563
- "peerDependencies": {
564
- "@babel/core": "^7.0.0-0"
565
- }
566
- },
567
- "node_modules/@babel/runtime": {
568
- "version": "7.24.5",
569
- "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.24.5.tgz",
570
- "integrity": "sha512-Nms86NXrsaeU9vbBJKni6gXiEXZ4CVpYVzEjDH9Sb8vmZ3UljyA1GSOJl/6LGPO8EHLuSF9H+IxNXHPX8QHJ4g==",
571
- "dependencies": {
572
- "regenerator-runtime": "^0.14.0"
573
- },
574
- "engines": {
575
- "node": ">=6.9.0"
576
- }
577
- },
578
- "node_modules/@babel/template": {
579
- "version": "7.24.0",
580
- "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.0.tgz",
581
- "integrity": "sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==",
582
- "dev": true,
583
- "dependencies": {
584
- "@babel/code-frame": "^7.23.5",
585
- "@babel/parser": "^7.24.0",
586
- "@babel/types": "^7.24.0"
587
- },
588
- "engines": {
589
- "node": ">=6.9.0"
590
- }
591
- },
592
- "node_modules/@babel/traverse": {
593
- "version": "7.24.5",
594
- "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.5.tgz",
595
- "integrity": "sha512-7aaBLeDQ4zYcUFDUD41lJc1fG8+5IU9DaNSJAgal866FGvmD5EbWQgnEC6kO1gGLsX0esNkfnJSndbTXA3r7UA==",
596
- "dev": true,
597
- "dependencies": {
598
- "@babel/code-frame": "^7.24.2",
599
- "@babel/generator": "^7.24.5",
600
- "@babel/helper-environment-visitor": "^7.22.20",
601
- "@babel/helper-function-name": "^7.23.0",
602
- "@babel/helper-hoist-variables": "^7.22.5",
603
- "@babel/helper-split-export-declaration": "^7.24.5",
604
- "@babel/parser": "^7.24.5",
605
- "@babel/types": "^7.24.5",
606
- "debug": "^4.3.1",
607
- "globals": "^11.1.0"
608
- },
609
- "engines": {
610
- "node": ">=6.9.0"
611
- }
612
- },
613
- "node_modules/@babel/traverse/node_modules/globals": {
614
- "version": "11.12.0",
615
- "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz",
616
- "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==",
617
- "dev": true,
618
- "engines": {
619
- "node": ">=4"
620
- }
621
- },
622
- "node_modules/@babel/types": {
623
- "version": "7.24.5",
624
- "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.5.tgz",
625
- "integrity": "sha512-6mQNsaLeXTw0nxYUYu+NSa4Hx4BlF1x1x8/PMFbiR+GBSr+2DkECc69b8hgy2frEodNcvPffeH8YfWd3LI6jhQ==",
626
- "dev": true,
627
- "dependencies": {
628
- "@babel/helper-string-parser": "^7.24.1",
629
- "@babel/helper-validator-identifier": "^7.24.5",
630
- "to-fast-properties": "^2.0.0"
631
- },
632
- "engines": {
633
- "node": ">=6.9.0"
634
- }
635
- },
636
- "node_modules/@clack/core": {
637
- "version": "0.3.4",
638
- "resolved": "https://registry.npmjs.org/@clack/core/-/core-0.3.4.tgz",
639
- "integrity": "sha512-H4hxZDXgHtWTwV3RAVenqcC4VbJZNegbBjlPvzOzCouXtS2y3sDvlO3IsbrPNWuLWPPlYVYPghQdSF64683Ldw==",
640
- "dev": true,
641
- "dependencies": {
642
- "picocolors": "^1.0.0",
643
- "sisteransi": "^1.0.5"
644
- }
645
- },
646
- "node_modules/@clack/prompts": {
647
- "version": "0.7.0",
648
- "resolved": "https://registry.npmjs.org/@clack/prompts/-/prompts-0.7.0.tgz",
649
- "integrity": "sha512-0MhX9/B4iL6Re04jPrttDm+BsP8y6mS7byuv0BvXgdXhbV5PdlsHt55dvNsuBCPZ7xq1oTAOOuotR9NFbQyMSA==",
650
- "bundleDependencies": [
651
- "is-unicode-supported"
652
- ],
653
- "dev": true,
654
- "dependencies": {
655
- "@clack/core": "^0.3.3",
656
- "is-unicode-supported": "*",
657
- "picocolors": "^1.0.0",
658
- "sisteransi": "^1.0.5"
659
- }
660
- },
661
- "node_modules/@clack/prompts/node_modules/is-unicode-supported": {
662
- "version": "1.3.0",
663
- "inBundle": true,
664
- "license": "MIT",
665
- "engines": {
666
- "node": ">=12"
667
- },
668
- "funding": {
669
- "url": "https://github.com/sponsors/sindresorhus"
670
- }
671
- },
672
- "node_modules/@colors/colors": {
673
- "version": "1.5.0",
674
- "resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.5.0.tgz",
675
- "integrity": "sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==",
676
- "dev": true,
677
- "optional": true,
678
- "engines": {
679
- "node": ">=0.1.90"
680
- }
681
- },
682
- "node_modules/@css-render/plugin-bem": {
683
- "version": "0.15.14",
684
- "resolved": "https://registry.npmjs.org/@css-render/plugin-bem/-/plugin-bem-0.15.14.tgz",
685
- "integrity": "sha512-QK513CJ7yEQxm/P3EwsI+d+ha8kSOcjGvD6SevM41neEMxdULE+18iuQK6tEChAWMOQNQPLG/Rw3Khb69r5neg==",
686
- "peerDependencies": {
687
- "css-render": "~0.15.14"
688
- }
689
- },
690
- "node_modules/@css-render/vue3-ssr": {
691
- "version": "0.15.14",
692
- "resolved": "https://registry.npmjs.org/@css-render/vue3-ssr/-/vue3-ssr-0.15.14.tgz",
693
- "integrity": "sha512-//8027GSbxE9n3QlD73xFY6z4ZbHbvrOVB7AO6hsmrEzGbg+h2A09HboUyDgu+xsmj7JnvJD39Irt+2D0+iV8g==",
694
- "peerDependencies": {
695
- "vue": "^3.0.11"
696
- }
697
- },
698
- "node_modules/@cypress/request": {
699
- "version": "3.0.1",
700
- "resolved": "https://registry.npmjs.org/@cypress/request/-/request-3.0.1.tgz",
701
- "integrity": "sha512-TWivJlJi8ZDx2wGOw1dbLuHJKUYX7bWySw377nlnGOW3hP9/MUKIsEdXT/YngWxVdgNCHRBmFlBipE+5/2ZZlQ==",
702
- "dev": true,
703
- "dependencies": {
704
- "aws-sign2": "~0.7.0",
705
- "aws4": "^1.8.0",
706
- "caseless": "~0.12.0",
707
- "combined-stream": "~1.0.6",
708
- "extend": "~3.0.2",
709
- "forever-agent": "~0.6.1",
710
- "form-data": "~2.3.2",
711
- "http-signature": "~1.3.6",
712
- "is-typedarray": "~1.0.0",
713
- "isstream": "~0.1.2",
714
- "json-stringify-safe": "~5.0.1",
715
- "mime-types": "~2.1.19",
716
- "performance-now": "^2.1.0",
717
- "qs": "6.10.4",
718
- "safe-buffer": "^5.1.2",
719
- "tough-cookie": "^4.1.3",
720
- "tunnel-agent": "^0.6.0",
721
- "uuid": "^8.3.2"
722
- },
723
- "engines": {
724
- "node": ">= 6"
725
- }
726
- },
727
- "node_modules/@cypress/xvfb": {
728
- "version": "1.2.4",
729
- "resolved": "https://registry.npmjs.org/@cypress/xvfb/-/xvfb-1.2.4.tgz",
730
- "integrity": "sha512-skbBzPggOVYCbnGgV+0dmBdW/s77ZkAOXIC1knS8NagwDjBrNC1LuXtQJeiN6l+m7lzmHtaoUw/ctJKdqkG57Q==",
731
- "dev": true,
732
- "dependencies": {
733
- "debug": "^3.1.0",
734
- "lodash.once": "^4.1.1"
735
- }
736
- },
737
- "node_modules/@cypress/xvfb/node_modules/debug": {
738
- "version": "3.2.7",
739
- "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz",
740
- "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==",
741
- "dev": true,
742
- "dependencies": {
743
- "ms": "^2.1.1"
744
- }
745
- },
746
- "node_modules/@emotion/hash": {
747
- "version": "0.8.0",
748
- "resolved": "https://registry.npmjs.org/@emotion/hash/-/hash-0.8.0.tgz",
749
- "integrity": "sha512-kBJtf7PH6aWwZ6fka3zQ0p6SBYzx4fl1LoZXE2RrnYST9Xljm7WfKJrU4g/Xr3Beg72MLrp1AWNUmuYJTL7Cow=="
750
- },
751
- "node_modules/@esbuild/aix-ppc64": {
752
- "version": "0.20.2",
753
- "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.20.2.tgz",
754
- "integrity": "sha512-D+EBOJHXdNZcLJRBkhENNG8Wji2kgc9AZ9KiPr1JuZjsNtyHzrsfLRrY0tk2H2aoFu6RANO1y1iPPUCDYWkb5g==",
755
- "cpu": [
756
- "ppc64"
757
- ],
758
- "dev": true,
759
- "optional": true,
760
- "os": [
761
- "aix"
762
- ],
763
- "engines": {
764
- "node": ">=12"
765
- }
766
- },
767
- "node_modules/@esbuild/android-arm": {
768
- "version": "0.20.2",
769
- "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.20.2.tgz",
770
- "integrity": "sha512-t98Ra6pw2VaDhqNWO2Oph2LXbz/EJcnLmKLGBJwEwXX/JAN83Fym1rU8l0JUWK6HkIbWONCSSatf4sf2NBRx/w==",
771
- "cpu": [
772
- "arm"
773
- ],
774
- "dev": true,
775
- "optional": true,
776
- "os": [
777
- "android"
778
- ],
779
- "engines": {
780
- "node": ">=12"
781
- }
782
- },
783
- "node_modules/@esbuild/android-arm64": {
784
- "version": "0.20.2",
785
- "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.20.2.tgz",
786
- "integrity": "sha512-mRzjLacRtl/tWU0SvD8lUEwb61yP9cqQo6noDZP/O8VkwafSYwZ4yWy24kan8jE/IMERpYncRt2dw438LP3Xmg==",
787
- "cpu": [
788
- "arm64"
789
- ],
790
- "dev": true,
791
- "optional": true,
792
- "os": [
793
- "android"
794
- ],
795
- "engines": {
796
- "node": ">=12"
797
- }
798
- },
799
- "node_modules/@esbuild/android-x64": {
800
- "version": "0.20.2",
801
- "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.20.2.tgz",
802
- "integrity": "sha512-btzExgV+/lMGDDa194CcUQm53ncxzeBrWJcncOBxuC6ndBkKxnHdFJn86mCIgTELsooUmwUm9FkhSp5HYu00Rg==",
803
- "cpu": [
804
- "x64"
805
- ],
806
- "dev": true,
807
- "optional": true,
808
- "os": [
809
- "android"
810
- ],
811
- "engines": {
812
- "node": ">=12"
813
- }
814
- },
815
- "node_modules/@esbuild/darwin-arm64": {
816
- "version": "0.20.2",
817
- "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.20.2.tgz",
818
- "integrity": "sha512-4J6IRT+10J3aJH3l1yzEg9y3wkTDgDk7TSDFX+wKFiWjqWp/iCfLIYzGyasx9l0SAFPT1HwSCR+0w/h1ES/MjA==",
819
- "cpu": [
820
- "arm64"
821
- ],
822
- "dev": true,
823
- "optional": true,
824
- "os": [
825
- "darwin"
826
- ],
827
- "engines": {
828
- "node": ">=12"
829
- }
830
- },
831
- "node_modules/@esbuild/darwin-x64": {
832
- "version": "0.20.2",
833
- "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.20.2.tgz",
834
- "integrity": "sha512-tBcXp9KNphnNH0dfhv8KYkZhjc+H3XBkF5DKtswJblV7KlT9EI2+jeA8DgBjp908WEuYll6pF+UStUCfEpdysA==",
835
- "cpu": [
836
- "x64"
837
- ],
838
- "dev": true,
839
- "optional": true,
840
- "os": [
841
- "darwin"
842
- ],
843
- "engines": {
844
- "node": ">=12"
845
- }
846
- },
847
- "node_modules/@esbuild/freebsd-arm64": {
848
- "version": "0.20.2",
849
- "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.20.2.tgz",
850
- "integrity": "sha512-d3qI41G4SuLiCGCFGUrKsSeTXyWG6yem1KcGZVS+3FYlYhtNoNgYrWcvkOoaqMhwXSMrZRl69ArHsGJ9mYdbbw==",
851
- "cpu": [
852
- "arm64"
853
- ],
854
- "dev": true,
855
- "optional": true,
856
- "os": [
857
- "freebsd"
858
- ],
859
- "engines": {
860
- "node": ">=12"
861
- }
862
- },
863
- "node_modules/@esbuild/freebsd-x64": {
864
- "version": "0.20.2",
865
- "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.20.2.tgz",
866
- "integrity": "sha512-d+DipyvHRuqEeM5zDivKV1KuXn9WeRX6vqSqIDgwIfPQtwMP4jaDsQsDncjTDDsExT4lR/91OLjRo8bmC1e+Cw==",
867
- "cpu": [
868
- "x64"
869
- ],
870
- "dev": true,
871
- "optional": true,
872
- "os": [
873
- "freebsd"
874
- ],
875
- "engines": {
876
- "node": ">=12"
877
- }
878
- },
879
- "node_modules/@esbuild/linux-arm": {
880
- "version": "0.20.2",
881
- "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.20.2.tgz",
882
- "integrity": "sha512-VhLPeR8HTMPccbuWWcEUD1Az68TqaTYyj6nfE4QByZIQEQVWBB8vup8PpR7y1QHL3CpcF6xd5WVBU/+SBEvGTg==",
883
- "cpu": [
884
- "arm"
885
- ],
886
- "dev": true,
887
- "optional": true,
888
- "os": [
889
- "linux"
890
- ],
891
- "engines": {
892
- "node": ">=12"
893
- }
894
- },
895
- "node_modules/@esbuild/linux-arm64": {
896
- "version": "0.20.2",
897
- "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.20.2.tgz",
898
- "integrity": "sha512-9pb6rBjGvTFNira2FLIWqDk/uaf42sSyLE8j1rnUpuzsODBq7FvpwHYZxQ/It/8b+QOS1RYfqgGFNLRI+qlq2A==",
899
- "cpu": [
900
- "arm64"
901
- ],
902
- "dev": true,
903
- "optional": true,
904
- "os": [
905
- "linux"
906
- ],
907
- "engines": {
908
- "node": ">=12"
909
- }
910
- },
911
- "node_modules/@esbuild/linux-ia32": {
912
- "version": "0.20.2",
913
- "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.20.2.tgz",
914
- "integrity": "sha512-o10utieEkNPFDZFQm9CoP7Tvb33UutoJqg3qKf1PWVeeJhJw0Q347PxMvBgVVFgouYLGIhFYG0UGdBumROyiig==",
915
- "cpu": [
916
- "ia32"
917
- ],
918
- "dev": true,
919
- "optional": true,
920
- "os": [
921
- "linux"
922
- ],
923
- "engines": {
924
- "node": ">=12"
925
- }
926
- },
927
- "node_modules/@esbuild/linux-loong64": {
928
- "version": "0.20.2",
929
- "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.20.2.tgz",
930
- "integrity": "sha512-PR7sp6R/UC4CFVomVINKJ80pMFlfDfMQMYynX7t1tNTeivQ6XdX5r2XovMmha/VjR1YN/HgHWsVcTRIMkymrgQ==",
931
- "cpu": [
932
- "loong64"
933
- ],
934
- "dev": true,
935
- "optional": true,
936
- "os": [
937
- "linux"
938
- ],
939
- "engines": {
940
- "node": ">=12"
941
- }
942
- },
943
- "node_modules/@esbuild/linux-mips64el": {
944
- "version": "0.20.2",
945
- "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.20.2.tgz",
946
- "integrity": "sha512-4BlTqeutE/KnOiTG5Y6Sb/Hw6hsBOZapOVF6njAESHInhlQAghVVZL1ZpIctBOoTFbQyGW+LsVYZ8lSSB3wkjA==",
947
- "cpu": [
948
- "mips64el"
949
- ],
950
- "dev": true,
951
- "optional": true,
952
- "os": [
953
- "linux"
954
- ],
955
- "engines": {
956
- "node": ">=12"
957
- }
958
- },
959
- "node_modules/@esbuild/linux-ppc64": {
960
- "version": "0.20.2",
961
- "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.20.2.tgz",
962
- "integrity": "sha512-rD3KsaDprDcfajSKdn25ooz5J5/fWBylaaXkuotBDGnMnDP1Uv5DLAN/45qfnf3JDYyJv/ytGHQaziHUdyzaAg==",
963
- "cpu": [
964
- "ppc64"
965
- ],
966
- "dev": true,
967
- "optional": true,
968
- "os": [
969
- "linux"
970
- ],
971
- "engines": {
972
- "node": ">=12"
973
- }
974
- },
975
- "node_modules/@esbuild/linux-riscv64": {
976
- "version": "0.20.2",
977
- "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.20.2.tgz",
978
- "integrity": "sha512-snwmBKacKmwTMmhLlz/3aH1Q9T8v45bKYGE3j26TsaOVtjIag4wLfWSiZykXzXuE1kbCE+zJRmwp+ZbIHinnVg==",
979
- "cpu": [
980
- "riscv64"
981
- ],
982
- "dev": true,
983
- "optional": true,
984
- "os": [
985
- "linux"
986
- ],
987
- "engines": {
988
- "node": ">=12"
989
- }
990
- },
991
- "node_modules/@esbuild/linux-s390x": {
992
- "version": "0.20.2",
993
- "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.20.2.tgz",
994
- "integrity": "sha512-wcWISOobRWNm3cezm5HOZcYz1sKoHLd8VL1dl309DiixxVFoFe/o8HnwuIwn6sXre88Nwj+VwZUvJf4AFxkyrQ==",
995
- "cpu": [
996
- "s390x"
997
- ],
998
- "dev": true,
999
- "optional": true,
1000
- "os": [
1001
- "linux"
1002
- ],
1003
- "engines": {
1004
- "node": ">=12"
1005
- }
1006
- },
1007
- "node_modules/@esbuild/linux-x64": {
1008
- "version": "0.20.2",
1009
- "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.20.2.tgz",
1010
- "integrity": "sha512-1MdwI6OOTsfQfek8sLwgyjOXAu+wKhLEoaOLTjbijk6E2WONYpH9ZU2mNtR+lZ2B4uwr+usqGuVfFT9tMtGvGw==",
1011
- "cpu": [
1012
- "x64"
1013
- ],
1014
- "dev": true,
1015
- "optional": true,
1016
- "os": [
1017
- "linux"
1018
- ],
1019
- "engines": {
1020
- "node": ">=12"
1021
- }
1022
- },
1023
- "node_modules/@esbuild/netbsd-x64": {
1024
- "version": "0.20.2",
1025
- "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.20.2.tgz",
1026
- "integrity": "sha512-K8/DhBxcVQkzYc43yJXDSyjlFeHQJBiowJ0uVL6Tor3jGQfSGHNNJcWxNbOI8v5k82prYqzPuwkzHt3J1T1iZQ==",
1027
- "cpu": [
1028
- "x64"
1029
- ],
1030
- "dev": true,
1031
- "optional": true,
1032
- "os": [
1033
- "netbsd"
1034
- ],
1035
- "engines": {
1036
- "node": ">=12"
1037
- }
1038
- },
1039
- "node_modules/@esbuild/openbsd-x64": {
1040
- "version": "0.20.2",
1041
- "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.20.2.tgz",
1042
- "integrity": "sha512-eMpKlV0SThJmmJgiVyN9jTPJ2VBPquf6Kt/nAoo6DgHAoN57K15ZghiHaMvqjCye/uU4X5u3YSMgVBI1h3vKrQ==",
1043
- "cpu": [
1044
- "x64"
1045
- ],
1046
- "dev": true,
1047
- "optional": true,
1048
- "os": [
1049
- "openbsd"
1050
- ],
1051
- "engines": {
1052
- "node": ">=12"
1053
- }
1054
- },
1055
- "node_modules/@esbuild/sunos-x64": {
1056
- "version": "0.20.2",
1057
- "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.20.2.tgz",
1058
- "integrity": "sha512-2UyFtRC6cXLyejf/YEld4Hajo7UHILetzE1vsRcGL3earZEW77JxrFjH4Ez2qaTiEfMgAXxfAZCm1fvM/G/o8w==",
1059
- "cpu": [
1060
- "x64"
1061
- ],
1062
- "dev": true,
1063
- "optional": true,
1064
- "os": [
1065
- "sunos"
1066
- ],
1067
- "engines": {
1068
- "node": ">=12"
1069
- }
1070
- },
1071
- "node_modules/@esbuild/win32-arm64": {
1072
- "version": "0.20.2",
1073
- "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.20.2.tgz",
1074
- "integrity": "sha512-GRibxoawM9ZCnDxnP3usoUDO9vUkpAxIIZ6GQI+IlVmr5kP3zUq+l17xELTHMWTWzjxa2guPNyrpq1GWmPvcGQ==",
1075
- "cpu": [
1076
- "arm64"
1077
- ],
1078
- "dev": true,
1079
- "optional": true,
1080
- "os": [
1081
- "win32"
1082
- ],
1083
- "engines": {
1084
- "node": ">=12"
1085
- }
1086
- },
1087
- "node_modules/@esbuild/win32-ia32": {
1088
- "version": "0.20.2",
1089
- "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.20.2.tgz",
1090
- "integrity": "sha512-HfLOfn9YWmkSKRQqovpnITazdtquEW8/SoHW7pWpuEeguaZI4QnCRW6b+oZTztdBnZOS2hqJ6im/D5cPzBTTlQ==",
1091
- "cpu": [
1092
- "ia32"
1093
- ],
1094
- "dev": true,
1095
- "optional": true,
1096
- "os": [
1097
- "win32"
1098
- ],
1099
- "engines": {
1100
- "node": ">=12"
1101
- }
1102
- },
1103
- "node_modules/@esbuild/win32-x64": {
1104
- "version": "0.20.2",
1105
- "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.20.2.tgz",
1106
- "integrity": "sha512-N49X4lJX27+l9jbLKSqZ6bKNjzQvHaT8IIFUy+YIqmXQdjYCToGWwOItDrfby14c78aDd5NHQl29xingXfCdLQ==",
1107
- "cpu": [
1108
- "x64"
1109
- ],
1110
- "dev": true,
1111
- "optional": true,
1112
- "os": [
1113
- "win32"
1114
- ],
1115
- "engines": {
1116
- "node": ">=12"
1117
- }
1118
- },
1119
- "node_modules/@eslint-community/eslint-utils": {
1120
- "version": "4.4.0",
1121
- "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz",
1122
- "integrity": "sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==",
1123
- "dependencies": {
1124
- "eslint-visitor-keys": "^3.3.0"
1125
- },
1126
- "engines": {
1127
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
1128
- },
1129
- "peerDependencies": {
1130
- "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0"
1131
- }
1132
- },
1133
- "node_modules/@eslint-community/regexpp": {
1134
- "version": "4.10.0",
1135
- "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.10.0.tgz",
1136
- "integrity": "sha512-Cu96Sd2By9mCNTx2iyKOmq10v22jUVQv0lQnlGNy16oE9589yE+QADPbrMGCkA51cKZSg3Pu/aTJVTGfL/qjUA==",
1137
- "engines": {
1138
- "node": "^12.0.0 || ^14.0.0 || >=16.0.0"
1139
- }
1140
- },
1141
- "node_modules/@eslint/eslintrc": {
1142
- "version": "2.1.4",
1143
- "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.4.tgz",
1144
- "integrity": "sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==",
1145
- "dependencies": {
1146
- "ajv": "^6.12.4",
1147
- "debug": "^4.3.2",
1148
- "espree": "^9.6.0",
1149
- "globals": "^13.19.0",
1150
- "ignore": "^5.2.0",
1151
- "import-fresh": "^3.2.1",
1152
- "js-yaml": "^4.1.0",
1153
- "minimatch": "^3.1.2",
1154
- "strip-json-comments": "^3.1.1"
1155
- },
1156
- "engines": {
1157
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
1158
- },
1159
- "funding": {
1160
- "url": "https://opencollective.com/eslint"
1161
- }
1162
- },
1163
- "node_modules/@eslint/eslintrc/node_modules/brace-expansion": {
1164
- "version": "1.1.11",
1165
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
1166
- "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
1167
- "dependencies": {
1168
- "balanced-match": "^1.0.0",
1169
- "concat-map": "0.0.1"
1170
- }
1171
- },
1172
- "node_modules/@eslint/eslintrc/node_modules/minimatch": {
1173
- "version": "3.1.2",
1174
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
1175
- "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
1176
- "dependencies": {
1177
- "brace-expansion": "^1.1.7"
1178
- },
1179
- "engines": {
1180
- "node": "*"
1181
- }
1182
- },
1183
- "node_modules/@eslint/js": {
1184
- "version": "8.57.0",
1185
- "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.57.0.tgz",
1186
- "integrity": "sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g==",
1187
- "engines": {
1188
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
1189
- }
1190
- },
1191
- "node_modules/@f3ve/eslint-config": {
1192
- "version": "1.0.6",
1193
- "resolved": "https://registry.npmjs.org/@f3ve/eslint-config/-/eslint-config-1.0.6.tgz",
1194
- "integrity": "sha512-DVLPAVZskaOUY6Gu/1VFaL0gGyY3VhjZBVExZVde2siwwgdwt+8XDSupLll0arKqVv4bqO2fRK21QomN3jy2yg==",
1195
- "funding": [
1196
- {
1197
- "type": "GitHub Sponsors",
1198
- "url": "https://github.com/sponsors/f3ve"
1199
- },
1200
- {
1201
- "type": "Buy me a Coffee",
1202
- "url": "https://www.buymeacoffee.com/f3ve"
1203
- }
1204
- ],
1205
- "dependencies": {
1206
- "@eslint/js": "^8.50.0",
1207
- "@typescript-eslint/eslint-plugin": "^6.7.3",
1208
- "@typescript-eslint/parser": "^6.7.3",
1209
- "@unocss/eslint-config": "^0.56.4",
1210
- "eslint-config-prettier": "^9.0.0",
1211
- "eslint-define-config": "^1.23.0",
1212
- "eslint-plugin-prettier": "^5.0.0",
1213
- "eslint-plugin-vue": "^9.17.0",
1214
- "globals": "^13.22.0",
1215
- "vue-eslint-parser": "^9.3.1"
1216
- },
1217
- "peerDependencies": {
1218
- "eslint": ">=8.0.0"
1219
- }
1220
- },
1221
- "node_modules/@f3ve/vue-markdown-it": {
1222
- "version": "0.2.2",
1223
- "resolved": "https://registry.npmjs.org/@f3ve/vue-markdown-it/-/vue-markdown-it-0.2.2.tgz",
1224
- "integrity": "sha512-0LVoa7bCI+pKuMRp8iap7DNNSVgXH51xkAxFmBWjdY6gd9yXBwD64P0p7o1NSYFUXaQCGR+cfOpsudJY7zjeBg==",
1225
- "dependencies": {
1226
- "@f3ve/eslint-config": "^1.0.6",
1227
- "markdown-it": "^14.1.0"
1228
- },
1229
- "peerDependencies": {
1230
- "vue": "^3.3.4"
1231
- }
1232
- },
1233
- "node_modules/@fontsource/jetbrains-mono": {
1234
- "version": "5.0.20",
1235
- "resolved": "https://registry.npmjs.org/@fontsource/jetbrains-mono/-/jetbrains-mono-5.0.20.tgz",
1236
- "integrity": "sha512-QkrihYWqftzs+04TinulIhnFqNwO6990HR07iCUae/6daOZAMy7urUPzytrRT9M8KLTTHBeHOY0CKqOs1+o2OQ=="
1237
- },
1238
- "node_modules/@fontsource/lexend": {
1239
- "version": "5.0.20",
1240
- "resolved": "https://registry.npmjs.org/@fontsource/lexend/-/lexend-5.0.20.tgz",
1241
- "integrity": "sha512-up8jVBRNP7AMRb7MuRBU/Nh1qHqI1ZWIVfqO1fa4gzOwNEnXyPMfvNy4LV2zYqrS19MfTe5ic7kUKpohsVVsZg=="
1242
- },
1243
- "node_modules/@fontsource/public-sans": {
1244
- "version": "5.0.18",
1245
- "resolved": "https://registry.npmjs.org/@fontsource/public-sans/-/public-sans-5.0.18.tgz",
1246
- "integrity": "sha512-dYx/ULF7pRkjBO1ncCwIRXWWmI2oCsMsWxheHgjtNANm4+prtfq3gdGy3KOsuNcAhEKn6BQeIyg0hFqeoTpAaQ=="
1247
- },
1248
- "node_modules/@hapi/hoek": {
1249
- "version": "9.3.0",
1250
- "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-9.3.0.tgz",
1251
- "integrity": "sha512-/c6rf4UJlmHlC9b5BaNvzAcFv7HZ2QHaV0D4/HNlBdvFnvQq8RI4kYdhyPCl7Xj+oWvTWQ8ujhqS53LIgAe6KQ==",
1252
- "dev": true
1253
- },
1254
- "node_modules/@hapi/topo": {
1255
- "version": "5.1.0",
1256
- "resolved": "https://registry.npmjs.org/@hapi/topo/-/topo-5.1.0.tgz",
1257
- "integrity": "sha512-foQZKJig7Ob0BMAYBfcJk8d77QtOe7Wo4ox7ff1lQYoNNAb6jwcY1ncdoy2e9wQZzvNy7ODZCYJkK8kzmcAnAg==",
1258
- "dev": true,
1259
- "dependencies": {
1260
- "@hapi/hoek": "^9.0.0"
1261
- }
1262
- },
1263
- "node_modules/@humanwhocodes/config-array": {
1264
- "version": "0.11.14",
1265
- "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.14.tgz",
1266
- "integrity": "sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==",
1267
- "dependencies": {
1268
- "@humanwhocodes/object-schema": "^2.0.2",
1269
- "debug": "^4.3.1",
1270
- "minimatch": "^3.0.5"
1271
- },
1272
- "engines": {
1273
- "node": ">=10.10.0"
1274
- }
1275
- },
1276
- "node_modules/@humanwhocodes/config-array/node_modules/brace-expansion": {
1277
- "version": "1.1.11",
1278
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
1279
- "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
1280
- "dependencies": {
1281
- "balanced-match": "^1.0.0",
1282
- "concat-map": "0.0.1"
1283
- }
1284
- },
1285
- "node_modules/@humanwhocodes/config-array/node_modules/minimatch": {
1286
- "version": "3.1.2",
1287
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
1288
- "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
1289
- "dependencies": {
1290
- "brace-expansion": "^1.1.7"
1291
- },
1292
- "engines": {
1293
- "node": "*"
1294
- }
1295
- },
1296
- "node_modules/@humanwhocodes/module-importer": {
1297
- "version": "1.0.1",
1298
- "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz",
1299
- "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==",
1300
- "engines": {
1301
- "node": ">=12.22"
1302
- },
1303
- "funding": {
1304
- "type": "github",
1305
- "url": "https://github.com/sponsors/nzakas"
1306
- }
1307
- },
1308
- "node_modules/@humanwhocodes/object-schema": {
1309
- "version": "2.0.3",
1310
- "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.3.tgz",
1311
- "integrity": "sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA=="
1312
- },
1313
- "node_modules/@iconify/types": {
1314
- "version": "2.0.0",
1315
- "resolved": "https://registry.npmjs.org/@iconify/types/-/types-2.0.0.tgz",
1316
- "integrity": "sha512-+wluvCrRhXrhyOmRDJ3q8mux9JkKy5SJ/v8ol2tu4FVjyYvtEzkc/3pK15ET6RKg4b4w4BmTk1+gsCUhf21Ykg==",
1317
- "dev": true
1318
- },
1319
- "node_modules/@iconify/vue": {
1320
- "version": "4.1.2",
1321
- "resolved": "https://registry.npmjs.org/@iconify/vue/-/vue-4.1.2.tgz",
1322
- "integrity": "sha512-CQnYqLiQD5LOAaXhBrmj1mdL2/NCJvwcC4jtW2Z8ukhThiFkLDkutarTOV2trfc9EXqUqRs0KqXOL9pZ/IyysA==",
1323
- "dev": true,
1324
- "dependencies": {
1325
- "@iconify/types": "^2.0.0"
1326
- },
1327
- "funding": {
1328
- "url": "https://github.com/sponsors/cyberalien"
1329
- },
1330
- "peerDependencies": {
1331
- "vue": ">=3"
1332
- }
1333
- },
1334
- "node_modules/@intlify/core-base": {
1335
- "version": "9.13.1",
1336
- "resolved": "https://registry.npmjs.org/@intlify/core-base/-/core-base-9.13.1.tgz",
1337
- "integrity": "sha512-+bcQRkJO9pcX8d0gel9ZNfrzU22sZFSA0WVhfXrf5jdJOS24a+Bp8pozuS9sBI9Hk/tGz83pgKfmqcn/Ci7/8w==",
1338
- "dependencies": {
1339
- "@intlify/message-compiler": "9.13.1",
1340
- "@intlify/shared": "9.13.1"
1341
- },
1342
- "engines": {
1343
- "node": ">= 16"
1344
- },
1345
- "funding": {
1346
- "url": "https://github.com/sponsors/kazupon"
1347
- }
1348
- },
1349
- "node_modules/@intlify/message-compiler": {
1350
- "version": "9.13.1",
1351
- "resolved": "https://registry.npmjs.org/@intlify/message-compiler/-/message-compiler-9.13.1.tgz",
1352
- "integrity": "sha512-SKsVa4ajYGBVm7sHMXd5qX70O2XXjm55zdZB3VeMFCvQyvLew/dLvq3MqnaIsTMF1VkkOb9Ttr6tHcMlyPDL9w==",
1353
- "dependencies": {
1354
- "@intlify/shared": "9.13.1",
1355
- "source-map-js": "^1.0.2"
1356
- },
1357
- "engines": {
1358
- "node": ">= 16"
1359
- },
1360
- "funding": {
1361
- "url": "https://github.com/sponsors/kazupon"
1362
- }
1363
- },
1364
- "node_modules/@intlify/shared": {
1365
- "version": "9.13.1",
1366
- "resolved": "https://registry.npmjs.org/@intlify/shared/-/shared-9.13.1.tgz",
1367
- "integrity": "sha512-u3b6BKGhE6j/JeRU6C/RL2FgyJfy6LakbtfeVF8fJXURpZZTzfh3e05J0bu0XPw447Q6/WUp3C4ajv4TMS4YsQ==",
1368
- "engines": {
1369
- "node": ">= 16"
1370
- },
1371
- "funding": {
1372
- "url": "https://github.com/sponsors/kazupon"
1373
- }
1374
- },
1375
- "node_modules/@isaacs/cliui": {
1376
- "version": "8.0.2",
1377
- "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz",
1378
- "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==",
1379
- "dev": true,
1380
- "dependencies": {
1381
- "string-width": "^5.1.2",
1382
- "string-width-cjs": "npm:string-width@^4.2.0",
1383
- "strip-ansi": "^7.0.1",
1384
- "strip-ansi-cjs": "npm:strip-ansi@^6.0.1",
1385
- "wrap-ansi": "^8.1.0",
1386
- "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0"
1387
- },
1388
- "engines": {
1389
- "node": ">=12"
1390
- }
1391
- },
1392
- "node_modules/@isaacs/cliui/node_modules/ansi-regex": {
1393
- "version": "6.0.1",
1394
- "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz",
1395
- "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==",
1396
- "dev": true,
1397
- "engines": {
1398
- "node": ">=12"
1399
- },
1400
- "funding": {
1401
- "url": "https://github.com/chalk/ansi-regex?sponsor=1"
1402
- }
1403
- },
1404
- "node_modules/@isaacs/cliui/node_modules/emoji-regex": {
1405
- "version": "9.2.2",
1406
- "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz",
1407
- "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==",
1408
- "dev": true
1409
- },
1410
- "node_modules/@isaacs/cliui/node_modules/string-width": {
1411
- "version": "5.1.2",
1412
- "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz",
1413
- "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==",
1414
- "dev": true,
1415
- "dependencies": {
1416
- "eastasianwidth": "^0.2.0",
1417
- "emoji-regex": "^9.2.2",
1418
- "strip-ansi": "^7.0.1"
1419
- },
1420
- "engines": {
1421
- "node": ">=12"
1422
- },
1423
- "funding": {
1424
- "url": "https://github.com/sponsors/sindresorhus"
1425
- }
1426
- },
1427
- "node_modules/@isaacs/cliui/node_modules/strip-ansi": {
1428
- "version": "7.1.0",
1429
- "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz",
1430
- "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==",
1431
- "dev": true,
1432
- "dependencies": {
1433
- "ansi-regex": "^6.0.1"
1434
- },
1435
- "engines": {
1436
- "node": ">=12"
1437
- },
1438
- "funding": {
1439
- "url": "https://github.com/chalk/strip-ansi?sponsor=1"
1440
- }
1441
- },
1442
- "node_modules/@jest/schemas": {
1443
- "version": "29.6.3",
1444
- "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.3.tgz",
1445
- "integrity": "sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==",
1446
- "dev": true,
1447
- "dependencies": {
1448
- "@sinclair/typebox": "^0.27.8"
1449
- },
1450
- "engines": {
1451
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
1452
- }
1453
- },
1454
- "node_modules/@jridgewell/gen-mapping": {
1455
- "version": "0.3.5",
1456
- "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz",
1457
- "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==",
1458
- "dev": true,
1459
- "dependencies": {
1460
- "@jridgewell/set-array": "^1.2.1",
1461
- "@jridgewell/sourcemap-codec": "^1.4.10",
1462
- "@jridgewell/trace-mapping": "^0.3.24"
1463
- },
1464
- "engines": {
1465
- "node": ">=6.0.0"
1466
- }
1467
- },
1468
- "node_modules/@jridgewell/resolve-uri": {
1469
- "version": "3.1.2",
1470
- "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz",
1471
- "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==",
1472
- "dev": true,
1473
- "engines": {
1474
- "node": ">=6.0.0"
1475
- }
1476
- },
1477
- "node_modules/@jridgewell/set-array": {
1478
- "version": "1.2.1",
1479
- "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz",
1480
- "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==",
1481
- "dev": true,
1482
- "engines": {
1483
- "node": ">=6.0.0"
1484
- }
1485
- },
1486
- "node_modules/@jridgewell/sourcemap-codec": {
1487
- "version": "1.4.15",
1488
- "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz",
1489
- "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg=="
1490
- },
1491
- "node_modules/@jridgewell/trace-mapping": {
1492
- "version": "0.3.25",
1493
- "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz",
1494
- "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==",
1495
- "dev": true,
1496
- "dependencies": {
1497
- "@jridgewell/resolve-uri": "^3.1.0",
1498
- "@jridgewell/sourcemap-codec": "^1.4.14"
1499
- }
1500
- },
1501
- "node_modules/@jsdevtools/ez-spawn": {
1502
- "version": "3.0.4",
1503
- "resolved": "https://registry.npmjs.org/@jsdevtools/ez-spawn/-/ez-spawn-3.0.4.tgz",
1504
- "integrity": "sha512-f5DRIOZf7wxogefH03RjMPMdBF7ADTWUMoOs9kaJo06EfwF+aFhMZMDZxHg/Xe12hptN9xoZjGso2fdjapBRIA==",
1505
- "dev": true,
1506
- "dependencies": {
1507
- "call-me-maybe": "^1.0.1",
1508
- "cross-spawn": "^7.0.3",
1509
- "string-argv": "^0.3.1",
1510
- "type-detect": "^4.0.8"
1511
- },
1512
- "engines": {
1513
- "node": ">=10"
1514
- }
1515
- },
1516
- "node_modules/@juggle/resize-observer": {
1517
- "version": "3.4.0",
1518
- "resolved": "https://registry.npmjs.org/@juggle/resize-observer/-/resize-observer-3.4.0.tgz",
1519
- "integrity": "sha512-dfLbk+PwWvFzSxwk3n5ySL0hfBog779o8h68wK/7/APo/7cgyWp5jcXockbxdk5kFRkbeXWm4Fbi9FrdN381sA=="
1520
- },
1521
- "node_modules/@koa/router": {
1522
- "version": "12.0.1",
1523
- "resolved": "https://registry.npmjs.org/@koa/router/-/router-12.0.1.tgz",
1524
- "integrity": "sha512-ribfPYfHb+Uw3b27Eiw6NPqjhIhTpVFzEWLwyc/1Xp+DCdwRRyIlAUODX+9bPARF6aQtUu1+/PHzdNvRzcs/+Q==",
1525
- "dev": true,
1526
- "dependencies": {
1527
- "debug": "^4.3.4",
1528
- "http-errors": "^2.0.0",
1529
- "koa-compose": "^4.1.0",
1530
- "methods": "^1.1.2",
1531
- "path-to-regexp": "^6.2.1"
1532
- },
1533
- "engines": {
1534
- "node": ">= 12"
1535
- }
1536
- },
1537
- "node_modules/@nodelib/fs.scandir": {
1538
- "version": "2.1.5",
1539
- "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz",
1540
- "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==",
1541
- "dependencies": {
1542
- "@nodelib/fs.stat": "2.0.5",
1543
- "run-parallel": "^1.1.9"
1544
- },
1545
- "engines": {
1546
- "node": ">= 8"
1547
- }
1548
- },
1549
- "node_modules/@nodelib/fs.stat": {
1550
- "version": "2.0.5",
1551
- "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz",
1552
- "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==",
1553
- "engines": {
1554
- "node": ">= 8"
1555
- }
1556
- },
1557
- "node_modules/@nodelib/fs.walk": {
1558
- "version": "1.2.8",
1559
- "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz",
1560
- "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==",
1561
- "dependencies": {
1562
- "@nodelib/fs.scandir": "2.1.5",
1563
- "fastq": "^1.6.0"
1564
- },
1565
- "engines": {
1566
- "node": ">= 8"
1567
- }
1568
- },
1569
- "node_modules/@one-ini/wasm": {
1570
- "version": "0.1.1",
1571
- "resolved": "https://registry.npmjs.org/@one-ini/wasm/-/wasm-0.1.1.tgz",
1572
- "integrity": "sha512-XuySG1E38YScSJoMlqovLru4KTUNSjgVTIjyh7qMX6aNN5HY5Ct5LhRJdxO79JtTzKfzV/bnWpz+zquYrISsvw==",
1573
- "dev": true
1574
- },
1575
- "node_modules/@pkgjs/parseargs": {
1576
- "version": "0.11.0",
1577
- "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz",
1578
- "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==",
1579
- "dev": true,
1580
- "optional": true,
1581
- "engines": {
1582
- "node": ">=14"
1583
- }
1584
- },
1585
- "node_modules/@pkgr/core": {
1586
- "version": "0.1.1",
1587
- "resolved": "https://registry.npmjs.org/@pkgr/core/-/core-0.1.1.tgz",
1588
- "integrity": "sha512-cq8o4cWH0ibXh9VGi5P20Tu9XF/0fFXl9EUinr9QfTM7a7p0oTA4iJRCQWppXR1Pg8dSM0UCItCkPwsk9qWWYA==",
1589
- "engines": {
1590
- "node": "^12.20.0 || ^14.18.0 || >=16.0.0"
1591
- },
1592
- "funding": {
1593
- "url": "https://opencollective.com/unts"
1594
- }
1595
- },
1596
- "node_modules/@popperjs/core": {
1597
- "version": "2.11.8",
1598
- "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.8.tgz",
1599
- "integrity": "sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==",
1600
- "funding": {
1601
- "type": "opencollective",
1602
- "url": "https://opencollective.com/popperjs"
1603
- }
1604
- },
1605
- "node_modules/@rollup/pluginutils": {
1606
- "version": "5.1.0",
1607
- "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-5.1.0.tgz",
1608
- "integrity": "sha512-XTIWOPPcpvyKI6L1NHo0lFlCyznUEyPmPY1mc3KpPVDYulHSTvyeLNVW00QTLIAFNhR3kYnJTQHeGqU4M3n09g==",
1609
- "dev": true,
1610
- "dependencies": {
1611
- "@types/estree": "^1.0.0",
1612
- "estree-walker": "^2.0.2",
1613
- "picomatch": "^2.3.1"
1614
- },
1615
- "engines": {
1616
- "node": ">=14.0.0"
1617
- },
1618
- "peerDependencies": {
1619
- "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0"
1620
- },
1621
- "peerDependenciesMeta": {
1622
- "rollup": {
1623
- "optional": true
1624
- }
1625
- }
1626
- },
1627
- "node_modules/@rollup/rollup-android-arm-eabi": {
1628
- "version": "4.17.2",
1629
- "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.17.2.tgz",
1630
- "integrity": "sha512-NM0jFxY8bB8QLkoKxIQeObCaDlJKewVlIEkuyYKm5An1tdVZ966w2+MPQ2l8LBZLjR+SgyV+nRkTIunzOYBMLQ==",
1631
- "cpu": [
1632
- "arm"
1633
- ],
1634
- "dev": true,
1635
- "optional": true,
1636
- "os": [
1637
- "android"
1638
- ]
1639
- },
1640
- "node_modules/@rollup/rollup-android-arm64": {
1641
- "version": "4.17.2",
1642
- "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.17.2.tgz",
1643
- "integrity": "sha512-yeX/Usk7daNIVwkq2uGoq2BYJKZY1JfyLTaHO/jaiSwi/lsf8fTFoQW/n6IdAsx5tx+iotu2zCJwz8MxI6D/Bw==",
1644
- "cpu": [
1645
- "arm64"
1646
- ],
1647
- "dev": true,
1648
- "optional": true,
1649
- "os": [
1650
- "android"
1651
- ]
1652
- },
1653
- "node_modules/@rollup/rollup-darwin-arm64": {
1654
- "version": "4.17.2",
1655
- "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.17.2.tgz",
1656
- "integrity": "sha512-kcMLpE6uCwls023+kknm71ug7MZOrtXo+y5p/tsg6jltpDtgQY1Eq5sGfHcQfb+lfuKwhBmEURDga9N0ol4YPw==",
1657
- "cpu": [
1658
- "arm64"
1659
- ],
1660
- "dev": true,
1661
- "optional": true,
1662
- "os": [
1663
- "darwin"
1664
- ]
1665
- },
1666
- "node_modules/@rollup/rollup-darwin-x64": {
1667
- "version": "4.17.2",
1668
- "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.17.2.tgz",
1669
- "integrity": "sha512-AtKwD0VEx0zWkL0ZjixEkp5tbNLzX+FCqGG1SvOu993HnSz4qDI6S4kGzubrEJAljpVkhRSlg5bzpV//E6ysTQ==",
1670
- "cpu": [
1671
- "x64"
1672
- ],
1673
- "dev": true,
1674
- "optional": true,
1675
- "os": [
1676
- "darwin"
1677
- ]
1678
- },
1679
- "node_modules/@rollup/rollup-linux-arm-gnueabihf": {
1680
- "version": "4.17.2",
1681
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.17.2.tgz",
1682
- "integrity": "sha512-3reX2fUHqN7sffBNqmEyMQVj/CKhIHZd4y631duy0hZqI8Qoqf6lTtmAKvJFYa6bhU95B1D0WgzHkmTg33In0A==",
1683
- "cpu": [
1684
- "arm"
1685
- ],
1686
- "dev": true,
1687
- "optional": true,
1688
- "os": [
1689
- "linux"
1690
- ]
1691
- },
1692
- "node_modules/@rollup/rollup-linux-arm-musleabihf": {
1693
- "version": "4.17.2",
1694
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.17.2.tgz",
1695
- "integrity": "sha512-uSqpsp91mheRgw96xtyAGP9FW5ChctTFEoXP0r5FAzj/3ZRv3Uxjtc7taRQSaQM/q85KEKjKsZuiZM3GyUivRg==",
1696
- "cpu": [
1697
- "arm"
1698
- ],
1699
- "dev": true,
1700
- "optional": true,
1701
- "os": [
1702
- "linux"
1703
- ]
1704
- },
1705
- "node_modules/@rollup/rollup-linux-arm64-gnu": {
1706
- "version": "4.17.2",
1707
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.17.2.tgz",
1708
- "integrity": "sha512-EMMPHkiCRtE8Wdk3Qhtciq6BndLtstqZIroHiiGzB3C5LDJmIZcSzVtLRbwuXuUft1Cnv+9fxuDtDxz3k3EW2A==",
1709
- "cpu": [
1710
- "arm64"
1711
- ],
1712
- "dev": true,
1713
- "optional": true,
1714
- "os": [
1715
- "linux"
1716
- ]
1717
- },
1718
- "node_modules/@rollup/rollup-linux-arm64-musl": {
1719
- "version": "4.17.2",
1720
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.17.2.tgz",
1721
- "integrity": "sha512-NMPylUUZ1i0z/xJUIx6VUhISZDRT+uTWpBcjdv0/zkp7b/bQDF+NfnfdzuTiB1G6HTodgoFa93hp0O1xl+/UbA==",
1722
- "cpu": [
1723
- "arm64"
1724
- ],
1725
- "dev": true,
1726
- "optional": true,
1727
- "os": [
1728
- "linux"
1729
- ]
1730
- },
1731
- "node_modules/@rollup/rollup-linux-powerpc64le-gnu": {
1732
- "version": "4.17.2",
1733
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.17.2.tgz",
1734
- "integrity": "sha512-T19My13y8uYXPw/L/k0JYaX1fJKFT/PWdXiHr8mTbXWxjVF1t+8Xl31DgBBvEKclw+1b00Chg0hxE2O7bTG7GQ==",
1735
- "cpu": [
1736
- "ppc64"
1737
- ],
1738
- "dev": true,
1739
- "optional": true,
1740
- "os": [
1741
- "linux"
1742
- ]
1743
- },
1744
- "node_modules/@rollup/rollup-linux-riscv64-gnu": {
1745
- "version": "4.17.2",
1746
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.17.2.tgz",
1747
- "integrity": "sha512-BOaNfthf3X3fOWAB+IJ9kxTgPmMqPPH5f5k2DcCsRrBIbWnaJCgX2ll77dV1TdSy9SaXTR5iDXRL8n7AnoP5cg==",
1748
- "cpu": [
1749
- "riscv64"
1750
- ],
1751
- "dev": true,
1752
- "optional": true,
1753
- "os": [
1754
- "linux"
1755
- ]
1756
- },
1757
- "node_modules/@rollup/rollup-linux-s390x-gnu": {
1758
- "version": "4.17.2",
1759
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.17.2.tgz",
1760
- "integrity": "sha512-W0UP/x7bnn3xN2eYMql2T/+wpASLE5SjObXILTMPUBDB/Fg/FxC+gX4nvCfPBCbNhz51C+HcqQp2qQ4u25ok6g==",
1761
- "cpu": [
1762
- "s390x"
1763
- ],
1764
- "dev": true,
1765
- "optional": true,
1766
- "os": [
1767
- "linux"
1768
- ]
1769
- },
1770
- "node_modules/@rollup/rollup-linux-x64-gnu": {
1771
- "version": "4.17.2",
1772
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.17.2.tgz",
1773
- "integrity": "sha512-Hy7pLwByUOuyaFC6mAr7m+oMC+V7qyifzs/nW2OJfC8H4hbCzOX07Ov0VFk/zP3kBsELWNFi7rJtgbKYsav9QQ==",
1774
- "cpu": [
1775
- "x64"
1776
- ],
1777
- "dev": true,
1778
- "optional": true,
1779
- "os": [
1780
- "linux"
1781
- ]
1782
- },
1783
- "node_modules/@rollup/rollup-linux-x64-musl": {
1784
- "version": "4.17.2",
1785
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.17.2.tgz",
1786
- "integrity": "sha512-h1+yTWeYbRdAyJ/jMiVw0l6fOOm/0D1vNLui9iPuqgRGnXA0u21gAqOyB5iHjlM9MMfNOm9RHCQ7zLIzT0x11Q==",
1787
- "cpu": [
1788
- "x64"
1789
- ],
1790
- "dev": true,
1791
- "optional": true,
1792
- "os": [
1793
- "linux"
1794
- ]
1795
- },
1796
- "node_modules/@rollup/rollup-win32-arm64-msvc": {
1797
- "version": "4.17.2",
1798
- "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.17.2.tgz",
1799
- "integrity": "sha512-tmdtXMfKAjy5+IQsVtDiCfqbynAQE/TQRpWdVataHmhMb9DCoJxp9vLcCBjEQWMiUYxO1QprH/HbY9ragCEFLA==",
1800
- "cpu": [
1801
- "arm64"
1802
- ],
1803
- "dev": true,
1804
- "optional": true,
1805
- "os": [
1806
- "win32"
1807
- ]
1808
- },
1809
- "node_modules/@rollup/rollup-win32-ia32-msvc": {
1810
- "version": "4.17.2",
1811
- "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.17.2.tgz",
1812
- "integrity": "sha512-7II/QCSTAHuE5vdZaQEwJq2ZACkBpQDOmQsE6D6XUbnBHW8IAhm4eTufL6msLJorzrHDFv3CF8oCA/hSIRuZeQ==",
1813
- "cpu": [
1814
- "ia32"
1815
- ],
1816
- "dev": true,
1817
- "optional": true,
1818
- "os": [
1819
- "win32"
1820
- ]
1821
- },
1822
- "node_modules/@rollup/rollup-win32-x64-msvc": {
1823
- "version": "4.17.2",
1824
- "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.17.2.tgz",
1825
- "integrity": "sha512-TGGO7v7qOq4CYmSBVEYpI1Y5xDuCEnbVC5Vth8mOsW0gDSzxNrVERPc790IGHsrT2dQSimgMr9Ub3Y1Jci5/8w==",
1826
- "cpu": [
1827
- "x64"
1828
- ],
1829
- "dev": true,
1830
- "optional": true,
1831
- "os": [
1832
- "win32"
1833
- ]
1834
- },
1835
- "node_modules/@rushstack/eslint-patch": {
1836
- "version": "1.10.3",
1837
- "resolved": "https://registry.npmjs.org/@rushstack/eslint-patch/-/eslint-patch-1.10.3.tgz",
1838
- "integrity": "sha512-qC/xYId4NMebE6w/V33Fh9gWxLgURiNYgVNObbJl2LZv0GUUItCcCqC5axQSwRaAgaxl2mELq1rMzlswaQ0Zxg==",
1839
- "dev": true
1840
- },
1841
- "node_modules/@shikijs/core": {
1842
- "version": "1.6.1",
1843
- "resolved": "https://registry.npmjs.org/@shikijs/core/-/core-1.6.1.tgz",
1844
- "integrity": "sha512-CqYyepN4SnBopaoXYwng4NO8riB5ask/LTCkhOFq+GNGtr2X+aKeD767eYdqYukeixEUvv4bXdyTYVaogj7KBw=="
1845
- },
1846
- "node_modules/@shikijs/markdown-it": {
1847
- "version": "1.6.1",
1848
- "resolved": "https://registry.npmjs.org/@shikijs/markdown-it/-/markdown-it-1.6.1.tgz",
1849
- "integrity": "sha512-l6yCxrL18vNGtChXonuq2SxFeqYna6qwIXDncb/fH1RASFZjLroEblV/lsONvuDudRyhKJu8MC3ErLIpcT9BLw==",
1850
- "dependencies": {
1851
- "@shikijs/transformers": "1.6.1",
1852
- "markdown-it": "^14.1.0",
1853
- "shiki": "1.6.1"
1854
- }
1855
- },
1856
- "node_modules/@shikijs/transformers": {
1857
- "version": "1.6.1",
1858
- "resolved": "https://registry.npmjs.org/@shikijs/transformers/-/transformers-1.6.1.tgz",
1859
- "integrity": "sha512-m/h2Dh99XWvTzHL8MUQmEnrB+/gxDljIfgDNR00Zg941KENqORx8Hi9sKpGYjCgXoEJKASZlEMQdPnkHj9/8aQ==",
1860
- "dependencies": {
1861
- "shiki": "1.6.1"
1862
- }
1863
- },
1864
- "node_modules/@sideway/address": {
1865
- "version": "4.1.5",
1866
- "resolved": "https://registry.npmjs.org/@sideway/address/-/address-4.1.5.tgz",
1867
- "integrity": "sha512-IqO/DUQHUkPeixNQ8n0JA6102hT9CmaljNTPmQ1u8MEhBo/R4Q8eKLN/vGZxuebwOroDB4cbpjheD4+/sKFK4Q==",
1868
- "dev": true,
1869
- "dependencies": {
1870
- "@hapi/hoek": "^9.0.0"
1871
- }
1872
- },
1873
- "node_modules/@sideway/formula": {
1874
- "version": "3.0.1",
1875
- "resolved": "https://registry.npmjs.org/@sideway/formula/-/formula-3.0.1.tgz",
1876
- "integrity": "sha512-/poHZJJVjx3L+zVD6g9KgHfYnb443oi7wLu/XKojDviHy6HOEOA6z1Trk5aR1dGcmPenJEgb2sK2I80LeS3MIg==",
1877
- "dev": true
1878
- },
1879
- "node_modules/@sideway/pinpoint": {
1880
- "version": "2.0.0",
1881
- "resolved": "https://registry.npmjs.org/@sideway/pinpoint/-/pinpoint-2.0.0.tgz",
1882
- "integrity": "sha512-RNiOoTPkptFtSVzQevY/yWtZwf/RxyVnPy/OcA9HBM3MlGDnBEYL5B41H0MTn0Uec8Hi+2qUtTfG2WWZBmMejQ==",
1883
- "dev": true
1884
- },
1885
- "node_modules/@sinclair/typebox": {
1886
- "version": "0.27.8",
1887
- "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.8.tgz",
1888
- "integrity": "sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==",
1889
- "dev": true
1890
- },
1891
- "node_modules/@trysound/sax": {
1892
- "version": "0.2.0",
1893
- "resolved": "https://registry.npmjs.org/@trysound/sax/-/sax-0.2.0.tgz",
1894
- "integrity": "sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==",
1895
- "dev": true,
1896
- "engines": {
1897
- "node": ">=10.13.0"
1898
- }
1899
- },
1900
- "node_modules/@tsconfig/node18": {
1901
- "version": "18.2.4",
1902
- "resolved": "https://registry.npmjs.org/@tsconfig/node18/-/node18-18.2.4.tgz",
1903
- "integrity": "sha512-5xxU8vVs9/FNcvm3gE07fPbn9tl6tqGGWA9tSlwsUEkBxtRnTsNmwrV8gasZ9F/EobaSv9+nu8AxUKccw77JpQ==",
1904
- "dev": true
1905
- },
1906
- "node_modules/@types/bytes": {
1907
- "version": "3.1.4",
1908
- "resolved": "https://registry.npmjs.org/@types/bytes/-/bytes-3.1.4.tgz",
1909
- "integrity": "sha512-A0uYgOj3zNc4hNjHc5lYUfJQ/HVyBXiUMKdXd7ysclaE6k9oJdavQzODHuwjpUu2/boCP8afjQYi8z/GtvNCWA==",
1910
- "dev": true
1911
- },
1912
- "node_modules/@types/estree": {
1913
- "version": "1.0.5",
1914
- "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz",
1915
- "integrity": "sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==",
1916
- "dev": true
1917
- },
1918
- "node_modules/@types/file-saver": {
1919
- "version": "2.0.7",
1920
- "resolved": "https://registry.npmjs.org/@types/file-saver/-/file-saver-2.0.7.tgz",
1921
- "integrity": "sha512-dNKVfHd/jk0SkR/exKGj2ggkB45MAkzvWCaqLUUgkyjITkGNzH8H+yUwr+BLJUBjZOe9w8X3wgmXhZDRg1ED6A==",
1922
- "dev": true
1923
- },
1924
- "node_modules/@types/fs-extra": {
1925
- "version": "11.0.4",
1926
- "resolved": "https://registry.npmjs.org/@types/fs-extra/-/fs-extra-11.0.4.tgz",
1927
- "integrity": "sha512-yTbItCNreRooED33qjunPthRcSjERP1r4MqCZc7wv0u2sUkzTFp45tgUfS5+r7FrZPdmCCNflLhVSP/o+SemsQ==",
1928
- "dev": true,
1929
- "dependencies": {
1930
- "@types/jsonfile": "*",
1931
- "@types/node": "*"
1932
- }
1933
- },
1934
- "node_modules/@types/inquirer": {
1935
- "version": "9.0.7",
1936
- "resolved": "https://registry.npmjs.org/@types/inquirer/-/inquirer-9.0.7.tgz",
1937
- "integrity": "sha512-Q0zyBupO6NxGRZut/JdmqYKOnN95Eg5V8Csg3PGKkP+FnvsUZx1jAyK7fztIszxxMuoBA6E3KXWvdZVXIpx60g==",
1938
- "dev": true,
1939
- "dependencies": {
1940
- "@types/through": "*",
1941
- "rxjs": "^7.2.0"
1942
- }
1943
- },
1944
- "node_modules/@types/jsdom": {
1945
- "version": "21.1.6",
1946
- "resolved": "https://registry.npmjs.org/@types/jsdom/-/jsdom-21.1.6.tgz",
1947
- "integrity": "sha512-/7kkMsC+/kMs7gAYmmBR9P0vGTnOoLhQhyhQJSlXGI5bzTHp6xdo0TtKWQAsz6pmSAeVqKSbqeyP6hytqr9FDw==",
1948
- "dev": true,
1949
- "dependencies": {
1950
- "@types/node": "*",
1951
- "@types/tough-cookie": "*",
1952
- "parse5": "^7.0.0"
1953
- }
1954
- },
1955
- "node_modules/@types/json-schema": {
1956
- "version": "7.0.15",
1957
- "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz",
1958
- "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA=="
1959
- },
1960
- "node_modules/@types/jsonfile": {
1961
- "version": "6.1.4",
1962
- "resolved": "https://registry.npmjs.org/@types/jsonfile/-/jsonfile-6.1.4.tgz",
1963
- "integrity": "sha512-D5qGUYwjvnNNextdU59/+fI+spnwtTFmyQP0h+PfIOSkNfpU6AOICUOkm4i0OnSk+NyjdPJrxCDro0sJsWlRpQ==",
1964
- "dev": true,
1965
- "dependencies": {
1966
- "@types/node": "*"
1967
- }
1968
- },
1969
- "node_modules/@types/katex": {
1970
- "version": "0.16.7",
1971
- "resolved": "https://registry.npmjs.org/@types/katex/-/katex-0.16.7.tgz",
1972
- "integrity": "sha512-HMwFiRujE5PjrgwHQ25+bsLJgowjGjm5Z8FVSf0N6PwgJrwxH0QxzHYDcKsTfV3wva0vzrpqMTJS2jXPr5BMEQ=="
1973
- },
1974
- "node_modules/@types/lodash": {
1975
- "version": "4.17.4",
1976
- "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.17.4.tgz",
1977
- "integrity": "sha512-wYCP26ZLxaT3R39kiN2+HcJ4kTd3U1waI/cY7ivWYqFP6pW3ZNpvi6Wd6PHZx7T/t8z0vlkXMg3QYLa7DZ/IJQ=="
1978
- },
1979
- "node_modules/@types/lodash-es": {
1980
- "version": "4.17.12",
1981
- "resolved": "https://registry.npmjs.org/@types/lodash-es/-/lodash-es-4.17.12.tgz",
1982
- "integrity": "sha512-0NgftHUcV4v34VhXm8QBSftKVXtbkBG3ViCjs6+eJ5a6y6Mi/jiFGPc1sC7QK+9BFhWrURE3EOggmWaSxL9OzQ==",
1983
- "dependencies": {
1984
- "@types/lodash": "*"
1985
- }
1986
- },
1987
- "node_modules/@types/node": {
1988
- "version": "20.12.13",
1989
- "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.13.tgz",
1990
- "integrity": "sha512-gBGeanV41c1L171rR7wjbMiEpEI/l5XFQdLLfhr/REwpgDy/4U8y89+i8kRiLzDyZdOkXh+cRaTetUnCYutoXA==",
1991
- "dev": true,
1992
- "dependencies": {
1993
- "undici-types": "~5.26.4"
1994
- }
1995
- },
1996
- "node_modules/@types/semver": {
1997
- "version": "7.5.8",
1998
- "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.8.tgz",
1999
- "integrity": "sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ=="
2000
- },
2001
- "node_modules/@types/sinonjs__fake-timers": {
2002
- "version": "8.1.1",
2003
- "resolved": "https://registry.npmjs.org/@types/sinonjs__fake-timers/-/sinonjs__fake-timers-8.1.1.tgz",
2004
- "integrity": "sha512-0kSuKjAS0TrGLJ0M/+8MaFkGsQhZpB6pxOmvS3K8FYI72K//YmdfoW9X2qPsAKh1mkwxGD5zib9s1FIFed6E8g==",
2005
- "dev": true
2006
- },
2007
- "node_modules/@types/sizzle": {
2008
- "version": "2.3.8",
2009
- "resolved": "https://registry.npmjs.org/@types/sizzle/-/sizzle-2.3.8.tgz",
2010
- "integrity": "sha512-0vWLNK2D5MT9dg0iOo8GlKguPAU02QjmZitPEsXRuJXU/OGIOt9vT9Fc26wtYuavLxtO45v9PGleoL9Z0k1LHg==",
2011
- "dev": true
2012
- },
2013
- "node_modules/@types/through": {
2014
- "version": "0.0.33",
2015
- "resolved": "https://registry.npmjs.org/@types/through/-/through-0.0.33.tgz",
2016
- "integrity": "sha512-HsJ+z3QuETzP3cswwtzt2vEIiHBk/dCcHGhbmG5X3ecnwFD/lPrMpliGXxSCg03L9AhrdwA4Oz/qfspkDW+xGQ==",
2017
- "dev": true,
2018
- "dependencies": {
2019
- "@types/node": "*"
2020
- }
2021
- },
2022
- "node_modules/@types/tough-cookie": {
2023
- "version": "4.0.5",
2024
- "resolved": "https://registry.npmjs.org/@types/tough-cookie/-/tough-cookie-4.0.5.tgz",
2025
- "integrity": "sha512-/Ad8+nIOV7Rl++6f1BdKxFSMgmoqEoYbHRpPcx3JEfv8VRsQe9Z4mCXeJBzxs7mbHY/XOZZuXlRNfhpVPbs6ZA==",
2026
- "dev": true
2027
- },
2028
- "node_modules/@types/validator": {
2029
- "version": "13.11.10",
2030
- "resolved": "https://registry.npmjs.org/@types/validator/-/validator-13.11.10.tgz",
2031
- "integrity": "sha512-e2PNXoXLr6Z+dbfx5zSh9TRlXJrELycxiaXznp4S5+D2M3b9bqJEitNHA5923jhnB2zzFiZHa2f0SI1HoIahpg==",
2032
- "dev": true
2033
- },
2034
- "node_modules/@types/web-bluetooth": {
2035
- "version": "0.0.20",
2036
- "resolved": "https://registry.npmjs.org/@types/web-bluetooth/-/web-bluetooth-0.0.20.tgz",
2037
- "integrity": "sha512-g9gZnnXVq7gM7v3tJCWV/qw7w+KeOlSHAhgF9RytFyifW6AF61hdT2ucrYhPq9hLs5JIryeupHV3qGk95dH9ow=="
2038
- },
2039
- "node_modules/@types/yauzl": {
2040
- "version": "2.10.3",
2041
- "resolved": "https://registry.npmjs.org/@types/yauzl/-/yauzl-2.10.3.tgz",
2042
- "integrity": "sha512-oJoftv0LSuaDZE3Le4DbKX+KS9G36NzOeSap90UIK0yMA/NhKJhqlSGtNDORNRaIbQfzjXDrQa0ytJ6mNRGz/Q==",
2043
- "dev": true,
2044
- "optional": true,
2045
- "dependencies": {
2046
- "@types/node": "*"
2047
- }
2048
- },
2049
- "node_modules/@typescript-eslint/eslint-plugin": {
2050
- "version": "6.21.0",
2051
- "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.21.0.tgz",
2052
- "integrity": "sha512-oy9+hTPCUFpngkEZUSzbf9MxI65wbKFoQYsgPdILTfbUldp5ovUuphZVe4i30emU9M/kP+T64Di0mxl7dSw3MA==",
2053
- "dependencies": {
2054
- "@eslint-community/regexpp": "^4.5.1",
2055
- "@typescript-eslint/scope-manager": "6.21.0",
2056
- "@typescript-eslint/type-utils": "6.21.0",
2057
- "@typescript-eslint/utils": "6.21.0",
2058
- "@typescript-eslint/visitor-keys": "6.21.0",
2059
- "debug": "^4.3.4",
2060
- "graphemer": "^1.4.0",
2061
- "ignore": "^5.2.4",
2062
- "natural-compare": "^1.4.0",
2063
- "semver": "^7.5.4",
2064
- "ts-api-utils": "^1.0.1"
2065
- },
2066
- "engines": {
2067
- "node": "^16.0.0 || >=18.0.0"
2068
- },
2069
- "funding": {
2070
- "type": "opencollective",
2071
- "url": "https://opencollective.com/typescript-eslint"
2072
- },
2073
- "peerDependencies": {
2074
- "@typescript-eslint/parser": "^6.0.0 || ^6.0.0-alpha",
2075
- "eslint": "^7.0.0 || ^8.0.0"
2076
- },
2077
- "peerDependenciesMeta": {
2078
- "typescript": {
2079
- "optional": true
2080
- }
2081
- }
2082
- },
2083
- "node_modules/@typescript-eslint/parser": {
2084
- "version": "6.21.0",
2085
- "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.21.0.tgz",
2086
- "integrity": "sha512-tbsV1jPne5CkFQCgPBcDOt30ItF7aJoZL997JSF7MhGQqOeT3svWRYxiqlfA5RUdlHN6Fi+EI9bxqbdyAUZjYQ==",
2087
- "dependencies": {
2088
- "@typescript-eslint/scope-manager": "6.21.0",
2089
- "@typescript-eslint/types": "6.21.0",
2090
- "@typescript-eslint/typescript-estree": "6.21.0",
2091
- "@typescript-eslint/visitor-keys": "6.21.0",
2092
- "debug": "^4.3.4"
2093
- },
2094
- "engines": {
2095
- "node": "^16.0.0 || >=18.0.0"
2096
- },
2097
- "funding": {
2098
- "type": "opencollective",
2099
- "url": "https://opencollective.com/typescript-eslint"
2100
- },
2101
- "peerDependencies": {
2102
- "eslint": "^7.0.0 || ^8.0.0"
2103
- },
2104
- "peerDependenciesMeta": {
2105
- "typescript": {
2106
- "optional": true
2107
- }
2108
- }
2109
- },
2110
- "node_modules/@typescript-eslint/scope-manager": {
2111
- "version": "6.21.0",
2112
- "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.21.0.tgz",
2113
- "integrity": "sha512-OwLUIWZJry80O99zvqXVEioyniJMa+d2GrqpUTqi5/v5D5rOrppJVBPa0yKCblcigC0/aYAzxxqQ1B+DS2RYsg==",
2114
- "dependencies": {
2115
- "@typescript-eslint/types": "6.21.0",
2116
- "@typescript-eslint/visitor-keys": "6.21.0"
2117
- },
2118
- "engines": {
2119
- "node": "^16.0.0 || >=18.0.0"
2120
- },
2121
- "funding": {
2122
- "type": "opencollective",
2123
- "url": "https://opencollective.com/typescript-eslint"
2124
- }
2125
- },
2126
- "node_modules/@typescript-eslint/type-utils": {
2127
- "version": "6.21.0",
2128
- "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-6.21.0.tgz",
2129
- "integrity": "sha512-rZQI7wHfao8qMX3Rd3xqeYSMCL3SoiSQLBATSiVKARdFGCYSRvmViieZjqc58jKgs8Y8i9YvVVhRbHSTA4VBag==",
2130
- "dependencies": {
2131
- "@typescript-eslint/typescript-estree": "6.21.0",
2132
- "@typescript-eslint/utils": "6.21.0",
2133
- "debug": "^4.3.4",
2134
- "ts-api-utils": "^1.0.1"
2135
- },
2136
- "engines": {
2137
- "node": "^16.0.0 || >=18.0.0"
2138
- },
2139
- "funding": {
2140
- "type": "opencollective",
2141
- "url": "https://opencollective.com/typescript-eslint"
2142
- },
2143
- "peerDependencies": {
2144
- "eslint": "^7.0.0 || ^8.0.0"
2145
- },
2146
- "peerDependenciesMeta": {
2147
- "typescript": {
2148
- "optional": true
2149
- }
2150
- }
2151
- },
2152
- "node_modules/@typescript-eslint/types": {
2153
- "version": "6.21.0",
2154
- "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.21.0.tgz",
2155
- "integrity": "sha512-1kFmZ1rOm5epu9NZEZm1kckCDGj5UJEf7P1kliH4LKu/RkwpsfqqGmY2OOcUs18lSlQBKLDYBOGxRVtrMN5lpg==",
2156
- "engines": {
2157
- "node": "^16.0.0 || >=18.0.0"
2158
- },
2159
- "funding": {
2160
- "type": "opencollective",
2161
- "url": "https://opencollective.com/typescript-eslint"
2162
- }
2163
- },
2164
- "node_modules/@typescript-eslint/typescript-estree": {
2165
- "version": "6.21.0",
2166
- "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.21.0.tgz",
2167
- "integrity": "sha512-6npJTkZcO+y2/kr+z0hc4HwNfrrP4kNYh57ek7yCNlrBjWQ1Y0OS7jiZTkgumrvkX5HkEKXFZkkdFNkaW2wmUQ==",
2168
- "dependencies": {
2169
- "@typescript-eslint/types": "6.21.0",
2170
- "@typescript-eslint/visitor-keys": "6.21.0",
2171
- "debug": "^4.3.4",
2172
- "globby": "^11.1.0",
2173
- "is-glob": "^4.0.3",
2174
- "minimatch": "9.0.3",
2175
- "semver": "^7.5.4",
2176
- "ts-api-utils": "^1.0.1"
2177
- },
2178
- "engines": {
2179
- "node": "^16.0.0 || >=18.0.0"
2180
- },
2181
- "funding": {
2182
- "type": "opencollective",
2183
- "url": "https://opencollective.com/typescript-eslint"
2184
- },
2185
- "peerDependenciesMeta": {
2186
- "typescript": {
2187
- "optional": true
2188
- }
2189
- }
2190
- },
2191
- "node_modules/@typescript-eslint/utils": {
2192
- "version": "6.21.0",
2193
- "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.21.0.tgz",
2194
- "integrity": "sha512-NfWVaC8HP9T8cbKQxHcsJBY5YE1O33+jpMwN45qzWWaPDZgLIbo12toGMWnmhvCpd3sIxkpDw3Wv1B3dYrbDQQ==",
2195
- "dependencies": {
2196
- "@eslint-community/eslint-utils": "^4.4.0",
2197
- "@types/json-schema": "^7.0.12",
2198
- "@types/semver": "^7.5.0",
2199
- "@typescript-eslint/scope-manager": "6.21.0",
2200
- "@typescript-eslint/types": "6.21.0",
2201
- "@typescript-eslint/typescript-estree": "6.21.0",
2202
- "semver": "^7.5.4"
2203
- },
2204
- "engines": {
2205
- "node": "^16.0.0 || >=18.0.0"
2206
- },
2207
- "funding": {
2208
- "type": "opencollective",
2209
- "url": "https://opencollective.com/typescript-eslint"
2210
- },
2211
- "peerDependencies": {
2212
- "eslint": "^7.0.0 || ^8.0.0"
2213
- }
2214
- },
2215
- "node_modules/@typescript-eslint/visitor-keys": {
2216
- "version": "6.21.0",
2217
- "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.21.0.tgz",
2218
- "integrity": "sha512-JJtkDduxLi9bivAB+cYOVMtbkqdPOhZ+ZI5LC47MIRrDV4Yn2o+ZnW10Nkmr28xRpSpdJ6Sm42Hjf2+REYXm0A==",
2219
- "dependencies": {
2220
- "@typescript-eslint/types": "6.21.0",
2221
- "eslint-visitor-keys": "^3.4.1"
2222
- },
2223
- "engines": {
2224
- "node": "^16.0.0 || >=18.0.0"
2225
- },
2226
- "funding": {
2227
- "type": "opencollective",
2228
- "url": "https://opencollective.com/typescript-eslint"
2229
- }
2230
- },
2231
- "node_modules/@ungap/structured-clone": {
2232
- "version": "1.2.0",
2233
- "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.2.0.tgz",
2234
- "integrity": "sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ=="
2235
- },
2236
- "node_modules/@unocss/config": {
2237
- "version": "0.56.5",
2238
- "resolved": "https://registry.npmjs.org/@unocss/config/-/config-0.56.5.tgz",
2239
- "integrity": "sha512-rscnFIYgUlN/0hXHdhANyjFcDjDutt3JO0ZRITdNLzoglh7GVNiDTURBJwUZejF/vGJ7IkMd3qOdNhPFuRY1Bg==",
2240
- "dependencies": {
2241
- "@unocss/core": "0.56.5",
2242
- "unconfig": "^0.3.10"
2243
- },
2244
- "engines": {
2245
- "node": ">=14"
2246
- },
2247
- "funding": {
2248
- "url": "https://github.com/sponsors/antfu"
2249
- }
2250
- },
2251
- "node_modules/@unocss/core": {
2252
- "version": "0.56.5",
2253
- "resolved": "https://registry.npmjs.org/@unocss/core/-/core-0.56.5.tgz",
2254
- "integrity": "sha512-fx5VhOjSHn0HdV2D34pEwFMAHJcJQRTCp1xEE4GzxY1irXzaa+m2aYf5PZjmDxehiOC16IH7TO9FOWANXk1E0w==",
2255
- "funding": {
2256
- "url": "https://github.com/sponsors/antfu"
2257
- }
2258
- },
2259
- "node_modules/@unocss/eslint-config": {
2260
- "version": "0.56.5",
2261
- "resolved": "https://registry.npmjs.org/@unocss/eslint-config/-/eslint-config-0.56.5.tgz",
2262
- "integrity": "sha512-UP7EBTl4ORRO0yqptW7oUWxM0qNh1Nk+z4rufC0C2kI8vKc8yab+sWvlBSC8DeX3kzR7uJxvtUsHGcBcoqZujg==",
2263
- "dependencies": {
2264
- "@unocss/eslint-plugin": "0.56.5"
2265
- },
2266
- "engines": {
2267
- "node": ">=14"
2268
- },
2269
- "funding": {
2270
- "url": "https://github.com/sponsors/antfu"
2271
- }
2272
- },
2273
- "node_modules/@unocss/eslint-plugin": {
2274
- "version": "0.56.5",
2275
- "resolved": "https://registry.npmjs.org/@unocss/eslint-plugin/-/eslint-plugin-0.56.5.tgz",
2276
- "integrity": "sha512-nMVw/kc0sYU5i8UBU1rEahzKhZRPTUjCztpPzo2KUKFKLBPAbTv0gJAOmU/n2kV3YiGk5Tl6jmShxu1MHjk5rA==",
2277
- "dependencies": {
2278
- "@typescript-eslint/utils": "^6.7.3",
2279
- "@unocss/config": "0.56.5",
2280
- "@unocss/core": "0.56.5",
2281
- "magic-string": "^0.30.3",
2282
- "synckit": "^0.8.5"
2283
- },
2284
- "engines": {
2285
- "node": ">=14"
2286
- },
2287
- "funding": {
2288
- "url": "https://github.com/sponsors/antfu"
2289
- }
2290
- },
2291
- "node_modules/@vitejs/plugin-vue": {
2292
- "version": "5.0.4",
2293
- "resolved": "https://registry.npmjs.org/@vitejs/plugin-vue/-/plugin-vue-5.0.4.tgz",
2294
- "integrity": "sha512-WS3hevEszI6CEVEx28F8RjTX97k3KsrcY6kvTg7+Whm5y3oYvcqzVeGCU3hxSAn4uY2CLCkeokkGKpoctccilQ==",
2295
- "dev": true,
2296
- "engines": {
2297
- "node": "^18.0.0 || >=20.0.0"
2298
- },
2299
- "peerDependencies": {
2300
- "vite": "^5.0.0",
2301
- "vue": "^3.2.25"
2302
- }
2303
- },
2304
- "node_modules/@vitejs/plugin-vue-jsx": {
2305
- "version": "3.1.0",
2306
- "resolved": "https://registry.npmjs.org/@vitejs/plugin-vue-jsx/-/plugin-vue-jsx-3.1.0.tgz",
2307
- "integrity": "sha512-w9M6F3LSEU5kszVb9An2/MmXNxocAnUb3WhRr8bHlimhDrXNt6n6D2nJQR3UXpGlZHh/EsgouOHCsM8V3Ln+WA==",
2308
- "dev": true,
2309
- "dependencies": {
2310
- "@babel/core": "^7.23.3",
2311
- "@babel/plugin-transform-typescript": "^7.23.3",
2312
- "@vue/babel-plugin-jsx": "^1.1.5"
2313
- },
2314
- "engines": {
2315
- "node": "^14.18.0 || >=16.0.0"
2316
- },
2317
- "peerDependencies": {
2318
- "vite": "^4.0.0 || ^5.0.0",
2319
- "vue": "^3.0.0"
2320
- }
2321
- },
2322
- "node_modules/@vitest/expect": {
2323
- "version": "1.6.0",
2324
- "resolved": "https://registry.npmjs.org/@vitest/expect/-/expect-1.6.0.tgz",
2325
- "integrity": "sha512-ixEvFVQjycy/oNgHjqsL6AZCDduC+tflRluaHIzKIsdbzkLn2U/iBnVeJwB6HsIjQBdfMR8Z0tRxKUsvFJEeWQ==",
2326
- "dev": true,
2327
- "dependencies": {
2328
- "@vitest/spy": "1.6.0",
2329
- "@vitest/utils": "1.6.0",
2330
- "chai": "^4.3.10"
2331
- },
2332
- "funding": {
2333
- "url": "https://opencollective.com/vitest"
2334
- }
2335
- },
2336
- "node_modules/@vitest/runner": {
2337
- "version": "1.6.0",
2338
- "resolved": "https://registry.npmjs.org/@vitest/runner/-/runner-1.6.0.tgz",
2339
- "integrity": "sha512-P4xgwPjwesuBiHisAVz/LSSZtDjOTPYZVmNAnpHHSR6ONrf8eCJOFRvUwdHn30F5M1fxhqtl7QZQUk2dprIXAg==",
2340
- "dev": true,
2341
- "dependencies": {
2342
- "@vitest/utils": "1.6.0",
2343
- "p-limit": "^5.0.0",
2344
- "pathe": "^1.1.1"
2345
- },
2346
- "funding": {
2347
- "url": "https://opencollective.com/vitest"
2348
- }
2349
- },
2350
- "node_modules/@vitest/runner/node_modules/p-limit": {
2351
- "version": "5.0.0",
2352
- "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-5.0.0.tgz",
2353
- "integrity": "sha512-/Eaoq+QyLSiXQ4lyYV23f14mZRQcXnxfHrN0vCai+ak9G0pp9iEQukIIZq5NccEvwRB8PUnZT0KsOoDCINS1qQ==",
2354
- "dev": true,
2355
- "dependencies": {
2356
- "yocto-queue": "^1.0.0"
2357
- },
2358
- "engines": {
2359
- "node": ">=18"
2360
- },
2361
- "funding": {
2362
- "url": "https://github.com/sponsors/sindresorhus"
2363
- }
2364
- },
2365
- "node_modules/@vitest/runner/node_modules/yocto-queue": {
2366
- "version": "1.0.0",
2367
- "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.0.0.tgz",
2368
- "integrity": "sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==",
2369
- "dev": true,
2370
- "engines": {
2371
- "node": ">=12.20"
2372
- },
2373
- "funding": {
2374
- "url": "https://github.com/sponsors/sindresorhus"
2375
- }
2376
- },
2377
- "node_modules/@vitest/snapshot": {
2378
- "version": "1.6.0",
2379
- "resolved": "https://registry.npmjs.org/@vitest/snapshot/-/snapshot-1.6.0.tgz",
2380
- "integrity": "sha512-+Hx43f8Chus+DCmygqqfetcAZrDJwvTj0ymqjQq4CvmpKFSTVteEOBzCusu1x2tt4OJcvBflyHUE0DZSLgEMtQ==",
2381
- "dev": true,
2382
- "dependencies": {
2383
- "magic-string": "^0.30.5",
2384
- "pathe": "^1.1.1",
2385
- "pretty-format": "^29.7.0"
2386
- },
2387
- "funding": {
2388
- "url": "https://opencollective.com/vitest"
2389
- }
2390
- },
2391
- "node_modules/@vitest/spy": {
2392
- "version": "1.6.0",
2393
- "resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-1.6.0.tgz",
2394
- "integrity": "sha512-leUTap6B/cqi/bQkXUu6bQV5TZPx7pmMBKBQiI0rJA8c3pB56ZsaTbREnF7CJfmvAS4V2cXIBAh/3rVwrrCYgw==",
2395
- "dev": true,
2396
- "dependencies": {
2397
- "tinyspy": "^2.2.0"
2398
- },
2399
- "funding": {
2400
- "url": "https://opencollective.com/vitest"
2401
- }
2402
- },
2403
- "node_modules/@vitest/utils": {
2404
- "version": "1.6.0",
2405
- "resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-1.6.0.tgz",
2406
- "integrity": "sha512-21cPiuGMoMZwiOHa2i4LXkMkMkCGzA+MVFV70jRwHo95dL4x/ts5GZhML1QWuy7yfp3WzK3lRvZi3JnXTYqrBw==",
2407
- "dev": true,
2408
- "dependencies": {
2409
- "diff-sequences": "^29.6.3",
2410
- "estree-walker": "^3.0.3",
2411
- "loupe": "^2.3.7",
2412
- "pretty-format": "^29.7.0"
2413
- },
2414
- "funding": {
2415
- "url": "https://opencollective.com/vitest"
2416
- }
2417
- },
2418
- "node_modules/@vitest/utils/node_modules/estree-walker": {
2419
- "version": "3.0.3",
2420
- "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-3.0.3.tgz",
2421
- "integrity": "sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==",
2422
- "dev": true,
2423
- "dependencies": {
2424
- "@types/estree": "^1.0.0"
2425
- }
2426
- },
2427
- "node_modules/@volar/language-core": {
2428
- "version": "2.2.4",
2429
- "resolved": "https://registry.npmjs.org/@volar/language-core/-/language-core-2.2.4.tgz",
2430
- "integrity": "sha512-7As47GndxGxsqqYnbreLrfB5NDUeQioPM2LJKUuB4/34c0NpEJ2byVl3c9KYdjIdiEstWZ9JLtLKNTaPWb5jtA==",
2431
- "dev": true,
2432
- "dependencies": {
2433
- "@volar/source-map": "2.2.4"
2434
- }
2435
- },
2436
- "node_modules/@volar/source-map": {
2437
- "version": "2.2.4",
2438
- "resolved": "https://registry.npmjs.org/@volar/source-map/-/source-map-2.2.4.tgz",
2439
- "integrity": "sha512-m92FLpR9vB1YEZfiZ+bfgpLrToL/DNkOrorWVep3pffHrwwI4Tx2oIQN+sqHJfKkiT5N3J1owC+8crhAEinfjg==",
2440
- "dev": true,
2441
- "dependencies": {
2442
- "muggle-string": "^0.4.0"
2443
- }
2444
- },
2445
- "node_modules/@volar/typescript": {
2446
- "version": "2.2.4",
2447
- "resolved": "https://registry.npmjs.org/@volar/typescript/-/typescript-2.2.4.tgz",
2448
- "integrity": "sha512-uAQC53tgEbHO62G8NXMfmBrJAlP2QJ9WxVEEQqqK3I6VSy8frL5LbH3hAWODxiwMWixv74wJLWlKbWXOgdIoRQ==",
2449
- "dev": true,
2450
- "dependencies": {
2451
- "@volar/language-core": "2.2.4",
2452
- "path-browserify": "^1.0.1"
2453
- }
2454
- },
2455
- "node_modules/@vue/babel-helper-vue-transform-on": {
2456
- "version": "1.2.2",
2457
- "resolved": "https://registry.npmjs.org/@vue/babel-helper-vue-transform-on/-/babel-helper-vue-transform-on-1.2.2.tgz",
2458
- "integrity": "sha512-nOttamHUR3YzdEqdM/XXDyCSdxMA9VizUKoroLX6yTyRtggzQMHXcmwh8a7ZErcJttIBIc9s68a1B8GZ+Dmvsw==",
2459
- "dev": true
2460
- },
2461
- "node_modules/@vue/babel-plugin-jsx": {
2462
- "version": "1.2.2",
2463
- "resolved": "https://registry.npmjs.org/@vue/babel-plugin-jsx/-/babel-plugin-jsx-1.2.2.tgz",
2464
- "integrity": "sha512-nYTkZUVTu4nhP199UoORePsql0l+wj7v/oyQjtThUVhJl1U+6qHuoVhIvR3bf7eVKjbCK+Cs2AWd7mi9Mpz9rA==",
2465
- "dev": true,
2466
- "dependencies": {
2467
- "@babel/helper-module-imports": "~7.22.15",
2468
- "@babel/helper-plugin-utils": "^7.22.5",
2469
- "@babel/plugin-syntax-jsx": "^7.23.3",
2470
- "@babel/template": "^7.23.9",
2471
- "@babel/traverse": "^7.23.9",
2472
- "@babel/types": "^7.23.9",
2473
- "@vue/babel-helper-vue-transform-on": "1.2.2",
2474
- "@vue/babel-plugin-resolve-type": "1.2.2",
2475
- "camelcase": "^6.3.0",
2476
- "html-tags": "^3.3.1",
2477
- "svg-tags": "^1.0.0"
2478
- },
2479
- "peerDependencies": {
2480
- "@babel/core": "^7.0.0-0"
2481
- },
2482
- "peerDependenciesMeta": {
2483
- "@babel/core": {
2484
- "optional": true
2485
- }
2486
- }
2487
- },
2488
- "node_modules/@vue/babel-plugin-jsx/node_modules/@babel/helper-module-imports": {
2489
- "version": "7.22.15",
2490
- "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.22.15.tgz",
2491
- "integrity": "sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w==",
2492
- "dev": true,
2493
- "dependencies": {
2494
- "@babel/types": "^7.22.15"
2495
- },
2496
- "engines": {
2497
- "node": ">=6.9.0"
2498
- }
2499
- },
2500
- "node_modules/@vue/babel-plugin-resolve-type": {
2501
- "version": "1.2.2",
2502
- "resolved": "https://registry.npmjs.org/@vue/babel-plugin-resolve-type/-/babel-plugin-resolve-type-1.2.2.tgz",
2503
- "integrity": "sha512-EntyroPwNg5IPVdUJupqs0CFzuf6lUrVvCspmv2J1FITLeGnUCuoGNNk78dgCusxEiYj6RMkTJflGSxk5aIC4A==",
2504
- "dev": true,
2505
- "dependencies": {
2506
- "@babel/code-frame": "^7.23.5",
2507
- "@babel/helper-module-imports": "~7.22.15",
2508
- "@babel/helper-plugin-utils": "^7.22.5",
2509
- "@babel/parser": "^7.23.9",
2510
- "@vue/compiler-sfc": "^3.4.15"
2511
- },
2512
- "peerDependencies": {
2513
- "@babel/core": "^7.0.0-0"
2514
- }
2515
- },
2516
- "node_modules/@vue/babel-plugin-resolve-type/node_modules/@babel/helper-module-imports": {
2517
- "version": "7.22.15",
2518
- "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.22.15.tgz",
2519
- "integrity": "sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w==",
2520
- "dev": true,
2521
- "dependencies": {
2522
- "@babel/types": "^7.22.15"
2523
- },
2524
- "engines": {
2525
- "node": ">=6.9.0"
2526
- }
2527
- },
2528
- "node_modules/@vue/compiler-core": {
2529
- "version": "3.4.27",
2530
- "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.4.27.tgz",
2531
- "integrity": "sha512-E+RyqY24KnyDXsCuQrI+mlcdW3ALND6U7Gqa/+bVwbcpcR3BRRIckFoz7Qyd4TTlnugtwuI7YgjbvsLmxb+yvg==",
2532
- "dependencies": {
2533
- "@babel/parser": "^7.24.4",
2534
- "@vue/shared": "3.4.27",
2535
- "entities": "^4.5.0",
2536
- "estree-walker": "^2.0.2",
2537
- "source-map-js": "^1.2.0"
2538
- }
2539
- },
2540
- "node_modules/@vue/compiler-dom": {
2541
- "version": "3.4.27",
2542
- "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.4.27.tgz",
2543
- "integrity": "sha512-kUTvochG/oVgE1w5ViSr3KUBh9X7CWirebA3bezTbB5ZKBQZwR2Mwj9uoSKRMFcz4gSMzzLXBPD6KpCLb9nvWw==",
2544
- "dependencies": {
2545
- "@vue/compiler-core": "3.4.27",
2546
- "@vue/shared": "3.4.27"
2547
- }
2548
- },
2549
- "node_modules/@vue/compiler-sfc": {
2550
- "version": "3.4.27",
2551
- "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.4.27.tgz",
2552
- "integrity": "sha512-nDwntUEADssW8e0rrmE0+OrONwmRlegDA1pD6QhVeXxjIytV03yDqTey9SBDiALsvAd5U4ZrEKbMyVXhX6mCGA==",
2553
- "dependencies": {
2554
- "@babel/parser": "^7.24.4",
2555
- "@vue/compiler-core": "3.4.27",
2556
- "@vue/compiler-dom": "3.4.27",
2557
- "@vue/compiler-ssr": "3.4.27",
2558
- "@vue/shared": "3.4.27",
2559
- "estree-walker": "^2.0.2",
2560
- "magic-string": "^0.30.10",
2561
- "postcss": "^8.4.38",
2562
- "source-map-js": "^1.2.0"
2563
- }
2564
- },
2565
- "node_modules/@vue/compiler-ssr": {
2566
- "version": "3.4.27",
2567
- "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.4.27.tgz",
2568
- "integrity": "sha512-CVRzSJIltzMG5FcidsW0jKNQnNRYC8bT21VegyMMtHmhW3UOI7knmUehzswXLrExDLE6lQCZdrhD4ogI7c+vuw==",
2569
- "dependencies": {
2570
- "@vue/compiler-dom": "3.4.27",
2571
- "@vue/shared": "3.4.27"
2572
- }
2573
- },
2574
- "node_modules/@vue/devtools-api": {
2575
- "version": "6.6.1",
2576
- "resolved": "https://registry.npmjs.org/@vue/devtools-api/-/devtools-api-6.6.1.tgz",
2577
- "integrity": "sha512-LgPscpE3Vs0x96PzSSB4IGVSZXZBZHpfxs+ZA1d+VEPwHdOXowy/Y2CsvCAIFrf+ssVU1pD1jidj505EpUnfbA=="
2578
- },
2579
- "node_modules/@vue/eslint-config-prettier": {
2580
- "version": "9.0.0",
2581
- "resolved": "https://registry.npmjs.org/@vue/eslint-config-prettier/-/eslint-config-prettier-9.0.0.tgz",
2582
- "integrity": "sha512-z1ZIAAUS9pKzo/ANEfd2sO+v2IUalz7cM/cTLOZ7vRFOPk5/xuRKQteOu1DErFLAh/lYGXMVZ0IfYKlyInuDVg==",
2583
- "dev": true,
2584
- "dependencies": {
2585
- "eslint-config-prettier": "^9.0.0",
2586
- "eslint-plugin-prettier": "^5.0.0"
2587
- },
2588
- "peerDependencies": {
2589
- "eslint": ">= 8.0.0",
2590
- "prettier": ">= 3.0.0"
2591
- }
2592
- },
2593
- "node_modules/@vue/eslint-config-typescript": {
2594
- "version": "13.0.0",
2595
- "resolved": "https://registry.npmjs.org/@vue/eslint-config-typescript/-/eslint-config-typescript-13.0.0.tgz",
2596
- "integrity": "sha512-MHh9SncG/sfqjVqjcuFLOLD6Ed4dRAis4HNt0dXASeAuLqIAx4YMB1/m2o4pUKK1vCt8fUvYG8KKX2Ot3BVZTg==",
2597
- "dev": true,
2598
- "dependencies": {
2599
- "@typescript-eslint/eslint-plugin": "^7.1.1",
2600
- "@typescript-eslint/parser": "^7.1.1",
2601
- "vue-eslint-parser": "^9.3.1"
2602
- },
2603
- "engines": {
2604
- "node": "^18.18.0 || >=20.0.0"
2605
- },
2606
- "peerDependencies": {
2607
- "eslint": "^8.56.0",
2608
- "eslint-plugin-vue": "^9.0.0",
2609
- "typescript": ">=4.7.4"
2610
- },
2611
- "peerDependenciesMeta": {
2612
- "typescript": {
2613
- "optional": true
2614
- }
2615
- }
2616
- },
2617
- "node_modules/@vue/eslint-config-typescript/node_modules/@typescript-eslint/eslint-plugin": {
2618
- "version": "7.9.0",
2619
- "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.9.0.tgz",
2620
- "integrity": "sha512-6e+X0X3sFe/G/54aC3jt0txuMTURqLyekmEHViqyA2VnxhLMpvA6nqmcjIy+Cr9tLDHPssA74BP5Mx9HQIxBEA==",
2621
- "dev": true,
2622
- "dependencies": {
2623
- "@eslint-community/regexpp": "^4.10.0",
2624
- "@typescript-eslint/scope-manager": "7.9.0",
2625
- "@typescript-eslint/type-utils": "7.9.0",
2626
- "@typescript-eslint/utils": "7.9.0",
2627
- "@typescript-eslint/visitor-keys": "7.9.0",
2628
- "graphemer": "^1.4.0",
2629
- "ignore": "^5.3.1",
2630
- "natural-compare": "^1.4.0",
2631
- "ts-api-utils": "^1.3.0"
2632
- },
2633
- "engines": {
2634
- "node": "^18.18.0 || >=20.0.0"
2635
- },
2636
- "funding": {
2637
- "type": "opencollective",
2638
- "url": "https://opencollective.com/typescript-eslint"
2639
- },
2640
- "peerDependencies": {
2641
- "@typescript-eslint/parser": "^7.0.0",
2642
- "eslint": "^8.56.0"
2643
- },
2644
- "peerDependenciesMeta": {
2645
- "typescript": {
2646
- "optional": true
2647
- }
2648
- }
2649
- },
2650
- "node_modules/@vue/eslint-config-typescript/node_modules/@typescript-eslint/parser": {
2651
- "version": "7.9.0",
2652
- "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-7.9.0.tgz",
2653
- "integrity": "sha512-qHMJfkL5qvgQB2aLvhUSXxbK7OLnDkwPzFalg458pxQgfxKDfT1ZDbHQM/I6mDIf/svlMkj21kzKuQ2ixJlatQ==",
2654
- "dev": true,
2655
- "dependencies": {
2656
- "@typescript-eslint/scope-manager": "7.9.0",
2657
- "@typescript-eslint/types": "7.9.0",
2658
- "@typescript-eslint/typescript-estree": "7.9.0",
2659
- "@typescript-eslint/visitor-keys": "7.9.0",
2660
- "debug": "^4.3.4"
2661
- },
2662
- "engines": {
2663
- "node": "^18.18.0 || >=20.0.0"
2664
- },
2665
- "funding": {
2666
- "type": "opencollective",
2667
- "url": "https://opencollective.com/typescript-eslint"
2668
- },
2669
- "peerDependencies": {
2670
- "eslint": "^8.56.0"
2671
- },
2672
- "peerDependenciesMeta": {
2673
- "typescript": {
2674
- "optional": true
2675
- }
2676
- }
2677
- },
2678
- "node_modules/@vue/eslint-config-typescript/node_modules/@typescript-eslint/scope-manager": {
2679
- "version": "7.9.0",
2680
- "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-7.9.0.tgz",
2681
- "integrity": "sha512-ZwPK4DeCDxr3GJltRz5iZejPFAAr4Wk3+2WIBaj1L5PYK5RgxExu/Y68FFVclN0y6GGwH8q+KgKRCvaTmFBbgQ==",
2682
- "dev": true,
2683
- "dependencies": {
2684
- "@typescript-eslint/types": "7.9.0",
2685
- "@typescript-eslint/visitor-keys": "7.9.0"
2686
- },
2687
- "engines": {
2688
- "node": "^18.18.0 || >=20.0.0"
2689
- },
2690
- "funding": {
2691
- "type": "opencollective",
2692
- "url": "https://opencollective.com/typescript-eslint"
2693
- }
2694
- },
2695
- "node_modules/@vue/eslint-config-typescript/node_modules/@typescript-eslint/type-utils": {
2696
- "version": "7.9.0",
2697
- "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-7.9.0.tgz",
2698
- "integrity": "sha512-6Qy8dfut0PFrFRAZsGzuLoM4hre4gjzWJB6sUvdunCYZsYemTkzZNwF1rnGea326PHPT3zn5Lmg32M/xfJfByA==",
2699
- "dev": true,
2700
- "dependencies": {
2701
- "@typescript-eslint/typescript-estree": "7.9.0",
2702
- "@typescript-eslint/utils": "7.9.0",
2703
- "debug": "^4.3.4",
2704
- "ts-api-utils": "^1.3.0"
2705
- },
2706
- "engines": {
2707
- "node": "^18.18.0 || >=20.0.0"
2708
- },
2709
- "funding": {
2710
- "type": "opencollective",
2711
- "url": "https://opencollective.com/typescript-eslint"
2712
- },
2713
- "peerDependencies": {
2714
- "eslint": "^8.56.0"
2715
- },
2716
- "peerDependenciesMeta": {
2717
- "typescript": {
2718
- "optional": true
2719
- }
2720
- }
2721
- },
2722
- "node_modules/@vue/eslint-config-typescript/node_modules/@typescript-eslint/types": {
2723
- "version": "7.9.0",
2724
- "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.9.0.tgz",
2725
- "integrity": "sha512-oZQD9HEWQanl9UfsbGVcZ2cGaR0YT5476xfWE0oE5kQa2sNK2frxOlkeacLOTh9po4AlUT5rtkGyYM5kew0z5w==",
2726
- "dev": true,
2727
- "engines": {
2728
- "node": "^18.18.0 || >=20.0.0"
2729
- },
2730
- "funding": {
2731
- "type": "opencollective",
2732
- "url": "https://opencollective.com/typescript-eslint"
2733
- }
2734
- },
2735
- "node_modules/@vue/eslint-config-typescript/node_modules/@typescript-eslint/typescript-estree": {
2736
- "version": "7.9.0",
2737
- "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-7.9.0.tgz",
2738
- "integrity": "sha512-zBCMCkrb2YjpKV3LA0ZJubtKCDxLttxfdGmwZvTqqWevUPN0FZvSI26FalGFFUZU/9YQK/A4xcQF9o/VVaCKAg==",
2739
- "dev": true,
2740
- "dependencies": {
2741
- "@typescript-eslint/types": "7.9.0",
2742
- "@typescript-eslint/visitor-keys": "7.9.0",
2743
- "debug": "^4.3.4",
2744
- "globby": "^11.1.0",
2745
- "is-glob": "^4.0.3",
2746
- "minimatch": "^9.0.4",
2747
- "semver": "^7.6.0",
2748
- "ts-api-utils": "^1.3.0"
2749
- },
2750
- "engines": {
2751
- "node": "^18.18.0 || >=20.0.0"
2752
- },
2753
- "funding": {
2754
- "type": "opencollective",
2755
- "url": "https://opencollective.com/typescript-eslint"
2756
- },
2757
- "peerDependenciesMeta": {
2758
- "typescript": {
2759
- "optional": true
2760
- }
2761
- }
2762
- },
2763
- "node_modules/@vue/eslint-config-typescript/node_modules/@typescript-eslint/utils": {
2764
- "version": "7.9.0",
2765
- "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-7.9.0.tgz",
2766
- "integrity": "sha512-5KVRQCzZajmT4Ep+NEgjXCvjuypVvYHUW7RHlXzNPuak2oWpVoD1jf5xCP0dPAuNIchjC7uQyvbdaSTFaLqSdA==",
2767
- "dev": true,
2768
- "dependencies": {
2769
- "@eslint-community/eslint-utils": "^4.4.0",
2770
- "@typescript-eslint/scope-manager": "7.9.0",
2771
- "@typescript-eslint/types": "7.9.0",
2772
- "@typescript-eslint/typescript-estree": "7.9.0"
2773
- },
2774
- "engines": {
2775
- "node": "^18.18.0 || >=20.0.0"
2776
- },
2777
- "funding": {
2778
- "type": "opencollective",
2779
- "url": "https://opencollective.com/typescript-eslint"
2780
- },
2781
- "peerDependencies": {
2782
- "eslint": "^8.56.0"
2783
- }
2784
- },
2785
- "node_modules/@vue/eslint-config-typescript/node_modules/@typescript-eslint/visitor-keys": {
2786
- "version": "7.9.0",
2787
- "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-7.9.0.tgz",
2788
- "integrity": "sha512-iESPx2TNLDNGQLyjKhUvIKprlP49XNEK+MvIf9nIO7ZZaZdbnfWKHnXAgufpxqfA0YryH8XToi4+CjBgVnFTSQ==",
2789
- "dev": true,
2790
- "dependencies": {
2791
- "@typescript-eslint/types": "7.9.0",
2792
- "eslint-visitor-keys": "^3.4.3"
2793
- },
2794
- "engines": {
2795
- "node": "^18.18.0 || >=20.0.0"
2796
- },
2797
- "funding": {
2798
- "type": "opencollective",
2799
- "url": "https://opencollective.com/typescript-eslint"
2800
- }
2801
- },
2802
- "node_modules/@vue/eslint-config-typescript/node_modules/minimatch": {
2803
- "version": "9.0.4",
2804
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.4.tgz",
2805
- "integrity": "sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==",
2806
- "dev": true,
2807
- "dependencies": {
2808
- "brace-expansion": "^2.0.1"
2809
- },
2810
- "engines": {
2811
- "node": ">=16 || 14 >=14.17"
2812
- },
2813
- "funding": {
2814
- "url": "https://github.com/sponsors/isaacs"
2815
- }
2816
- },
2817
- "node_modules/@vue/language-core": {
2818
- "version": "2.0.19",
2819
- "resolved": "https://registry.npmjs.org/@vue/language-core/-/language-core-2.0.19.tgz",
2820
- "integrity": "sha512-A9EGOnvb51jOvnCYoRLnMP+CcoPlbZVxI9gZXE/y2GksRWM6j/PrLEIC++pnosWTN08tFpJgxhSS//E9v/Sg+Q==",
2821
- "dev": true,
2822
- "dependencies": {
2823
- "@volar/language-core": "~2.2.4",
2824
- "@vue/compiler-dom": "^3.4.0",
2825
- "@vue/shared": "^3.4.0",
2826
- "computeds": "^0.0.1",
2827
- "minimatch": "^9.0.3",
2828
- "path-browserify": "^1.0.1",
2829
- "vue-template-compiler": "^2.7.14"
2830
- },
2831
- "peerDependencies": {
2832
- "typescript": "*"
2833
- },
2834
- "peerDependenciesMeta": {
2835
- "typescript": {
2836
- "optional": true
2837
- }
2838
- }
2839
- },
2840
- "node_modules/@vue/reactivity": {
2841
- "version": "3.4.27",
2842
- "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.4.27.tgz",
2843
- "integrity": "sha512-kK0g4NknW6JX2yySLpsm2jlunZJl2/RJGZ0H9ddHdfBVHcNzxmQ0sS0b09ipmBoQpY8JM2KmUw+a6sO8Zo+zIA==",
2844
- "dependencies": {
2845
- "@vue/shared": "3.4.27"
2846
- }
2847
- },
2848
- "node_modules/@vue/runtime-core": {
2849
- "version": "3.4.27",
2850
- "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.4.27.tgz",
2851
- "integrity": "sha512-7aYA9GEbOOdviqVvcuweTLe5Za4qBZkUY7SvET6vE8kyypxVgaT1ixHLg4urtOlrApdgcdgHoTZCUuTGap/5WA==",
2852
- "dependencies": {
2853
- "@vue/reactivity": "3.4.27",
2854
- "@vue/shared": "3.4.27"
2855
- }
2856
- },
2857
- "node_modules/@vue/runtime-dom": {
2858
- "version": "3.4.27",
2859
- "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.4.27.tgz",
2860
- "integrity": "sha512-ScOmP70/3NPM+TW9hvVAz6VWWtZJqkbdf7w6ySsws+EsqtHvkhxaWLecrTorFxsawelM5Ys9FnDEMt6BPBDS0Q==",
2861
- "dependencies": {
2862
- "@vue/runtime-core": "3.4.27",
2863
- "@vue/shared": "3.4.27",
2864
- "csstype": "^3.1.3"
2865
- }
2866
- },
2867
- "node_modules/@vue/server-renderer": {
2868
- "version": "3.4.27",
2869
- "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.4.27.tgz",
2870
- "integrity": "sha512-dlAMEuvmeA3rJsOMJ2J1kXU7o7pOxgsNHVr9K8hB3ImIkSuBrIdy0vF66h8gf8Tuinf1TK3mPAz2+2sqyf3KzA==",
2871
- "dependencies": {
2872
- "@vue/compiler-ssr": "3.4.27",
2873
- "@vue/shared": "3.4.27"
2874
- },
2875
- "peerDependencies": {
2876
- "vue": "3.4.27"
2877
- }
2878
- },
2879
- "node_modules/@vue/shared": {
2880
- "version": "3.4.27",
2881
- "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.4.27.tgz",
2882
- "integrity": "sha512-DL3NmY2OFlqmYYrzp39yi3LDkKxa5vZVwxWdQ3rG0ekuWscHraeIbnI8t+aZK7qhYqEqWKTUdijadunb9pnrgA=="
2883
- },
2884
- "node_modules/@vue/test-utils": {
2885
- "version": "2.4.6",
2886
- "resolved": "https://registry.npmjs.org/@vue/test-utils/-/test-utils-2.4.6.tgz",
2887
- "integrity": "sha512-FMxEjOpYNYiFe0GkaHsnJPXFHxQ6m4t8vI/ElPGpMWxZKpmRvQ33OIrvRXemy6yha03RxhOlQuy+gZMC3CQSow==",
2888
- "dev": true,
2889
- "dependencies": {
2890
- "js-beautify": "^1.14.9",
2891
- "vue-component-type-helpers": "^2.0.0"
2892
- }
2893
- },
2894
- "node_modules/@vue/tsconfig": {
2895
- "version": "0.5.1",
2896
- "resolved": "https://registry.npmjs.org/@vue/tsconfig/-/tsconfig-0.5.1.tgz",
2897
- "integrity": "sha512-VcZK7MvpjuTPx2w6blwnwZAu5/LgBUtejFOi3pPGQFXQN5Ela03FUtd2Qtg4yWGGissVL0dr6Ro1LfOFh+PCuQ==",
2898
- "dev": true
2899
- },
2900
- "node_modules/@vueuse/components": {
2901
- "version": "10.10.0",
2902
- "resolved": "https://registry.npmjs.org/@vueuse/components/-/components-10.10.0.tgz",
2903
- "integrity": "sha512-HiA10NQ9HJAGnju+8ZK4TyA8LIc0a6BnJmVWDa/k+TRhaYCVacSDU04k0BQ2otV+gghUDdwu98upf6TDRXpoeg==",
2904
- "dependencies": {
2905
- "@vueuse/core": "10.10.0",
2906
- "@vueuse/shared": "10.10.0",
2907
- "vue-demi": ">=0.14.7"
2908
- }
2909
- },
2910
- "node_modules/@vueuse/components/node_modules/vue-demi": {
2911
- "version": "0.14.7",
2912
- "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.14.7.tgz",
2913
- "integrity": "sha512-EOG8KXDQNwkJILkx/gPcoL/7vH+hORoBaKgGe+6W7VFMvCYJfmF2dGbvgDroVnI8LU7/kTu8mbjRZGBU1z9NTA==",
2914
- "hasInstallScript": true,
2915
- "bin": {
2916
- "vue-demi-fix": "bin/vue-demi-fix.js",
2917
- "vue-demi-switch": "bin/vue-demi-switch.js"
2918
- },
2919
- "engines": {
2920
- "node": ">=12"
2921
- },
2922
- "funding": {
2923
- "url": "https://github.com/sponsors/antfu"
2924
- },
2925
- "peerDependencies": {
2926
- "@vue/composition-api": "^1.0.0-rc.1",
2927
- "vue": "^3.0.0-0 || ^2.6.0"
2928
- },
2929
- "peerDependenciesMeta": {
2930
- "@vue/composition-api": {
2931
- "optional": true
2932
- }
2933
- }
2934
- },
2935
- "node_modules/@vueuse/core": {
2936
- "version": "10.10.0",
2937
- "resolved": "https://registry.npmjs.org/@vueuse/core/-/core-10.10.0.tgz",
2938
- "integrity": "sha512-vexJ/YXYs2S42B783rI95lMt3GzEwkxzC8Hb0Ndpd8rD+p+Lk/Za4bd797Ym7yq4jXqdSyj3JLChunF/vyYjUw==",
2939
- "dependencies": {
2940
- "@types/web-bluetooth": "^0.0.20",
2941
- "@vueuse/metadata": "10.10.0",
2942
- "@vueuse/shared": "10.10.0",
2943
- "vue-demi": ">=0.14.7"
2944
- },
2945
- "funding": {
2946
- "url": "https://github.com/sponsors/antfu"
2947
- }
2948
- },
2949
- "node_modules/@vueuse/core/node_modules/vue-demi": {
2950
- "version": "0.14.8",
2951
- "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.14.8.tgz",
2952
- "integrity": "sha512-Uuqnk9YE9SsWeReYqK2alDI5YzciATE0r2SkA6iMAtuXvNTMNACJLJEXNXaEy94ECuBe4Sk6RzRU80kjdbIo1Q==",
2953
- "hasInstallScript": true,
2954
- "bin": {
2955
- "vue-demi-fix": "bin/vue-demi-fix.js",
2956
- "vue-demi-switch": "bin/vue-demi-switch.js"
2957
- },
2958
- "engines": {
2959
- "node": ">=12"
2960
- },
2961
- "funding": {
2962
- "url": "https://github.com/sponsors/antfu"
2963
- },
2964
- "peerDependencies": {
2965
- "@vue/composition-api": "^1.0.0-rc.1",
2966
- "vue": "^3.0.0-0 || ^2.6.0"
2967
- },
2968
- "peerDependenciesMeta": {
2969
- "@vue/composition-api": {
2970
- "optional": true
2971
- }
2972
- }
2973
- },
2974
- "node_modules/@vueuse/metadata": {
2975
- "version": "10.10.0",
2976
- "resolved": "https://registry.npmjs.org/@vueuse/metadata/-/metadata-10.10.0.tgz",
2977
- "integrity": "sha512-UNAo2sTCAW5ge6OErPEHb5z7NEAg3XcO9Cj7OK45aZXfLLH1QkexDcZD77HBi5zvEiLOm1An+p/4b5K3Worpug==",
2978
- "funding": {
2979
- "url": "https://github.com/sponsors/antfu"
2980
- }
2981
- },
2982
- "node_modules/@vueuse/shared": {
2983
- "version": "10.10.0",
2984
- "resolved": "https://registry.npmjs.org/@vueuse/shared/-/shared-10.10.0.tgz",
2985
- "integrity": "sha512-2aW33Ac0Uk0U+9yo3Ypg9s5KcR42cuehRWl7vnUHadQyFvCktseyxxEPBi1Eiq4D2yBGACOnqLZpx1eMc7g5Og==",
2986
- "dependencies": {
2987
- "vue-demi": ">=0.14.7"
2988
- },
2989
- "funding": {
2990
- "url": "https://github.com/sponsors/antfu"
2991
- }
2992
- },
2993
- "node_modules/@vueuse/shared/node_modules/vue-demi": {
2994
- "version": "0.14.8",
2995
- "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.14.8.tgz",
2996
- "integrity": "sha512-Uuqnk9YE9SsWeReYqK2alDI5YzciATE0r2SkA6iMAtuXvNTMNACJLJEXNXaEy94ECuBe4Sk6RzRU80kjdbIo1Q==",
2997
- "hasInstallScript": true,
2998
- "bin": {
2999
- "vue-demi-fix": "bin/vue-demi-fix.js",
3000
- "vue-demi-switch": "bin/vue-demi-switch.js"
3001
- },
3002
- "engines": {
3003
- "node": ">=12"
3004
- },
3005
- "funding": {
3006
- "url": "https://github.com/sponsors/antfu"
3007
- },
3008
- "peerDependencies": {
3009
- "@vue/composition-api": "^1.0.0-rc.1",
3010
- "vue": "^3.0.0-0 || ^2.6.0"
3011
- },
3012
- "peerDependenciesMeta": {
3013
- "@vue/composition-api": {
3014
- "optional": true
3015
- }
3016
- }
3017
- },
3018
- "node_modules/@yr/monotone-cubic-spline": {
3019
- "version": "1.0.3",
3020
- "resolved": "https://registry.npmjs.org/@yr/monotone-cubic-spline/-/monotone-cubic-spline-1.0.3.tgz",
3021
- "integrity": "sha512-FQXkOta0XBSUPHndIKON2Y9JeQz5ZeMqLYZVVK93FliNBFm7LNMIZmY6FrMEB9XPcDbE2bekMbZD6kzDkxwYjA=="
3022
- },
3023
- "node_modules/abbrev": {
3024
- "version": "2.0.0",
3025
- "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-2.0.0.tgz",
3026
- "integrity": "sha512-6/mh1E2u2YgEsCHdY0Yx5oW+61gZU+1vXaoiHHrpKeuRNNgFvS+/jrwHiQhB5apAf5oB7UB7E19ol2R2LKH8hQ==",
3027
- "dev": true,
3028
- "engines": {
3029
- "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
3030
- }
3031
- },
3032
- "node_modules/accepts": {
3033
- "version": "1.3.8",
3034
- "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz",
3035
- "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==",
3036
- "dev": true,
3037
- "dependencies": {
3038
- "mime-types": "~2.1.34",
3039
- "negotiator": "0.6.3"
3040
- },
3041
- "engines": {
3042
- "node": ">= 0.6"
3043
- }
3044
- },
3045
- "node_modules/acorn": {
3046
- "version": "8.11.3",
3047
- "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.3.tgz",
3048
- "integrity": "sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==",
3049
- "bin": {
3050
- "acorn": "bin/acorn"
3051
- },
3052
- "engines": {
3053
- "node": ">=0.4.0"
3054
- }
3055
- },
3056
- "node_modules/acorn-jsx": {
3057
- "version": "5.3.2",
3058
- "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz",
3059
- "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==",
3060
- "peerDependencies": {
3061
- "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0"
3062
- }
3063
- },
3064
- "node_modules/acorn-walk": {
3065
- "version": "8.3.2",
3066
- "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.2.tgz",
3067
- "integrity": "sha512-cjkyv4OtNCIeqhHrfS81QWXoCBPExR/J62oyEqepVw8WaQeSqpW2uhuLPh1m9eWhDuOo/jUXVTlifvesOWp/4A==",
3068
- "dev": true,
3069
- "engines": {
3070
- "node": ">=0.4.0"
3071
- }
3072
- },
3073
- "node_modules/agent-base": {
3074
- "version": "7.1.1",
3075
- "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.1.tgz",
3076
- "integrity": "sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==",
3077
- "dev": true,
3078
- "dependencies": {
3079
- "debug": "^4.3.4"
3080
- },
3081
- "engines": {
3082
- "node": ">= 14"
3083
- }
3084
- },
3085
- "node_modules/aggregate-error": {
3086
- "version": "3.1.0",
3087
- "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz",
3088
- "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==",
3089
- "dev": true,
3090
- "dependencies": {
3091
- "clean-stack": "^2.0.0",
3092
- "indent-string": "^4.0.0"
3093
- },
3094
- "engines": {
3095
- "node": ">=8"
3096
- }
3097
- },
3098
- "node_modules/ajv": {
3099
- "version": "6.12.6",
3100
- "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz",
3101
- "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==",
3102
- "dependencies": {
3103
- "fast-deep-equal": "^3.1.1",
3104
- "fast-json-stable-stringify": "^2.0.0",
3105
- "json-schema-traverse": "^0.4.1",
3106
- "uri-js": "^4.2.2"
3107
- },
3108
- "funding": {
3109
- "type": "github",
3110
- "url": "https://github.com/sponsors/epoberezkin"
3111
- }
3112
- },
3113
- "node_modules/ansi-colors": {
3114
- "version": "4.1.3",
3115
- "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz",
3116
- "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==",
3117
- "dev": true,
3118
- "engines": {
3119
- "node": ">=6"
3120
- }
3121
- },
3122
- "node_modules/ansi-escapes": {
3123
- "version": "4.3.2",
3124
- "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz",
3125
- "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==",
3126
- "dev": true,
3127
- "dependencies": {
3128
- "type-fest": "^0.21.3"
3129
- },
3130
- "engines": {
3131
- "node": ">=8"
3132
- },
3133
- "funding": {
3134
- "url": "https://github.com/sponsors/sindresorhus"
3135
- }
3136
- },
3137
- "node_modules/ansi-escapes/node_modules/type-fest": {
3138
- "version": "0.21.3",
3139
- "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz",
3140
- "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==",
3141
- "dev": true,
3142
- "engines": {
3143
- "node": ">=10"
3144
- },
3145
- "funding": {
3146
- "url": "https://github.com/sponsors/sindresorhus"
3147
- }
3148
- },
3149
- "node_modules/ansi-regex": {
3150
- "version": "5.0.1",
3151
- "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
3152
- "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
3153
- "engines": {
3154
- "node": ">=8"
3155
- }
3156
- },
3157
- "node_modules/ansi-styles": {
3158
- "version": "3.2.1",
3159
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
3160
- "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
3161
- "dev": true,
3162
- "dependencies": {
3163
- "color-convert": "^1.9.0"
3164
- },
3165
- "engines": {
3166
- "node": ">=4"
3167
- }
3168
- },
3169
- "node_modules/any-promise": {
3170
- "version": "1.3.0",
3171
- "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz",
3172
- "integrity": "sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==",
3173
- "dev": true
3174
- },
3175
- "node_modules/anymatch": {
3176
- "version": "3.1.3",
3177
- "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz",
3178
- "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==",
3179
- "dev": true,
3180
- "dependencies": {
3181
- "normalize-path": "^3.0.0",
3182
- "picomatch": "^2.0.4"
3183
- },
3184
- "engines": {
3185
- "node": ">= 8"
3186
- }
3187
- },
3188
- "node_modules/apexcharts": {
3189
- "version": "3.49.1",
3190
- "resolved": "https://registry.npmjs.org/apexcharts/-/apexcharts-3.49.1.tgz",
3191
- "integrity": "sha512-MqGtlq/KQuO8j0BBsUJYlRG8VBctKwYdwuBtajHgHTmSgUU3Oai+8oYN/rKCXwXzrUlYA+GiMgotAIbXY2BCGw==",
3192
- "dependencies": {
3193
- "@yr/monotone-cubic-spline": "^1.0.3",
3194
- "svg.draggable.js": "^2.2.2",
3195
- "svg.easing.js": "^2.0.0",
3196
- "svg.filter.js": "^2.0.2",
3197
- "svg.pathmorphing.js": "^0.1.3",
3198
- "svg.resize.js": "^1.4.3",
3199
- "svg.select.js": "^3.0.1"
3200
- }
3201
- },
3202
- "node_modules/arch": {
3203
- "version": "2.2.0",
3204
- "resolved": "https://registry.npmjs.org/arch/-/arch-2.2.0.tgz",
3205
- "integrity": "sha512-Of/R0wqp83cgHozfIYLbBMnej79U/SVGOOyuB3VVFv1NRM/PSFMK12x9KVtiYzJqmnU5WR2qp0Z5rHb7sWGnFQ==",
3206
- "dev": true,
3207
- "funding": [
3208
- {
3209
- "type": "github",
3210
- "url": "https://github.com/sponsors/feross"
3211
- },
3212
- {
3213
- "type": "patreon",
3214
- "url": "https://www.patreon.com/feross"
3215
- },
3216
- {
3217
- "type": "consulting",
3218
- "url": "https://feross.org/support"
3219
- }
3220
- ]
3221
- },
3222
- "node_modules/arg": {
3223
- "version": "5.0.2",
3224
- "resolved": "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz",
3225
- "integrity": "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==",
3226
- "dev": true
3227
- },
3228
- "node_modules/argparse": {
3229
- "version": "2.0.1",
3230
- "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz",
3231
- "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q=="
3232
- },
3233
- "node_modules/array-buffer-byte-length": {
3234
- "version": "1.0.1",
3235
- "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.1.tgz",
3236
- "integrity": "sha512-ahC5W1xgou+KTXix4sAO8Ki12Q+jf4i0+tmk3sC+zgcynshkHxzpXdImBehiUYKKKDwvfFiJl1tZt6ewscS1Mg==",
3237
- "dev": true,
3238
- "dependencies": {
3239
- "call-bind": "^1.0.5",
3240
- "is-array-buffer": "^3.0.4"
3241
- },
3242
- "engines": {
3243
- "node": ">= 0.4"
3244
- },
3245
- "funding": {
3246
- "url": "https://github.com/sponsors/ljharb"
3247
- }
3248
- },
3249
- "node_modules/array-union": {
3250
- "version": "2.1.0",
3251
- "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz",
3252
- "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==",
3253
- "engines": {
3254
- "node": ">=8"
3255
- }
3256
- },
3257
- "node_modules/arraybuffer.prototype.slice": {
3258
- "version": "1.0.3",
3259
- "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.3.tgz",
3260
- "integrity": "sha512-bMxMKAjg13EBSVscxTaYA4mRc5t1UAXa2kXiGTNfZ079HIWXEkKmkgFrh/nJqamaLSrXO5H4WFFkPEaLJWbs3A==",
3261
- "dev": true,
3262
- "dependencies": {
3263
- "array-buffer-byte-length": "^1.0.1",
3264
- "call-bind": "^1.0.5",
3265
- "define-properties": "^1.2.1",
3266
- "es-abstract": "^1.22.3",
3267
- "es-errors": "^1.2.1",
3268
- "get-intrinsic": "^1.2.3",
3269
- "is-array-buffer": "^3.0.4",
3270
- "is-shared-array-buffer": "^1.0.2"
3271
- },
3272
- "engines": {
3273
- "node": ">= 0.4"
3274
- },
3275
- "funding": {
3276
- "url": "https://github.com/sponsors/ljharb"
3277
- }
3278
- },
3279
- "node_modules/asn1": {
3280
- "version": "0.2.6",
3281
- "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.6.tgz",
3282
- "integrity": "sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==",
3283
- "dev": true,
3284
- "dependencies": {
3285
- "safer-buffer": "~2.1.0"
3286
- }
3287
- },
3288
- "node_modules/assert-plus": {
3289
- "version": "1.0.0",
3290
- "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz",
3291
- "integrity": "sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==",
3292
- "dev": true,
3293
- "engines": {
3294
- "node": ">=0.8"
3295
- }
3296
- },
3297
- "node_modules/assertion-error": {
3298
- "version": "1.1.0",
3299
- "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz",
3300
- "integrity": "sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==",
3301
- "dev": true,
3302
- "engines": {
3303
- "node": "*"
3304
- }
3305
- },
3306
- "node_modules/astral-regex": {
3307
- "version": "2.0.0",
3308
- "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz",
3309
- "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==",
3310
- "dev": true,
3311
- "engines": {
3312
- "node": ">=8"
3313
- }
3314
- },
3315
- "node_modules/async": {
3316
- "version": "3.2.5",
3317
- "resolved": "https://registry.npmjs.org/async/-/async-3.2.5.tgz",
3318
- "integrity": "sha512-baNZyqaaLhyLVKm/DlvdW051MSgO6b8eVfIezl9E5PqWxFgzLm/wQntEW4zOytVburDEr0JlALEpdOFwvErLsg==",
3319
- "dev": true
3320
- },
3321
- "node_modules/async-validator": {
3322
- "version": "4.2.5",
3323
- "resolved": "https://registry.npmjs.org/async-validator/-/async-validator-4.2.5.tgz",
3324
- "integrity": "sha512-7HhHjtERjqlNbZtqNqy2rckN/SpOOlmDliet+lP7k+eKZEjPk3DgyeU9lIXLdeLz0uBbbVp+9Qdow9wJWgwwfg=="
3325
- },
3326
- "node_modules/asynckit": {
3327
- "version": "0.4.0",
3328
- "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
3329
- "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==",
3330
- "dev": true
3331
- },
3332
- "node_modules/at-least-node": {
3333
- "version": "1.0.0",
3334
- "resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz",
3335
- "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==",
3336
- "dev": true,
3337
- "engines": {
3338
- "node": ">= 4.0.0"
3339
- }
3340
- },
3341
- "node_modules/autoprefixer": {
3342
- "version": "10.4.19",
3343
- "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.19.tgz",
3344
- "integrity": "sha512-BaENR2+zBZ8xXhM4pUaKUxlVdxZ0EZhjvbopwnXmxRUfqDmwSpC2lAi/QXvx7NRdPCo1WKEcEF6mV64si1z4Ew==",
3345
- "dev": true,
3346
- "funding": [
3347
- {
3348
- "type": "opencollective",
3349
- "url": "https://opencollective.com/postcss/"
3350
- },
3351
- {
3352
- "type": "tidelift",
3353
- "url": "https://tidelift.com/funding/github/npm/autoprefixer"
3354
- },
3355
- {
3356
- "type": "github",
3357
- "url": "https://github.com/sponsors/ai"
3358
- }
3359
- ],
3360
- "dependencies": {
3361
- "browserslist": "^4.23.0",
3362
- "caniuse-lite": "^1.0.30001599",
3363
- "fraction.js": "^4.3.7",
3364
- "normalize-range": "^0.1.2",
3365
- "picocolors": "^1.0.0",
3366
- "postcss-value-parser": "^4.2.0"
3367
- },
3368
- "bin": {
3369
- "autoprefixer": "bin/autoprefixer"
3370
- },
3371
- "engines": {
3372
- "node": "^10 || ^12 || >=14"
3373
- },
3374
- "peerDependencies": {
3375
- "postcss": "^8.1.0"
3376
- }
3377
- },
3378
- "node_modules/available-typed-arrays": {
3379
- "version": "1.0.7",
3380
- "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz",
3381
- "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==",
3382
- "dev": true,
3383
- "dependencies": {
3384
- "possible-typed-array-names": "^1.0.0"
3385
- },
3386
- "engines": {
3387
- "node": ">= 0.4"
3388
- },
3389
- "funding": {
3390
- "url": "https://github.com/sponsors/ljharb"
3391
- }
3392
- },
3393
- "node_modules/aws-sign2": {
3394
- "version": "0.7.0",
3395
- "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz",
3396
- "integrity": "sha512-08kcGqnYf/YmjoRhfxyu+CLxBjUtHLXLXX/vUfx9l2LYzG3c1m61nrpyFUZI6zeS+Li/wWMMidD9KgrqtGq3mA==",
3397
- "dev": true,
3398
- "engines": {
3399
- "node": "*"
3400
- }
3401
- },
3402
- "node_modules/aws4": {
3403
- "version": "1.12.0",
3404
- "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.12.0.tgz",
3405
- "integrity": "sha512-NmWvPnx0F1SfrQbYwOi7OeaNGokp9XhzNioJ/CSBs8Qa4vxug81mhJEAVZwxXuBmYB5KDRfMq/F3RR0BIU7sWg==",
3406
- "dev": true
3407
- },
3408
- "node_modules/axios": {
3409
- "version": "1.7.1",
3410
- "resolved": "https://registry.npmjs.org/axios/-/axios-1.7.1.tgz",
3411
- "integrity": "sha512-+LV37nQcd1EpFalkXksWNBiA17NZ5m5/WspmHGmZmdx1qBOg/VNq/c4eRJiA9VQQHBOs+N0ZhhdU10h2TyNK7Q==",
3412
- "dev": true,
3413
- "dependencies": {
3414
- "follow-redirects": "^1.15.6",
3415
- "form-data": "^4.0.0",
3416
- "proxy-from-env": "^1.1.0"
3417
- }
3418
- },
3419
- "node_modules/axios/node_modules/form-data": {
3420
- "version": "4.0.0",
3421
- "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz",
3422
- "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==",
3423
- "dev": true,
3424
- "dependencies": {
3425
- "asynckit": "^0.4.0",
3426
- "combined-stream": "^1.0.8",
3427
- "mime-types": "^2.1.12"
3428
- },
3429
- "engines": {
3430
- "node": ">= 6"
3431
- }
3432
- },
3433
- "node_modules/axios/node_modules/proxy-from-env": {
3434
- "version": "1.1.0",
3435
- "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz",
3436
- "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==",
3437
- "dev": true
3438
- },
3439
- "node_modules/balanced-match": {
3440
- "version": "1.0.2",
3441
- "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
3442
- "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw=="
3443
- },
3444
- "node_modules/base64-js": {
3445
- "version": "1.5.1",
3446
- "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz",
3447
- "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==",
3448
- "dev": true,
3449
- "funding": [
3450
- {
3451
- "type": "github",
3452
- "url": "https://github.com/sponsors/feross"
3453
- },
3454
- {
3455
- "type": "patreon",
3456
- "url": "https://www.patreon.com/feross"
3457
- },
3458
- {
3459
- "type": "consulting",
3460
- "url": "https://feross.org/support"
3461
- }
3462
- ]
3463
- },
3464
- "node_modules/bcrypt-pbkdf": {
3465
- "version": "1.0.2",
3466
- "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz",
3467
- "integrity": "sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w==",
3468
- "dev": true,
3469
- "dependencies": {
3470
- "tweetnacl": "^0.14.3"
3471
- }
3472
- },
3473
- "node_modules/binary-extensions": {
3474
- "version": "2.3.0",
3475
- "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz",
3476
- "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==",
3477
- "dev": true,
3478
- "engines": {
3479
- "node": ">=8"
3480
- },
3481
- "funding": {
3482
- "url": "https://github.com/sponsors/sindresorhus"
3483
- }
3484
- },
3485
- "node_modules/blob-util": {
3486
- "version": "2.0.2",
3487
- "resolved": "https://registry.npmjs.org/blob-util/-/blob-util-2.0.2.tgz",
3488
- "integrity": "sha512-T7JQa+zsXXEa6/8ZhHcQEW1UFfVM49Ts65uBkFL6fz2QmrElqmbajIDJvuA0tEhRe5eIjpV9ZF+0RfZR9voJFQ==",
3489
- "dev": true
3490
- },
3491
- "node_modules/bluebird": {
3492
- "version": "3.7.2",
3493
- "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz",
3494
- "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==",
3495
- "dev": true
3496
- },
3497
- "node_modules/boolbase": {
3498
- "version": "1.0.0",
3499
- "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz",
3500
- "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww=="
3501
- },
3502
- "node_modules/brace-expansion": {
3503
- "version": "2.0.1",
3504
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
3505
- "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
3506
- "dependencies": {
3507
- "balanced-match": "^1.0.0"
3508
- }
3509
- },
3510
- "node_modules/braces": {
3511
- "version": "3.0.2",
3512
- "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz",
3513
- "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==",
3514
- "dependencies": {
3515
- "fill-range": "^7.0.1"
3516
- },
3517
- "engines": {
3518
- "node": ">=8"
3519
- }
3520
- },
3521
- "node_modules/browserslist": {
3522
- "version": "4.23.0",
3523
- "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz",
3524
- "integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==",
3525
- "dev": true,
3526
- "funding": [
3527
- {
3528
- "type": "opencollective",
3529
- "url": "https://opencollective.com/browserslist"
3530
- },
3531
- {
3532
- "type": "tidelift",
3533
- "url": "https://tidelift.com/funding/github/npm/browserslist"
3534
- },
3535
- {
3536
- "type": "github",
3537
- "url": "https://github.com/sponsors/ai"
3538
- }
3539
- ],
3540
- "dependencies": {
3541
- "caniuse-lite": "^1.0.30001587",
3542
- "electron-to-chromium": "^1.4.668",
3543
- "node-releases": "^2.0.14",
3544
- "update-browserslist-db": "^1.0.13"
3545
- },
3546
- "bin": {
3547
- "browserslist": "cli.js"
3548
- },
3549
- "engines": {
3550
- "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7"
3551
- }
3552
- },
3553
- "node_modules/buffer": {
3554
- "version": "5.7.1",
3555
- "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz",
3556
- "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==",
3557
- "dev": true,
3558
- "funding": [
3559
- {
3560
- "type": "github",
3561
- "url": "https://github.com/sponsors/feross"
3562
- },
3563
- {
3564
- "type": "patreon",
3565
- "url": "https://www.patreon.com/feross"
3566
- },
3567
- {
3568
- "type": "consulting",
3569
- "url": "https://feross.org/support"
3570
- }
3571
- ],
3572
- "dependencies": {
3573
- "base64-js": "^1.3.1",
3574
- "ieee754": "^1.1.13"
3575
- }
3576
- },
3577
- "node_modules/buffer-crc32": {
3578
- "version": "0.2.13",
3579
- "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz",
3580
- "integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==",
3581
- "dev": true,
3582
- "engines": {
3583
- "node": "*"
3584
- }
3585
- },
3586
- "node_modules/bytes": {
3587
- "version": "3.1.2",
3588
- "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz",
3589
- "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==",
3590
- "engines": {
3591
- "node": ">= 0.8"
3592
- }
3593
- },
3594
- "node_modules/cac": {
3595
- "version": "6.7.14",
3596
- "resolved": "https://registry.npmjs.org/cac/-/cac-6.7.14.tgz",
3597
- "integrity": "sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==",
3598
- "dev": true,
3599
- "engines": {
3600
- "node": ">=8"
3601
- }
3602
- },
3603
- "node_modules/cache-content-type": {
3604
- "version": "1.0.1",
3605
- "resolved": "https://registry.npmjs.org/cache-content-type/-/cache-content-type-1.0.1.tgz",
3606
- "integrity": "sha512-IKufZ1o4Ut42YUrZSo8+qnMTrFuKkvyoLXUywKz9GJ5BrhOFGhLdkx9sG4KAnVvbY6kEcSFjLQul+DVmBm2bgA==",
3607
- "dev": true,
3608
- "dependencies": {
3609
- "mime-types": "^2.1.18",
3610
- "ylru": "^1.2.0"
3611
- },
3612
- "engines": {
3613
- "node": ">= 6.0.0"
3614
- }
3615
- },
3616
- "node_modules/cachedir": {
3617
- "version": "2.4.0",
3618
- "resolved": "https://registry.npmjs.org/cachedir/-/cachedir-2.4.0.tgz",
3619
- "integrity": "sha512-9EtFOZR8g22CL7BWjJ9BUx1+A/djkofnyW3aOXZORNW2kxoUpx2h+uN2cOqwPmFhnpVmxg+KW2OjOSgChTEvsQ==",
3620
- "dev": true,
3621
- "engines": {
3622
- "node": ">=6"
3623
- }
3624
- },
3625
- "node_modules/call-bind": {
3626
- "version": "1.0.7",
3627
- "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.7.tgz",
3628
- "integrity": "sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==",
3629
- "dev": true,
3630
- "dependencies": {
3631
- "es-define-property": "^1.0.0",
3632
- "es-errors": "^1.3.0",
3633
- "function-bind": "^1.1.2",
3634
- "get-intrinsic": "^1.2.4",
3635
- "set-function-length": "^1.2.1"
3636
- },
3637
- "engines": {
3638
- "node": ">= 0.4"
3639
- },
3640
- "funding": {
3641
- "url": "https://github.com/sponsors/ljharb"
3642
- }
3643
- },
3644
- "node_modules/call-me-maybe": {
3645
- "version": "1.0.2",
3646
- "resolved": "https://registry.npmjs.org/call-me-maybe/-/call-me-maybe-1.0.2.tgz",
3647
- "integrity": "sha512-HpX65o1Hnr9HH25ojC1YGs7HCQLq0GCOibSaWER0eNpgJ/Z1MZv2mTc7+xh6WOPxbRVcmgbv4hGU+uSQ/2xFZQ==",
3648
- "dev": true
3649
- },
3650
- "node_modules/callsites": {
3651
- "version": "3.1.0",
3652
- "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz",
3653
- "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==",
3654
- "engines": {
3655
- "node": ">=6"
3656
- }
3657
- },
3658
- "node_modules/camelcase": {
3659
- "version": "6.3.0",
3660
- "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz",
3661
- "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==",
3662
- "dev": true,
3663
- "engines": {
3664
- "node": ">=10"
3665
- },
3666
- "funding": {
3667
- "url": "https://github.com/sponsors/sindresorhus"
3668
- }
3669
- },
3670
- "node_modules/camelcase-css": {
3671
- "version": "2.0.1",
3672
- "resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz",
3673
- "integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==",
3674
- "dev": true,
3675
- "engines": {
3676
- "node": ">= 6"
3677
- }
3678
- },
3679
- "node_modules/caniuse-lite": {
3680
- "version": "1.0.30001620",
3681
- "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001620.tgz",
3682
- "integrity": "sha512-WJvYsOjd1/BYUY6SNGUosK9DUidBPDTnOARHp3fSmFO1ekdxaY6nKRttEVrfMmYi80ctS0kz1wiWmm14fVc3ew==",
3683
- "dev": true,
3684
- "funding": [
3685
- {
3686
- "type": "opencollective",
3687
- "url": "https://opencollective.com/browserslist"
3688
- },
3689
- {
3690
- "type": "tidelift",
3691
- "url": "https://tidelift.com/funding/github/npm/caniuse-lite"
3692
- },
3693
- {
3694
- "type": "github",
3695
- "url": "https://github.com/sponsors/ai"
3696
- }
3697
- ]
3698
- },
3699
- "node_modules/caseless": {
3700
- "version": "0.12.0",
3701
- "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz",
3702
- "integrity": "sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==",
3703
- "dev": true
3704
- },
3705
- "node_modules/chai": {
3706
- "version": "4.4.1",
3707
- "resolved": "https://registry.npmjs.org/chai/-/chai-4.4.1.tgz",
3708
- "integrity": "sha512-13sOfMv2+DWduEU+/xbun3LScLoqN17nBeTLUsmDfKdoiC1fr0n9PU4guu4AhRcOVFk/sW8LyZWHuhWtQZiF+g==",
3709
- "dev": true,
3710
- "dependencies": {
3711
- "assertion-error": "^1.1.0",
3712
- "check-error": "^1.0.3",
3713
- "deep-eql": "^4.1.3",
3714
- "get-func-name": "^2.0.2",
3715
- "loupe": "^2.3.6",
3716
- "pathval": "^1.1.1",
3717
- "type-detect": "^4.0.8"
3718
- },
3719
- "engines": {
3720
- "node": ">=4"
3721
- }
3722
- },
3723
- "node_modules/chalk": {
3724
- "version": "2.4.2",
3725
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
3726
- "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
3727
- "dev": true,
3728
- "dependencies": {
3729
- "ansi-styles": "^3.2.1",
3730
- "escape-string-regexp": "^1.0.5",
3731
- "supports-color": "^5.3.0"
3732
- },
3733
- "engines": {
3734
- "node": ">=4"
3735
- }
3736
- },
3737
- "node_modules/check-error": {
3738
- "version": "1.0.3",
3739
- "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.3.tgz",
3740
- "integrity": "sha512-iKEoDYaRmd1mxM90a2OEfWhjsjPpYPuQ+lMYsoxB126+t8fw7ySEO48nmDg5COTjxDI65/Y2OWpeEHk3ZOe8zg==",
3741
- "dev": true,
3742
- "dependencies": {
3743
- "get-func-name": "^2.0.2"
3744
- },
3745
- "engines": {
3746
- "node": "*"
3747
- }
3748
- },
3749
- "node_modules/check-more-types": {
3750
- "version": "2.24.0",
3751
- "resolved": "https://registry.npmjs.org/check-more-types/-/check-more-types-2.24.0.tgz",
3752
- "integrity": "sha512-Pj779qHxV2tuapviy1bSZNEL1maXr13bPYpsvSDB68HlYcYuhlDrmGd63i0JHMCLKzc7rUSNIrpdJlhVlNwrxA==",
3753
- "dev": true,
3754
- "engines": {
3755
- "node": ">= 0.8.0"
3756
- }
3757
- },
3758
- "node_modules/chokidar": {
3759
- "version": "3.6.0",
3760
- "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz",
3761
- "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==",
3762
- "dev": true,
3763
- "dependencies": {
3764
- "anymatch": "~3.1.2",
3765
- "braces": "~3.0.2",
3766
- "glob-parent": "~5.1.2",
3767
- "is-binary-path": "~2.1.0",
3768
- "is-glob": "~4.0.1",
3769
- "normalize-path": "~3.0.0",
3770
- "readdirp": "~3.6.0"
3771
- },
3772
- "engines": {
3773
- "node": ">= 8.10.0"
3774
- },
3775
- "funding": {
3776
- "url": "https://paulmillr.com/funding/"
3777
- },
3778
- "optionalDependencies": {
3779
- "fsevents": "~2.3.2"
3780
- }
3781
- },
3782
- "node_modules/chokidar/node_modules/glob-parent": {
3783
- "version": "5.1.2",
3784
- "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
3785
- "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
3786
- "dev": true,
3787
- "dependencies": {
3788
- "is-glob": "^4.0.1"
3789
- },
3790
- "engines": {
3791
- "node": ">= 6"
3792
- }
3793
- },
3794
- "node_modules/ci-info": {
3795
- "version": "3.9.0",
3796
- "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz",
3797
- "integrity": "sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==",
3798
- "dev": true,
3799
- "funding": [
3800
- {
3801
- "type": "github",
3802
- "url": "https://github.com/sponsors/sibiraj-s"
3803
- }
3804
- ],
3805
- "engines": {
3806
- "node": ">=8"
3807
- }
3808
- },
3809
- "node_modules/classnames": {
3810
- "version": "2.5.1",
3811
- "resolved": "https://registry.npmjs.org/classnames/-/classnames-2.5.1.tgz",
3812
- "integrity": "sha512-saHYOzhIQs6wy2sVxTM6bUDsQO4F50V9RQ22qBpEdCW+I+/Wmke2HOl6lS6dTpdxVhb88/I6+Hs+438c3lfUow=="
3813
- },
3814
- "node_modules/clean-stack": {
3815
- "version": "2.2.0",
3816
- "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz",
3817
- "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==",
3818
- "dev": true,
3819
- "engines": {
3820
- "node": ">=6"
3821
- }
3822
- },
3823
- "node_modules/cli-cursor": {
3824
- "version": "3.1.0",
3825
- "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz",
3826
- "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==",
3827
- "dev": true,
3828
- "dependencies": {
3829
- "restore-cursor": "^3.1.0"
3830
- },
3831
- "engines": {
3832
- "node": ">=8"
3833
- }
3834
- },
3835
- "node_modules/cli-progress": {
3836
- "version": "3.12.0",
3837
- "resolved": "https://registry.npmjs.org/cli-progress/-/cli-progress-3.12.0.tgz",
3838
- "integrity": "sha512-tRkV3HJ1ASwm19THiiLIXLO7Im7wlTuKnvkYaTkyoAPefqjNg7W7DHKUlGRxy9vxDvbyCYQkQozvptuMkGCg8A==",
3839
- "dev": true,
3840
- "dependencies": {
3841
- "string-width": "^4.2.3"
3842
- },
3843
- "engines": {
3844
- "node": ">=4"
3845
- }
3846
- },
3847
- "node_modules/cli-table3": {
3848
- "version": "0.6.5",
3849
- "resolved": "https://registry.npmjs.org/cli-table3/-/cli-table3-0.6.5.tgz",
3850
- "integrity": "sha512-+W/5efTR7y5HRD7gACw9yQjqMVvEMLBHmboM/kPWam+H+Hmyrgjh6YncVKK122YZkXrLudzTuAukUw9FnMf7IQ==",
3851
- "dev": true,
3852
- "dependencies": {
3853
- "string-width": "^4.2.0"
3854
- },
3855
- "engines": {
3856
- "node": "10.* || >= 12.*"
3857
- },
3858
- "optionalDependencies": {
3859
- "@colors/colors": "1.5.0"
3860
- }
3861
- },
3862
- "node_modules/cli-truncate": {
3863
- "version": "2.1.0",
3864
- "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-2.1.0.tgz",
3865
- "integrity": "sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg==",
3866
- "dev": true,
3867
- "dependencies": {
3868
- "slice-ansi": "^3.0.0",
3869
- "string-width": "^4.2.0"
3870
- },
3871
- "engines": {
3872
- "node": ">=8"
3873
- },
3874
- "funding": {
3875
- "url": "https://github.com/sponsors/sindresorhus"
3876
- }
3877
- },
3878
- "node_modules/cliui": {
3879
- "version": "8.0.1",
3880
- "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz",
3881
- "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==",
3882
- "dev": true,
3883
- "dependencies": {
3884
- "string-width": "^4.2.0",
3885
- "strip-ansi": "^6.0.1",
3886
- "wrap-ansi": "^7.0.0"
3887
- },
3888
- "engines": {
3889
- "node": ">=12"
3890
- }
3891
- },
3892
- "node_modules/cliui/node_modules/ansi-styles": {
3893
- "version": "4.3.0",
3894
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
3895
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
3896
- "dev": true,
3897
- "dependencies": {
3898
- "color-convert": "^2.0.1"
3899
- },
3900
- "engines": {
3901
- "node": ">=8"
3902
- },
3903
- "funding": {
3904
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
3905
- }
3906
- },
3907
- "node_modules/cliui/node_modules/color-convert": {
3908
- "version": "2.0.1",
3909
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
3910
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
3911
- "dev": true,
3912
- "dependencies": {
3913
- "color-name": "~1.1.4"
3914
- },
3915
- "engines": {
3916
- "node": ">=7.0.0"
3917
- }
3918
- },
3919
- "node_modules/cliui/node_modules/color-name": {
3920
- "version": "1.1.4",
3921
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
3922
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
3923
- "dev": true
3924
- },
3925
- "node_modules/cliui/node_modules/wrap-ansi": {
3926
- "version": "7.0.0",
3927
- "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz",
3928
- "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==",
3929
- "dev": true,
3930
- "dependencies": {
3931
- "ansi-styles": "^4.0.0",
3932
- "string-width": "^4.1.0",
3933
- "strip-ansi": "^6.0.0"
3934
- },
3935
- "engines": {
3936
- "node": ">=10"
3937
- },
3938
- "funding": {
3939
- "url": "https://github.com/chalk/wrap-ansi?sponsor=1"
3940
- }
3941
- },
3942
- "node_modules/co": {
3943
- "version": "4.6.0",
3944
- "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz",
3945
- "integrity": "sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==",
3946
- "dev": true,
3947
- "engines": {
3948
- "iojs": ">= 1.0.0",
3949
- "node": ">= 0.12.0"
3950
- }
3951
- },
3952
- "node_modules/color-convert": {
3953
- "version": "1.9.3",
3954
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz",
3955
- "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==",
3956
- "dev": true,
3957
- "dependencies": {
3958
- "color-name": "1.1.3"
3959
- }
3960
- },
3961
- "node_modules/color-name": {
3962
- "version": "1.1.3",
3963
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
3964
- "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==",
3965
- "dev": true
3966
- },
3967
- "node_modules/colord": {
3968
- "version": "2.9.3",
3969
- "resolved": "https://registry.npmjs.org/colord/-/colord-2.9.3.tgz",
3970
- "integrity": "sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw=="
3971
- },
3972
- "node_modules/colorette": {
3973
- "version": "2.0.20",
3974
- "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.20.tgz",
3975
- "integrity": "sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==",
3976
- "dev": true
3977
- },
3978
- "node_modules/combined-stream": {
3979
- "version": "1.0.8",
3980
- "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz",
3981
- "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==",
3982
- "dev": true,
3983
- "dependencies": {
3984
- "delayed-stream": "~1.0.0"
3985
- },
3986
- "engines": {
3987
- "node": ">= 0.8"
3988
- }
3989
- },
3990
- "node_modules/commander": {
3991
- "version": "6.2.1",
3992
- "resolved": "https://registry.npmjs.org/commander/-/commander-6.2.1.tgz",
3993
- "integrity": "sha512-U7VdrJFnJgo4xjrHpTzu0yrHPGImdsmD95ZlgYSEajAn2JKzDhDTPG9kBTefmObL2w/ngeZnilk+OV9CG3d7UA==",
3994
- "dev": true,
3995
- "engines": {
3996
- "node": ">= 6"
3997
- }
3998
- },
3999
- "node_modules/common-tags": {
4000
- "version": "1.8.2",
4001
- "resolved": "https://registry.npmjs.org/common-tags/-/common-tags-1.8.2.tgz",
4002
- "integrity": "sha512-gk/Z852D2Wtb//0I+kRFNKKE9dIIVirjoqPoA1wJU+XePVXZfGeBpk45+A1rKO4Q43prqWBNY/MiIeRLbPWUaA==",
4003
- "dev": true,
4004
- "engines": {
4005
- "node": ">=4.0.0"
4006
- }
4007
- },
4008
- "node_modules/computeds": {
4009
- "version": "0.0.1",
4010
- "resolved": "https://registry.npmjs.org/computeds/-/computeds-0.0.1.tgz",
4011
- "integrity": "sha512-7CEBgcMjVmitjYo5q8JTJVra6X5mQ20uTThdK+0kR7UEaDrAWEQcRiBtWJzga4eRpP6afNwwLsX2SET2JhVB1Q==",
4012
- "dev": true
4013
- },
4014
- "node_modules/concat-map": {
4015
- "version": "0.0.1",
4016
- "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
4017
- "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg=="
4018
- },
4019
- "node_modules/confbox": {
4020
- "version": "0.1.7",
4021
- "resolved": "https://registry.npmjs.org/confbox/-/confbox-0.1.7.tgz",
4022
- "integrity": "sha512-uJcB/FKZtBMCJpK8MQji6bJHgu1tixKPxRLeGkNzBoOZzpnZUJm0jm2/sBDWcuBx1dYgxV4JU+g5hmNxCyAmdA==",
4023
- "dev": true
4024
- },
4025
- "node_modules/config-chain": {
4026
- "version": "1.1.13",
4027
- "resolved": "https://registry.npmjs.org/config-chain/-/config-chain-1.1.13.tgz",
4028
- "integrity": "sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ==",
4029
- "dev": true,
4030
- "dependencies": {
4031
- "ini": "^1.3.4",
4032
- "proto-list": "~1.2.1"
4033
- }
4034
- },
4035
- "node_modules/config-chain/node_modules/ini": {
4036
- "version": "1.3.8",
4037
- "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz",
4038
- "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==",
4039
- "dev": true
4040
- },
4041
- "node_modules/content-disposition": {
4042
- "version": "0.5.4",
4043
- "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz",
4044
- "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==",
4045
- "dev": true,
4046
- "dependencies": {
4047
- "safe-buffer": "5.2.1"
4048
- },
4049
- "engines": {
4050
- "node": ">= 0.6"
4051
- }
4052
- },
4053
- "node_modules/content-type": {
4054
- "version": "1.0.5",
4055
- "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz",
4056
- "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==",
4057
- "dev": true,
4058
- "engines": {
4059
- "node": ">= 0.6"
4060
- }
4061
- },
4062
- "node_modules/convert-source-map": {
4063
- "version": "2.0.0",
4064
- "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz",
4065
- "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==",
4066
- "dev": true
4067
- },
4068
- "node_modules/cookies": {
4069
- "version": "0.9.1",
4070
- "resolved": "https://registry.npmjs.org/cookies/-/cookies-0.9.1.tgz",
4071
- "integrity": "sha512-TG2hpqe4ELx54QER/S3HQ9SRVnQnGBtKUz5bLQWtYAQ+o6GpgMs6sYUvaiJjVxb+UXwhRhAEP3m7LbsIZ77Hmw==",
4072
- "dev": true,
4073
- "dependencies": {
4074
- "depd": "~2.0.0",
4075
- "keygrip": "~1.1.0"
4076
- },
4077
- "engines": {
4078
- "node": ">= 0.8"
4079
- }
4080
- },
4081
- "node_modules/core-util-is": {
4082
- "version": "1.0.2",
4083
- "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz",
4084
- "integrity": "sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==",
4085
- "dev": true
4086
- },
4087
- "node_modules/cross-spawn": {
4088
- "version": "7.0.3",
4089
- "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz",
4090
- "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==",
4091
- "dependencies": {
4092
- "path-key": "^3.1.0",
4093
- "shebang-command": "^2.0.0",
4094
- "which": "^2.0.1"
4095
- },
4096
- "engines": {
4097
- "node": ">= 8"
4098
- }
4099
- },
4100
- "node_modules/crypto-js": {
4101
- "version": "4.2.0",
4102
- "resolved": "https://registry.npmjs.org/crypto-js/-/crypto-js-4.2.0.tgz",
4103
- "integrity": "sha512-KALDyEYgpY+Rlob/iriUtjV6d5Eq+Y191A5g4UqLAi8CyGP9N1+FdVbkc1SxKc2r4YAYqG8JzO2KGL+AizD70Q=="
4104
- },
4105
- "node_modules/css-render": {
4106
- "version": "0.15.14",
4107
- "resolved": "https://registry.npmjs.org/css-render/-/css-render-0.15.14.tgz",
4108
- "integrity": "sha512-9nF4PdUle+5ta4W5SyZdLCCmFd37uVimSjg1evcTqKJCyvCEEj12WKzOSBNak6r4im4J4iYXKH1OWpUV5LBYFg==",
4109
- "dependencies": {
4110
- "@emotion/hash": "~0.8.0",
4111
- "csstype": "~3.0.5"
4112
- }
4113
- },
4114
- "node_modules/css-render/node_modules/csstype": {
4115
- "version": "3.0.11",
4116
- "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.0.11.tgz",
4117
- "integrity": "sha512-sa6P2wJ+CAbgyy4KFssIb/JNMLxFvKF1pCYCSXS8ZMuqZnMsrxqI2E5sPyoTpxoPU/gVZMzr2zjOfg8GIZOMsw=="
4118
- },
4119
- "node_modules/css-select": {
4120
- "version": "5.1.0",
4121
- "resolved": "https://registry.npmjs.org/css-select/-/css-select-5.1.0.tgz",
4122
- "integrity": "sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg==",
4123
- "dev": true,
4124
- "dependencies": {
4125
- "boolbase": "^1.0.0",
4126
- "css-what": "^6.1.0",
4127
- "domhandler": "^5.0.2",
4128
- "domutils": "^3.0.1",
4129
- "nth-check": "^2.0.1"
4130
- },
4131
- "funding": {
4132
- "url": "https://github.com/sponsors/fb55"
4133
- }
4134
- },
4135
- "node_modules/css-tree": {
4136
- "version": "2.3.1",
4137
- "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-2.3.1.tgz",
4138
- "integrity": "sha512-6Fv1DV/TYw//QF5IzQdqsNDjx/wc8TrMBZsqjL9eW01tWb7R7k/mq+/VXfJCl7SoD5emsJop9cOByJZfs8hYIw==",
4139
- "dev": true,
4140
- "dependencies": {
4141
- "mdn-data": "2.0.30",
4142
- "source-map-js": "^1.0.1"
4143
- },
4144
- "engines": {
4145
- "node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0"
4146
- }
4147
- },
4148
- "node_modules/css-what": {
4149
- "version": "6.1.0",
4150
- "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz",
4151
- "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==",
4152
- "dev": true,
4153
- "engines": {
4154
- "node": ">= 6"
4155
- },
4156
- "funding": {
4157
- "url": "https://github.com/sponsors/fb55"
4158
- }
4159
- },
4160
- "node_modules/cssesc": {
4161
- "version": "3.0.0",
4162
- "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz",
4163
- "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==",
4164
- "bin": {
4165
- "cssesc": "bin/cssesc"
4166
- },
4167
- "engines": {
4168
- "node": ">=4"
4169
- }
4170
- },
4171
- "node_modules/csso": {
4172
- "version": "5.0.5",
4173
- "resolved": "https://registry.npmjs.org/csso/-/csso-5.0.5.tgz",
4174
- "integrity": "sha512-0LrrStPOdJj+SPCCrGhzryycLjwcgUSHBtxNA8aIDxf0GLsRh1cKYhB00Gd1lDOS4yGH69+SNn13+TWbVHETFQ==",
4175
- "dev": true,
4176
- "dependencies": {
4177
- "css-tree": "~2.2.0"
4178
- },
4179
- "engines": {
4180
- "node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0",
4181
- "npm": ">=7.0.0"
4182
- }
4183
- },
4184
- "node_modules/csso/node_modules/css-tree": {
4185
- "version": "2.2.1",
4186
- "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-2.2.1.tgz",
4187
- "integrity": "sha512-OA0mILzGc1kCOCSJerOeqDxDQ4HOh+G8NbOJFOTgOCzpw7fCBubk0fEyxp8AgOL/jvLgYA/uV0cMbe43ElF1JA==",
4188
- "dev": true,
4189
- "dependencies": {
4190
- "mdn-data": "2.0.28",
4191
- "source-map-js": "^1.0.1"
4192
- },
4193
- "engines": {
4194
- "node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0",
4195
- "npm": ">=7.0.0"
4196
- }
4197
- },
4198
- "node_modules/csso/node_modules/mdn-data": {
4199
- "version": "2.0.28",
4200
- "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.28.tgz",
4201
- "integrity": "sha512-aylIc7Z9y4yzHYAJNuESG3hfhC+0Ibp/MAMiaOZgNv4pmEdFyfZhhhny4MNiAfWdBQ1RQ2mfDWmM1x8SvGyp8g==",
4202
- "dev": true
4203
- },
4204
- "node_modules/cssstyle": {
4205
- "version": "4.0.1",
4206
- "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-4.0.1.tgz",
4207
- "integrity": "sha512-8ZYiJ3A/3OkDd093CBT/0UKDWry7ak4BdPTFP2+QEP7cmhouyq/Up709ASSj2cK02BbZiMgk7kYjZNS4QP5qrQ==",
4208
- "dev": true,
4209
- "dependencies": {
4210
- "rrweb-cssom": "^0.6.0"
4211
- },
4212
- "engines": {
4213
- "node": ">=18"
4214
- }
4215
- },
4216
- "node_modules/csstype": {
4217
- "version": "3.1.3",
4218
- "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz",
4219
- "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw=="
4220
- },
4221
- "node_modules/cypress": {
4222
- "version": "13.10.0",
4223
- "resolved": "https://registry.npmjs.org/cypress/-/cypress-13.10.0.tgz",
4224
- "integrity": "sha512-tOhwRlurVOQbMduX+KonoMeQILs2cwR3yHGGENoFvvSoLUBHmJ8b9/n21gFSDqjlOJ+SRVcwuh+fG/JDsHsT6Q==",
4225
- "dev": true,
4226
- "hasInstallScript": true,
4227
- "dependencies": {
4228
- "@cypress/request": "^3.0.0",
4229
- "@cypress/xvfb": "^1.2.4",
4230
- "@types/sinonjs__fake-timers": "8.1.1",
4231
- "@types/sizzle": "^2.3.2",
4232
- "arch": "^2.2.0",
4233
- "blob-util": "^2.0.2",
4234
- "bluebird": "^3.7.2",
4235
- "buffer": "^5.7.1",
4236
- "cachedir": "^2.3.0",
4237
- "chalk": "^4.1.0",
4238
- "check-more-types": "^2.24.0",
4239
- "cli-cursor": "^3.1.0",
4240
- "cli-table3": "~0.6.1",
4241
- "commander": "^6.2.1",
4242
- "common-tags": "^1.8.0",
4243
- "dayjs": "^1.10.4",
4244
- "debug": "^4.3.4",
4245
- "enquirer": "^2.3.6",
4246
- "eventemitter2": "6.4.7",
4247
- "execa": "4.1.0",
4248
- "executable": "^4.1.1",
4249
- "extract-zip": "2.0.1",
4250
- "figures": "^3.2.0",
4251
- "fs-extra": "^9.1.0",
4252
- "getos": "^3.2.1",
4253
- "is-ci": "^3.0.1",
4254
- "is-installed-globally": "~0.4.0",
4255
- "lazy-ass": "^1.6.0",
4256
- "listr2": "^3.8.3",
4257
- "lodash": "^4.17.21",
4258
- "log-symbols": "^4.0.0",
4259
- "minimist": "^1.2.8",
4260
- "ospath": "^1.2.2",
4261
- "pretty-bytes": "^5.6.0",
4262
- "process": "^0.11.10",
4263
- "proxy-from-env": "1.0.0",
4264
- "request-progress": "^3.0.0",
4265
- "semver": "^7.5.3",
4266
- "supports-color": "^8.1.1",
4267
- "tmp": "~0.2.1",
4268
- "untildify": "^4.0.0",
4269
- "yauzl": "^2.10.0"
4270
- },
4271
- "bin": {
4272
- "cypress": "bin/cypress"
4273
- },
4274
- "engines": {
4275
- "node": "^16.0.0 || ^18.0.0 || >=20.0.0"
4276
- }
4277
- },
4278
- "node_modules/cypress/node_modules/ansi-styles": {
4279
- "version": "4.3.0",
4280
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
4281
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
4282
- "dev": true,
4283
- "dependencies": {
4284
- "color-convert": "^2.0.1"
4285
- },
4286
- "engines": {
4287
- "node": ">=8"
4288
- },
4289
- "funding": {
4290
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
4291
- }
4292
- },
4293
- "node_modules/cypress/node_modules/chalk": {
4294
- "version": "4.1.2",
4295
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
4296
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
4297
- "dev": true,
4298
- "dependencies": {
4299
- "ansi-styles": "^4.1.0",
4300
- "supports-color": "^7.1.0"
4301
- },
4302
- "engines": {
4303
- "node": ">=10"
4304
- },
4305
- "funding": {
4306
- "url": "https://github.com/chalk/chalk?sponsor=1"
4307
- }
4308
- },
4309
- "node_modules/cypress/node_modules/chalk/node_modules/supports-color": {
4310
- "version": "7.2.0",
4311
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
4312
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
4313
- "dev": true,
4314
- "dependencies": {
4315
- "has-flag": "^4.0.0"
4316
- },
4317
- "engines": {
4318
- "node": ">=8"
4319
- }
4320
- },
4321
- "node_modules/cypress/node_modules/color-convert": {
4322
- "version": "2.0.1",
4323
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
4324
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
4325
- "dev": true,
4326
- "dependencies": {
4327
- "color-name": "~1.1.4"
4328
- },
4329
- "engines": {
4330
- "node": ">=7.0.0"
4331
- }
4332
- },
4333
- "node_modules/cypress/node_modules/color-name": {
4334
- "version": "1.1.4",
4335
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
4336
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
4337
- "dev": true
4338
- },
4339
- "node_modules/cypress/node_modules/fs-extra": {
4340
- "version": "9.1.0",
4341
- "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz",
4342
- "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==",
4343
- "dev": true,
4344
- "dependencies": {
4345
- "at-least-node": "^1.0.0",
4346
- "graceful-fs": "^4.2.0",
4347
- "jsonfile": "^6.0.1",
4348
- "universalify": "^2.0.0"
4349
- },
4350
- "engines": {
4351
- "node": ">=10"
4352
- }
4353
- },
4354
- "node_modules/cypress/node_modules/has-flag": {
4355
- "version": "4.0.0",
4356
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
4357
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
4358
- "dev": true,
4359
- "engines": {
4360
- "node": ">=8"
4361
- }
4362
- },
4363
- "node_modules/cypress/node_modules/supports-color": {
4364
- "version": "8.1.1",
4365
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz",
4366
- "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==",
4367
- "dev": true,
4368
- "dependencies": {
4369
- "has-flag": "^4.0.0"
4370
- },
4371
- "engines": {
4372
- "node": ">=10"
4373
- },
4374
- "funding": {
4375
- "url": "https://github.com/chalk/supports-color?sponsor=1"
4376
- }
4377
- },
4378
- "node_modules/dashdash": {
4379
- "version": "1.14.1",
4380
- "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz",
4381
- "integrity": "sha512-jRFi8UDGo6j+odZiEpjazZaWqEal3w/basFjQHQEwVtZJGDpxbH1MeYluwCS8Xq5wmLJooDlMgvVarmWfGM44g==",
4382
- "dev": true,
4383
- "dependencies": {
4384
- "assert-plus": "^1.0.0"
4385
- },
4386
- "engines": {
4387
- "node": ">=0.10"
4388
- }
4389
- },
4390
- "node_modules/data-urls": {
4391
- "version": "5.0.0",
4392
- "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-5.0.0.tgz",
4393
- "integrity": "sha512-ZYP5VBHshaDAiVZxjbRVcFJpc+4xGgT0bK3vzy1HLN8jTO975HEbuYzZJcHoQEY5K1a0z8YayJkyVETa08eNTg==",
4394
- "dev": true,
4395
- "dependencies": {
4396
- "whatwg-mimetype": "^4.0.0",
4397
- "whatwg-url": "^14.0.0"
4398
- },
4399
- "engines": {
4400
- "node": ">=18"
4401
- }
4402
- },
4403
- "node_modules/data-view-buffer": {
4404
- "version": "1.0.1",
4405
- "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.1.tgz",
4406
- "integrity": "sha512-0lht7OugA5x3iJLOWFhWK/5ehONdprk0ISXqVFn/NFrDu+cuc8iADFrGQz5BnRK7LLU3JmkbXSxaqX+/mXYtUA==",
4407
- "dev": true,
4408
- "dependencies": {
4409
- "call-bind": "^1.0.6",
4410
- "es-errors": "^1.3.0",
4411
- "is-data-view": "^1.0.1"
4412
- },
4413
- "engines": {
4414
- "node": ">= 0.4"
4415
- },
4416
- "funding": {
4417
- "url": "https://github.com/sponsors/ljharb"
4418
- }
4419
- },
4420
- "node_modules/data-view-byte-length": {
4421
- "version": "1.0.1",
4422
- "resolved": "https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.1.tgz",
4423
- "integrity": "sha512-4J7wRJD3ABAzr8wP+OcIcqq2dlUKp4DVflx++hs5h5ZKydWMI6/D/fAot+yh6g2tHh8fLFTvNOaVN357NvSrOQ==",
4424
- "dev": true,
4425
- "dependencies": {
4426
- "call-bind": "^1.0.7",
4427
- "es-errors": "^1.3.0",
4428
- "is-data-view": "^1.0.1"
4429
- },
4430
- "engines": {
4431
- "node": ">= 0.4"
4432
- },
4433
- "funding": {
4434
- "url": "https://github.com/sponsors/ljharb"
4435
- }
4436
- },
4437
- "node_modules/data-view-byte-offset": {
4438
- "version": "1.0.0",
4439
- "resolved": "https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.0.tgz",
4440
- "integrity": "sha512-t/Ygsytq+R995EJ5PZlD4Cu56sWa8InXySaViRzw9apusqsOO2bQP+SbYzAhR0pFKoB+43lYy8rWban9JSuXnA==",
4441
- "dev": true,
4442
- "dependencies": {
4443
- "call-bind": "^1.0.6",
4444
- "es-errors": "^1.3.0",
4445
- "is-data-view": "^1.0.1"
4446
- },
4447
- "engines": {
4448
- "node": ">= 0.4"
4449
- },
4450
- "funding": {
4451
- "url": "https://github.com/sponsors/ljharb"
4452
- }
4453
- },
4454
- "node_modules/date-fns": {
4455
- "version": "2.30.0",
4456
- "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-2.30.0.tgz",
4457
- "integrity": "sha512-fnULvOpxnC5/Vg3NCiWelDsLiUc9bRwAPs/+LfTLNvetFCtCTN+yQz15C/fs4AwX1R9K5GLtLfn8QW+dWisaAw==",
4458
- "dependencies": {
4459
- "@babel/runtime": "^7.21.0"
4460
- },
4461
- "engines": {
4462
- "node": ">=0.11"
4463
- },
4464
- "funding": {
4465
- "type": "opencollective",
4466
- "url": "https://opencollective.com/date-fns"
4467
- }
4468
- },
4469
- "node_modules/date-fns-tz": {
4470
- "version": "2.0.1",
4471
- "resolved": "https://registry.npmjs.org/date-fns-tz/-/date-fns-tz-2.0.1.tgz",
4472
- "integrity": "sha512-fJCG3Pwx8HUoLhkepdsP7Z5RsucUi+ZBOxyM5d0ZZ6c4SdYustq0VMmOu6Wf7bli+yS/Jwp91TOCqn9jMcVrUA==",
4473
- "peerDependencies": {
4474
- "date-fns": "2.x"
4475
- }
4476
- },
4477
- "node_modules/dayjs": {
4478
- "version": "1.11.11",
4479
- "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.11.tgz",
4480
- "integrity": "sha512-okzr3f11N6WuqYtZSvm+F776mB41wRZMhKP+hc34YdW+KmtYYK9iqvHSwo2k9FEH3fhGXvOPV6yz2IcSrfRUDg=="
4481
- },
4482
- "node_modules/de-indent": {
4483
- "version": "1.0.2",
4484
- "resolved": "https://registry.npmjs.org/de-indent/-/de-indent-1.0.2.tgz",
4485
- "integrity": "sha512-e/1zu3xH5MQryN2zdVaF0OrdNLUbvWxzMbi+iNA6Bky7l1RoP8a2fIbRocyHclXt/arDrrR6lL3TqFD9pMQTsg==",
4486
- "dev": true
4487
- },
4488
- "node_modules/debounce": {
4489
- "version": "1.2.1",
4490
- "resolved": "https://registry.npmjs.org/debounce/-/debounce-1.2.1.tgz",
4491
- "integrity": "sha512-XRRe6Glud4rd/ZGQfiV1ruXSfbvfJedlV9Y6zOlP+2K04vBYiJEte6stfFkCP03aMnY5tsipamumUjL14fofug=="
4492
- },
4493
- "node_modules/debug": {
4494
- "version": "4.3.4",
4495
- "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
4496
- "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
4497
- "dependencies": {
4498
- "ms": "2.1.2"
4499
- },
4500
- "engines": {
4501
- "node": ">=6.0"
4502
- },
4503
- "peerDependenciesMeta": {
4504
- "supports-color": {
4505
- "optional": true
4506
- }
4507
- }
4508
- },
4509
- "node_modules/decimal.js": {
4510
- "version": "10.4.3",
4511
- "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.4.3.tgz",
4512
- "integrity": "sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==",
4513
- "dev": true
4514
- },
4515
- "node_modules/deep-eql": {
4516
- "version": "4.1.3",
4517
- "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-4.1.3.tgz",
4518
- "integrity": "sha512-WaEtAOpRA1MQ0eohqZjpGD8zdI0Ovsm8mmFhaDN8dvDZzyoUMcYDnf5Y6iu7HTXxf8JDS23qWa4a+hKCDyOPzw==",
4519
- "dev": true,
4520
- "dependencies": {
4521
- "type-detect": "^4.0.0"
4522
- },
4523
- "engines": {
4524
- "node": ">=6"
4525
- }
4526
- },
4527
- "node_modules/deep-equal": {
4528
- "version": "1.0.1",
4529
- "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.0.1.tgz",
4530
- "integrity": "sha512-bHtC0iYvWhyaTzvV3CZgPeZQqCOBGyGsVV7v4eevpdkLHfiSrXUdBG+qAuSz4RI70sszvjQ1QSZ98An1yNwpSw==",
4531
- "dev": true
4532
- },
4533
- "node_modules/deep-is": {
4534
- "version": "0.1.4",
4535
- "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz",
4536
- "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ=="
4537
- },
4538
- "node_modules/deepmerge": {
4539
- "version": "4.3.1",
4540
- "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz",
4541
- "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==",
4542
- "dev": true,
4543
- "engines": {
4544
- "node": ">=0.10.0"
4545
- }
4546
- },
4547
- "node_modules/define-data-property": {
4548
- "version": "1.1.4",
4549
- "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz",
4550
- "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==",
4551
- "dev": true,
4552
- "dependencies": {
4553
- "es-define-property": "^1.0.0",
4554
- "es-errors": "^1.3.0",
4555
- "gopd": "^1.0.1"
4556
- },
4557
- "engines": {
4558
- "node": ">= 0.4"
4559
- },
4560
- "funding": {
4561
- "url": "https://github.com/sponsors/ljharb"
4562
- }
4563
- },
4564
- "node_modules/define-lazy-prop": {
4565
- "version": "2.0.0",
4566
- "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz",
4567
- "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==",
4568
- "dev": true,
4569
- "engines": {
4570
- "node": ">=8"
4571
- }
4572
- },
4573
- "node_modules/define-properties": {
4574
- "version": "1.2.1",
4575
- "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz",
4576
- "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==",
4577
- "dev": true,
4578
- "dependencies": {
4579
- "define-data-property": "^1.0.1",
4580
- "has-property-descriptors": "^1.0.0",
4581
- "object-keys": "^1.1.1"
4582
- },
4583
- "engines": {
4584
- "node": ">= 0.4"
4585
- },
4586
- "funding": {
4587
- "url": "https://github.com/sponsors/ljharb"
4588
- }
4589
- },
4590
- "node_modules/defu": {
4591
- "version": "6.1.4",
4592
- "resolved": "https://registry.npmjs.org/defu/-/defu-6.1.4.tgz",
4593
- "integrity": "sha512-mEQCMmwJu317oSz8CwdIOdwf3xMif1ttiM8LTufzc3g6kR+9Pe236twL8j3IYT1F7GfRgGcW6MWxzZjLIkuHIg=="
4594
- },
4595
- "node_modules/delayed-stream": {
4596
- "version": "1.0.0",
4597
- "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
4598
- "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==",
4599
- "dev": true,
4600
- "engines": {
4601
- "node": ">=0.4.0"
4602
- }
4603
- },
4604
- "node_modules/delegates": {
4605
- "version": "1.0.0",
4606
- "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz",
4607
- "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==",
4608
- "dev": true
4609
- },
4610
- "node_modules/depd": {
4611
- "version": "2.0.0",
4612
- "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz",
4613
- "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==",
4614
- "dev": true,
4615
- "engines": {
4616
- "node": ">= 0.8"
4617
- }
4618
- },
4619
- "node_modules/destroy": {
4620
- "version": "1.2.0",
4621
- "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz",
4622
- "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==",
4623
- "dev": true,
4624
- "engines": {
4625
- "node": ">= 0.8",
4626
- "npm": "1.2.8000 || >= 1.4.16"
4627
- }
4628
- },
4629
- "node_modules/detect-indent": {
4630
- "version": "7.0.1",
4631
- "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-7.0.1.tgz",
4632
- "integrity": "sha512-Mc7QhQ8s+cLrnUfU/Ji94vG/r8M26m8f++vyres4ZoojaRDpZ1eSIh/EpzLNwlWuvzSZ3UbDFspjFvTDXe6e/g==",
4633
- "dev": true,
4634
- "engines": {
4635
- "node": ">=12.20"
4636
- }
4637
- },
4638
- "node_modules/detect-touch-device": {
4639
- "version": "1.1.6",
4640
- "resolved": "https://registry.npmjs.org/detect-touch-device/-/detect-touch-device-1.1.6.tgz",
4641
- "integrity": "sha512-9DYLJE05EFGI9f8m/GyJtWjw7aMZMBQM2QVy6bb7zX8uC3iorOE3Erdrk3TWCj5FVOlHTfinU0bATTE9GWYebw=="
4642
- },
4643
- "node_modules/didyoumean": {
4644
- "version": "1.2.2",
4645
- "resolved": "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.2.tgz",
4646
- "integrity": "sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==",
4647
- "dev": true
4648
- },
4649
- "node_modules/diff-sequences": {
4650
- "version": "29.6.3",
4651
- "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-29.6.3.tgz",
4652
- "integrity": "sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==",
4653
- "dev": true,
4654
- "engines": {
4655
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
4656
- }
4657
- },
4658
- "node_modules/dir-glob": {
4659
- "version": "3.0.1",
4660
- "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz",
4661
- "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==",
4662
- "dependencies": {
4663
- "path-type": "^4.0.0"
4664
- },
4665
- "engines": {
4666
- "node": ">=8"
4667
- }
4668
- },
4669
- "node_modules/dlv": {
4670
- "version": "1.1.3",
4671
- "resolved": "https://registry.npmjs.org/dlv/-/dlv-1.1.3.tgz",
4672
- "integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==",
4673
- "dev": true
4674
- },
4675
- "node_modules/doctrine": {
4676
- "version": "3.0.0",
4677
- "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz",
4678
- "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==",
4679
- "dependencies": {
4680
- "esutils": "^2.0.2"
4681
- },
4682
- "engines": {
4683
- "node": ">=6.0.0"
4684
- }
4685
- },
4686
- "node_modules/dom-serializer": {
4687
- "version": "2.0.0",
4688
- "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz",
4689
- "integrity": "sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==",
4690
- "dev": true,
4691
- "dependencies": {
4692
- "domelementtype": "^2.3.0",
4693
- "domhandler": "^5.0.2",
4694
- "entities": "^4.2.0"
4695
- },
4696
- "funding": {
4697
- "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1"
4698
- }
4699
- },
4700
- "node_modules/domelementtype": {
4701
- "version": "2.3.0",
4702
- "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz",
4703
- "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==",
4704
- "dev": true,
4705
- "funding": [
4706
- {
4707
- "type": "github",
4708
- "url": "https://github.com/sponsors/fb55"
4709
- }
4710
- ]
4711
- },
4712
- "node_modules/domhandler": {
4713
- "version": "5.0.3",
4714
- "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz",
4715
- "integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==",
4716
- "dev": true,
4717
- "dependencies": {
4718
- "domelementtype": "^2.3.0"
4719
- },
4720
- "engines": {
4721
- "node": ">= 4"
4722
- },
4723
- "funding": {
4724
- "url": "https://github.com/fb55/domhandler?sponsor=1"
4725
- }
4726
- },
4727
- "node_modules/domutils": {
4728
- "version": "3.1.0",
4729
- "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.1.0.tgz",
4730
- "integrity": "sha512-H78uMmQtI2AhgDJjWeQmHwJJ2bLPD3GMmO7Zja/ZZh84wkm+4ut+IUnUdRa8uCGX88DiVx1j6FRe1XfxEgjEZA==",
4731
- "dev": true,
4732
- "dependencies": {
4733
- "dom-serializer": "^2.0.0",
4734
- "domelementtype": "^2.3.0",
4735
- "domhandler": "^5.0.3"
4736
- },
4737
- "funding": {
4738
- "url": "https://github.com/fb55/domutils?sponsor=1"
4739
- }
4740
- },
4741
- "node_modules/duplexer": {
4742
- "version": "0.1.2",
4743
- "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz",
4744
- "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==",
4745
- "dev": true
4746
- },
4747
- "node_modules/eastasianwidth": {
4748
- "version": "0.2.0",
4749
- "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz",
4750
- "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==",
4751
- "dev": true
4752
- },
4753
- "node_modules/easy-bem": {
4754
- "version": "1.1.1",
4755
- "resolved": "https://registry.npmjs.org/easy-bem/-/easy-bem-1.1.1.tgz",
4756
- "integrity": "sha512-GJRqdiy2h+EXy6a8E6R+ubmqUM08BK0FWNq41k24fup6045biQ8NXxoXimiwegMQvFFV3t1emADdGNL1TlS61A=="
4757
- },
4758
- "node_modules/ecc-jsbn": {
4759
- "version": "0.1.2",
4760
- "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz",
4761
- "integrity": "sha512-eh9O+hwRHNbG4BLTjEl3nw044CkGm5X6LoaCf7LPp7UU8Qrt47JYNi6nPX8xjW97TKGKm1ouctg0QSpZe9qrnw==",
4762
- "dev": true,
4763
- "dependencies": {
4764
- "jsbn": "~0.1.0",
4765
- "safer-buffer": "^2.1.0"
4766
- }
4767
- },
4768
- "node_modules/echarts": {
4769
- "version": "5.5.0",
4770
- "resolved": "https://registry.npmjs.org/echarts/-/echarts-5.5.0.tgz",
4771
- "integrity": "sha512-rNYnNCzqDAPCr4m/fqyUFv7fD9qIsd50S6GDFgO1DxZhncCsNsG7IfUlAlvZe5oSEQxtsjnHiUuppzccry93Xw==",
4772
- "dependencies": {
4773
- "tslib": "2.3.0",
4774
- "zrender": "5.5.0"
4775
- }
4776
- },
4777
- "node_modules/editorconfig": {
4778
- "version": "1.0.4",
4779
- "resolved": "https://registry.npmjs.org/editorconfig/-/editorconfig-1.0.4.tgz",
4780
- "integrity": "sha512-L9Qe08KWTlqYMVvMcTIvMAdl1cDUubzRNYL+WfA4bLDMHe4nemKkpmYzkznE1FwLKu0EEmy6obgQKzMJrg4x9Q==",
4781
- "dev": true,
4782
- "dependencies": {
4783
- "@one-ini/wasm": "0.1.1",
4784
- "commander": "^10.0.0",
4785
- "minimatch": "9.0.1",
4786
- "semver": "^7.5.3"
4787
- },
4788
- "bin": {
4789
- "editorconfig": "bin/editorconfig"
4790
- },
4791
- "engines": {
4792
- "node": ">=14"
4793
- }
4794
- },
4795
- "node_modules/editorconfig/node_modules/commander": {
4796
- "version": "10.0.1",
4797
- "resolved": "https://registry.npmjs.org/commander/-/commander-10.0.1.tgz",
4798
- "integrity": "sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==",
4799
- "dev": true,
4800
- "engines": {
4801
- "node": ">=14"
4802
- }
4803
- },
4804
- "node_modules/editorconfig/node_modules/minimatch": {
4805
- "version": "9.0.1",
4806
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.1.tgz",
4807
- "integrity": "sha512-0jWhJpD/MdhPXwPuiRkCbfYfSKp2qnn2eOc279qI7f+osl/l+prKSrvhg157zSYvx/1nmgn2NqdT6k2Z7zSH9w==",
4808
- "dev": true,
4809
- "dependencies": {
4810
- "brace-expansion": "^2.0.1"
4811
- },
4812
- "engines": {
4813
- "node": ">=16 || 14 >=14.17"
4814
- },
4815
- "funding": {
4816
- "url": "https://github.com/sponsors/isaacs"
4817
- }
4818
- },
4819
- "node_modules/ee-first": {
4820
- "version": "1.1.1",
4821
- "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz",
4822
- "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==",
4823
- "dev": true
4824
- },
4825
- "node_modules/electron-to-chromium": {
4826
- "version": "1.4.774",
4827
- "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.774.tgz",
4828
- "integrity": "sha512-132O1XCd7zcTkzS3FgkAzKmnBuNJjK8WjcTtNuoylj7MYbqw5eXehjQ5OK91g0zm7OTKIPeaAG4CPoRfD9M1Mg==",
4829
- "dev": true
4830
- },
4831
- "node_modules/emoji-regex": {
4832
- "version": "8.0.0",
4833
- "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
4834
- "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==",
4835
- "dev": true
4836
- },
4837
- "node_modules/encodeurl": {
4838
- "version": "1.0.2",
4839
- "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz",
4840
- "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==",
4841
- "dev": true,
4842
- "engines": {
4843
- "node": ">= 0.8"
4844
- }
4845
- },
4846
- "node_modules/end-of-stream": {
4847
- "version": "1.4.4",
4848
- "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz",
4849
- "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==",
4850
- "dev": true,
4851
- "dependencies": {
4852
- "once": "^1.4.0"
4853
- }
4854
- },
4855
- "node_modules/enquirer": {
4856
- "version": "2.4.1",
4857
- "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.4.1.tgz",
4858
- "integrity": "sha512-rRqJg/6gd538VHvR3PSrdRBb/1Vy2YfzHqzvbhGIQpDRKIa4FgV/54b5Q1xYSxOOwKvjXweS26E0Q+nAMwp2pQ==",
4859
- "dev": true,
4860
- "dependencies": {
4861
- "ansi-colors": "^4.1.1",
4862
- "strip-ansi": "^6.0.1"
4863
- },
4864
- "engines": {
4865
- "node": ">=8.6"
4866
- }
4867
- },
4868
- "node_modules/entities": {
4869
- "version": "4.5.0",
4870
- "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz",
4871
- "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==",
4872
- "engines": {
4873
- "node": ">=0.12"
4874
- },
4875
- "funding": {
4876
- "url": "https://github.com/fb55/entities?sponsor=1"
4877
- }
4878
- },
4879
- "node_modules/error-ex": {
4880
- "version": "1.3.2",
4881
- "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz",
4882
- "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==",
4883
- "dev": true,
4884
- "dependencies": {
4885
- "is-arrayish": "^0.2.1"
4886
- }
4887
- },
4888
- "node_modules/es-abstract": {
4889
- "version": "1.23.3",
4890
- "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.23.3.tgz",
4891
- "integrity": "sha512-e+HfNH61Bj1X9/jLc5v1owaLYuHdeHHSQlkhCBiTK8rBvKaULl/beGMxwrMXjpYrv4pz22BlY570vVePA2ho4A==",
4892
- "dev": true,
4893
- "dependencies": {
4894
- "array-buffer-byte-length": "^1.0.1",
4895
- "arraybuffer.prototype.slice": "^1.0.3",
4896
- "available-typed-arrays": "^1.0.7",
4897
- "call-bind": "^1.0.7",
4898
- "data-view-buffer": "^1.0.1",
4899
- "data-view-byte-length": "^1.0.1",
4900
- "data-view-byte-offset": "^1.0.0",
4901
- "es-define-property": "^1.0.0",
4902
- "es-errors": "^1.3.0",
4903
- "es-object-atoms": "^1.0.0",
4904
- "es-set-tostringtag": "^2.0.3",
4905
- "es-to-primitive": "^1.2.1",
4906
- "function.prototype.name": "^1.1.6",
4907
- "get-intrinsic": "^1.2.4",
4908
- "get-symbol-description": "^1.0.2",
4909
- "globalthis": "^1.0.3",
4910
- "gopd": "^1.0.1",
4911
- "has-property-descriptors": "^1.0.2",
4912
- "has-proto": "^1.0.3",
4913
- "has-symbols": "^1.0.3",
4914
- "hasown": "^2.0.2",
4915
- "internal-slot": "^1.0.7",
4916
- "is-array-buffer": "^3.0.4",
4917
- "is-callable": "^1.2.7",
4918
- "is-data-view": "^1.0.1",
4919
- "is-negative-zero": "^2.0.3",
4920
- "is-regex": "^1.1.4",
4921
- "is-shared-array-buffer": "^1.0.3",
4922
- "is-string": "^1.0.7",
4923
- "is-typed-array": "^1.1.13",
4924
- "is-weakref": "^1.0.2",
4925
- "object-inspect": "^1.13.1",
4926
- "object-keys": "^1.1.1",
4927
- "object.assign": "^4.1.5",
4928
- "regexp.prototype.flags": "^1.5.2",
4929
- "safe-array-concat": "^1.1.2",
4930
- "safe-regex-test": "^1.0.3",
4931
- "string.prototype.trim": "^1.2.9",
4932
- "string.prototype.trimend": "^1.0.8",
4933
- "string.prototype.trimstart": "^1.0.8",
4934
- "typed-array-buffer": "^1.0.2",
4935
- "typed-array-byte-length": "^1.0.1",
4936
- "typed-array-byte-offset": "^1.0.2",
4937
- "typed-array-length": "^1.0.6",
4938
- "unbox-primitive": "^1.0.2",
4939
- "which-typed-array": "^1.1.15"
4940
- },
4941
- "engines": {
4942
- "node": ">= 0.4"
4943
- },
4944
- "funding": {
4945
- "url": "https://github.com/sponsors/ljharb"
4946
- }
4947
- },
4948
- "node_modules/es-define-property": {
4949
- "version": "1.0.0",
4950
- "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.0.tgz",
4951
- "integrity": "sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==",
4952
- "dev": true,
4953
- "dependencies": {
4954
- "get-intrinsic": "^1.2.4"
4955
- },
4956
- "engines": {
4957
- "node": ">= 0.4"
4958
- }
4959
- },
4960
- "node_modules/es-errors": {
4961
- "version": "1.3.0",
4962
- "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz",
4963
- "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==",
4964
- "dev": true,
4965
- "engines": {
4966
- "node": ">= 0.4"
4967
- }
4968
- },
4969
- "node_modules/es-object-atoms": {
4970
- "version": "1.0.0",
4971
- "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.0.0.tgz",
4972
- "integrity": "sha512-MZ4iQ6JwHOBQjahnjwaC1ZtIBH+2ohjamzAO3oaHcXYup7qxjF2fixyH+Q71voWHeOkI2q/TnJao/KfXYIZWbw==",
4973
- "dev": true,
4974
- "dependencies": {
4975
- "es-errors": "^1.3.0"
4976
- },
4977
- "engines": {
4978
- "node": ">= 0.4"
4979
- }
4980
- },
4981
- "node_modules/es-set-tostringtag": {
4982
- "version": "2.0.3",
4983
- "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.3.tgz",
4984
- "integrity": "sha512-3T8uNMC3OQTHkFUsFq8r/BwAXLHvU/9O9mE0fBc/MY5iq/8H7ncvO947LmYA6ldWw9Uh8Yhf25zu6n7nML5QWQ==",
4985
- "dev": true,
4986
- "dependencies": {
4987
- "get-intrinsic": "^1.2.4",
4988
- "has-tostringtag": "^1.0.2",
4989
- "hasown": "^2.0.1"
4990
- },
4991
- "engines": {
4992
- "node": ">= 0.4"
4993
- }
4994
- },
4995
- "node_modules/es-to-primitive": {
4996
- "version": "1.2.1",
4997
- "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz",
4998
- "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==",
4999
- "dev": true,
This file is too large to show in full.
frontend/package.json
+24
-23
@@ -2,6 +2,7 @@
2
"name": "copilot",
3
"version": "1.0.0",
4
"private": true,
5
+ "type": "module",
6
"overrides": {
7
"secure-ls": {
8
"crypto-js": "^4.2.0"
@@ -10,17 +11,17 @@
11
"scripts": {
12
"dev": "vite --host 0.0.0.0",
13
"dev:debug": "DEBUG=vite:* vite",
13
- "build": "run-p type-check build-only",
14
+ "build": "run-p type-check \"build-only {@}\" --",
15
"build-only": "vite build",
16
"build-analyzer": "vite-bundle-visualizer -t sunburst",
17
"preview": "vite build && echo '' && vite preview --port 4173 --host",
18
"preview-only": "vite preview --port 4173 --host",
18
- "test:unit": "vitest --environment jsdom",
19
- "test:e2e": "start-server-and-test preview http://localhost:4173/ 'cypress open --e2e'",
20
- "test:e2e:ci": "start-server-and-test preview http://localhost:4173/ 'cypress run --e2e'",
21
- "type-check": "vue-tsc --noEmit -p tsconfig.vitest.json --composite false",
22
- "lint": "eslint . --ext .vue,.ts,.tsx,.cts,.mts --fix",
23
- "tailwind-config-viewer": "tailwind-config-viewer -o",
19
+ "test:unit": "vitest",
20
+ "test:e2e": "start-server-and-test preview http://localhost:4173 'cypress run --e2e'",
21
+ "test:e2e:dev": "start-server-and-test 'vite dev --port 4173' http://localhost:4173 'cypress open --e2e'",
22
+ "type-check": "vue-tsc --build --force",
23
+ "lint": "eslint . --ext .vue,.js,.jsx,.cjs,.mjs,.ts,.tsx,.cts,.mts --fix --ignore-path ../.gitignore",
24
+ "tailwind-config-viewer": "tailwind-config-viewer --config ./tailwind.config.js -o",
25
"design-tokens": "node scripts/tokens-tool.js",
26
"start-server-old": "cd ../backend && uvicorn copilot:app --reload --port=5000",
27
"start-server-venv": "cd ../backend && source .venv/bin/activate && uvicorn copilot:app --port=5000 --log-level debug",
@@ -31,7 +32,7 @@
32
"libs-reload": "rm -rf node_modules package-lock.json && npm install",
33
"open:swagger": "open http://127.0.0.1:5000/docs#/",
34
"open:redoc": "open http://127.0.0.1:5000/redoc",
34
- "prettify": "prettier --write ."
35
+ "format": "prettier --write src/"
36
},
37
"dependencies": {
38
"@ajoelp/json-to-formdata": "^1.5.0",
@@ -40,7 +41,7 @@
41
"@fontsource/lexend": "^5.0.20",
42
"@fontsource/public-sans": "^5.0.18",
43
"@popperjs/core": "^2.11.8",
43
- "@shikijs/markdown-it": "^1.6.1",
44
+ "@shikijs/markdown-it": "^1.6.2",
45
"@vueuse/components": "^10.10.0",
46
"@vueuse/core": "^10.10.0",
47
"apexcharts": "^3.49.1",
@@ -52,7 +53,7 @@
53
"echarts": "^5.5.0",
54
"file-saver": "^2.0.5",
55
"html-entities": "^2.5.2",
55
- "jose": "^5.3.0",
56
+ "jose": "^5.4.0",
57
"js-md5": "^0.8.3",
58
"lodash": "^4.17.21",
59
"mitt": "^3.0.1",
@@ -61,7 +62,7 @@
62
"pinia": "^2.1.7",
63
"pinia-plugin-persistedstate": "^3.2.1",
64
"secure-ls": "^1.2.6",
64
- "shiki": "^1.6.1",
65
+ "shiki": "^1.6.2",
66
"validator": "^13.12.0",
67
"vue": "^3.4.27",
68
"vue-advanced-cropper": "^2.8.8",
@@ -77,36 +78,35 @@
78
"@clack/prompts": "^0.7.0",
79
"@iconify/vue": "^4.1.2",
80
"@rushstack/eslint-patch": "^1.10.3",
80
- "@tsconfig/node18": "^18.2.4",
81
+ "@tsconfig/node20": "^20.1.4",
82
"@types/bytes": "^3.1.4",
83
"@types/file-saver": "^2.0.7",
84
"@types/fs-extra": "^11.0.4",
85
"@types/inquirer": "^9.0.7",
85
- "@types/jsdom": "^21.1.6",
86
+ "@types/jsdom": "^21.1.7",
87
"@types/lodash": "^4.17.4",
87
- "@types/node": "^20.12.13",
88
+ "@types/node": "^20.14.1",
89
"@types/validator": "^13.11.10",
89
- "@vitejs/plugin-vue": "^5.0.4",
90
- "@vitejs/plugin-vue-jsx": "^3.1.0",
90
+ "@vitejs/plugin-vue": "^5.0.5",
91
+ "@vitejs/plugin-vue-jsx": "^4.0.0",
92
"@vue/eslint-config-prettier": "^9.0.0",
93
"@vue/eslint-config-typescript": "^13.0.0",
94
"@vue/test-utils": "^2.4.6",
95
"@vue/tsconfig": "^0.5.1",
96
"autoprefixer": "^10.4.19",
96
- "cypress": "^13.10.0",
97
- "eslint": "^8.57.0",
97
+ "cypress": "^13.11.0",
98
+ "eslint": "8.57.0",
99
"eslint-plugin-cypress": "^3.3.0",
100
"eslint-plugin-vue": "^9.26.0",
100
- "flourite": "^1.2.4",
101
+ "flourite": "^1.3.0",
102
"fs-extra": "^11.2.0",
102
- "ip": "^2.0.1",
103
"jsdom": "^24.1.0",
104
"json5": "^2.2.3",
105
- "npm-run-all": "^4.1.5",
105
+ "npm-run-all2": "^6.2.0",
106
"picocolors": "^1.0.1",
107
"postcss": "^8.4.38",
108
- "prettier": "^3.2.5",
109
- "sass": "^1.77.3",
108
+ "prettier": "^3.3.0",
109
+ "sass": "^1.77.4",
110
"start-server-and-test": "^2.0.3",
111
"tailwind-config-viewer": "^2.0.2",
112
"tailwindcss": "^3.4.3",
@@ -115,6 +115,7 @@
115
"vite": "^5.2.12",
116
"vite-bundle-analyzer": "^0.9.4",
117
"vite-bundle-visualizer": "^1.2.1",
118
+ "vite-plugin-vue-devtools": "^7.2.1",
119
"vite-svg-loader": "^5.1.0",
120
"vitest": "^1.6.0",
121
"vue-tsc": "^2.0.19"
frontend/postcss.config.js
+1
-1
@@ -1,4 +1,4 @@
1
-module.exports = {
1
+export default {
2
plugins: {
3
tailwindcss: {},
4
autoprefixer: {}
frontend/scripts/tokens-tool.js
+6
-6
@@ -1,9 +1,9 @@
1
-const process = require("node:process")
2
-const _ = require("lodash")
3
-const fs = require("fs-extra")
4
-const path = require("node:path")
5
-const os = require("node:os")
6
-const { intro, outro, select, spinner, isCancel, cancel, text } = require("@clack/prompts")
1
+import process from "node:process"
2
+import _ from "lodash"
3
+import fs from "fs-extra"
4
+import path from "node:path"
5
+import os from "node:os"
6
+import { intro, outro, select, spinner, isCancel, cancel, text } from "@clack/prompts"
7
8
const GLOBAL_KEYS = ["border-radius", "line-heights", "font-sizes", "font-families"]
9
const TYPO_KEYS = ["typo"]
frontend/src/components/artifacts/ArtifactsCollect.vue
+29
-18
@@ -1,7 +1,7 @@
1
<template>
2
<div class="artifacts-collect">
3
<div class="header flex justify-end items-start gap-2">
4
- <div class="info flex gap-5">
4
+ <div class="info flex gap-5" v-if="isDirty">
5
<n-popover overlap placement="bottom-start">
6
<template #trigger>
7
<div class="bg-color border-radius">
@@ -21,9 +21,8 @@
21
</n-popover>
22
</div>
23
<div class="grow flex items-center justify-end gap-2 flex-wrap">
24
- <div class="grow basis-56">
24
+ <div class="grow basis-56" v-if="!hideHostnameField">
25
<n-select
26
- v-if="!isFilterPreselected"
26
v-model:value="filters.hostname"
27
:options="agentHostnameOptions"
28
placeholder="Agent hostname"
@@ -46,10 +45,10 @@
45
:loading="loadingArtifacts"
46
/>
47
</div>
49
- <div class="grow basis-56">
48
+ <div class="grow basis-56" v-if="!hideVelociraptorIdField">
49
<n-input
50
v-model:value="filters.velociraptor_id"
52
- placeholder="Velociraptor id"
51
+ placeholder="Velociraptor ID"
52
clearable
53
:readonly="loading"
54
size="small"
@@ -94,7 +93,7 @@ import Api from "@/api"
93
import Icon from "@/components/common/Icon.vue"
94
import CollectItem from "./CollectItem.vue"
95
import type { Agent } from "@/types/agents.d"
97
-import type { CollectRequest } from "@/api/artifacts"
96
+import type { ArtifactsQuery, CollectRequest } from "@/api/artifacts"
97
import type { Artifact, CollectResult } from "@/types/artifacts.d"
98
import { nanoid } from "nanoid"
99
// import { collectResult } from "./mock"
@@ -108,8 +107,17 @@ const emit = defineEmits<{
107
(e: "loaded-artifacts", value: Artifact[]): void
108
}>()
109
111
-const props = defineProps<{ agentHostname?: string; agents?: Agent[]; artifacts?: Artifact[] }>()
112
-const { agentHostname, agents, artifacts } = toRefs(props)
110
+const props = defineProps<{
111
+ hostname?: string
112
+ velociraptorId?: string
113
+ agents?: Agent[]
114
+ artifacts?: Artifact[]
115
+ artifactsFilter?: ArtifactsQuery
116
+ hideHostnameField?: boolean
117
+ hideVelociraptorIdField?: boolean
118
+}>()
119
+const { hostname, velociraptorId, agents, artifacts, artifactsFilter, hideHostnameField, hideVelociraptorIdField } =
120
+ toRefs(props)
121
122
const message = useMessage()
123
const loadingAgents = ref(false)
@@ -118,6 +126,7 @@ const loading = ref(false)
126
const agentsList = ref<Agent[]>([])
127
const artifactsList = ref<Artifact[]>([])
128
const collectList = ref<CollectResultExt[]>([])
129
+const isDirty = ref(false)
130
131
const InfoIcon = "carbon:information"
132
@@ -127,17 +136,13 @@ const total = computed<number>(() => {
136
137
const filters = ref<Partial<CollectRequest>>({})
138
130
-const isFilterPreselected = computed(() => {
131
- return !!agentHostname?.value
132
-})
133
-
139
const areFiltersValid = computed(() => {
140
return !!filters.value.artifact_name && !!filters.value.hostname
141
})
142
143
const agentHostnameOptions = computed(() => {
139
- if (agentHostname?.value) {
140
- return [{ value: agentHostname.value, label: agentHostname.value }]
144
+ if (hostname?.value) {
145
+ return [{ value: hostname.value, label: hostname.value }]
146
}
147
return (agentsList.value || []).map(o => ({ value: o.hostname, label: o.hostname }))
148
})
@@ -154,6 +159,8 @@ function getData() {
159
.collect(filters.value as CollectRequest)
160
.then(res => {
161
if (res.data.success) {
162
+ isDirty.value = true
163
+
164
collectList.value = (res.data?.results || []).map(o => {
165
o.___id = nanoid()
166
return o
@@ -201,7 +208,7 @@ function getArtifacts(cb?: (artifacts: Artifact[]) => void) {
208
loadingArtifacts.value = true
209
210
Api.artifacts
204
- .getAll()
211
+ .getAll(artifactsFilter.value)
212
.then(res => {
213
if (res.data.success) {
214
artifactsList.value = res.data.artifacts || []
@@ -222,8 +229,12 @@ function getArtifacts(cb?: (artifacts: Artifact[]) => void) {
229
}
230
231
onBeforeMount(() => {
225
- if (agentHostname?.value) {
226
- filters.value.hostname = agentHostname.value
232
+ if (hostname?.value) {
233
+ filters.value.hostname = hostname.value
234
+ }
235
+
236
+ if (velociraptorId?.value) {
237
+ filters.value.velociraptor_id = velociraptorId.value
238
}
239
240
if (agents?.value?.length && !agentsList.value.length) {
@@ -235,7 +246,7 @@ onBeforeMount(() => {
246
}
247
248
nextTick(() => {
238
- if (!agentsList.value.length && !agentHostname?.value) {
249
+ if (!agentsList.value.length && !hostname?.value) {
250
getAgents((agents: Agent[]) => {
251
emit("loaded-agents", agents)
252
})
frontend/src/components/artifacts/ArtifactsCommand.vue
+15
-13
@@ -3,7 +3,7 @@
3
<div class="header flex items-start gap-2">
4
<div class="flex flex-col gap-2 w-full">
5
<div class="grow flex items-center gap-2 flex-wrap">
6
- <div class="grow basis-56" v-if="!isFilterPreselected">
6
+ <div class="grow basis-56" v-if="!hideHostnameField">
7
<n-select
8
v-model:value="filters.hostname"
9
:options="agentHostnameOptions"
@@ -27,7 +27,7 @@
27
:loading="loadingArtifacts"
28
/>
29
</div>
30
- <div class="grow basis-56">
30
+ <div class="grow basis-56" v-if="!hideVelociraptorIdField">
31
<n-input
32
v-model:value="filters.velociraptor_id"
33
placeholder="Velociraptor id"
@@ -132,8 +132,14 @@ const emit = defineEmits<{
132
(e: "loaded-artifacts", value: Artifact[]): void
133
}>()
134
135
-const props = defineProps<{ agentHostname?: string; agents?: Agent[]; artifacts?: Artifact[] }>()
136
-const { agentHostname, agents, artifacts } = toRefs(props)
135
+const props = defineProps<{
136
+ hostname?: string
137
+ agents?: Agent[]
138
+ artifacts?: Artifact[]
139
+ hideHostnameField?: boolean
140
+ hideVelociraptorIdField?: boolean
141
+}>()
142
+const { hostname, agents, artifacts, hideHostnameField, hideVelociraptorIdField } = toRefs(props)
143
144
const TimeIcon = "carbon:time"
145
const StopWatchIcon = "quill:stopwatch"
@@ -159,17 +165,13 @@ const diffTime = computed(() => {
165
166
const filters = ref<Partial<CommandRequest>>({})
167
162
-const isFilterPreselected = computed(() => {
163
- return !!agentHostname?.value
164
-})
165
-
168
const areFiltersValid = computed(() => {
169
return !!filters.value.artifact_name && !!filters.value.hostname && !!filters.value.command
170
})
171
172
const agentHostnameOptions = computed(() => {
171
- if (agentHostname?.value) {
172
- return [{ value: agentHostname.value, label: agentHostname.value }]
173
+ if (hostname?.value) {
174
+ return [{ value: hostname.value, label: hostname.value }]
175
}
176
return (agentsList.value || []).map(o => ({ value: o.hostname, label: o.hostname }))
177
})
@@ -257,8 +259,8 @@ onBeforeMount(() => {
259
o => ({ name: o }) as Artifact
260
)
261
260
- if (agentHostname?.value) {
261
- filters.value.hostname = agentHostname.value
262
+ if (hostname?.value) {
263
+ filters.value.hostname = hostname.value
264
}
265
266
if (agents?.value?.length && !agentsList.value.length) {
@@ -270,7 +272,7 @@ onBeforeMount(() => {
272
}
273
274
nextTick(() => {
273
- if (!agentsList.value.length && !agentHostname?.value) {
275
+ if (!agentsList.value.length && !hostname?.value) {
276
getAgents((agents: Agent[]) => {
277
emit("loaded-agents", agents)
278
})
frontend/src/components/artifacts/ArtifactsQuarantine.vue
+15
-14
@@ -2,9 +2,8 @@
2
<div class="artifacts-quarantine">
3
<div class="header flex justify-end items-start gap-2">
4
<div class="grow flex items-center justify-end gap-2 flex-wrap">
5
- <div class="grow basis-56">
5
+ <div class="grow basis-56" v-if="!hideHostnameField">
6
<n-select
7
- v-if="!isFilterPreselected"
7
v-model:value="filters.hostname"
8
:options="agentHostnameOptions"
9
placeholder="Agent hostname"
@@ -27,7 +26,7 @@
26
:loading="loadingArtifacts"
27
/>
28
</div>
30
- <div class="grow basis-56">
29
+ <div class="grow basis-56" v-if="!hideVelociraptorIdField">
30
<n-input
31
v-model:value="filters.velociraptor_id"
32
placeholder="Velociraptor id"
@@ -95,8 +94,14 @@ const emit = defineEmits<{
94
(e: "action-performed"): void
95
}>()
96
98
-const props = defineProps<{ agentHostname?: string; agents?: Agent[]; artifacts?: Artifact[] }>()
99
-const { agentHostname, agents, artifacts } = toRefs(props)
97
+const props = defineProps<{
98
+ hostname?: string
99
+ agents?: Agent[]
100
+ artifacts?: Artifact[]
101
+ hideHostnameField?: boolean
102
+ hideVelociraptorIdField?: boolean
103
+}>()
104
+const { hostname, agents, artifacts, hideHostnameField, hideVelociraptorIdField } = toRefs(props)
105
106
const message = useMessage()
107
const loadingAgents = ref(false)
@@ -110,17 +115,13 @@ const SubmitIcon = "carbon:play"
115
116
const filters = ref<Partial<QuarantineRequest>>({})
117
113
-const isFilterPreselected = computed(() => {
114
- return !!agentHostname?.value
115
-})
116
-
118
const areFiltersValid = computed(() => {
119
return !!filters.value.artifact_name && !!filters.value.hostname
120
})
121
122
const agentHostnameOptions = computed(() => {
122
- if (agentHostname?.value) {
123
- return [{ value: agentHostname.value, label: agentHostname.value }]
123
+ if (hostname?.value) {
124
+ return [{ value: hostname.value, label: hostname.value }]
125
}
126
return (agentsList.value || []).map(o => ({ value: o.hostname, label: o.hostname }))
127
})
@@ -212,8 +213,8 @@ onBeforeMount(() => {
213
o => ({ name: o }) as Artifact
214
)
215
215
- if (agentHostname?.value) {
216
- filters.value.hostname = agentHostname.value
216
+ if (hostname?.value) {
217
+ filters.value.hostname = hostname.value
218
}
219
220
if (agents?.value?.length && !agentsList.value.length) {
@@ -227,7 +228,7 @@ onBeforeMount(() => {
228
filters.value.action = actionsOptions.value[0].value as QuarantineRequest["action"]
229
230
nextTick(() => {
230
- if (!agentsList.value.length && !agentHostname?.value) {
231
+ if (!agentsList.value.length && !hostname?.value) {
232
getAgents((agents: Agent[]) => {
233
emit("loaded-agents", agents)
234
})
frontend/src/components/soc/SocAlerts/SocAlertAssets/SocAlertAssetsItem.vue
+13
-1
@@ -117,6 +117,17 @@
117
</template>
118
</div>
119
</n-tab-pane>
120
+ <n-tab-pane name="Artifact Collection" tab="Artifact Collection" display-directive="show:lazy">
121
+ <div class="p-7 pt-2">
122
+ <ArtifactsCollect
123
+ :hostname="asset.asset_name"
124
+ :artifacts-filter="{ hostname: asset.asset_name }"
125
+ hide-hostname-field
126
+ velociraptor-id="string"
127
+ hide-velociraptor-id-field
128
+ />
129
+ </div>
130
+ </n-tab-pane>
131
</n-tabs>
132
</n-modal>
133
</div>
@@ -126,7 +137,7 @@
137
import Icon from "@/components/common/Icon.vue"
138
import KVCard from "@/components/common/KVCard.vue"
139
import Badge from "@/components/common/Badge.vue"
129
-import { computed, ref } from "vue"
140
+import { computed, defineAsyncComponent, ref } from "vue"
141
import { NModal, NTabs, NTabPane } from "naive-ui"
142
import _omit from "lodash/omit"
143
import dayjs from "@/utils/dayjs"
@@ -134,6 +145,7 @@ import { isUrlLike } from "@/utils"
145
import type { SocAlertAsset } from "@/types/soc/asset.d"
146
import { useSettingsStore } from "@/stores/settings"
147
import { useGoto } from "@/composables/useGoto"
148
+const ArtifactsCollect = defineAsyncComponent(() => import("@/components/artifacts/ArtifactsCollect.vue"))
149
150
const { asset } = defineProps<{ asset: SocAlertAsset }>()
151
frontend/src/router/index.ts
+1
-1
@@ -227,7 +227,7 @@ const router = createRouter({
227
{
228
path: "/register",
229
name: "Register",
230
- component: () => import("@/views/auth/Login.vue"),
230
+ component: Login,
231
props: { formType: "signup" as FormType },
232
meta: { title: "Register", forceLayout: Layout.Blank, checkAuth: true, skipPin: true }
233
},
frontend/src/views/Artifacts.vue
+6
-6
@@ -8,24 +8,24 @@
8
<ArtifactsCollect
9
@loaded-agents="agents = $event"
10
@loaded-artifacts="artifacts = $event"
11
- :agents="agents"
12
- :artifacts="artifacts"
11
+ :agents
12
+ :artifacts
13
/>
14
</n-tab-pane>
15
<n-tab-pane name="command" tab="Command" display-directive="show:lazy">
16
<ArtifactsCommand
17
@loaded-agents="agents = $event"
18
@loaded-artifacts="artifacts = $event"
19
- :agents="agents"
20
- :artifacts="artifacts"
19
+ :agents
20
+ :artifacts
21
/>
22
</n-tab-pane>
23
<n-tab-pane name="quarantine" tab="Quarantine" display-directive="show:lazy">
24
<ArtifactsQuarantine
25
@loaded-agents="agents = $event"
26
@loaded-artifacts="artifacts = $event"
27
- :agents="agents"
28
- :artifacts="artifacts"
27
+ :agents
28
+ :artifacts
29
/>
30
</n-tab-pane>
31
</n-tabs>
frontend/src/views/agents/Overview.vue
+9
-6
@@ -89,16 +89,18 @@
89
<ArtifactsCollect
90
v-if="agent"
91
@loaded-artifacts="artifacts = $event"
92
- :agent-hostname="agent.hostname"
93
- :artifacts="artifacts"
92
+ :hostname="agent.hostname"
93
+ :artifacts
94
+ hide-hostname-field
95
/>
96
</n-tab-pane>
97
<n-tab-pane name="command" tab="Command" display-directive="show:lazy">
98
<ArtifactsCommand
99
v-if="agent"
100
@loaded-artifacts="artifacts = $event"
100
- :agent-hostname="agent.hostname"
101
- :artifacts="artifacts"
101
+ :hostname="agent.hostname"
102
+ :artifacts
103
+ hide-hostname-field
104
/>
105
</n-tab-pane>
106
<n-tab-pane name="quarantine" tab="Quarantine" display-directive="show:lazy">
@@ -106,8 +108,9 @@
108
v-if="agent"
109
@action-performed="getAgent()"
110
@loaded-artifacts="artifacts = $event"
109
- :agent-hostname="agent.hostname"
110
- :artifacts="artifacts"
111
+ :hostname="agent.hostname"
112
+ :artifacts
113
+ hide-hostname-field
114
/>
115
</n-tab-pane>
116
<n-tab-pane name="active-response" tab="Active Response" display-directive="show:lazy">
frontend/tailwind.config.js
+6
-5
@@ -1,7 +1,8 @@
1
-/** @type {import('tailwindcss').Config} */
2
-const plugin = require("tailwindcss/plugin")
3
-const tokens = require("./src/design-tokens.json")
4
-const _ = require("lodash")
1
+import { readFileSync } from "fs"
2
+import plugin from "tailwindcss/plugin.js"
3
+import _ from "lodash"
4
+const fileUrl = new URL("./src/design-tokens.json", import.meta.url)
5
+const tokens = JSON.parse(readFileSync(fileUrl))
6
7
function getValue(origin, val) {
8
if (val && val.indexOf("{") === 0) {
@@ -12,7 +13,7 @@ function getValue(origin, val) {
13
return val
14
}
15
15
-module.exports = {
16
+export default {
17
content: ["./index.html", "./src/**/*.{vue,js,ts,jsx,tsx}"],
18
darkMode: ["class"],
19
theme: {
frontend/tsconfig.app.json
+2
@@ -4,6 +4,8 @@
4
"exclude": ["src/**/__tests__/*"],
5
"compilerOptions": {
6
"composite": true,
7
+ "tsBuildInfoFile": "./node_modules/.tmp/tsconfig.app.tsbuildinfo",
8
+
9
"baseUrl": ".",
10
"types": ["node", "naive-ui/volar"],
11
"moduleResolution": "node",
frontend/tsconfig.json
+4
-1
@@ -10,5 +10,8 @@
10
{
11
"path": "./tsconfig.vitest.json"
12
}
13
- ]
13
+ ],
14
+ "compilerOptions": {
15
+ "module": "NodeNext"
16
+ }
17
}
frontend/tsconfig.node.json
+4
-1
@@ -1,8 +1,11 @@
1
{
2
- "extends": "@tsconfig/node18/tsconfig.json",
2
+ "extends": "@tsconfig/node20/tsconfig.json",
3
"include": ["vite.config.*", "vitest.config.*", "cypress.config.*", "nightwatch.conf.*", "playwright.config.*"],
4
"compilerOptions": {
5
"composite": true,
6
+ "noEmit": true,
7
+ "tsBuildInfoFile": "./node_modules/.tmp/tsconfig.node.tsbuildinfo",
8
+
9
"module": "ESNext",
10
"moduleResolution": "Bundler",
11
"types": ["node"]
frontend/tsconfig.vitest.json
+4
@@ -1,7 +1,11 @@
1
{
2
"extends": "./tsconfig.app.json",
3
+ "exclude": [],
4
"compilerOptions": {
5
"composite": true,
6
+ "tsBuildInfoFile": "./node_modules/.tmp/tsconfig.vitest.tsbuildinfo",
7
+
8
+ "lib": [],
9
"types": ["node", "jsdom"],
10
"allowImportingTsExtensions": true
11
}
frontend/vite.config.ts
renamed
+14
-7
@@ -2,24 +2,28 @@ import { fileURLToPath, URL } from "node:url"
2
import { defineConfig, loadEnv } from "vite"
3
import vue from "@vitejs/plugin-vue"
4
import vueJsx from "@vitejs/plugin-vue-jsx"
5
+import VueDevTools from "vite-plugin-vue-devtools"
6
import svgLoader from "vite-svg-loader"
7
import Components from "unplugin-vue-components/vite"
8
import fs from "fs"
9
// import { analyzer } from "vite-bundle-analyzer"
10
11
// https://vitejs.dev/config/
11
-export default (args: any) => {
12
- process.env = { ...process.env, ...loadEnv(args.mode, process.cwd()) }
12
+export default defineConfig(({ mode }) => {
13
+ // Load env file based on `mode` in the current working directory.
14
+ // Set the third parameter to '' to load all env regardless of the `VITE_` prefix.
15
+ process.env = { ...process.env, ...loadEnv(mode, process.cwd(), "") }
16
14
- return defineConfig({
17
+ return {
18
plugins: [
19
vue({
20
script: {
18
- defineModel: true,
19
- propsDestructure: true
21
+ defineModel: true
22
+ // propsDestructure: true
23
}
24
}),
25
vueJsx(),
26
+ VueDevTools(),
27
svgLoader(),
28
Components({
29
dirs: ["src/components/cards"],
@@ -48,6 +52,9 @@ export default (args: any) => {
52
changeOrigin: true
53
}
54
}
55
+ },
56
+ define: {
57
+ __APP_ENV__: JSON.stringify(process.env.APP_ENV)
58
}
52
- })
53
-}
59
+ }
60
+})
frontend/vitest.config.ts
+13
-11
@@ -1,14 +1,16 @@
1
import { fileURLToPath } from "node:url"
2
import { mergeConfig, defineConfig, configDefaults } from "vitest/config"
3
-import viteConfig from "./vite.config.mts"
4
-// TODO: fix vite.config.mts import
5
-export default mergeConfig(
6
- viteConfig,
7
- defineConfig({
8
- test: {
9
- environment: "jsdom",
10
- exclude: [...configDefaults.exclude, "e2e/*"],
11
- root: fileURLToPath(new URL("./", import.meta.url))
12
- }
13
- })
3
+import viteConfig from "./vite.config"
4
+
5
+export default defineConfig(env =>
6
+ mergeConfig(
7
+ viteConfig(env),
8
+ defineConfig({
9
+ test: {
10
+ environment: "jsdom",
11
+ exclude: [...configDefaults.exclude, "e2e/*"],
12
+ root: fileURLToPath(new URL("./", import.meta.url))
13
+ }
14
+ })
15
+ )
16
)