@cryptotaxi247 / CoPilot / commits / 745aedf9

Portainer conti (#409)

* refactor for modular * feat: add Portainer stack management and node IP retrieval functionality * feat: add Portainer stack ID management to customer meta table * feat: implement start, stop, and delete functionality for Wazuh customer stacks in Portainer * feat: add Portainer deployment support and swarm node management to provisioning requests * feat: add Wazuh manager version field to provisioning request and update provisioning logic * feat: add endpoint to retrieve customer Portainer stack ID and update customer schema * feat: update Carbon Black integration to use connector name instead of ID * feat: update Huntress integration to use connector name instead of ID * chore: update frontend dependencies * feat: add costumer wazuh worker * chore: update frontend dependencies * feat: refactor types * fix: updated buttons * precommit fixes * feat: add route to update customer stack ID --------- Co-authored-by: Davide Di Modica <webmaster.ddm@gmail.com>

taylor_socfortress committed Feb 25, 2025 at 08:26 UTC 745aedf939df1fb98f0ed7bceb4c7ff90e84ba33
117 files changed +2820 -13143
.vscode/settings.json
+3
@@ -73,5 +73,8 @@
73 "whois",
74 "xaxis",
75 "zondicons"
76 + ],
77 + "i18n-ally.localesPaths": [
78 + "frontend/src/lang"
79 ]
80 }
backend/alembic/alembic.ini
+1 -1
@@ -60,7 +60,7 @@ version_path_separator = os # Use os.pathsep. Default configuration used for ne
60 # are written from script.py.mako
61 # output_encoding = utf-8
62
63 -sqlalchemy.url = mysql+pymysql://copilot:REPLACE_ME@copilot-mysql/copilot
63 +sqlalchemy.url = mysql+pymysql://copilot:H7U3AHsXWSGvE5L123B7$GQdLQz@10.255.254.2/copilot
64
65
66 [post_write_hooks]
backend/alembic/versions/6ac2c9c193a8_add_portainer_stack_id_column_to_.py new
+31
@@ -0,0 +1,31 @@
1 +"""Add portainer stack id column to customer meta
2 +
3 +Revision ID: 6ac2c9c193a8
4 +Revises: b453170bbefc
5 +Create Date: 2025-02-20 15:13:41.397420
6 +
7 +"""
8 +from typing import Sequence
9 +from typing import Union
10 +
11 +import sqlalchemy as sa
12 +
13 +from alembic import op
14 +
15 +# revision identifiers, used by Alembic.
16 +revision: str = "6ac2c9c193a8"
17 +down_revision: Union[str, None] = "b453170bbefc"
18 +branch_labels: Union[str, Sequence[str], None] = None
19 +depends_on: Union[str, Sequence[str], None] = None
20 +
21 +
22 +def upgrade() -> None:
23 + # ### commands auto generated by Alembic - please adjust! ###
24 + op.add_column("customersmeta", sa.Column("customer_meta_portainer_stack_id", sa.Integer(), nullable=True))
25 + # ### end Alembic commands ###
26 +
27 +
28 +def downgrade() -> None:
29 + # ### commands auto generated by Alembic - please adjust! ###
30 + op.drop_column("customersmeta", "customer_meta_portainer_stack_id")
31 + # ### end Alembic commands ###
backend/app/connectors/portainer/routes/portainer.py
+159
@@ -1,15 +1,28 @@
1 from fastapi import APIRouter
2 +from fastapi import Depends
3 from fastapi import Security
4 from loguru import logger
5 +from sqlalchemy.ext.asyncio import AsyncSession
6
7 from app.auth.utils import AuthHandler
8
9 # from app.connectors.portainer.schema.integrations import ExecuteWorkflowRequest
10 from app.connectors.portainer.schema.nodes import NodesResponse
11 +from app.connectors.portainer.schema.stack import DeleteStackResponse
12 +from app.connectors.portainer.schema.stack import StackIDResponse
13 from app.connectors.portainer.schema.stack import StackResponse
14 +from app.connectors.portainer.schema.stack import StacksResponse
15 from app.connectors.portainer.services.nodes import get_node_details
16 from app.connectors.portainer.services.stack import create_wazuh_customer_stack
17 +from app.connectors.portainer.services.stack import delete_wazuh_customer_stack
18 +from app.connectors.portainer.services.stack import get_stack_details
19 +from app.connectors.portainer.services.stack import get_stacks
20 +from app.connectors.portainer.services.stack import start_wazuh_customer_stack
21 +from app.connectors.portainer.services.stack import stop_wazuh_customer_stack
22 +from app.connectors.portainer.utils.universal import get_customer_portainer_stack_id
23 +from app.connectors.portainer.utils.universal import update_customer_portainer_stack_id
24 from app.customer_provisioning.schema.provision import ProvisionNewCustomer
25 +from app.db.db_session import get_db
26
27 portainer_integrations_router = APIRouter()
28
@@ -31,6 +44,67 @@ async def node_details_route():
44 return await get_node_details()
45
46
47 +@portainer_integrations_router.get(
48 + "/stacks",
49 + description="Get the list of stacks.",
50 + dependencies=[Security(AuthHandler().require_any_scope("admin"))],
51 + response_model=StacksResponse,
52 +)
53 +async def stacks_route():
54 + """
55 + Get the list of stacks.
56 +
57 + Returns:
58 + dict: The response object.
59 + """
60 + return await get_stacks()
61 +
62 +
63 +@portainer_integrations_router.get(
64 + "/stack-details",
65 + description="Get the details of a stack.",
66 + dependencies=[Security(AuthHandler().require_any_scope("admin"))],
67 + response_model=StackResponse,
68 +)
69 +async def stack_details_route(stack_id: int):
70 + """
71 + Get the details of a stack.
72 +
73 + Args:
74 + stack_id (int): The ID of the stack.
75 +
76 + Returns:
77 + dict: The response object.
78 + """
79 + return await get_stack_details(stack_id)
80 +
81 +
82 +@portainer_integrations_router.get(
83 + "/get-customer-stack-id",
84 + description="Get the ID of a customer stack.",
85 + dependencies=[Security(AuthHandler().require_any_scope("admin"))],
86 + response_model=StackIDResponse,
87 +)
88 +async def get_customer_stack_id_route(
89 + customer_name: str,
90 + session: AsyncSession = Depends(get_db),
91 +):
92 + """
93 + Get the ID of a customer stack by the customer name.
94 +
95 + Args:
96 + customer_name (str): The name of the customer.
97 +
98 + Returns:
99 + dict: The response object.
100 + """
101 + return StackIDResponse(
102 + stack_id=await get_customer_portainer_stack_id(customer_name=customer_name, session=session),
103 + success=True,
104 + message="Customer stack ID retrieved successfully.",
105 + )
106 +
107 +
108 @portainer_integrations_router.post(
109 "/create-wazuh-customer-stack",
110 description="Create a Wazuh stack for a customer.",
@@ -48,3 +122,88 @@ async def create_wazuh_customer_stack_route(request: ProvisionNewCustomer):
122 dict: The response object.
123 """
124 return await create_wazuh_customer_stack(request)
125 +
126 +
127 +@portainer_integrations_router.post(
128 + "/start-wazuh-customer-stack",
129 + description="Start a Wazuh stack for a customer.",
130 + dependencies=[Security(AuthHandler().require_any_scope("admin"))],
131 + response_model=StackResponse,
132 +)
133 +async def start_wazuh_customer_stack_route(stack_id: int):
134 + """
135 + Start a Wazuh stack for a customer.
136 +
137 + Args:
138 + request (ProvisionNewCustomer): The request object.
139 +
140 + Returns:
141 + dict: The response object.
142 + """
143 + return await start_wazuh_customer_stack(stack_id)
144 +
145 +
146 +@portainer_integrations_router.post(
147 + "/stop-wazuh-customer-stack",
148 + description="Stop a Wazuh stack for a customer.",
149 + dependencies=[Security(AuthHandler().require_any_scope("admin"))],
150 + response_model=StackResponse,
151 +)
152 +async def stop_wazuh_customer_stack_route(stack_id: int):
153 + """
154 + Stop a Wazuh stack for a customer.
155 +
156 + Args:
157 + request (ProvisionNewCustomer): The request object.
158 +
159 + Returns:
160 + dict: The response object.
161 + """
162 + return await stop_wazuh_customer_stack(stack_id)
163 +
164 +
165 +@portainer_integrations_router.post(
166 + "/update-customer-stack-id",
167 + description="Update the ID of a customer stack.",
168 + dependencies=[Security(AuthHandler().require_any_scope("admin"))],
169 + response_model=StackIDResponse,
170 +)
171 +async def update_customer_stack_id_route(
172 + customer_name: str,
173 + stack_id: int,
174 + session: AsyncSession = Depends(get_db),
175 +):
176 + """
177 + Update the ID of a customer stack by the customer name.
178 +
179 + Args:
180 + customer_name (str): The name of the customer.
181 + stack_id (int): The ID of the stack.
182 +
183 + Returns:
184 + dict: The response object.
185 + """
186 + return StackIDResponse(
187 + stack_id=await update_customer_portainer_stack_id(customer_name=customer_name, stack_id=stack_id, session=session),
188 + success=True,
189 + message="Customer stack ID updated successfully.",
190 + )
191 +
192 +
193 +@portainer_integrations_router.delete(
194 + "/delete-wazuh-customer-stack",
195 + description="Delete a Wazuh stack for a customer.",
196 + dependencies=[Security(AuthHandler().require_any_scope("admin"))],
197 + response_model=DeleteStackResponse,
198 +)
199 +async def delete_wazuh_customer_stack_route(stack_id: int):
200 + """
201 + Delete a Wazuh stack for a customer.
202 +
203 + Args:
204 + request (ProvisionNewCustomer): The request object.
205 +
206 + Returns:
207 + dict: The response object.
208 + """
209 + return await delete_wazuh_customer_stack(stack_id)
backend/app/connectors/portainer/schema/stack.py
+38 -2
@@ -1,3 +1,4 @@
1 +from enum import IntEnum
2 from typing import Any
3 from typing import List
4 from typing import Optional
@@ -5,7 +6,24 @@ from typing import Optional
6 from pydantic import BaseModel
7
8
8 -class ResourceControl(BaseModel):
9 +class StackStatus(IntEnum):
10 + """Enum for Portainer stack status values"""
11 +
12 + ACTIVE = 1
13 + DOWN = 2
14 + INACTIVE = 3
15 +
16 + @classmethod
17 + def _missing_(cls, value: int) -> "StackStatus":
18 + """Handle unknown status values"""
19 + return cls.INACTIVE
20 +
21 + def __str__(self) -> str:
22 + """Return human-readable status"""
23 + return self.name.title()
24 +
25 +
26 +class ResourceControlResponse(BaseModel):
27 Id: int
28 ResourceId: str
29 SubResourceIds: List[str]
@@ -25,7 +43,7 @@ class StackData(BaseModel):
43 SwarmId: str
44 EntryPoint: str
45 Env: List[Any]
28 - ResourceControl: ResourceControl
46 + ResourceControl: Optional[ResourceControlResponse] = None
47 Status: int
48 ProjectPath: str
49 CreationDate: int
@@ -45,3 +63,21 @@ class StackResponse(BaseModel):
63 data: StackData
64 success: bool
65 message: str
66 +
67 +
68 +class StacksResponse(BaseModel):
69 + data: List[StackData]
70 + success: bool
71 + message: str
72 +
73 +
74 +class DeleteStackResponse(BaseModel):
75 + data: Optional[Any] = None
76 + success: bool
77 + message: str
78 +
79 +
80 +class StackIDResponse(BaseModel):
81 + stack_id: int
82 + success: bool
83 + message: str
backend/app/connectors/portainer/services/stack.py
+225 -23
@@ -1,48 +1,250 @@
1 from pathlib import Path
2 +from typing import Any
3 +from typing import Dict
4
5 +from fastapi import HTTPException
6 from loguru import logger
7
8 from app.agents.routes.agents import get_wazuh_manager_version
9 +from app.connectors.portainer.schema.stack import DeleteStackResponse
10 from app.connectors.portainer.schema.stack import StackResponse
11 +from app.connectors.portainer.schema.stack import StacksResponse
12 +from app.connectors.portainer.schema.stack import StackStatus
13 from app.connectors.portainer.utils.universal import get_endpoint_id
14 from app.connectors.portainer.utils.universal import get_swarm_id
15 +from app.connectors.portainer.utils.universal import send_delete_request
16 +from app.connectors.portainer.utils.universal import send_get_request
17 from app.connectors.portainer.utils.universal import send_post_request
18 from app.customer_provisioning.schema.provision import ProvisionNewCustomer
19
20
13 -async def create_wazuh_customer_stack(request: ProvisionNewCustomer) -> StackResponse:
21 +async def get_stacks() -> StackResponse:
22 """
15 - Create a Wazuh stack.
23 + Get the list of stacks from Portainer.
24 +
25 + Returns:
26 + StackResponse: The response from Portainer
27 + """
28 + response = await send_get_request("/api/stacks")
29 + logger.info(f"Stacks received: {response}")
30 + return StacksResponse(data=response["data"], message="Stacks fetched successfully", success=True)
31 +
32 +
33 +async def get_stack_details(stack_id: int) -> StackResponse:
34 + """
35 + Get the details of a stack from Portainer.
36 +
37 + Args:
38 + stack_id (int): The ID of the stack
39 +
40 + Returns:
41 + StackResponse: The response from Portainer
42 + """
43 + endpoint_id = await get_endpoint_id()
44 + response = await send_get_request(f"/api/stacks/{stack_id}?endpointId={endpoint_id}")
45 + logger.info(f"Stack details received: {response}")
46 + return StackResponse(**response)
47 +
48 +
49 +async def _load_stack_template(template_path: Path) -> str:
50 + """
51 + Load the stack template from file.
52 +
53 + Args:
54 + template_path (Path): Path to the template file
55 +
56 + Returns:
57 + str: Contents of the template file
58 + """
59 + with open(template_path, "r") as file:
60 + return file.read()
61 +
62 +
63 +async def _prepare_template_variables(request: ProvisionNewCustomer) -> Dict[str, str]:
64 + """
65 + Prepare variables for template replacement.
66 +
67 + Args:
68 + request (ProvisionNewCustomer): The customer provisioning request
69 +
70 + Returns:
71 + Dict[str, str]: Dictionary of template variables and their values
72 """
17 - logger.info(f"Creating Wazuh stack for customer {request.customer_name}")
73 formatted_customer_name = request.customer_name.replace(" ", "_")
74 wazuh_manager_version = await get_wazuh_manager_version()
20 - logger.info(f"Wazuh Manager version: {wazuh_manager_version}")
21 - # Get the template file from one directory up and under `templates` and the file is `wazuh_worker_stack.yml`
22 - template_path = Path(__file__).parent.parent / "templates" / "wazuh_worker_stack.yml"
23 - with open(template_path, "r") as file:
24 - template = file.read()
75
26 - # Replace the placeholders in the template with the actual values
27 - template = template.replace("{{ wazuh_worker_customer_code }}", formatted_customer_name)
28 - template = template.replace("{{ wazuh_manager_version }}", wazuh_manager_version)
29 - template = template.replace("REPLACE_LOG", request.wazuh_logs_port)
30 - template = template.replace("REPLACE_REGISTRATION", request.wazuh_registration_port)
31 - template = template.replace("REPLACE_API", request.wazuh_api_port)
32 - logger.info(f"Template: {template}")
76 + return {
77 + "{{ wazuh_worker_customer_code }}": formatted_customer_name,
78 + "{{ wazuh_manager_version }}": wazuh_manager_version,
79 + "REPLACE_LOG": request.wazuh_logs_port,
80 + "REPLACE_REGISTRATION": request.wazuh_registration_port,
81 + "REPLACE_API": request.wazuh_api_port,
82 + "customer_name": formatted_customer_name,
83 + }
84
34 - endpoint_id = await get_endpoint_id()
35 - logger.info(f"Endpoint ID: {endpoint_id}")
36 - swarm_id = await get_swarm_id()
37 - logger.info(f"Swarm ID: {swarm_id}")
85
39 - create_stack_url = f"/api/stacks?type=1&method=string&endpointId={endpoint_id}"
40 - payload = {
41 - "Name": f"wazuh-worker-{formatted_customer_name}",
86 +async def _create_stack_payload(template: str, variables: Dict[str, str], swarm_id: str) -> Dict[str, Any]:
87 + """
88 + Create the payload for stack creation.
89 +
90 + Args:
91 + template (str): The processed template
92 + variables (Dict[str, str]): Template variables
93 + swarm_id (str): The swarm ID
94 +
95 + Returns:
96 + Dict[str, Any]: The payload for stack creation
97 + """
98 + return {
99 + "Name": f"wazuh-worker-{variables['customer_name']}",
100 "StackFileContent": template,
101 "SwarmID": swarm_id,
102 "Env": [],
103 }
104 +
105 +
106 +async def create_wazuh_customer_stack(request: ProvisionNewCustomer) -> StackResponse:
107 + """
108 + Create a Wazuh stack for a customer.
109 +
110 + Args:
111 + request (ProvisionNewCustomer): The customer provisioning request
112 +
113 + Returns:
114 + StackResponse: The response from Portainer stack creation
115 + """
116 + logger.info(f"Creating Wazuh stack for customer {request.customer_name}")
117 +
118 + # Load template
119 + template_path = Path(__file__).parent.parent / "templates" / "wazuh_worker_stack.yml"
120 + template = await _load_stack_template(template_path)
121 +
122 + # Prepare variables
123 + variables = await _prepare_template_variables(request)
124 + logger.info(f"Template variables prepared for customer: {variables['customer_name']}")
125 +
126 + # Process template
127 + for placeholder, value in variables.items():
128 + template = template.replace(placeholder, value)
129 + logger.info("Template processed with variables")
130 +
131 + # Get required IDs
132 + endpoint_id = await get_endpoint_id()
133 + swarm_id = await get_swarm_id()
134 + logger.info(f"Retrieved endpoint ID: {endpoint_id} and swarm ID: {swarm_id}")
135 +
136 + # Create and send request
137 + create_stack_url = f"/api/stacks?type=1&method=string&endpointId={endpoint_id}"
138 + payload = await _create_stack_payload(template, variables, swarm_id)
139 +
140 response = await send_post_request(endpoint=create_stack_url, data=payload)
47 - logger.info(f"Response: {response}")
141 + logger.info(f"Stack creation response received: {response}")
142 +
143 return StackResponse(**response)
144 +
145 +
146 +async def start_wazuh_customer_stack(stack_id: int) -> StackResponse:
147 + """
148 + Start a Wazuh stack for a customer.
149 +
150 + Args:
151 + stack_id (int): The ID of the stack to start
152 +
153 + Returns:
154 + StackResponse: The response from Portainer stack start
155 +
156 + Raises:
157 + HTTPException: If the stack is already active or in an unexpected state
158 + """
159 + logger.info(f"Checking status of stack {stack_id} before starting")
160 +
161 + # Get current stack status
162 + stack_details = await get_stack_details(stack_id)
163 +
164 + # Check if stack is already active
165 + if stack_details.data.Status == StackStatus.ACTIVE:
166 + logger.info(f"Stack {stack_id} is already active")
167 + return stack_details
168 +
169 + # If stack is stopped, proceed with starting it
170 + if stack_details.data.Status == StackStatus.DOWN:
171 + logger.info(f"Starting stopped stack {stack_id}")
172 + endpoint_id = await get_endpoint_id()
173 +
174 + # Create and send request
175 + start_stack_url = f"/api/stacks/{stack_id}/start?endpointId={endpoint_id}"
176 + response = await send_post_request(endpoint=start_stack_url)
177 + logger.info(f"Stack start response received: {response}")
178 +
179 + return StackResponse(**response)
180 +
181 + # If stack is in any other state
182 + logger.warning(f"Stack {stack_id} is in an unexpected state: {stack_details.data.Status}")
183 + raise HTTPException(status_code=400, detail=f"Unexpected stack status: {stack_details.data.Status}")
184 +
185 +
186 +async def stop_wazuh_customer_stack(stack_id: int) -> StackResponse:
187 + """
188 + Stop a Wazuh stack for a customer.
189 +
190 + Args:
191 + stack_id (int): The ID of the stack to stop
192 +
193 + Returns:
194 + StackResponse: The response from Portainer stack stop
195 +
196 + Raises:
197 + HTTPException: If the stack is already stopped
198 + """
199 + logger.info(f"Checking status of stack {stack_id} before stopping")
200 +
201 + # Get current stack status
202 + stack_details = await get_stack_details(stack_id)
203 +
204 + # Check if stack is already stopped
205 + if stack_details.data.Status == StackStatus.DOWN:
206 + logger.info(f"Stack {stack_id} is already stopped")
207 + return stack_details
208 +
209 + # If stack is active, proceed with stopping it
210 + if stack_details.data.Status == StackStatus.ACTIVE:
211 + logger.info(f"Stopping active stack {stack_id}")
212 + endpoint_id = await get_endpoint_id()
213 +
214 + # Create and send request
215 + stop_stack_url = f"/api/stacks/{stack_id}/stop?endpointId={endpoint_id}"
216 + response = await send_post_request(endpoint=stop_stack_url)
217 + logger.info(f"Stack stop response received: {response}")
218 +
219 + return StackResponse(**response)
220 +
221 + # If stack is in any other state
222 + logger.warning(f"Stack {stack_id} is in an unexpected state: {stack_details.data.Status}")
223 + raise HTTPException(status_code=400, detail=f"Unexpected stack status: {stack_details.data.Status}")
224 +
225 +
226 +async def delete_wazuh_customer_stack(stack_id: int) -> DeleteStackResponse:
227 + """
228 + Delete a Wazuh stack for a customer.
229 +
230 + Args:
231 + request (ProvisionNewCustomer): The customer provisioning request
232 +
233 + Returns:
234 + DeleteStackResponse: The response from Portainer stack deletion
235 + """
236 + logger.info(f"Deleting Wazuh stack for stack id {stack_id}")
237 +
238 + # Get required IDs
239 + endpoint_id = await get_endpoint_id()
240 + logger.info(f"Retrieved endpoint ID: {endpoint_id} and stack ID: {stack_id}")
241 +
242 + # Stop the stack first
243 + await stop_wazuh_customer_stack(stack_id)
244 +
245 + # Create and send request
246 + delete_stack_url = f"/api/stacks/{stack_id}"
247 + response = await send_delete_request(endpoint=delete_stack_url, params={"endpointId": endpoint_id})
248 + logger.info(f"Stack deletion response received: {response}")
249 +
250 + return DeleteStackResponse(**response)
backend/app/connectors/portainer/utils/universal.py
+98 -28
@@ -6,9 +6,12 @@ from urllib.parse import urljoin
6 import requests
7 from fastapi import HTTPException
8 from loguru import logger
9 +from sqlalchemy.ext.asyncio import AsyncSession
10 +from sqlalchemy.future import select
11
12 from app.connectors.utils import get_connector_info_from_db
13 from app.db.db_session import get_db_session
14 +from app.db.universal_models import CustomersMeta
15
16
17 async def get_endpoint_id() -> int:
@@ -17,7 +20,6 @@ async def get_endpoint_id() -> int:
20 """
21 logger.info("Getting endpoint ID")
22 list_endpoints = await send_get_request("/api/endpoints")
20 - logger.info(f"List of endpoints: {list_endpoints}")
23
24 for endpoint in list_endpoints["data"]:
25 if endpoint["Name"] == "local":
@@ -34,7 +36,6 @@ async def get_swarm_id() -> int:
36 endpoint_id = await get_endpoint_id()
37 logger.info(f"Endpoint ID: {endpoint_id}")
38 swarm_id = await send_get_request(f"/api/endpoints/{endpoint_id}/docker/swarm")
37 - logger.info(f"Swarm ID: {swarm_id}")
39 return swarm_id["data"]["ID"]
40
41
@@ -43,7 +44,6 @@ async def get_portainer_jwt() -> str:
44 logger.info("Getting portainer authentication token")
45 async with get_db_session() as session: # This will correctly enter the context manager
46 attributes = await get_connector_info_from_db("Portainer", session)
46 - logger.info(f"Attributes: {attributes}")
47 try:
48 auth_endpoint = urljoin(attributes["connector_url"], "/api/auth")
49
@@ -54,7 +54,7 @@ async def get_portainer_jwt() -> str:
54 response.raise_for_status()
55 # The JWT token is in response.json()["jwt"]
56 jwt_token = response.json()["jwt"]
57 - logger.info(f"Authenticated with Portainer, obtained JWT: {jwt_token}")
57 + logger.info(f"Authenticated with Portainer. JWT token: {jwt_token}")
58 return jwt_token
59
60 except requests.exceptions.RequestException as e:
@@ -155,21 +155,19 @@ async def send_get_request(
155 if attributes is None:
156 logger.error("No portainer connector found in the database")
157 return None
158 - logger.info(f"Attributes: {attributes}")
158 jwt_token = await get_portainer_jwt()
160 - logger.info(f"JWT token: {jwt_token}")
159 try:
160 HEADERS = {
161 "Authorization": f"Bearer {jwt_token}",
162 "Content-Type": "application/json",
163 }
164 + logger.info(f"Sending GET request to {attributes['connector_url']}{endpoint}")
165 response = requests.get(
166 f"{attributes['connector_url']}{endpoint}",
167 headers=HEADERS,
168 params=params,
169 verify=False,
170 )
172 - logger.info(f"Response from portainer API: {response.json()}")
171 return {
172 "data": response.json(),
173 "success": True,
@@ -209,9 +207,7 @@ async def send_post_request(
207 if attributes is None:
208 logger.error("No portainer connector found in the database")
209 return None
212 - logger.info(f"Attributes: {attributes}")
210 jwt_token = await get_portainer_jwt()
214 - logger.info(f"JWT token: {jwt_token}")
211
212 try:
213 HEADERS = {
@@ -251,56 +247,70 @@ async def send_post_request(
247 }
248
249
254 -def send_delete_request(
250 +async def send_delete_request(
251 endpoint: str,
252 params: Optional[Dict[str, Any]] = None,
257 - connector_name: str = "portainer",
253 + connector_name: str = "Portainer",
254 ) -> Dict[str, Any]:
255 """
260 - Sends a DELETE request to the portainer service.
256 + Sends a DELETE request to the Portainer service.
257
258 Args:
259 endpoint (str): The endpoint to send the DELETE request to.
260 params (Optional[Dict[str, Any]], optional): The parameters to send with the DELETE request. Defaults to None.
265 - connector_name (str, optional): The name of the connector to use. Defaults to "portainer".
261 + connector_name (str, optional): The name of the connector to use. Defaults to "Portainer".
262
263 Returns:
264 Dict[str, Any]: The response from the DELETE request.
265 """
266 logger.info(f"Sending DELETE request to {endpoint}")
271 - attributes = get_connector_info_from_db(connector_name)
267 + async with get_db_session() as session:
268 + attributes = await get_connector_info_from_db(connector_name, session)
269 if attributes is None:
270 logger.error("No portainer connector found in the database")
271 return None
272 +
273 + jwt_token = await get_portainer_jwt()
274 try:
275 HEADERS = {
277 - "Authorization": f"Bearer {attributes['connector_api_key']}",
276 + "Authorization": f"Bearer {jwt_token}",
277 + "Content-Type": "application/json",
278 }
279 response = requests.delete(
280 f"{attributes['connector_url']}{endpoint}",
281 headers=HEADERS,
282 - auth=(
283 - attributes["connector_username"],
284 - attributes["connector_password"],
285 - ),
282 params=params,
283 verify=False,
284 )
289 - return {
290 - "data": response.json(),
291 - "success": True,
292 - "message": "Successfully retrieved data",
293 - }
285 +
286 + # Check if response is empty or not JSON
287 + if response.status_code == 204 or not response.text.strip():
288 + return {
289 + "data": None,
290 + "success": True,
291 + "message": "Successfully deleted resource",
292 + }
293 +
294 + try:
295 + return {
296 + "data": response.json(),
297 + "success": True,
298 + "message": "Successfully retrieved data",
299 + }
300 + except ValueError:
301 + # Response is not JSON
302 + return {
303 + "data": None,
304 + "success": True if response.status_code < 400 else False,
305 + "message": f"Delete operation completed with status code {response.status_code}",
306 + }
307 +
308 except Exception as e:
309 logger.error(f"Failed to send DELETE request to {endpoint} with error: {e}")
310 raise HTTPException(
311 status_code=500,
312 detail=f"Failed to send DELETE request to {endpoint} with error: {e}",
313 )
300 - return {
301 - "success": False,
302 - "message": f"Failed to send DELETE request to {endpoint} with error: {e}",
303 - }
314
315
316 def send_put_request(
@@ -349,3 +359,63 @@ def send_put_request(
359 status_code=500,
360 detail=f"Failed to send PUT request to {endpoint} with error: {e}",
361 )
362 +
363 +
364 +async def get_customer_portainer_stack_id(customer_name: str, session: AsyncSession) -> int:
365 + """
366 + Get the Portainer stack ID for a customer.
367 +
368 + Args:
369 + customer_name (str): The name of the customer.
370 + session (AsyncSession): The database session.
371 +
372 + Returns:
373 + int: The Portainer stack ID.
374 +
375 + Raises:
376 + HTTPException: If the customer is not found or has no stack ID
377 + """
378 + logger.info(f"Getting Portainer stack ID for customer {customer_name}")
379 +
380 + # Get customer metadata
381 + stmt = select(CustomersMeta).where(CustomersMeta.customer_name == customer_name)
382 + result = await session.execute(stmt)
383 + customer_meta = result.scalar_one_or_none()
384 +
385 + if customer_meta is None:
386 + logger.error(f"Customer {customer_name} not found in database")
387 + raise HTTPException(status_code=404, detail=f"Customer {customer_name} not found in database")
388 +
389 + if not customer_meta.customer_meta_portainer_stack_id:
390 + logger.error(f"No Portainer stack ID found for customer {customer_name}")
391 + raise HTTPException(status_code=404, detail=f"No Portainer stack ID found for customer {customer_name}")
392 +
393 + logger.info(f"Found Portainer stack ID {customer_meta.customer_meta_portainer_stack_id} for customer {customer_name}")
394 + return customer_meta.customer_meta_portainer_stack_id
395 +
396 +
397 +async def update_customer_portainer_stack_id(customer_name: str, stack_id: int, session: AsyncSession) -> None:
398 + """
399 + Update the Portainer stack ID for a customer.
400 +
401 + Args:
402 + customer_name (str): The name of the customer.
403 + stack_id (int): The Portainer stack ID.
404 + session (AsyncSession): The database session.
405 + """
406 + logger.info(f"Updating Portainer stack ID for customer {customer_name} to {stack_id}")
407 +
408 + # Get customer metadata
409 + stmt = select(CustomersMeta).where(CustomersMeta.customer_name == customer_name)
410 + result = await session.execute(stmt)
411 + customer_meta = result.scalar_one_or_none()
412 +
413 + if customer_meta is None:
414 + logger.error(f"Customer {customer_name} not found in database")
415 + raise HTTPException(status_code=404, detail=f"Customer {customer_name} not found in database")
416 +
417 + customer_meta.customer_meta_portainer_stack_id = stack_id
418 + await session.commit()
419 +
420 + logger.info(f"Updated Portainer stack ID for customer {customer_name} to {stack_id}")
421 + return stack_id
backend/app/customer_provisioning/schema/provision.py
+14
@@ -102,6 +102,10 @@ class ProvisionNewCustomer(BaseModel):
102 False,
103 description="Whether to provision an HAProxy for the customer",
104 )
105 + portainer_deployment: Optional[bool] = Field(
106 + None,
107 + description="Whether deployment of Portainer is occurring",
108 + )
109
110 @validator("customer_index_name")
111 def validate_customer_index_name(cls, v):
@@ -199,6 +203,16 @@ class ProvisionHaProxyRequest(BaseModel):
203 example="worker1",
204 description="The hostname of the Wazuh worker",
205 )
206 + portainer_deployment: Optional[bool] = Field(
207 + None,
208 + example=True,
209 + description="Whether deployment of Portainer is occurring",
210 + )
211 + swarm_nodes: Optional[List[str]] = Field(
212 + None,
213 + example=["127.0.0.1"],
214 + description="The IP addresses of the swarm nodes",
215 + )
216
217
218 class ProvisionDashboardRequest(BaseModel):
backend/app/customer_provisioning/schema/wazuh_worker.py
+21
@@ -1,3 +1,4 @@
1 +from typing import List
2 from typing import Optional
3
4 from pydantic import BaseModel
@@ -50,6 +51,21 @@ class ProvisionWorkerRequest(BaseModel):
51 example="worker1",
52 description="The hostname of the Wazuh worker",
53 )
54 + portainer_deployment: Optional[bool] = Field(
55 + None,
56 + example=True,
57 + description="Whether deployment of Portainer is occurring",
58 + )
59 + swarm_nodes: Optional[List[str]] = Field(
60 + None,
61 + example=["127.0.0.1"],
62 + description="The IP addresses of the swarm nodes",
63 + )
64 + wazuh_manager_version: Optional[str] = Field(
65 + None,
66 + example="4.10.1",
67 + description="The version of the Wazuh manager",
68 + )
69
70
71 class ProvisionWorkerResponse(BaseModel):
@@ -71,6 +87,11 @@ class DecommissionWorkerRequest(BaseModel):
87 example="SOCFortress",
88 description="The name of the customer",
89 )
90 + portainer_deployment: Optional[bool] = Field(
91 + None,
92 + example=True,
93 + description="Whether deployment of Portainer is occurring",
94 + )
95
96
97 class DecommissionWorkerResponse(BaseModel):
backend/app/customer_provisioning/services/decommission.py
+133 -28
@@ -1,13 +1,19 @@
1 import requests
2 +from fastapi import HTTPException
3 from loguru import logger
4 +from sqlalchemy import update
5 from sqlalchemy.ext.asyncio import AsyncSession
6 +from sqlalchemy.future import select
7
8 +from app.connectors.portainer.services.stack import delete_wazuh_customer_stack
9 +from app.connectors.utils import is_connector_verified
10 from app.customer_provisioning.schema.decommission import DecommissionCustomerResponse
11 from app.customer_provisioning.schema.wazuh_worker import DecommissionWorkerRequest
12 from app.customer_provisioning.schema.wazuh_worker import DecommissionWorkerResponse
13 from app.customer_provisioning.services.grafana import delete_grafana_organization
14 from app.customer_provisioning.services.graylog import delete_index_set
15 from app.customer_provisioning.services.graylog import delete_stream
16 +from app.customer_provisioning.services.portainer import list_node_ips
17 from app.customer_provisioning.services.wazuh_manager import delete_wazuh_agents
18 from app.customer_provisioning.services.wazuh_manager import delete_wazuh_groups
19 from app.customer_provisioning.services.wazuh_manager import gather_wazuh_agents
@@ -15,6 +21,75 @@ from app.db.universal_models import CustomersMeta
21 from app.utils import get_connector_attribute
22
23
24 +async def get_customer_portainer_stack_id(
25 + customer_name: str,
26 + session: AsyncSession,
27 +) -> int:
28 + """
29 + Get the customer's Portainer stack ID from the CustomersMeta table.
30 +
31 + Args:
32 + customer_name (str): The name of the customer
33 + session (AsyncSession): The database session
34 +
35 + Returns:
36 + int: The Portainer stack ID for the customer
37 +
38 + Raises:
39 + HTTPException: If the customer is not found or has no stack ID
40 + """
41 + logger.info(f"Getting Portainer stack ID for customer {customer_name}")
42 +
43 + # Find the customer record
44 + stmt = select(CustomersMeta).where(CustomersMeta.customer_name == customer_name)
45 + result = await session.execute(stmt)
46 + customer = result.scalar_one_or_none()
47 +
48 + if not customer:
49 + logger.error(f"Customer {customer_name} not found in database")
50 + raise HTTPException(status_code=404, detail=f"Customer {customer_name} not found in database")
51 +
52 + if not customer.customer_meta_portainer_stack_id:
53 + logger.error(f"No Portainer stack ID found for customer {customer_name}")
54 + raise HTTPException(status_code=404, detail=f"No Portainer stack ID found for customer {customer_name}")
55 +
56 + logger.info(f"Found Portainer stack ID {customer.customer_meta_portainer_stack_id} for customer {customer_name}")
57 + return customer.customer_meta_portainer_stack_id
58 +
59 +
60 +async def clear_customer_portainer_stack_id(
61 + customer_name: str,
62 + session: AsyncSession,
63 +) -> None:
64 + """
65 + Clear the customer's Portainer stack ID in the CustomersMeta table by setting it to None.
66 +
67 + Args:
68 + customer_name (str): The name of the customer
69 + session (AsyncSession): The database session
70 +
71 + Raises:
72 + HTTPException: If the customer is not found in the database
73 + """
74 + logger.info(f"Clearing Portainer stack ID for customer {customer_name}")
75 +
76 + # Find the customer record
77 + stmt = select(CustomersMeta).where(CustomersMeta.customer_name == customer_name)
78 + result = await session.execute(stmt)
79 + customer = result.scalar_one_or_none()
80 +
81 + if not customer:
82 + logger.error(f"Customer {customer_name} not found in database")
83 + raise HTTPException(status_code=404, detail=f"Customer {customer_name} not found in database")
84 +
85 + # Update the customer's Portainer stack ID to None
86 + stmt = update(CustomersMeta).where(CustomersMeta.customer_name == customer_name).values(customer_meta_portainer_stack_id=None)
87 + await session.execute(stmt)
88 + await session.commit()
89 +
90 + logger.info(f"Successfully cleared Portainer stack ID for customer {customer_name}")
91 +
92 +
93 async def decomission_wazuh_customer(
94 customer_meta: CustomersMeta,
95 session: AsyncSession,
@@ -104,41 +179,71 @@ async def decommission_wazuh_worker(
179 ProvisionWorkerResponse: The response object indicating the success or failure of the provisioning operation.
180 """
181 logger.info(f"Decommissioning Wazuh worker {request}")
107 - # Check if the connector is verified
108 - if (
109 - await get_connector_attribute(
182 + if await is_connector_verified(connector_name="Portainer", db=session) is False:
183 + # Check if the connector is verified
184 + if (
185 + await get_connector_attribute(
186 + connector_name="Wazuh Worker Provisioning",
187 + column_name="connector_verified",
188 + session=session,
189 + )
190 + is False
191 + ):
192 + logger.info("Wazuh Worker Provisioning connector is not verified, skipping ...")
193 + return DecommissionWorkerResponse(
194 + success=False,
195 + message="Wazuh Worker Provisioning connector is not verified",
196 + )
197 + api_endpoint = await get_connector_attribute(
198 connector_name="Wazuh Worker Provisioning",
111 - column_name="connector_verified",
199 + column_name="connector_url",
200 session=session,
201 )
114 - is False
115 - ):
116 - logger.info("Wazuh Worker Provisioning connector is not verified, skipping ...")
202 + # Send the POST request to the Wazuh worker
203 + request.portainer_deployment = False
204 + response = requests.post(
205 + url=f"{api_endpoint}/provision_worker/decommission",
206 + json=request.dict(),
207 + )
208 + # Check the response status code
209 + if response.status_code != 200:
210 + return DecommissionWorkerResponse(
211 + success=False,
212 + message=f"Failed to provision Wazuh worker: {response.text}",
213 + )
214 + # Return the response
215 return DecommissionWorkerResponse(
118 - success=False,
119 - message="Wazuh Worker Provisioning connector is not verified",
216 + success=True,
217 + message="Wazuh worker provisioned successfully",
218 )
121 - api_endpoint = await get_connector_attribute(
122 - connector_name="Wazuh Worker Provisioning",
123 - column_name="connector_url",
124 - session=session,
125 - )
126 - # Send the POST request to the Wazuh worker
127 - response = requests.post(
128 - url=f"{api_endpoint}/provision_worker/decommission",
129 - json=request.dict(),
130 - )
131 - # Check the response status code
132 - if response.status_code != 200:
219 + else:
220 + request.portainer_deployment = True
221 + # ! Delete the stack via Portainer first then clean up the file system on the worker node ! #
222 + # Delete the stack and get the response
223 + await delete_wazuh_customer_stack(stack_id=await get_customer_portainer_stack_id(request.customer_name, session))
224 +
225 + # Clear the stack ID from the database
226 + await clear_customer_portainer_stack_id(request.customer_name, session)
227 +
228 + swarm_node_ips = await list_node_ips()
229 + logger.info(f"Invoking the customer provisioning application on the swarm node IPs: {swarm_node_ips}")
230 + for ip in swarm_node_ips:
231 + logger.info(f"Provisioning Wazuh worker on IP: {ip}")
232 + response = requests.post(
233 + url=f"http://{ip}:5003/provision_worker/decommission",
234 + json=request.dict(),
235 + )
236 + logger.info(f"Status code from Wazuh Worker: {response.status_code}")
237 + if response.status_code != 200:
238 + return DecommissionWorkerResponse(
239 + success=False,
240 + message=f"Failed to provision Wazuh worker: {response.text}",
241 + )
242 +
243 return DecommissionWorkerResponse(
134 - success=False,
135 - message=f"Failed to provision Wazuh worker: {response.text}",
244 + success=True,
245 + message="Wazuh worker decommissioned successfully",
246 )
137 - # Return the response
138 - return DecommissionWorkerResponse(
139 - success=True,
140 - message="Wazuh worker provisioned successfully",
141 - )
247
248
249 ######### ! Decommission HAProxy ! ############
backend/app/customer_provisioning/services/portainer.py new
+9
@@ -0,0 +1,9 @@
1 +from app.connectors.portainer.services.nodes import get_node_details
2 +
3 +
4 +async def list_node_ips() -> list:
5 + """
6 + Get the node IPs from the Portainer API.
7 + """
8 + nodes = await get_node_details()
9 + return [node.Status.Addr for node in nodes.nodes]
backend/app/customer_provisioning/services/provision.py
+135 -41
@@ -3,14 +3,19 @@ from typing import Callable
3 import requests
4 from fastapi import HTTPException
5 from loguru import logger
6 +from sqlalchemy import update
7 from sqlalchemy.ext.asyncio import AsyncSession
8 +from sqlalchemy.future import select
9
10 from app.agents.routes.agents import check_wazuh_manager_version
11 +from app.agents.routes.agents import get_wazuh_manager_version
12 from app.connectors.grafana.schema.dashboards import DashboardProvisionRequest
13 from app.connectors.grafana.services.dashboards import provision_dashboards
14 from app.connectors.grafana.utils.universal import verify_grafana_connection
15 from app.connectors.graylog.services.management import start_stream
16 from app.connectors.graylog.utils.universal import verify_graylog_connection
17 +from app.connectors.portainer.services.stack import create_wazuh_customer_stack
18 +from app.connectors.utils import is_connector_verified
19 from app.connectors.wazuh_manager.utils.universal import verify_wazuh_manager_connection
20 from app.customer_provisioning.schema.graylog import StreamConnectionToPipelineRequest
21 from app.customer_provisioning.schema.provision import CustomerProvisionMeta
@@ -27,6 +32,7 @@ from app.customer_provisioning.services.graylog import connect_stream_to_pipelin
32 from app.customer_provisioning.services.graylog import create_event_stream
33 from app.customer_provisioning.services.graylog import create_index_set
34 from app.customer_provisioning.services.graylog import get_pipeline_id
35 +from app.customer_provisioning.services.portainer import list_node_ips
36 from app.customer_provisioning.services.wazuh_manager import apply_group_configurations
37 from app.customer_provisioning.services.wazuh_manager import create_wazuh_groups
38 from app.db.universal_models import CustomersMeta
@@ -225,6 +231,37 @@ async def update_customer_meta_table(
231 return customer_meta
232
233
234 +async def update_customer_portainer_stack_id(
235 + customer_name: str,
236 + stack_id: int,
237 + session: AsyncSession,
238 +) -> None:
239 + """
240 + Update the customer's Portainer stack ID in the CustomersMeta table.
241 +
242 + Args:
243 + customer_name (str): The name of the customer
244 + stack_id (int): The Portainer stack ID
245 + session (AsyncSession): The database session
246 + """
247 + logger.info(f"Updating Portainer stack ID {stack_id} for customer {customer_name}")
248 +
249 + # Find the customer record
250 + stmt = select(CustomersMeta).where(CustomersMeta.customer_name == customer_name)
251 + result = await session.execute(stmt)
252 + customer = result.scalar_one_or_none()
253 +
254 + if customer:
255 + # Update the customer's Portainer stack ID
256 + stmt = update(CustomersMeta).where(CustomersMeta.customer_name == customer_name).values(customer_meta_portainer_stack_id=stack_id)
257 + await session.execute(stmt)
258 + await session.commit()
259 + logger.info(f"Successfully updated Portainer stack ID for customer {customer_name}")
260 + else:
261 + logger.error(f"Customer {customer_name} not found in database")
262 + raise HTTPException(status_code=404, detail=f"Customer {customer_name} not found in database")
263 +
264 +
265 ######### ! Update Customer Alert Settings Table ! ############
266 async def update_customer_alert_settings_table(
267 request: ProvisionNewCustomer,
@@ -268,6 +305,7 @@ async def provision_wazuh_worker(
305 ) -> ProvisionWorkerResponse:
306 """
307 Provisions a Wazuh worker. https://github.com/socfortress/Customer-Provisioning-Worker
308 + This can be done either by directly invoking the worker or by invoking the worker via Portainer.
309
310 Args:
311 request (ProvisionWorkerRequest): The request object containing the necessary information for provisioning.
@@ -277,29 +315,58 @@ async def provision_wazuh_worker(
315 ProvisionWorkerResponse: The response object indicating the success or failure of the provisioning operation.
316 """
317 logger.info(f"Provisioning Wazuh worker {request}")
280 - api_endpoint = await get_connector_attribute(
281 - connector_name="Wazuh Worker Provisioning",
282 - column_name="connector_url",
283 - session=session,
284 - )
285 - logger.info(f"Wazuh Worker API endpoint: {api_endpoint}")
286 - # Send the POST request to the Wazuh worker
287 - response = requests.post(
288 - url=f"{api_endpoint}/provision_worker",
289 - json=request.dict(),
290 - )
291 - logger.info(f"Status code from Wazuh Worker: {response.status_code}")
292 - # Check the response status code
293 - if response.status_code != 200:
318 + if await is_connector_verified(connector_name="Portainer", db=session) is False:
319 + api_endpoint = await get_connector_attribute(
320 + connector_name="Wazuh Worker Provisioning",
321 + column_name="connector_url",
322 + session=session,
323 + )
324 + logger.info(f"Wazuh Worker API endpoint: {api_endpoint}")
325 + # Send the POST request to the Wazuh worker
326 + request.portainer_deployment = False
327 + request.wazuh_manager_version = await get_wazuh_manager_version()
328 + response = requests.post(
329 + url=f"{api_endpoint}/provision_worker",
330 + json=request.dict(),
331 + )
332 + logger.info(f"Status code from Wazuh Worker: {response.status_code}")
333 + # Check the response status code
334 + if response.status_code != 200:
335 + return ProvisionWorkerResponse(
336 + success=False,
337 + message=f"Failed to provision Wazuh worker: {response.text}",
338 + )
339 + # Return the response
340 return ProvisionWorkerResponse(
295 - success=False,
296 - message=f"Failed to provision Wazuh worker: {response.text}",
341 + success=True,
342 + message="Wazuh worker provisioned successfully",
343 + )
344 + else:
345 + request.portainer_deployment = True
346 + swarm_node_ips = await list_node_ips()
347 + logger.info(f"Invoking the customer provisioning application on the swarm node IPs: {swarm_node_ips}")
348 + for ip in swarm_node_ips:
349 + logger.info(f"Provisioning Wazuh worker on IP: {ip}")
350 + response = requests.post(
351 + url=f"http://{ip}:5003/provision_worker",
352 + json=request.dict(),
353 + )
354 + logger.info(f"Status code from Wazuh Worker: {response.status_code}")
355 + if response.status_code != 200:
356 + return ProvisionWorkerResponse(
357 + success=False,
358 + message=f"Failed to provision Wazuh worker: {response.text}",
359 + )
360 + # Create the stack and get the response
361 + stack_response = await create_wazuh_customer_stack(request)
362 +
363 + # Update the customer's Portainer stack ID
364 + await update_customer_portainer_stack_id(customer_name=request.customer_name, stack_id=stack_response.data.Id, session=session)
365 +
366 + return ProvisionWorkerResponse(
367 + success=True,
368 + message="Wazuh worker provisioned successfully via Portainer",
369 )
298 - # Return the response
299 - return ProvisionWorkerResponse(
300 - success=True,
301 - message="Wazuh worker provisioned successfully",
302 - )
370
371
372 ######### ! Provision HAProxy ! ############
@@ -318,25 +385,52 @@ async def provision_haproxy(
385 ProvisionWorkerResponse: The response object indicating the success or failure of the provisioning operation.
386 """
387 logger.info(f"Provisioning HAProxy {request}")
321 - api_endpoint = await get_connector_attribute(
322 - connector_name="HAProxy Provisioning",
323 - column_name="connector_url",
324 - session=session,
325 - )
326 - logger.info(f"HAProxy API endpoint: {api_endpoint}")
327 - # Send the POST request to the Wazuh worker
328 - response = requests.post(
329 - url=f"{api_endpoint}/provision_worker/haproxy",
330 - json=request.dict(),
331 - )
332 - # Check the response status code
333 - if response.status_code != 200:
388 + if await is_connector_verified(connector_name="Portainer", db=session) is False:
389 + api_endpoint = await get_connector_attribute(
390 + connector_name="HAProxy Provisioning",
391 + column_name="connector_url",
392 + session=session,
393 + )
394 + logger.info(f"HAProxy API endpoint: {api_endpoint}")
395 + request.portainer_deployment = False
396 + # Send the POST request to the Wazuh worker
397 + response = requests.post(
398 + url=f"{api_endpoint}/provision_worker/haproxy",
399 + json=request.dict(),
400 + )
401 + # Check the response status code
402 + if response.status_code != 200:
403 + return ProvisionWorkerResponse(
404 + success=False,
405 + message=f"Failed to provision HAProxy: {response.text}",
406 + )
407 + # Return the response
408 return ProvisionWorkerResponse(
335 - success=False,
336 - message=f"Failed to provision HAProxy: {response.text}",
409 + success=True,
410 + message="HAProxy provisioned successfully",
411 + )
412 + else:
413 + request.portainer_deployment = True
414 + request.swarm_nodes = await list_node_ips()
415 + api_endpoint = await get_connector_attribute(
416 + connector_name="HAProxy Provisioning",
417 + column_name="connector_url",
418 + session=session,
419 + )
420 + logger.info(f"HAProxy API endpoint: {api_endpoint}")
421 + logger.info(f"Invoking the customer provisioning application on the swarm node IPs: {request.swarm_nodes}")
422 + response = requests.post(
423 + url=f"{api_endpoint}/provision_worker/haproxy",
424 + json=request.dict(),
425 + )
426 + # Check the response status code
427 + if response.status_code != 200:
428 + return ProvisionWorkerResponse(
429 + success=False,
430 + message=f"Failed to provision HAProxy: {response.text}",
431 + )
432 + # Return the response
433 + return ProvisionWorkerResponse(
434 + success=True,
435 + message="HAProxy provisioned successfully via Portainer",
436 )
338 - # Return the response
339 - return ProvisionWorkerResponse(
340 - success=True,
341 - message="HAProxy provisioned successfully",
342 - )
backend/app/customers/schema/customers.py
+4
@@ -93,6 +93,10 @@ class CustomerMetaRequestBody(BaseModel):
93 ...,
94 description="Wazuh auth password for the customer",
95 )
96 + customer_meta_portainer_stack_id: Optional[int] = Field(
97 + None,
98 + description="Portainer stack ID for the customer",
99 + )
100
101 class Config:
102 orm_mode = True
backend/app/db/universal_models.py
+2
@@ -63,6 +63,7 @@ class CustomersMeta(SQLModel, table=True):
63 customer_meta_wazuh_auth_password: Optional[str] = Field(max_length=1024)
64 customer_meta_iris_customer_id: Optional[int] = Field()
65 customer_meta_office365_organization_id: Optional[str] = Field(max_length=1024)
66 + customer_meta_portainer_stack_id: Optional[int] = Field()
67
68 # Link back to Customers
69 customer: Optional["Customers"] = Relationship(back_populates="meta")
@@ -83,6 +84,7 @@ class CustomersMeta(SQLModel, table=True):
84 self.customer_meta_wazuh_auth_password = customer_meta.customer_meta_wazuh_auth_password
85 self.customer_meta_iris_customer_id = customer_meta.customer_meta_iris_customer_id
86 self.customer_meta_office365_organization_id = customer_meta.customer_meta_office365_organization_id
87 + self.customer_meta_portainer_stack_id = customer_meta.customer_meta_portainer_stack_id
88
89
90 class Agents(SQLModel, table=True):
backend/app/integrations/modules/routes/carbonblack.py
+2 -2
@@ -50,12 +50,12 @@ async def get_collect_carbonblack_data(carbonblack_request, session, auth_keys):
50 integration="carbonblack",
51 customer_code=carbonblack_request.customer_code,
52 graylog_host=await get_connector_attribute(
53 - connector_id=14,
53 + connector_name="Event Shipper",
54 column_name="connector_url",
55 session=session,
56 ),
57 graylog_port=await get_connector_attribute(
58 - connector_id=14,
58 + connector_name="Event Shipper",
59 column_name="connector_extra_data",
60 session=session,
61 ),
backend/app/integrations/modules/routes/huntress.py
+2 -2
@@ -41,12 +41,12 @@ async def get_collect_huntress_data(huntress_request, session, auth_keys):
41 integration="huntress",
42 customer_code=huntress_request.customer_code,
43 graylog_host=await get_connector_attribute(
44 - connector_id=10,
44 + connector_name="Event Shipper",
45 column_name="connector_url",
46 session=session,
47 ),
48 graylog_port=await get_connector_attribute(
49 - connector_id=10,
49 + connector_name="Event Shipper",
50 column_name="connector_extra_data",
51 session=session,
52 ),
frontend/Dockerfile
+2 -2
@@ -16,7 +16,7 @@ RUN npm ci
16 COPY --chown=node . .
17
18 # Run the Vue.js project build
19 -RUN npm run build-only
19 +RUN npm run build:only
20
21 FROM node:21 as dev
22
@@ -32,7 +32,7 @@ USER node
32 # Set the working directory
33 WORKDIR /app
34
35 -CMD npm i && npm run start-vue
35 +CMD npm i && npm run start-frontend
36
37 FROM nginx:1.24.0-alpine
38
frontend/package-lock.json
+1302 -2574
@@ -13,9 +13,9 @@
13 "@fontsource/jetbrains-mono": "^5.1.2",
14 "@fontsource/lexend": "^5.1.2",
15 "@fontsource/public-sans": "^5.1.2",
16 - "@shikijs/markdown-it": "^2.1.0",
16 + "@shikijs/markdown-it": "^3.0.0",
17 "@tailwindcss/container-queries": "^0.1.1",
18 - "@vueuse/core": "^12.5.0",
18 + "@vueuse/core": "^12.7.0",
19 "axios": "^1.7.9",
20 "bytes": "^3.1.2",
21 "colord": "^2.9.3",
@@ -24,22 +24,22 @@
24 "echarts": "^5.6.0",
25 "file-saver": "^2.0.5",
26 "html-entities": "^2.5.2",
27 - "jose": "^5.9.6",
27 + "jose": "^6.0.6",
28 "js-md5": "^0.8.3",
29 "lodash": "^4.17.21",
30 "mitt": "^3.0.1",
31 "naive-ui": "^2.41.0",
32 - "nanoid": "^5.0.9",
32 + "nanoid": "^5.1.2",
33 "password-validator": "^5.3.0",
34 - "pinia": "^2.3.1",
34 + "pinia": "^3.0.1",
35 "pinia-plugin-persistedstate": "^4.2.0",
36 "secure-ls": "^2.0.0",
37 - "shiki": "^2.1.0",
37 + "shiki": "^3.0.0",
38 "validator": "^13.12.0",
39 "vue": "^3.5.13",
40 "vue-advanced-cropper": "^2.8.9",
41 "vue-highlight-words": "^3.0.1",
42 - "vue-i18n": "^11.0.1",
42 + "vue-i18n": "^11.1.1",
43 "vue-router": "^4.5.0",
44 "vue-sjv": "^0.0.6",
45 "vue3-apexcharts": "^1.8.0",
@@ -47,8 +47,8 @@
47 "vuedraggable": "^4.1.0"
48 },
49 "devDependencies": {
50 - "@antfu/eslint-config": "^4.1.0",
51 - "@clack/prompts": "^0.9.1",
50 + "@antfu/eslint-config": "^4.3.0",
51 + "@clack/prompts": "^0.10.0",
52 "@iconify/vue": "^4.3.0",
53 "@tsconfig/node20": "^20.1.4",
54 "@types/bytes": "^3.1.5",
@@ -56,42 +56,41 @@
56 "@types/fs-extra": "^11.0.4",
57 "@types/jsdom": "^21.1.7",
58 "@types/lodash": "^4.17.15",
59 - "@types/node": "^22.12.0",
59 + "@types/node": "^22.13.5",
60 "@types/validator": "^13.12.2",
61 "@vitejs/plugin-vue": "^5.2.1",
62 "@vitejs/plugin-vue-jsx": "^4.1.1",
63 "@vue/test-utils": "^2.4.6",
64 "@vue/tsconfig": "^0.7.0",
65 "autoprefixer": "^10.4.20",
66 - "cypress": "^14.0.1",
66 + "cypress": "^14.0.3",
67 "depcheck": "^1.4.7",
68 - "eslint": "^9.19.0",
68 + "eslint": "^9.21.0",
69 "flourite": "^1.3.0",
70 "fs-extra": "^11.3.0",
71 "jsdom": "^26.0.0",
72 "npm-run-all2": "^7.0.2",
73 - "postcss": "^8.5.1",
74 - "prettier": "^3.4.2",
73 + "postcss": "^8.5.3",
74 + "prettier": "^3.5.2",
75 "prettier-plugin-tailwindcss": "^0.6.11",
76 - "sass": "^1.83.4",
76 + "sass": "^1.85.1",
77 "start-server-and-test": "^2.0.10",
78 - "tailwind-config-viewer": "^2.0.4",
78 "tailwindcss": "^3.4.17",
80 - "taze": "^18.3.0",
81 - "type-fest": "^4.33.0",
79 + "taze": "^18.6.0",
80 + "type-fest": "^4.35.0",
81 "typescript": "~5.7.3",
83 - "vite": "^6.0.11",
82 + "vite": "^6.2.0",
83 "vite-bundle-visualizer": "^1.2.1",
85 - "vite-plugin-vue-devtools": "^7.7.1",
84 + "vite-plugin-vue-devtools": "^7.7.2",
85 "vite-svg-loader": "^5.1.0",
87 - "vitest": "^3.0.4",
88 - "vue-tsc": "^2.2.0"
86 + "vitest": "^3.0.7",
87 + "vue-tsc": "^2.2.4"
88 },
89 "engines": {
90 "node": ">=18.0.0"
91 },
92 "optionalDependencies": {
94 - "@rollup/rollup-linux-x64-gnu": "^4.30.1",
93 + "@rollup/rollup-linux-x64-gnu": "^4.34.8",
94 "treemate": "^0.3.11",
95 "vueuc": "^0.4.64"
96 }
@@ -131,47 +130,47 @@
130 }
131 },
132 "node_modules/@antfu/eslint-config": {
134 - "version": "4.1.0",
135 - "resolved": "https://registry.npmjs.org/@antfu/eslint-config/-/eslint-config-4.1.0.tgz",
136 - "integrity": "sha512-2yainF3mBykqzsxXbHYGuLwm60sRRzQqJdLJd2IfESIGkkIkQfUI3IEGTANGpdWSmiC9jhICP7Y8yY+TSKGUQg==",
133 + "version": "4.3.0",
134 + "resolved": "https://registry.npmjs.org/@antfu/eslint-config/-/eslint-config-4.3.0.tgz",
135 + "integrity": "sha512-x6jcUSkscXb63xEM8JekZlDALtsVETxSc19pu+DuEZjx4iv0J8gThRDMPsIolceTeSnyh9bfW4dlAGcfu2NLzg==",
136 "dev": true,
137 "license": "MIT",
138 "dependencies": {
139 "@antfu/install-pkg": "^1.0.0",
141 - "@clack/prompts": "^0.9.1",
140 + "@clack/prompts": "^0.10.0",
141 "@eslint-community/eslint-plugin-eslint-comments": "^4.4.1",
142 "@eslint/markdown": "^6.2.2",
144 - "@stylistic/eslint-plugin": "^3.0.0",
145 - "@typescript-eslint/eslint-plugin": "^8.21.0",
146 - "@typescript-eslint/parser": "^8.21.0",
147 - "@vitest/eslint-plugin": "^1.1.25",
148 - "eslint-config-flat-gitignore": "^1.0.0",
149 - "eslint-flat-config-utils": "^2.0.0",
150 - "eslint-merge-processors": "^1.0.0",
151 - "eslint-plugin-antfu": "^3.0.0",
152 - "eslint-plugin-command": "^3.0.0",
143 + "@stylistic/eslint-plugin": "^4.0.0",
144 + "@typescript-eslint/eslint-plugin": "^8.24.1",
145 + "@typescript-eslint/parser": "^8.24.1",
146 + "@vitest/eslint-plugin": "^1.1.31",
147 + "ansis": "^3.15.0",
148 + "cac": "^6.7.14",
149 + "eslint-config-flat-gitignore": "^2.1.0",
150 + "eslint-flat-config-utils": "^2.0.1",
151 + "eslint-merge-processors": "^2.0.0",
152 + "eslint-plugin-antfu": "^3.1.0",
153 + "eslint-plugin-command": "^3.1.0",
154 "eslint-plugin-import-x": "^4.6.1",
155 "eslint-plugin-jsdoc": "^50.6.3",
156 "eslint-plugin-jsonc": "^2.19.1",
157 "eslint-plugin-n": "^17.15.1",
158 "eslint-plugin-no-only-tests": "^3.3.0",
158 - "eslint-plugin-perfectionist": "^4.7.0",
159 + "eslint-plugin-perfectionist": "^4.9.0",
160 "eslint-plugin-regexp": "^2.7.0",
161 "eslint-plugin-toml": "^0.12.0",
161 - "eslint-plugin-unicorn": "^56.0.1",
162 + "eslint-plugin-unicorn": "^57.0.0",
163 "eslint-plugin-unused-imports": "^4.1.4",
164 "eslint-plugin-vue": "^9.32.0",
164 - "eslint-plugin-yml": "^1.16.0",
165 - "eslint-processor-vue-blocks": "^1.0.0",
166 - "globals": "^15.14.0",
165 + "eslint-plugin-yml": "^1.17.0",
166 + "eslint-processor-vue-blocks": "^2.0.0",
167 + "globals": "^15.15.0",
168 "jsonc-eslint-parser": "^2.4.0",
169 "local-pkg": "^1.0.0",
170 "parse-gitignore": "^2.0.0",
170 - "picocolors": "^1.1.1",
171 "toml-eslint-parser": "^0.10.0",
172 "vue-eslint-parser": "^9.4.3",
173 - "yaml-eslint-parser": "^1.2.3",
174 - "yargs": "^17.7.2"
173 + "yaml-eslint-parser": "^1.2.3"
174 },
175 "bin": {
176 "eslint-config": "bin/index.js"
@@ -252,9 +251,9 @@
251 }
252 },
253 "node_modules/@antfu/ni": {
255 - "version": "23.3.0",
256 - "resolved": "https://registry.npmjs.org/@antfu/ni/-/ni-23.3.0.tgz",
257 - "integrity": "sha512-H3avrIQMnmo8rJu9w62vE/c4WGgLCGemnBDg83pgdARIttKgyJpTOX5hQ4JFjeZ7fRfrzkRCCDg3vLxseH4Xtg==",
254 + "version": "23.3.1",
255 + "resolved": "https://registry.npmjs.org/@antfu/ni/-/ni-23.3.1.tgz",
256 + "integrity": "sha512-C90iyzm/jLV7Lomv2UzwWUzRv9WZr1oRsFRKsX5HjQL4EXrbi9H/RtBkjCP+NF+ABZXUKpAa4F1dkoTaea4zHg==",
257 "dev": true,
258 "license": "MIT",
259 "bin": {
@@ -268,9 +267,9 @@
267 }
268 },
269 "node_modules/@antfu/utils": {
271 - "version": "8.1.0",
272 - "resolved": "https://registry.npmjs.org/@antfu/utils/-/utils-8.1.0.tgz",
273 - "integrity": "sha512-XPR7Jfwp0FFl/dFYPX8ZjpmU4/1mIXTjnZ1ba48BLMyKOV62/tiRjdsFcPs2hsYcSud4tzk7w3a3LjX8Fu3huA==",
270 + "version": "8.1.1",
271 + "resolved": "https://registry.npmjs.org/@antfu/utils/-/utils-8.1.1.tgz",
272 + "integrity": "sha512-Mex9nXf9vR6AhcXmMrlz/HVgYYZpVGJ6YlPgwl7UnaFpnshXs6EK/oa5Gpf3CzENMjkvEx2tQtntGnb7UtSTOQ==",
273 "dev": true,
274 "license": "MIT",
275 "funding": {
@@ -313,30 +312,30 @@
312 }
313 },
314 "node_modules/@babel/compat-data": {
316 - "version": "7.26.5",
317 - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.26.5.tgz",
318 - "integrity": "sha512-XvcZi1KWf88RVbF9wn8MN6tYFloU5qX8KjuF3E1PVBmJ9eypXfs4GRiJwLuTZL0iSnJUKn1BFPa5BPZZJyFzPg==",
315 + "version": "7.26.8",
316 + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.26.8.tgz",
317 + "integrity": "sha512-oH5UPLMWR3L2wEFLnFJ1TZXqHufiTKAiLfqw5zkhS4dKXLJ10yVztfil/twG8EDTA4F/tvVNw9nOl4ZMslB8rQ==",
318 "license": "MIT",
319 "engines": {
320 "node": ">=6.9.0"
321 }
322 },
323 "node_modules/@babel/core": {
325 - "version": "7.26.7",
326 - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.26.7.tgz",
327 - "integrity": "sha512-SRijHmF0PSPgLIBYlWnG0hyeJLwXE2CgpsXaMOrtt2yp9/86ALw6oUlj9KYuZ0JN07T4eBMVIW4li/9S1j2BGA==",
324 + "version": "7.26.9",
325 + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.26.9.tgz",
326 + "integrity": "sha512-lWBYIrF7qK5+GjY5Uy+/hEgp8OJWOD/rpy74GplYRhEauvbHDeFB8t5hPOZxCZ0Oxf4Cc36tK51/l3ymJysrKw==",
327 "license": "MIT",
328 "dependencies": {
329 "@ampproject/remapping": "^2.2.0",
330 "@babel/code-frame": "^7.26.2",
332 - "@babel/generator": "^7.26.5",
331 + "@babel/generator": "^7.26.9",
332 "@babel/helper-compilation-targets": "^7.26.5",
333 "@babel/helper-module-transforms": "^7.26.0",
335 - "@babel/helpers": "^7.26.7",
336 - "@babel/parser": "^7.26.7",
337 - "@babel/template": "^7.25.9",
338 - "@babel/traverse": "^7.26.7",
339 - "@babel/types": "^7.26.7",
334 + "@babel/helpers": "^7.26.9",
335 + "@babel/parser": "^7.26.9",
336 + "@babel/template": "^7.26.9",
337 + "@babel/traverse": "^7.26.9",
338 + "@babel/types": "^7.26.9",
339 "convert-source-map": "^2.0.0",
340 "debug": "^4.1.0",
341 "gensync": "^1.0.0-beta.2",
@@ -361,13 +360,13 @@
360 }
361 },
362 "node_modules/@babel/generator": {
364 - "version": "7.26.5",
365 - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.26.5.tgz",
366 - "integrity": "sha512-2caSP6fN9I7HOe6nqhtft7V4g7/V/gfDsC3Ag4W7kEzzvRGKqiv0pu0HogPiZ3KaVSoNDhUws6IJjDjpfmYIXw==",
363 + "version": "7.26.9",
364 + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.26.9.tgz",
365 + "integrity": "sha512-kEWdzjOAUMW4hAyrzJ0ZaTOu9OmpyDIQicIh0zg0EEcEkYXZb2TjtBhnHi2ViX7PKwZqF4xwqfAm299/QMP3lg==",
366 "license": "MIT",
367 "dependencies": {
369 - "@babel/parser": "^7.26.5",
370 - "@babel/types": "^7.26.5",
368 + "@babel/parser": "^7.26.9",
369 + "@babel/types": "^7.26.9",
370 "@jridgewell/gen-mapping": "^0.3.5",
371 "@jridgewell/trace-mapping": "^0.3.25",
372 "jsesc": "^3.0.2"
@@ -415,18 +414,18 @@
414 }
415 },
416 "node_modules/@babel/helper-create-class-features-plugin": {
418 - "version": "7.25.9",
419 - "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.25.9.tgz",
420 - "integrity": "sha512-UTZQMvt0d/rSz6KI+qdu7GQze5TIajwTS++GUozlw8VBJDEOAqSXwm1WvmYEZwqdqSGQshRocPDqrt4HBZB3fQ==",
417 + "version": "7.26.9",
418 + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.26.9.tgz",
419 + "integrity": "sha512-ubbUqCofvxPRurw5L8WTsCLSkQiVpov4Qx0WMA+jUN+nXBK8ADPlJO1grkFw5CWKC5+sZSOfuGMdX1aI1iT9Sg==",
420 "dev": true,
421 "license": "MIT",
422 "dependencies": {
423 "@babel/helper-annotate-as-pure": "^7.25.9",
424 "@babel/helper-member-expression-to-functions": "^7.25.9",
425 "@babel/helper-optimise-call-expression": "^7.25.9",
427 - "@babel/helper-replace-supers": "^7.25.9",
426 + "@babel/helper-replace-supers": "^7.26.5",
427 "@babel/helper-skip-transparent-expression-wrappers": "^7.25.9",
429 - "@babel/traverse": "^7.25.9",
428 + "@babel/traverse": "^7.26.9",
429 "semver": "^6.3.1"
430 },
431 "engines": {
@@ -573,25 +572,25 @@
572 }
573 },
574 "node_modules/@babel/helpers": {
576 - "version": "7.26.7",
577 - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.26.7.tgz",
578 - "integrity": "sha512-8NHiL98vsi0mbPQmYAGWwfcFaOy4j2HY49fXJCfuDcdE7fMIsH9a7GdaeXpIBsbT7307WU8KCMp5pUVDNL4f9A==",
575 + "version": "7.26.9",
576 + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.26.9.tgz",
577 + "integrity": "sha512-Mz/4+y8udxBKdmzt/UjPACs4G3j5SshJJEFFKxlCGPydG4JAHXxjWjAwjd09tf6oINvl1VfMJo+nB7H2YKQ0dA==",
578 "license": "MIT",
579 "dependencies": {
581 - "@babel/template": "^7.25.9",
582 - "@babel/types": "^7.26.7"
580 + "@babel/template": "^7.26.9",
581 + "@babel/types": "^7.26.9"
582 },
583 "engines": {
584 "node": ">=6.9.0"
585 }
586 },
587 "node_modules/@babel/parser": {
589 - "version": "7.26.7",
590 - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.26.7.tgz",
591 - "integrity": "sha512-kEvgGGgEjRUutvdVvZhbn/BxVt+5VSpwXz1j3WYXQbXDo8KzFOPNG2GQbdAiNq8g6wn1yKk7C/qrke03a84V+w==",
588 + "version": "7.26.9",
589 + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.26.9.tgz",
590 + "integrity": "sha512-81NWa1njQblgZbQHxWHpxxCzNsa3ZwvFqpUg7P+NNUU6f3UU2jBEg4OlF/J6rl8+PQGh1q6/zWScd001YwcA5A==",
591 "license": "MIT",
592 "dependencies": {
594 - "@babel/types": "^7.26.7"
593 + "@babel/types": "^7.26.9"
594 },
595 "bin": {
596 "parser": "bin/babel-parser.js"
@@ -696,9 +695,9 @@
695 }
696 },
697 "node_modules/@babel/plugin-transform-typescript": {
699 - "version": "7.26.7",
700 - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.26.7.tgz",
701 - "integrity": "sha512-5cJurntg+AT+cgelGP9Bt788DKiAw9gIMSMU2NJrLAilnj0m8WZWUNZPSLOmadYsujHutpgElO+50foX+ib/Wg==",
698 + "version": "7.26.8",
699 + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.26.8.tgz",
700 + "integrity": "sha512-bME5J9AC8ChwA7aEPJ6zym3w7aObZULHhbNLU0bKUhKsAkylkzUdq+0kdymh9rzi8nlNFl2bmldFBCKNJBUpuw==",
701 "dev": true,
702 "license": "MIT",
703 "dependencies": {
@@ -716,39 +715,39 @@
715 }
716 },
717 "node_modules/@babel/standalone": {
719 - "version": "7.26.7",
720 - "resolved": "https://registry.npmjs.org/@babel/standalone/-/standalone-7.26.7.tgz",
721 - "integrity": "sha512-Fvdo9Dd20GDUAREzYMIR2EFMKAJ+ccxstgQdb39XV/yvygHL4UPcqgTkiChPyltAe/b+zgq+vUPXeukEZ6aUeA==",
718 + "version": "7.26.9",
719 + "resolved": "https://registry.npmjs.org/@babel/standalone/-/standalone-7.26.9.tgz",
720 + "integrity": "sha512-UTeQKy0kzJwWRe55kT1uK4G9H6D0lS6G4207hCU/bDaOhA5t2aC0qHN6GmID0Axv3OFLNXm27NdqcWp+BXcGtA==",
721 "license": "MIT",
722 "engines": {
723 "node": ">=6.9.0"
724 }
725 },
726 "node_modules/@babel/template": {
728 - "version": "7.25.9",
729 - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.25.9.tgz",
730 - "integrity": "sha512-9DGttpmPvIxBb/2uwpVo3dqJ+O6RooAFOS+lB+xDqoE2PVCE8nfoHMdZLpfCQRLwvohzXISPZcgxt80xLfsuwg==",
727 + "version": "7.26.9",
728 + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.26.9.tgz",
729 + "integrity": "sha512-qyRplbeIpNZhmzOysF/wFMuP9sctmh2cFzRAZOn1YapxBsE1i9bJIY586R/WBLfLcmcBlM8ROBiQURnnNy+zfA==",
730 "license": "MIT",
731 "dependencies": {
733 - "@babel/code-frame": "^7.25.9",
734 - "@babel/parser": "^7.25.9",
735 - "@babel/types": "^7.25.9"
732 + "@babel/code-frame": "^7.26.2",
733 + "@babel/parser": "^7.26.9",
734 + "@babel/types": "^7.26.9"
735 },
736 "engines": {
737 "node": ">=6.9.0"
738 }
739 },
740 "node_modules/@babel/traverse": {
742 - "version": "7.26.7",
743 - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.26.7.tgz",
744 - "integrity": "sha512-1x1sgeyRLC3r5fQOM0/xtQKsYjyxmFjaOrLJNtZ81inNjyJHGIolTULPiSc/2qe1/qfpFLisLQYFnnZl7QoedA==",
741 + "version": "7.26.9",
742 + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.26.9.tgz",
743 + "integrity": "sha512-ZYW7L+pL8ahU5fXmNbPF+iZFHCv5scFak7MZ9bwaRPLUhHh7QQEMjZUg0HevihoqCM5iSYHN61EyCoZvqC+bxg==",
744 "license": "MIT",
745 "dependencies": {
746 "@babel/code-frame": "^7.26.2",
748 - "@babel/generator": "^7.26.5",
749 - "@babel/parser": "^7.26.7",
750 - "@babel/template": "^7.25.9",
751 - "@babel/types": "^7.26.7",
747 + "@babel/generator": "^7.26.9",
748 + "@babel/parser": "^7.26.9",
749 + "@babel/template": "^7.26.9",
750 + "@babel/types": "^7.26.9",
751 "debug": "^4.3.1",
752 "globals": "^11.1.0"
753 },
@@ -766,9 +765,9 @@
765 }
766 },
767 "node_modules/@babel/types": {
769 - "version": "7.26.7",
770 - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.26.7.tgz",
771 - "integrity": "sha512-t8kDRGrKXyp6+tjUh7hw2RLyclsW4TRoRvRHtSyAX9Bb5ldlFh+90YAYY6awRXrlB4G5G2izNeGySpATlFzmOg==",
768 + "version": "7.26.9",
769 + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.26.9.tgz",
770 + "integrity": "sha512-Y3IR1cRnOxOCDvMmNiym7XpXQ93iGDDPHx+Zj+NM+rg0fBaShfQLkg+hKPaZCEvg5N/LeCo4+Rj/i3FuJsIQaw==",
771 "license": "MIT",
772 "dependencies": {
773 "@babel/helper-string-parser": "^7.25.9",
@@ -790,9 +789,9 @@
789 }
790 },
791 "node_modules/@clack/prompts": {
793 - "version": "0.9.1",
794 - "resolved": "https://registry.npmjs.org/@clack/prompts/-/prompts-0.9.1.tgz",
795 - "integrity": "sha512-JIpyaboYZeWYlyP0H+OoPPxd6nqueG/CmN6ixBiNFsIDHREevjIf0n0Ohh5gr5C8pEDknzgvz+pIJ8dMhzWIeg==",
792 + "version": "0.10.0",
793 + "resolved": "https://registry.npmjs.org/@clack/prompts/-/prompts-0.10.0.tgz",
794 + "integrity": "sha512-H3rCl6CwW1NdQt9rE3n373t7o5cthPv7yUoxF2ytZvyvlJv89C5RYMJu83Hed8ODgys5vpBU0GKxIRG83jd8NQ==",
795 "dev": true,
796 "license": "MIT",
797 "dependencies": {
@@ -831,9 +830,9 @@
830 }
831 },
832 "node_modules/@csstools/color-helpers": {
834 - "version": "5.0.1",
835 - "resolved": "https://registry.npmjs.org/@csstools/color-helpers/-/color-helpers-5.0.1.tgz",
836 - "integrity": "sha512-MKtmkA0BX87PKaO1NFRTFH+UnkgnmySQOvNxJubsadusqPEC2aJ9MOQiMceZJJ6oitUl/i0L6u0M1IrmAOmgBA==",
833 + "version": "5.0.2",
834 + "resolved": "https://registry.npmjs.org/@csstools/color-helpers/-/color-helpers-5.0.2.tgz",
835 + "integrity": "sha512-JqWH1vsgdGcw2RR6VliXXdA0/59LttzlU8UlRT/iUUsEeWfYq8I+K0yhihEUTTHLRm1EXvpsCx3083EU15ecsA==",
836 "dev": true,
837 "funding": [
838 {
@@ -851,9 +850,9 @@
850 }
851 },
852 "node_modules/@csstools/css-calc": {
854 - "version": "2.1.1",
855 - "resolved": "https://registry.npmjs.org/@csstools/css-calc/-/css-calc-2.1.1.tgz",
856 - "integrity": "sha512-rL7kaUnTkL9K+Cvo2pnCieqNpTKgQzy5f+N+5Iuko9HAoasP+xgprVh7KN/MaJVvVL1l0EzQq2MoqBHKSrDrag==",
853 + "version": "2.1.2",
854 + "resolved": "https://registry.npmjs.org/@csstools/css-calc/-/css-calc-2.1.2.tgz",
855 + "integrity": "sha512-TklMyb3uBB28b5uQdxjReG4L80NxAqgrECqLZFQbyLekwwlcDDS8r3f07DKqeo8C4926Br0gf/ZDe17Zv4wIuw==",
856 "dev": true,
857 "funding": [
858 {
@@ -875,9 +874,9 @@
874 }
875 },
876 "node_modules/@csstools/css-color-parser": {
878 - "version": "3.0.7",
879 - "resolved": "https://registry.npmjs.org/@csstools/css-color-parser/-/css-color-parser-3.0.7.tgz",
880 - "integrity": "sha512-nkMp2mTICw32uE5NN+EsJ4f5N+IGFeCFu4bGpiKgb2Pq/7J/MpyLBeQ5ry4KKtRFZaYs6sTmcMYrSRIyj5DFKA==",
877 + "version": "3.0.8",
878 + "resolved": "https://registry.npmjs.org/@csstools/css-color-parser/-/css-color-parser-3.0.8.tgz",
879 + "integrity": "sha512-pdwotQjCCnRPuNi06jFuP68cykU1f3ZWExLe/8MQ1LOs8Xq+fTkYgd+2V8mWUWMrOn9iS2HftPVaMZDaXzGbhQ==",
880 "dev": true,
881 "funding": [
882 {
@@ -891,8 +890,8 @@
890 ],
891 "license": "MIT",
892 "dependencies": {
894 - "@csstools/color-helpers": "^5.0.1",
895 - "@csstools/css-calc": "^2.1.1"
893 + "@csstools/color-helpers": "^5.0.2",
894 + "@csstools/css-calc": "^2.1.2"
895 },
896 "engines": {
897 "node": ">=18"
@@ -1021,9 +1020,9 @@
1020 }
1021 },
1022 "node_modules/@esbuild/aix-ppc64": {
1024 - "version": "0.24.2",
1025 - "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.24.2.tgz",
1026 - "integrity": "sha512-thpVCb/rhxE/BnMLQ7GReQLLN8q9qbHmI55F4489/ByVg2aQaQ6kbcLb6FHkocZzQhxc4gx0sCk0tJkKBFzDhA==",
1023 + "version": "0.25.0",
1024 + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.25.0.tgz",
1025 + "integrity": "sha512-O7vun9Sf8DFjH2UtqK8Ku3LkquL9SZL8OLY1T5NZkA34+wG3OQF7cl4Ql8vdNzM6fzBbYfLaiRLIOZ+2FOCgBQ==",
1026 "cpu": [
1027 "ppc64"
1028 ],
@@ -1038,9 +1037,9 @@
1037 }
1038 },
1039 "node_modules/@esbuild/android-arm": {
1041 - "version": "0.24.2",
1042 - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.24.2.tgz",
1043 - "integrity": "sha512-tmwl4hJkCfNHwFB3nBa8z1Uy3ypZpxqxfTQOcHX+xRByyYgunVbZ9MzUUfb0RxaHIMnbHagwAxuTL+tnNM+1/Q==",
1040 + "version": "0.25.0",
1041 + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.25.0.tgz",
1042 + "integrity": "sha512-PTyWCYYiU0+1eJKmw21lWtC+d08JDZPQ5g+kFyxP0V+es6VPPSUhM6zk8iImp2jbV6GwjX4pap0JFbUQN65X1g==",
1043 "cpu": [
1044 "arm"
1045 ],
@@ -1055,9 +1054,9 @@
1054 }
1055 },
1056 "node_modules/@esbuild/android-arm64": {
1058 - "version": "0.24.2",
1059 - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.24.2.tgz",
1060 - "integrity": "sha512-cNLgeqCqV8WxfcTIOeL4OAtSmL8JjcN6m09XIgro1Wi7cF4t/THaWEa7eL5CMoMBdjoHOTh/vwTO/o2TRXIyzg==",
1057 + "version": "0.25.0",
1058 + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.25.0.tgz",
1059 + "integrity": "sha512-grvv8WncGjDSyUBjN9yHXNt+cq0snxXbDxy5pJtzMKGmmpPxeAmAhWxXI+01lU5rwZomDgD3kJwulEnhTRUd6g==",
1060 "cpu": [
1061 "arm64"
1062 ],
@@ -1072,9 +1071,9 @@
1071 }
1072 },
1073 "node_modules/@esbuild/android-x64": {
1075 - "version": "0.24.2",
1076 - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.24.2.tgz",
1077 - "integrity": "sha512-B6Q0YQDqMx9D7rvIcsXfmJfvUYLoP722bgfBlO5cGvNVb5V/+Y7nhBE3mHV9OpxBf4eAS2S68KZztiPaWq4XYw==",
1074 + "version": "0.25.0",
1075 + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.25.0.tgz",
1076 + "integrity": "sha512-m/ix7SfKG5buCnxasr52+LI78SQ+wgdENi9CqyCXwjVR2X4Jkz+BpC3le3AoBPYTC9NHklwngVXvbJ9/Akhrfg==",
1077 "cpu": [
1078 "x64"
1079 ],
@@ -1089,9 +1088,9 @@
1088 }
1089 },
1090 "node_modules/@esbuild/darwin-arm64": {
1092 - "version": "0.24.2",
1093 - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.24.2.tgz",
1094 - "integrity": "sha512-kj3AnYWc+CekmZnS5IPu9D+HWtUI49hbnyqk0FLEJDbzCIQt7hg7ucF1SQAilhtYpIujfaHr6O0UHlzzSPdOeA==",
1091 + "version": "0.25.0",
1092 + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.25.0.tgz",
1093 + "integrity": "sha512-mVwdUb5SRkPayVadIOI78K7aAnPamoeFR2bT5nszFUZ9P8UpK4ratOdYbZZXYSqPKMHfS1wdHCJk1P1EZpRdvw==",
1094 "cpu": [
1095 "arm64"
1096 ],
@@ -1106,9 +1105,9 @@
1105 }
1106 },
1107 "node_modules/@esbuild/darwin-x64": {
1109 - "version": "0.24.2",
1110 - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.24.2.tgz",
1111 - "integrity": "sha512-WeSrmwwHaPkNR5H3yYfowhZcbriGqooyu3zI/3GGpF8AyUdsrrP0X6KumITGA9WOyiJavnGZUwPGvxvwfWPHIA==",
1108 + "version": "0.25.0",
1109 + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.25.0.tgz",
1110 + "integrity": "sha512-DgDaYsPWFTS4S3nWpFcMn/33ZZwAAeAFKNHNa1QN0rI4pUjgqf0f7ONmXf6d22tqTY+H9FNdgeaAa+YIFUn2Rg==",
1111 "cpu": [
1112 "x64"
1113 ],
@@ -1123,9 +1122,9 @@
1122 }
1123 },
1124 "node_modules/@esbuild/freebsd-arm64": {
1126 - "version": "0.24.2",
1127 - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.24.2.tgz",
1128 - "integrity": "sha512-UN8HXjtJ0k/Mj6a9+5u6+2eZ2ERD7Edt1Q9IZiB5UZAIdPnVKDoG7mdTVGhHJIeEml60JteamR3qhsr1r8gXvg==",
1125 + "version": "0.25.0",
1126 + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.25.0.tgz",
1127 + "integrity": "sha512-VN4ocxy6dxefN1MepBx/iD1dH5K8qNtNe227I0mnTRjry8tj5MRk4zprLEdG8WPyAPb93/e4pSgi1SoHdgOa4w==",
1128 "cpu": [
1129 "arm64"
1130 ],
@@ -1140,9 +1139,9 @@
1139 }
1140 },
1141 "node_modules/@esbuild/freebsd-x64": {
1143 - "version": "0.24.2",
1144 - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.24.2.tgz",
1145 - "integrity": "sha512-TvW7wE/89PYW+IevEJXZ5sF6gJRDY/14hyIGFXdIucxCsbRmLUcjseQu1SyTko+2idmCw94TgyaEZi9HUSOe3Q==",
1142 + "version": "0.25.0",
1143 + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.25.0.tgz",
1144 + "integrity": "sha512-mrSgt7lCh07FY+hDD1TxiTyIHyttn6vnjesnPoVDNmDfOmggTLXRv8Id5fNZey1gl/V2dyVK1VXXqVsQIiAk+A==",
1145 "cpu": [
1146 "x64"
1147 ],
@@ -1157,9 +1156,9 @@
1156 }
1157 },
1158 "node_modules/@esbuild/linux-arm": {
1160 - "version": "0.24.2",
1161 - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.24.2.tgz",
1162 - "integrity": "sha512-n0WRM/gWIdU29J57hJyUdIsk0WarGd6To0s+Y+LwvlC55wt+GT/OgkwoXCXvIue1i1sSNWblHEig00GBWiJgfA==",
1159 + "version": "0.25.0",
1160 + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.25.0.tgz",
1161 + "integrity": "sha512-vkB3IYj2IDo3g9xX7HqhPYxVkNQe8qTK55fraQyTzTX/fxaDtXiEnavv9geOsonh2Fd2RMB+i5cbhu2zMNWJwg==",
1162 "cpu": [
1163 "arm"
1164 ],
@@ -1174,9 +1173,9 @@
1173 }
1174 },
1175 "node_modules/@esbuild/linux-arm64": {
1177 - "version": "0.24.2",
1178 - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.24.2.tgz",
1179 - "integrity": "sha512-7HnAD6074BW43YvvUmE/35Id9/NB7BeX5EoNkK9obndmZBUk8xmJJeU7DwmUeN7tkysslb2eSl6CTrYz6oEMQg==",
1176 + "version": "0.25.0",
1177 + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.25.0.tgz",
1178 + "integrity": "sha512-9QAQjTWNDM/Vk2bgBl17yWuZxZNQIF0OUUuPZRKoDtqF2k4EtYbpyiG5/Dk7nqeK6kIJWPYldkOcBqjXjrUlmg==",
1179 "cpu": [
1180 "arm64"
1181 ],
@@ -1191,9 +1190,9 @@
1190 }
1191 },
1192 "node_modules/@esbuild/linux-ia32": {
1194 - "version": "0.24.2",
1195 - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.24.2.tgz",
1196 - "integrity": "sha512-sfv0tGPQhcZOgTKO3oBE9xpHuUqguHvSo4jl+wjnKwFpapx+vUDcawbwPNuBIAYdRAvIDBfZVvXprIj3HA+Ugw==",
1193 + "version": "0.25.0",
1194 + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.25.0.tgz",
1195 + "integrity": "sha512-43ET5bHbphBegyeqLb7I1eYn2P/JYGNmzzdidq/w0T8E2SsYL1U6un2NFROFRg1JZLTzdCoRomg8Rvf9M6W6Gg==",
1196 "cpu": [
1197 "ia32"
1198 ],
@@ -1208,9 +1207,9 @@
1207 }
1208 },
1209 "node_modules/@esbuild/linux-loong64": {
1211 - "version": "0.24.2",
1212 - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.24.2.tgz",
1213 - "integrity": "sha512-CN9AZr8kEndGooS35ntToZLTQLHEjtVB5n7dl8ZcTZMonJ7CCfStrYhrzF97eAecqVbVJ7APOEe18RPI4KLhwQ==",
1210 + "version": "0.25.0",
1211 + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.25.0.tgz",
1212 + "integrity": "sha512-fC95c/xyNFueMhClxJmeRIj2yrSMdDfmqJnyOY4ZqsALkDrrKJfIg5NTMSzVBr5YW1jf+l7/cndBfP3MSDpoHw==",
1213 "cpu": [
1214 "loong64"
1215 ],
@@ -1225,9 +1224,9 @@
1224 }
1225 },
1226 "node_modules/@esbuild/linux-mips64el": {
1228 - "version": "0.24.2",
1229 - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.24.2.tgz",
1230 - "integrity": "sha512-iMkk7qr/wl3exJATwkISxI7kTcmHKE+BlymIAbHO8xanq/TjHaaVThFF6ipWzPHryoFsesNQJPE/3wFJw4+huw==",
1227 + "version": "0.25.0",
1228 + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.25.0.tgz",
1229 + "integrity": "sha512-nkAMFju7KDW73T1DdH7glcyIptm95a7Le8irTQNO/qtkoyypZAnjchQgooFUDQhNAy4iu08N79W4T4pMBwhPwQ==",
1230 "cpu": [
1231 "mips64el"
1232 ],
@@ -1242,9 +1241,9 @@
1241 }
1242 },
1243 "node_modules/@esbuild/linux-ppc64": {
1245 - "version": "0.24.2",
1246 - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.24.2.tgz",
1247 - "integrity": "sha512-shsVrgCZ57Vr2L8mm39kO5PPIb+843FStGt7sGGoqiiWYconSxwTiuswC1VJZLCjNiMLAMh34jg4VSEQb+iEbw==",
1244 + "version": "0.25.0",
1245 + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.25.0.tgz",
1246 + "integrity": "sha512-NhyOejdhRGS8Iwv+KKR2zTq2PpysF9XqY+Zk77vQHqNbo/PwZCzB5/h7VGuREZm1fixhs4Q/qWRSi5zmAiO4Fw==",
1247 "cpu": [
1248 "ppc64"
1249 ],
@@ -1259,9 +1258,9 @@
1258 }
1259 },
1260 "node_modules/@esbuild/linux-riscv64": {
1262 - "version": "0.24.2",
1263 - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.24.2.tgz",
1264 - "integrity": "sha512-4eSFWnU9Hhd68fW16GD0TINewo1L6dRrB+oLNNbYyMUAeOD2yCK5KXGK1GH4qD/kT+bTEXjsyTCiJGHPZ3eM9Q==",
1261 + "version": "0.25.0",
1262 + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.25.0.tgz",
1263 + "integrity": "sha512-5S/rbP5OY+GHLC5qXp1y/Mx//e92L1YDqkiBbO9TQOvuFXM+iDqUNG5XopAnXoRH3FjIUDkeGcY1cgNvnXp/kA==",
1264 "cpu": [
1265 "riscv64"
1266 ],
@@ -1276,9 +1275,9 @@
1275 }
1276 },
1277 "node_modules/@esbuild/linux-s390x": {
1279 - "version": "0.24.2",
1280 - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.24.2.tgz",
1281 - "integrity": "sha512-S0Bh0A53b0YHL2XEXC20bHLuGMOhFDO6GN4b3YjRLK//Ep3ql3erpNcPlEFed93hsQAjAQDNsvcK+hV90FubSw==",
1278 + "version": "0.25.0",
1279 + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.25.0.tgz",
1280 + "integrity": "sha512-XM2BFsEBz0Fw37V0zU4CXfcfuACMrppsMFKdYY2WuTS3yi8O1nFOhil/xhKTmE1nPmVyvQJjJivgDT+xh8pXJA==",
1281 "cpu": [
1282 "s390x"
1283 ],
@@ -1293,9 +1292,9 @@
1292 }
1293 },
1294 "node_modules/@esbuild/linux-x64": {
1296 - "version": "0.24.2",
1297 - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.24.2.tgz",
1298 - "integrity": "sha512-8Qi4nQcCTbLnK9WoMjdC9NiTG6/E38RNICU6sUNqK0QFxCYgoARqVqxdFmWkdonVsvGqWhmm7MO0jyTqLqwj0Q==",
1295 + "version": "0.25.0",
1296 + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.25.0.tgz",
1297 + "integrity": "sha512-9yl91rHw/cpwMCNytUDxwj2XjFpxML0y9HAOH9pNVQDpQrBxHy01Dx+vaMu0N1CKa/RzBD2hB4u//nfc+Sd3Cw==",
1298 "cpu": [
1299 "x64"
1300 ],
@@ -1310,9 +1309,9 @@
1309 }
1310 },
1311 "node_modules/@esbuild/netbsd-arm64": {
1313 - "version": "0.24.2",
1314 - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.24.2.tgz",
1315 - "integrity": "sha512-wuLK/VztRRpMt9zyHSazyCVdCXlpHkKm34WUyinD2lzK07FAHTq0KQvZZlXikNWkDGoT6x3TD51jKQ7gMVpopw==",
1312 + "version": "0.25.0",
1313 + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.25.0.tgz",
1314 + "integrity": "sha512-RuG4PSMPFfrkH6UwCAqBzauBWTygTvb1nxWasEJooGSJ/NwRw7b2HOwyRTQIU97Hq37l3npXoZGYMy3b3xYvPw==",
1315 "cpu": [
1316 "arm64"
1317 ],
@@ -1327,9 +1326,9 @@
1326 }
1327 },
1328 "node_modules/@esbuild/netbsd-x64": {
1330 - "version": "0.24.2",
1331 - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.24.2.tgz",
1332 - "integrity": "sha512-VefFaQUc4FMmJuAxmIHgUmfNiLXY438XrL4GDNV1Y1H/RW3qow68xTwjZKfj/+Plp9NANmzbH5R40Meudu8mmw==",
1329 + "version": "0.25.0",
1330 + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.25.0.tgz",
1331 + "integrity": "sha512-jl+qisSB5jk01N5f7sPCsBENCOlPiS/xptD5yxOx2oqQfyourJwIKLRA2yqWdifj3owQZCL2sn6o08dBzZGQzA==",
1332 "cpu": [
1333 "x64"
1334 ],
@@ -1344,9 +1343,9 @@
1343 }
1344 },
1345 "node_modules/@esbuild/openbsd-arm64": {
1347 - "version": "0.24.2",
1348 - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.24.2.tgz",
1349 - "integrity": "sha512-YQbi46SBct6iKnszhSvdluqDmxCJA+Pu280Av9WICNwQmMxV7nLRHZfjQzwbPs3jeWnuAhE9Jy0NrnJ12Oz+0A==",
1346 + "version": "0.25.0",
1347 + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.25.0.tgz",
1348 + "integrity": "sha512-21sUNbq2r84YE+SJDfaQRvdgznTD8Xc0oc3p3iW/a1EVWeNj/SdUCbm5U0itZPQYRuRTW20fPMWMpcrciH2EJw==",
1349 "cpu": [
1350 "arm64"
1351 ],
@@ -1361,9 +1360,9 @@
1360 }
1361 },
1362 "node_modules/@esbuild/openbsd-x64": {
1364 - "version": "0.24.2",
1365 - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.24.2.tgz",
1366 - "integrity": "sha512-+iDS6zpNM6EnJyWv0bMGLWSWeXGN/HTaF/LXHXHwejGsVi+ooqDfMCCTerNFxEkM3wYVcExkeGXNqshc9iMaOA==",
1363 + "version": "0.25.0",
1364 + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.25.0.tgz",
1365 + "integrity": "sha512-2gwwriSMPcCFRlPlKx3zLQhfN/2WjJ2NSlg5TKLQOJdV0mSxIcYNTMhk3H3ulL/cak+Xj0lY1Ym9ysDV1igceg==",
1366 "cpu": [
1367 "x64"
1368 ],
@@ -1378,9 +1377,9 @@
1377 }
1378 },
1379 "node_modules/@esbuild/sunos-x64": {
1381 - "version": "0.24.2",
1382 - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.24.2.tgz",
1383 - "integrity": "sha512-hTdsW27jcktEvpwNHJU4ZwWFGkz2zRJUz8pvddmXPtXDzVKTTINmlmga3ZzwcuMpUvLw7JkLy9QLKyGpD2Yxig==",
1380 + "version": "0.25.0",
1381 + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.25.0.tgz",
1382 + "integrity": "sha512-bxI7ThgLzPrPz484/S9jLlvUAHYMzy6I0XiU1ZMeAEOBcS0VePBFxh1JjTQt3Xiat5b6Oh4x7UC7IwKQKIJRIg==",
1383 "cpu": [
1384 "x64"
1385 ],
@@ -1395,9 +1394,9 @@
1394 }
1395 },
1396 "node_modules/@esbuild/win32-arm64": {
1398 - "version": "0.24.2",
1399 - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.24.2.tgz",
1400 - "integrity": "sha512-LihEQ2BBKVFLOC9ZItT9iFprsE9tqjDjnbulhHoFxYQtQfai7qfluVODIYxt1PgdoyQkz23+01rzwNwYfutxUQ==",
1397 + "version": "0.25.0",
1398 + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.25.0.tgz",
1399 + "integrity": "sha512-ZUAc2YK6JW89xTbXvftxdnYy3m4iHIkDtK3CLce8wg8M2L+YZhIvO1DKpxrd0Yr59AeNNkTiic9YLf6FTtXWMw==",
1400 "cpu": [
1401 "arm64"
1402 ],
@@ -1412,9 +1411,9 @@
1411 }
1412 },
1413 "node_modules/@esbuild/win32-ia32": {
1415 - "version": "0.24.2",
1416 - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.24.2.tgz",
1417 - "integrity": "sha512-q+iGUwfs8tncmFC9pcnD5IvRHAzmbwQ3GPS5/ceCyHdjXubwQWI12MKWSNSMYLJMq23/IUCvJMS76PDqXe1fxA==",
1414 + "version": "0.25.0",
1415 + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.25.0.tgz",
1416 + "integrity": "sha512-eSNxISBu8XweVEWG31/JzjkIGbGIJN/TrRoiSVZwZ6pkC6VX4Im/WV2cz559/TXLcYbcrDN8JtKgd9DJVIo8GA==",
1417 "cpu": [
1418 "ia32"
1419 ],
@@ -1429,9 +1428,9 @@
1428 }
1429 },
1430 "node_modules/@esbuild/win32-x64": {
1432 - "version": "0.24.2",
1433 - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.24.2.tgz",
1434 - "integrity": "sha512-7VTgWzgMGvup6aSqDPLiW5zHaxYJGTO4OokMjIlrCtf+VpEL+cXKtCvg723iguPYI5oaUNdS+/V7OU2gvXVWEg==",
1431 + "version": "0.25.0",
1432 + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.25.0.tgz",
1433 + "integrity": "sha512-ZENoHJBxA20C2zFzh6AI4fT6RraMzjYw4xKWemRTRmRVtN9c5DcH9r/f2ihEkMjOW5eGgrwCslG/+Y/3bL+DHQ==",
1434 "cpu": [
1435 "x64"
1436 ],
@@ -1508,9 +1507,9 @@
1507 }
1508 },
1509 "node_modules/@eslint/compat": {
1511 - "version": "1.2.5",
1512 - "resolved": "https://registry.npmjs.org/@eslint/compat/-/compat-1.2.5.tgz",
1513 - "integrity": "sha512-5iuG/StT+7OfvhoBHPlmxkPA9om6aDUFgmD4+mWKAGsYt4vCe8rypneG03AuseyRHBmcCLXQtIH5S26tIoggLg==",
1510 + "version": "1.2.7",
1511 + "resolved": "https://registry.npmjs.org/@eslint/compat/-/compat-1.2.7.tgz",
1512 + "integrity": "sha512-xvv7hJE32yhegJ8xNAnb62ggiAwTYHBpUCWhRxEj/ksvgDJuSXfoDkBcRYaYNFiJ+jH0IE3K16hd+xXzhBgNbg==",
1513 "dev": true,
1514 "license": "Apache-2.0",
1515 "engines": {
@@ -1526,13 +1525,13 @@
1525 }
1526 },
1527 "node_modules/@eslint/config-array": {
1529 - "version": "0.19.1",
1530 - "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.19.1.tgz",
1531 - "integrity": "sha512-fo6Mtm5mWyKjA/Chy1BYTdn5mGJoDNjC7C64ug20ADsRDGrA85bN3uK3MaKbeRkRuuIEAR5N33Jr1pbm411/PA==",
1528 + "version": "0.19.2",
1529 + "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.19.2.tgz",
1530 + "integrity": "sha512-GNKqxfHG2ySmJOBSHg7LxeUx4xpuCoFjacmlCoYWEbaPXLwvfIjixRI12xCQZeULksQb23uiA8F40w5TojpV7w==",
1531 "dev": true,
1532 "license": "Apache-2.0",
1533 "dependencies": {
1535 - "@eslint/object-schema": "^2.1.5",
1534 + "@eslint/object-schema": "^2.1.6",
1535 "debug": "^4.3.1",
1536 "minimatch": "^3.1.2"
1537 },
@@ -1578,9 +1577,9 @@
1577 }
1578 },
1579 "node_modules/@eslint/eslintrc": {
1581 - "version": "3.2.0",
1582 - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.2.0.tgz",
1583 - "integrity": "sha512-grOjVNN8P3hjJn/eIETF1wwd12DdnwFDoyceUJLYYdkpbwq3nLi+4fqrTAONx7XDALqlL220wC/RHSC/QTI/0w==",
1580 + "version": "3.3.0",
1581 + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.3.0.tgz",
1582 + "integrity": "sha512-yaVPAiNAalnCZedKLdR21GOGILMLKPyqSLWaAjQFvYA2i/ciDi8ArYVr69Anohb6cH2Ukhqti4aFnYyPm8wdwQ==",
1583 "dev": true,
1584 "license": "MIT",
1585 "dependencies": {
@@ -1659,9 +1658,9 @@
1658 }
1659 },
1660 "node_modules/@eslint/js": {
1662 - "version": "9.19.0",
1663 - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.19.0.tgz",
1664 - "integrity": "sha512-rbq9/g38qjfqFLOVPvwjIvFFdNziEC5S65jmjPw5r6A//QH+W91akh9irMwjDN8zKUTak6W9EsAv4m/7Wnw0UQ==",
1661 + "version": "9.21.0",
1662 + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.21.0.tgz",
1663 + "integrity": "sha512-BqStZ3HX8Yz6LvsF5ByXYrtigrV5AXADWLAGc7PH/1SxOb7/FIYYMszZZWiUou/GB9P2lXWk2SV4d+Z8h0nknw==",
1664 "dev": true,
1665 "license": "MIT",
1666 "engines": {
@@ -1686,9 +1685,9 @@
1685 }
1686 },
1687 "node_modules/@eslint/object-schema": {
1689 - "version": "2.1.5",
1690 - "resolved": "https://registry.npmjs.org/@eslint/object-schema/-/object-schema-2.1.5.tgz",
1691 - "integrity": "sha512-o0bhxnL89h5Bae5T318nFoFzGy+YE5i/gGkoPAgkmTVdRKTiv3p8JHevPiPaMwoloKfEiiaHlawCqaZMqRm+XQ==",
1688 + "version": "2.1.6",
1689 + "resolved": "https://registry.npmjs.org/@eslint/object-schema/-/object-schema-2.1.6.tgz",
1690 + "integrity": "sha512-RBMg5FRL0I0gs51M/guSAj5/e14VQ4tpZnQNWwuDT66P14I43ItmPfIZRhO9fUVIPOAQXU47atlywZ/czoqFPA==",
1691 "dev": true,
1692 "license": "Apache-2.0",
1693 "engines": {
@@ -1696,19 +1695,32 @@
1695 }
1696 },
1697 "node_modules/@eslint/plugin-kit": {
1699 - "version": "0.2.5",
1700 - "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.2.5.tgz",
1701 - "integrity": "sha512-lB05FkqEdUg2AA0xEbUz0SnkXT1LcCTa438W4IWTUh4hdOnVbQyOJ81OrDXsJk/LSiJHubgGEFoR5EHq1NsH1A==",
1698 + "version": "0.2.7",
1699 + "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.2.7.tgz",
1700 + "integrity": "sha512-JubJ5B2pJ4k4yGxaNLdbjrnk9d/iDz6/q8wOilpIowd6PJPgaxCuHBnBszq7Ce2TyMrywm5r4PnKm6V3iiZF+g==",
1701 "dev": true,
1702 "license": "Apache-2.0",
1703 "dependencies": {
1705 - "@eslint/core": "^0.10.0",
1704 + "@eslint/core": "^0.12.0",
1705 "levn": "^0.4.1"
1706 },
1707 "engines": {
1708 "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
1709 }
1710 },
1711 + "node_modules/@eslint/plugin-kit/node_modules/@eslint/core": {
1712 + "version": "0.12.0",
1713 + "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.12.0.tgz",
1714 + "integrity": "sha512-cmrR6pytBuSMTaBweKoGMwu3EiHiEC+DoyupPmlZ0HxBJBtIxwe+j/E4XPIKNx+Q74c8lXKPwYawBf5glsTkHg==",
1715 + "dev": true,
1716 + "license": "Apache-2.0",
1717 + "dependencies": {
1718 + "@types/json-schema": "^7.0.15"
1719 + },
1720 + "engines": {
1721 + "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
1722 + }
1723 + },
1724 "node_modules/@f3ve/vue-markdown-it": {
1725 "version": "0.2.3",
1726 "resolved": "https://registry.npmjs.org/@f3ve/vue-markdown-it/-/vue-markdown-it-0.2.3.tgz",
@@ -1809,9 +1821,9 @@
1821 }
1822 },
1823 "node_modules/@humanwhocodes/retry": {
1812 - "version": "0.4.1",
1813 - "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.4.1.tgz",
1814 - "integrity": "sha512-c7hNEllBlenFTHBky65mhq8WD2kbN9Q6gk0bTk8lSBvc554jpXSkST1iePudpt7+A/AQvuHs9EMqjHDXMY1lrA==",
1824 + "version": "0.4.2",
1825 + "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.4.2.tgz",
1826 + "integrity": "sha512-xeO57FpIu4p1Ri3Jq/EXq4ClRm86dVF2z/+kvFnyqVYRavTZmaFaUBbWCOuuTh0o/g7DSsk6kc2vrS4Vl5oPOQ==",
1827 "dev": true,
1828 "license": "Apache-2.0",
1829 "engines": {
@@ -1846,13 +1858,13 @@
1858 }
1859 },
1860 "node_modules/@intlify/core-base": {
1849 - "version": "11.0.1",
1850 - "resolved": "https://registry.npmjs.org/@intlify/core-base/-/core-base-11.0.1.tgz",
1851 - "integrity": "sha512-NAmhw1l/llM0HZRpagR/ChJTNymW4ll6/4EDSJML5c8L5Hl/+k6UyF8EIgE6DeHpfheQujkSRngauViHqq6jJQ==",
1861 + "version": "11.1.1",
1862 + "resolved": "https://registry.npmjs.org/@intlify/core-base/-/core-base-11.1.1.tgz",
1863 + "integrity": "sha512-bb8gZvoeKExCI2r/NVCK9E4YyOkvYGaSCPxVZe8T0jz8aX+dHEOZWxK06Z/Y9mWRkJfBiCH4aOhDF1yr1t5J8Q==",
1864 "license": "MIT",
1865 "dependencies": {
1854 - "@intlify/message-compiler": "11.0.1",
1855 - "@intlify/shared": "11.0.1"
1866 + "@intlify/message-compiler": "11.1.1",
1867 + "@intlify/shared": "11.1.1"
1868 },
1869 "engines": {
1870 "node": ">= 16"
@@ -1862,12 +1874,12 @@
1874 }
1875 },
1876 "node_modules/@intlify/message-compiler": {
1865 - "version": "11.0.1",
1866 - "resolved": "https://registry.npmjs.org/@intlify/message-compiler/-/message-compiler-11.0.1.tgz",
1867 - "integrity": "sha512-5RFH8x+Mn3mbjcHXnb6KCXGiczBdiQkWkv99iiA0JpKrNuTAQeW59Pjq/uObMB0eR0shnKYGTkIJxum+DbL3sw==",
1877 + "version": "11.1.1",
1878 + "resolved": "https://registry.npmjs.org/@intlify/message-compiler/-/message-compiler-11.1.1.tgz",
1879 + "integrity": "sha512-4iEsUZ3aF7jXY19CJFN5VP+pPyLITD9FVsjB13z9TU1UxaZLlFsmNhvRxlPDSOfHAP5RpNF2QKKdZ3DHVf4Yzw==",
1880 "license": "MIT",
1881 "dependencies": {
1870 - "@intlify/shared": "11.0.1",
1882 + "@intlify/shared": "11.1.1",
1883 "source-map-js": "^1.0.2"
1884 },
1885 "engines": {
@@ -1878,9 +1890,9 @@
1890 }
1891 },
1892 "node_modules/@intlify/shared": {
1881 - "version": "11.0.1",
1882 - "resolved": "https://registry.npmjs.org/@intlify/shared/-/shared-11.0.1.tgz",
1883 - "integrity": "sha512-lH164+aDDptHZ3dBDbIhRa1dOPQUp+83iugpc+1upTOWCnwyC1PVis6rSWNMMJ8VQxvtHQB9JMib48K55y0PvQ==",
1893 + "version": "11.1.1",
1894 + "resolved": "https://registry.npmjs.org/@intlify/shared/-/shared-11.1.1.tgz",
1895 + "integrity": "sha512-2kGiWoXaeV8HZlhU/Nml12oTbhv7j2ufsJ5vQaa0VTjzUmZVdd/nmKFRAOJ/FtjO90Qba5AnZDwsrY7ZND5udA==",
1896 "license": "MIT",
1897 "engines": {
1898 "node": ">= 16"
@@ -2010,23 +2022,6 @@
2022 "integrity": "sha512-dfLbk+PwWvFzSxwk3n5ySL0hfBog779o8h68wK/7/APo/7cgyWp5jcXockbxdk5kFRkbeXWm4Fbi9FrdN381sA==",
2023 "license": "Apache-2.0"
2024 },
2013 - "node_modules/@koa/router": {
2014 - "version": "12.0.2",
2015 - "resolved": "https://registry.npmjs.org/@koa/router/-/router-12.0.2.tgz",
2016 - "integrity": "sha512-sYcHglGKTxGF+hQ6x67xDfkE9o+NhVlRHBqq6gLywaMc6CojK/5vFZByphdonKinYlMLkEkacm+HEse9HzwgTA==",
2017 - "dev": true,
2018 - "license": "MIT",
2019 - "dependencies": {
2020 - "debug": "^4.3.4",
2021 - "http-errors": "^2.0.0",
2022 - "koa-compose": "^4.1.0",
2023 - "methods": "^1.1.2",
2024 - "path-to-regexp": "^6.3.0"
2025 - },
2026 - "engines": {
2027 - "node": ">= 12"
2028 - }
2029 - },
2025 "node_modules/@nodelib/fs.scandir": {
2026 "version": "2.1.5",
2027 "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz",
@@ -2209,6 +2204,27 @@
2204 "url": "https://opencollective.com/parcel"
2205 }
2206 },
2207 + "node_modules/@parcel/watcher-freebsd-x64": {
2208 + "version": "2.5.1",
2209 + "resolved": "https://registry.npmjs.org/@parcel/watcher-freebsd-x64/-/watcher-freebsd-x64-2.5.1.tgz",
2210 + "integrity": "sha512-SI4eljM7Flp9yPuKi8W0ird8TI/JK6CSxju3NojVI6BjHsTyK7zxA9urjVjEKJ5MBYC+bLmMcbAWlZ+rFkLpJQ==",
2211 + "cpu": [
2212 + "x64"
2213 + ],
2214 + "dev": true,
2215 + "license": "MIT",
2216 + "optional": true,
2217 + "os": [
2218 + "freebsd"
2219 + ],
2220 + "engines": {
2221 + "node": ">= 10.0.0"
2222 + },
2223 + "funding": {
2224 + "type": "opencollective",
2225 + "url": "https://opencollective.com/parcel"
2226 + }
2227 + },
2228 "node_modules/@parcel/watcher-linux-arm-glibc": {
2229 "version": "2.5.1",
2230 "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm-glibc/-/watcher-linux-arm-glibc-2.5.1.tgz",
@@ -2432,6 +2448,7 @@
2448 "version": "5.1.4",
2449 "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-5.1.4.tgz",
2450 "integrity": "sha512-USm05zrsFxYLPdWWq+K3STlWiT/3ELn3RcV5hJMghpeAIhxfsUIg6mt12CBJBInWMV4VneoV7SfGv8xIwo2qNQ==",
2451 + "dev": true,
2452 "license": "MIT",
2453 "dependencies": {
2454 "@types/estree": "^1.0.0",
@@ -2451,9 +2468,9 @@
2468 }
2469 },
2470 "node_modules/@rollup/rollup-android-arm-eabi": {
2454 - "version": "4.32.1",
2455 - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.32.1.tgz",
2456 - "integrity": "sha512-/pqA4DmqyCm8u5YIDzIdlLcEmuvxb0v8fZdFhVMszSpDTgbQKdw3/mB3eMUHIbubtJ6F9j+LtmyCnHTEqIHyzA==",
2471 + "version": "4.34.8",
2472 + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.34.8.tgz",
2473 + "integrity": "sha512-q217OSE8DTp8AFHuNHXo0Y86e1wtlfVrXiAlwkIvGRQv9zbc6mE3sjIVfwI8sYUyNxwOg0j/Vm1RKM04JcWLJw==",
2474 "cpu": [
2475 "arm"
2476 ],
@@ -2465,9 +2482,9 @@
2482 ]
2483 },
2484 "node_modules/@rollup/rollup-android-arm64": {
2468 - "version": "4.32.1",
2469 - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.32.1.tgz",
2470 - "integrity": "sha512-If3PDskT77q7zgqVqYuj7WG3WC08G1kwXGVFi9Jr8nY6eHucREHkfpX79c0ACAjLj3QIWKPJR7w4i+f5EdLH5Q==",
2485 + "version": "4.34.8",
2486 + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.34.8.tgz",
2487 + "integrity": "sha512-Gigjz7mNWaOL9wCggvoK3jEIUUbGul656opstjaUSGC3eT0BM7PofdAJaBfPFWWkXNVAXbaQtC99OCg4sJv70Q==",
2488 "cpu": [
2489 "arm64"
2490 ],
@@ -2479,9 +2496,9 @@
2496 ]
2497 },
2498 "node_modules/@rollup/rollup-darwin-arm64": {
2482 - "version": "4.32.1",
2483 - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.32.1.tgz",
2484 - "integrity": "sha512-zCpKHioQ9KgZToFp5Wvz6zaWbMzYQ2LJHQ+QixDKq52KKrF65ueu6Af4hLlLWHjX1Wf/0G5kSJM9PySW9IrvHA==",
2499 + "version": "4.34.8",
2500 + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.34.8.tgz",
2501 + "integrity": "sha512-02rVdZ5tgdUNRxIUrFdcMBZQoaPMrxtwSb+/hOfBdqkatYHR3lZ2A2EGyHq2sGOd0Owk80oV3snlDASC24He3Q==",
2502 "cpu": [
2503 "arm64"
2504 ],
@@ -2493,9 +2510,9 @@
2510 ]
2511 },
2512 "node_modules/@rollup/rollup-darwin-x64": {
2496 - "version": "4.32.1",
2497 - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.32.1.tgz",
2498 - "integrity": "sha512-sFvF+t2+TyUo/ZQqUcifrJIgznx58oFZbdHS9TvHq3xhPVL9nOp+yZ6LKrO9GWTP+6DbFtoyLDbjTpR62Mbr3Q==",
2513 + "version": "4.34.8",
2514 + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.34.8.tgz",
2515 + "integrity": "sha512-qIP/elwR/tq/dYRx3lgwK31jkZvMiD6qUtOycLhTzCvrjbZ3LjQnEM9rNhSGpbLXVJYQ3rq39A6Re0h9tU2ynw==",
2516 "cpu": [
2517 "x64"
2518 ],
@@ -2507,9 +2524,9 @@
2524 ]
2525 },
2526 "node_modules/@rollup/rollup-freebsd-arm64": {
2510 - "version": "4.32.1",
2511 - "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.32.1.tgz",
2512 - "integrity": "sha512-NbOa+7InvMWRcY9RG+B6kKIMD/FsnQPH0MWUvDlQB1iXnF/UcKSudCXZtv4lW+C276g3w5AxPbfry5rSYvyeYA==",
2527 + "version": "4.34.8",
2528 + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.34.8.tgz",
2529 + "integrity": "sha512-IQNVXL9iY6NniYbTaOKdrlVP3XIqazBgJOVkddzJlqnCpRi/yAeSOa8PLcECFSQochzqApIOE1GHNu3pCz+BDA==",
2530 "cpu": [
2531 "arm64"
2532 ],
@@ -2521,9 +2538,9 @@
2538 ]
2539 },
2540 "node_modules/@rollup/rollup-freebsd-x64": {
2524 - "version": "4.32.1",
2525 - "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.32.1.tgz",
2526 - "integrity": "sha512-JRBRmwvHPXR881j2xjry8HZ86wIPK2CcDw0EXchE1UgU0ubWp9nvlT7cZYKc6bkypBt745b4bglf3+xJ7hXWWw==",
2541 + "version": "4.34.8",
2542 + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.34.8.tgz",
2543 + "integrity": "sha512-TYXcHghgnCqYFiE3FT5QwXtOZqDj5GmaFNTNt3jNC+vh22dc/ukG2cG+pi75QO4kACohZzidsq7yKTKwq/Jq7Q==",
2544 "cpu": [
2545 "x64"
2546 ],
@@ -2535,9 +2552,9 @@
2552 ]
2553 },
2554 "node_modules/@rollup/rollup-linux-arm-gnueabihf": {
2538 - "version": "4.32.1",
2539 - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.32.1.tgz",
2540 - "integrity": "sha512-PKvszb+9o/vVdUzCCjL0sKHukEQV39tD3fepXxYrHE3sTKrRdCydI7uldRLbjLmDA3TFDmh418XH19NOsDRH8g==",
2555 + "version": "4.34.8",
2556 + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.34.8.tgz",
2557 + "integrity": "sha512-A4iphFGNkWRd+5m3VIGuqHnG3MVnqKe7Al57u9mwgbyZ2/xF9Jio72MaY7xxh+Y87VAHmGQr73qoKL9HPbXj1g==",
2558 "cpu": [
2559 "arm"
2560 ],
@@ -2549,9 +2566,9 @@
2566 ]
2567 },
2568 "node_modules/@rollup/rollup-linux-arm-musleabihf": {
2552 - "version": "4.32.1",
2553 - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.32.1.tgz",
2554 - "integrity": "sha512-9WHEMV6Y89eL606ReYowXuGF1Yb2vwfKWKdD1A5h+OYnPZSJvxbEjxTRKPgi7tkP2DSnW0YLab1ooy+i/FQp/Q==",
2569 + "version": "4.34.8",
2570 + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.34.8.tgz",
2571 + "integrity": "sha512-S0lqKLfTm5u+QTxlFiAnb2J/2dgQqRy/XvziPtDd1rKZFXHTyYLoVL58M/XFwDI01AQCDIevGLbQrMAtdyanpA==",
2572 "cpu": [
2573 "arm"
2574 ],
@@ -2563,9 +2580,9 @@
2580 ]
2581 },
2582 "node_modules/@rollup/rollup-linux-arm64-gnu": {
2566 - "version": "4.32.1",
2567 - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.32.1.tgz",
2568 - "integrity": "sha512-tZWc9iEt5fGJ1CL2LRPw8OttkCBDs+D8D3oEM8mH8S1ICZCtFJhD7DZ3XMGM8kpqHvhGUTvNUYVDnmkj4BDXnw==",
2583 + "version": "4.34.8",
2584 + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.34.8.tgz",
2585 + "integrity": "sha512-jpz9YOuPiSkL4G4pqKrus0pn9aYwpImGkosRKwNi+sJSkz+WU3anZe6hi73StLOQdfXYXC7hUfsQlTnjMd3s1A==",
2586 "cpu": [
2587 "arm64"
2588 ],
@@ -2577,9 +2594,9 @@
2594 ]
2595 },
2596 "node_modules/@rollup/rollup-linux-arm64-musl": {
2580 - "version": "4.32.1",
2581 - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.32.1.tgz",
2582 - "integrity": "sha512-FTYc2YoTWUsBz5GTTgGkRYYJ5NGJIi/rCY4oK/I8aKowx1ToXeoVVbIE4LGAjsauvlhjfl0MYacxClLld1VrOw==",
2597 + "version": "4.34.8",
2598 + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.34.8.tgz",
2599 + "integrity": "sha512-KdSfaROOUJXgTVxJNAZ3KwkRc5nggDk+06P6lgi1HLv1hskgvxHUKZ4xtwHkVYJ1Rep4GNo+uEfycCRRxht7+Q==",
2600 "cpu": [
2601 "arm64"
2602 ],
@@ -2591,9 +2608,9 @@
2608 ]
2609 },
2610 "node_modules/@rollup/rollup-linux-loongarch64-gnu": {
2594 - "version": "4.32.1",
2595 - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loongarch64-gnu/-/rollup-linux-loongarch64-gnu-4.32.1.tgz",
2596 - "integrity": "sha512-F51qLdOtpS6P1zJVRzYM0v6MrBNypyPEN1GfMiz0gPu9jN8ScGaEFIZQwteSsGKg799oR5EaP7+B2jHgL+d+Kw==",
2611 + "version": "4.34.8",
2612 + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loongarch64-gnu/-/rollup-linux-loongarch64-gnu-4.34.8.tgz",
2613 + "integrity": "sha512-NyF4gcxwkMFRjgXBM6g2lkT58OWztZvw5KkV2K0qqSnUEqCVcqdh2jN4gQrTn/YUpAcNKyFHfoOZEer9nwo6uQ==",
2614 "cpu": [
2615 "loong64"
2616 ],
@@ -2605,9 +2622,9 @@
2622 ]
2623 },
2624 "node_modules/@rollup/rollup-linux-powerpc64le-gnu": {
2608 - "version": "4.32.1",
2609 - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.32.1.tgz",
2610 - "integrity": "sha512-wO0WkfSppfX4YFm5KhdCCpnpGbtgQNj/tgvYzrVYFKDpven8w2N6Gg5nB6w+wAMO3AIfSTWeTjfVe+uZ23zAlg==",
2625 + "version": "4.34.8",
2626 + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.34.8.tgz",
2627 + "integrity": "sha512-LMJc999GkhGvktHU85zNTDImZVUCJ1z/MbAJTnviiWmmjyckP5aQsHtcujMjpNdMZPT2rQEDBlJfubhs3jsMfw==",
2628 "cpu": [
2629 "ppc64"
2630 ],
@@ -2619,9 +2636,9 @@
2636 ]
2637 },
2638 "node_modules/@rollup/rollup-linux-riscv64-gnu": {
2622 - "version": "4.32.1",
2623 - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.32.1.tgz",
2624 - "integrity": "sha512-iWswS9cIXfJO1MFYtI/4jjlrGb/V58oMu4dYJIKnR5UIwbkzR0PJ09O0PDZT0oJ3LYWXBSWahNf/Mjo6i1E5/g==",
2639 + "version": "4.34.8",
2640 + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.34.8.tgz",
2641 + "integrity": "sha512-xAQCAHPj8nJq1PI3z8CIZzXuXCstquz7cIOL73HHdXiRcKk8Ywwqtx2wrIy23EcTn4aZ2fLJNBB8d0tQENPCmw==",
2642 "cpu": [
2643 "riscv64"
2644 ],
@@ -2633,9 +2650,9 @@
2650 ]
2651 },
2652 "node_modules/@rollup/rollup-linux-s390x-gnu": {
2636 - "version": "4.32.1",
2637 - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.32.1.tgz",
2638 - "integrity": "sha512-RKt8NI9tebzmEthMnfVgG3i/XeECkMPS+ibVZjZ6mNekpbbUmkNWuIN2yHsb/mBPyZke4nlI4YqIdFPgKuoyQQ==",
2653 + "version": "4.34.8",
2654 + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.34.8.tgz",
2655 + "integrity": "sha512-DdePVk1NDEuc3fOe3dPPTb+rjMtuFw89gw6gVWxQFAuEqqSdDKnrwzZHrUYdac7A7dXl9Q2Vflxpme15gUWQFA==",
2656 "cpu": [
2657 "s390x"
2658 ],
@@ -2647,9 +2664,9 @@
2664 ]
2665 },
2666 "node_modules/@rollup/rollup-linux-x64-gnu": {
2650 - "version": "4.32.1",
2651 - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.32.1.tgz",
2652 - "integrity": "sha512-WQFLZ9c42ECqEjwg/GHHsouij3pzLXkFdz0UxHa/0OM12LzvX7DzedlY0SIEly2v18YZLRhCRoHZDxbBSWoGYg==",
2667 + "version": "4.34.8",
2668 + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.34.8.tgz",
2669 + "integrity": "sha512-8y7ED8gjxITUltTUEJLQdgpbPh1sUQ0kMTmufRF/Ns5tI9TNMNlhWtmPKKHCU0SilX+3MJkZ0zERYYGIVBYHIA==",
2670 "cpu": [
2671 "x64"
2672 ],
@@ -2660,9 +2677,9 @@
2677 ]
2678 },
2679 "node_modules/@rollup/rollup-linux-x64-musl": {
2663 - "version": "4.32.1",
2664 - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.32.1.tgz",
2665 - "integrity": "sha512-BLoiyHDOWoS3uccNSADMza6V6vCNiphi94tQlVIL5de+r6r/CCQuNnerf+1g2mnk2b6edp5dk0nhdZ7aEjOBsA==",
2680 + "version": "4.34.8",
2681 + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.34.8.tgz",
2682 + "integrity": "sha512-SCXcP0ZpGFIe7Ge+McxY5zKxiEI5ra+GT3QRxL0pMMtxPfpyLAKleZODi1zdRHkz5/BhueUrYtYVgubqe9JBNQ==",
2683 "cpu": [
2684 "x64"
2685 ],
@@ -2674,9 +2691,9 @@
2691 ]
2692 },
2693 "node_modules/@rollup/rollup-win32-arm64-msvc": {
2677 - "version": "4.32.1",
2678 - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.32.1.tgz",
2679 - "integrity": "sha512-w2l3UnlgYTNNU+Z6wOR8YdaioqfEnwPjIsJ66KxKAf0p+AuL2FHeTX6qvM+p/Ue3XPBVNyVSfCrfZiQh7vZHLQ==",
2694 + "version": "4.34.8",
2695 + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.34.8.tgz",
2696 + "integrity": "sha512-YHYsgzZgFJzTRbth4h7Or0m5O74Yda+hLin0irAIobkLQFRQd1qWmnoVfwmKm9TXIZVAD0nZ+GEb2ICicLyCnQ==",
2697 "cpu": [
2698 "arm64"
2699 ],
@@ -2688,9 +2705,9 @@
2705 ]
2706 },
2707 "node_modules/@rollup/rollup-win32-ia32-msvc": {
2691 - "version": "4.32.1",
2692 - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.32.1.tgz",
2693 - "integrity": "sha512-Am9H+TGLomPGkBnaPWie4F3x+yQ2rr4Bk2jpwy+iV+Gel9jLAu/KqT8k3X4jxFPW6Zf8OMnehyutsd+eHoq1WQ==",
2708 + "version": "4.34.8",
2709 + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.34.8.tgz",
2710 + "integrity": "sha512-r3NRQrXkHr4uWy5TOjTpTYojR9XmF0j/RYgKCef+Ag46FWUTltm5ziticv8LdNsDMehjJ543x/+TJAek/xBA2w==",
2711 "cpu": [
2712 "ia32"
2713 ],
@@ -2702,9 +2719,9 @@
2719 ]
2720 },
2721 "node_modules/@rollup/rollup-win32-x64-msvc": {
2705 - "version": "4.32.1",
2706 - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.32.1.tgz",
2707 - "integrity": "sha512-ar80GhdZb4DgmW3myIS9nRFYcpJRSME8iqWgzH2i44u+IdrzmiXVxeFnExQ5v4JYUSpg94bWjevMG8JHf1Da5Q==",
2722 + "version": "4.34.8",
2723 + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.34.8.tgz",
2724 + "integrity": "sha512-U0FaE5O1BCpZSeE6gBl3c5ObhePQSfk9vDRToMmTkbhCOgW4jqvtS5LGyQ76L1fH8sM0keRp4uDTsbjiUyjk0g==",
2725 "cpu": [
2726 "x64"
2727 ],
@@ -2723,60 +2740,58 @@
2740 "license": "MIT"
2741 },
2742 "node_modules/@shikijs/core": {
2726 - "version": "2.1.0",
2727 - "resolved": "https://registry.npmjs.org/@shikijs/core/-/core-2.1.0.tgz",
2728 - "integrity": "sha512-v795KDmvs+4oV0XD05YLzfDMe9ISBgNjtFxP4PAEv5DqyeghO1/TwDqs9ca5/E6fuO95IcAcWqR6cCX9TnqLZA==",
2743 + "version": "3.0.0",
2744 + "resolved": "https://registry.npmjs.org/@shikijs/core/-/core-3.0.0.tgz",
2745 + "integrity": "sha512-gSm3JQf2J2psiUn5bWokmZwnu5N0jfBtRps4CQ1B+qrFvmZCRAkMVoaxgl9qZgAFK5KisLAS3//XaMFVytYHKw==",
2746 "license": "MIT",
2747 "dependencies": {
2731 - "@shikijs/engine-javascript": "2.1.0",
2732 - "@shikijs/engine-oniguruma": "2.1.0",
2733 - "@shikijs/types": "2.1.0",
2734 - "@shikijs/vscode-textmate": "^10.0.1",
2748 + "@shikijs/types": "3.0.0",
2749 + "@shikijs/vscode-textmate": "^10.0.2",
2750 "@types/hast": "^3.0.4",
2751 "hast-util-to-html": "^9.0.4"
2752 }
2753 },
2754 "node_modules/@shikijs/engine-javascript": {
2740 - "version": "2.1.0",
2741 - "resolved": "https://registry.npmjs.org/@shikijs/engine-javascript/-/engine-javascript-2.1.0.tgz",
2742 - "integrity": "sha512-cgIUdAliOsoaa0rJz/z+jvhrpRd+fVAoixVFEVxUq5FA+tHgBZAIfVJSgJNVRj2hs/wZ1+4hMe82eKAThVh0nQ==",
2755 + "version": "3.0.0",
2756 + "resolved": "https://registry.npmjs.org/@shikijs/engine-javascript/-/engine-javascript-3.0.0.tgz",
2757 + "integrity": "sha512-zoB10hTfvk1iZk1ldt6VaF+0iucQL+4TtSvTdTu5MhOeLPLEf5nZ8Wz6uxlp99y627OLalYa2z4W0iTTwb6oyA==",
2758 "license": "MIT",
2759 "dependencies": {
2745 - "@shikijs/types": "2.1.0",
2746 - "@shikijs/vscode-textmate": "^10.0.1",
2747 - "oniguruma-to-es": "^2.3.0"
2760 + "@shikijs/types": "3.0.0",
2761 + "@shikijs/vscode-textmate": "^10.0.2",
2762 + "oniguruma-to-es": "^3.1.0"
2763 }
2764 },
2765 "node_modules/@shikijs/engine-oniguruma": {
2751 - "version": "2.1.0",
2752 - "resolved": "https://registry.npmjs.org/@shikijs/engine-oniguruma/-/engine-oniguruma-2.1.0.tgz",
2753 - "integrity": "sha512-Ujik33wEDqgqY2WpjRDUBECGcKPv3eGGkoXPujIXvokLaRmGky8NisSk8lHUGeSFxo/Cz5sgFej9sJmA9yeepg==",
2766 + "version": "3.0.0",
2767 + "resolved": "https://registry.npmjs.org/@shikijs/engine-oniguruma/-/engine-oniguruma-3.0.0.tgz",
2768 + "integrity": "sha512-uM9lqwMrlPHPVcdpAN/4pAzTJah1pY7mi9f1MxG887SDkjF/tdiQK+5200Y8N5Hg125sewdMQ1K2agoAo8hDiA==",
2769 "license": "MIT",
2770 "dependencies": {
2756 - "@shikijs/types": "2.1.0",
2757 - "@shikijs/vscode-textmate": "^10.0.1"
2771 + "@shikijs/types": "3.0.0",
2772 + "@shikijs/vscode-textmate": "^10.0.2"
2773 }
2774 },
2775 "node_modules/@shikijs/langs": {
2761 - "version": "2.1.0",
2762 - "resolved": "https://registry.npmjs.org/@shikijs/langs/-/langs-2.1.0.tgz",
2763 - "integrity": "sha512-Jn0gS4rPgerMDPj1ydjgFzZr5fAIoMYz4k7ZT3LJxWWBWA6lokK0pumUwVtb+MzXtlpjxOaQejLprmLbvMZyww==",
2776 + "version": "3.0.0",
2777 + "resolved": "https://registry.npmjs.org/@shikijs/langs/-/langs-3.0.0.tgz",
2778 + "integrity": "sha512-HBsZAukiYz7k3hzttPWa0en3PABEwK3cpxcAcERRwvwuKc5pn0Y+yPxAIYZtN9cFdtNqrbFJNhfcEu/xbG1u/A==",
2779 "license": "MIT",
2780 "dependencies": {
2766 - "@shikijs/types": "2.1.0"
2781 + "@shikijs/types": "3.0.0"
2782 }
2783 },
2784 "node_modules/@shikijs/markdown-it": {
2770 - "version": "2.1.0",
2771 - "resolved": "https://registry.npmjs.org/@shikijs/markdown-it/-/markdown-it-2.1.0.tgz",
2772 - "integrity": "sha512-Z+OIx0XOfpsETAgNoBjoUlZehSkO+K31GW5RE8l9cc8WxcQdRldXLD+3oavfcA4zoetZJaVUzl60X4kf53bvdA==",
2785 + "version": "3.0.0",
2786 + "resolved": "https://registry.npmjs.org/@shikijs/markdown-it/-/markdown-it-3.0.0.tgz",
2787 + "integrity": "sha512-XCTFyhNgGeKO2Fh/wbsiOel9gOWGbIFL+c9oC2tYAqsSaWaJmFn0ePTrY7AJXyWyyfFruW2T2ISs9uKtR9w02w==",
2788 "license": "MIT",
2789 "dependencies": {
2790 "markdown-it": "^14.1.0",
2776 - "shiki": "2.1.0"
2791 + "shiki": "3.0.0"
2792 },
2793 "peerDependencies": {
2779 - "markdown-it-async": "^1.1.1"
2794 + "markdown-it-async": "^2.0.0"
2795 },
2796 "peerDependenciesMeta": {
2797 "markdown-it-async": {
@@ -2785,28 +2800,28 @@
2800 }
2801 },
2802 "node_modules/@shikijs/themes": {
2788 - "version": "2.1.0",
2789 - "resolved": "https://registry.npmjs.org/@shikijs/themes/-/themes-2.1.0.tgz",
2790 - "integrity": "sha512-oS2mU6+bz+8TKutsjBxBA7Z3vrQk21RCmADLpnu8cy3tZD6Rw0FKqDyXNtwX52BuIDKHxZNmRlTdG3vtcYv3NQ==",
2803 + "version": "3.0.0",
2804 + "resolved": "https://registry.npmjs.org/@shikijs/themes/-/themes-3.0.0.tgz",
2805 + "integrity": "sha512-mz63nyVB5nXWsv5H2hifDFIThZEJ/cJhMq1/+0JjMdOuuBq2H2D1Fn8UM5yzUtEvap/ipRltv381+hsHZFs4ug==",
2806 "license": "MIT",
2807 "dependencies": {
2793 - "@shikijs/types": "2.1.0"
2808 + "@shikijs/types": "3.0.0"
2809 }
2810 },
2811 "node_modules/@shikijs/types": {
2797 - "version": "2.1.0",
2798 - "resolved": "https://registry.npmjs.org/@shikijs/types/-/types-2.1.0.tgz",
2799 - "integrity": "sha512-OFOdHA6VEVbiQvepJ8yqicC6VmBrKxFFhM2EsHHrZESqLVAXOSeRDiuSYV185lIgp15TVic5vYBYNhTsk1xHLg==",
2812 + "version": "3.0.0",
2813 + "resolved": "https://registry.npmjs.org/@shikijs/types/-/types-3.0.0.tgz",
2814 + "integrity": "sha512-kh/xgZHxI6m9trVvPw+C47jyVHx190r0F5gkF+VO5vYB54UtcoPJe66dzZmK7GbJbzmtGEGbOwct/jsoPjjUqg==",
2815 "license": "MIT",
2816 "dependencies": {
2802 - "@shikijs/vscode-textmate": "^10.0.1",
2817 + "@shikijs/vscode-textmate": "^10.0.2",
2818 "@types/hast": "^3.0.4"
2819 }
2820 },
2821 "node_modules/@shikijs/vscode-textmate": {
2807 - "version": "10.0.1",
2808 - "resolved": "https://registry.npmjs.org/@shikijs/vscode-textmate/-/vscode-textmate-10.0.1.tgz",
2809 - "integrity": "sha512-fTIQwLF+Qhuws31iw7Ncl1R3HUDtGwIipiJ9iU+UsDUwMhegFcQKQHd51nZjb7CArq0MvON8rbgCGQYWHUKAdg==",
2822 + "version": "10.0.2",
2823 + "resolved": "https://registry.npmjs.org/@shikijs/vscode-textmate/-/vscode-textmate-10.0.2.tgz",
2824 + "integrity": "sha512-83yeghZ2xxin3Nj8z1NMd/NCuca+gsYXswywDy5bHvwlWL8tpTQmzGeUuHd9FC3E/SBEMvzJRwWEOz5gGes9Qg==",
2825 "license": "MIT"
2826 },
2827 "node_modules/@sideway/address": {
@@ -2846,13 +2861,13 @@
2861 }
2862 },
2863 "node_modules/@stylistic/eslint-plugin": {
2849 - "version": "3.0.1",
2850 - "resolved": "https://registry.npmjs.org/@stylistic/eslint-plugin/-/eslint-plugin-3.0.1.tgz",
2851 - "integrity": "sha512-rQ3tcT5N2cynofJfbjUsnL4seoewTaOVBLyUEwtNldo7iNMPo3h/GUQk+Cl3iHEWwRxjq2wuH6q0FufQrbVL1A==",
2864 + "version": "4.0.1",
2865 + "resolved": "https://registry.npmjs.org/@stylistic/eslint-plugin/-/eslint-plugin-4.0.1.tgz",
2866 + "integrity": "sha512-RwKkRKiDrF4ptiur54ckDhOByQYKYZ1dEmI5K8BJCmuGpauFJXzVL1UQYTA2zq702CqMFdYiJcVFJWfokIgFxw==",
2867 "dev": true,
2868 "license": "MIT",
2869 "dependencies": {
2855 - "@typescript-eslint/utils": "^8.13.0",
2870 + "@typescript-eslint/utils": "^8.23.0",
2871 "eslint-visitor-keys": "^4.2.0",
2872 "espree": "^10.3.0",
2873 "estraverse": "^5.3.0",
@@ -2862,13 +2877,13 @@
2877 "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
2878 },
2879 "peerDependencies": {
2865 - "eslint": ">=8.40.0"
2880 + "eslint": ">=9.0.0"
2881 }
2882 },
2883 "node_modules/@svgdotjs/svg.draggable.js": {
2869 - "version": "3.0.5",
2870 - "resolved": "https://registry.npmjs.org/@svgdotjs/svg.draggable.js/-/svg.draggable.js-3.0.5.tgz",
2871 - "integrity": "sha512-ljL/fB0tAjRfFOJGhXpr7rEx9DJ6D7Pxt3AXvgxjEM17g6wK3Ho9nXhntraOMx8JLZdq4NBMjokeXMvnQzJVYA==",
2884 + "version": "3.0.6",
2885 + "resolved": "https://registry.npmjs.org/@svgdotjs/svg.draggable.js/-/svg.draggable.js-3.0.6.tgz",
2886 + "integrity": "sha512-7iJFm9lL3C40HQcqzEfezK2l+dW2CpoVY3b77KQGqc8GXWa6LhhmX5Ckv7alQfUXBuZbjpICZ+Dvq1czlGx7gA==",
2887 "license": "MIT",
2888 "peer": true,
2889 "peerDependencies": {
@@ -2876,13 +2891,13 @@
2891 }
2892 },
2893 "node_modules/@svgdotjs/svg.filter.js": {
2879 - "version": "3.0.8",
2880 - "resolved": "https://registry.npmjs.org/@svgdotjs/svg.filter.js/-/svg.filter.js-3.0.8.tgz",
2881 - "integrity": "sha512-YshF2YDaeRA2StyzAs5nUPrev7npQ38oWD0eTRwnsciSL2KrRPMoUw8BzjIXItb3+dccKGTX3IQOd2NFzmHkog==",
2894 + "version": "3.0.9",
2895 + "resolved": "https://registry.npmjs.org/@svgdotjs/svg.filter.js/-/svg.filter.js-3.0.9.tgz",
2896 + "integrity": "sha512-/69XMRCDoam2HgC4ldHIaDgeQf1ViHIsa0Ld4uWgiXtZ+E24DWHe/9Ib6kbNiZ7WRIdlVokUDR1Fg0kjIpkfbw==",
2897 "license": "MIT",
2898 "peer": true,
2899 "dependencies": {
2885 - "@svgdotjs/svg.js": "^3.1.1"
2900 + "@svgdotjs/svg.js": "^3.2.4"
2901 },
2902 "engines": {
2903 "node": ">= 0.8.0"
@@ -3094,9 +3109,9 @@
3109 "license": "MIT"
3110 },
3111 "node_modules/@types/node": {
3097 - "version": "22.12.0",
3098 - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.12.0.tgz",
3099 - "integrity": "sha512-Fll2FZ1riMjNmlmJOdAyY5pUbkftXslB5DgEzlIuNaiWhXd00FhWxVC/r4yV/4wBb9JfImTu+jiSvXTkJ7F/gA==",
3112 + "version": "22.13.5",
3113 + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.13.5.tgz",
3114 + "integrity": "sha512-+lTU0PxZXn0Dr1NBtC7Y8cR21AJr87dLLU953CWA6pMxxv/UDc7jYAY90upcrie1nRcD6XNG5HOYEDtgW5TxAg==",
3115 "dev": true,
3116 "license": "MIT",
3117 "dependencies": {
@@ -3169,21 +3184,21 @@
3184 }
3185 },
3186 "node_modules/@typescript-eslint/eslint-plugin": {
3172 - "version": "8.22.0",
3173 - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.22.0.tgz",
3174 - "integrity": "sha512-4Uta6REnz/xEJMvwf72wdUnC3rr4jAQf5jnTkeRQ9b6soxLxhDEbS/pfMPoJLDfFPNVRdryqWUIV/2GZzDJFZw==",
3187 + "version": "8.25.0",
3188 + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.25.0.tgz",
3189 + "integrity": "sha512-VM7bpzAe7JO/BFf40pIT1lJqS/z1F8OaSsUB3rpFJucQA4cOSuH2RVVVkFULN+En0Djgr29/jb4EQnedUo95KA==",
3190 "dev": true,
3191 "license": "MIT",
3192 "dependencies": {
3193 "@eslint-community/regexpp": "^4.10.0",
3179 - "@typescript-eslint/scope-manager": "8.22.0",
3180 - "@typescript-eslint/type-utils": "8.22.0",
3181 - "@typescript-eslint/utils": "8.22.0",
3182 - "@typescript-eslint/visitor-keys": "8.22.0",
3194 + "@typescript-eslint/scope-manager": "8.25.0",
3195 + "@typescript-eslint/type-utils": "8.25.0",
3196 + "@typescript-eslint/utils": "8.25.0",
3197 + "@typescript-eslint/visitor-keys": "8.25.0",
3198 "graphemer": "^1.4.0",
3199 "ignore": "^5.3.1",
3200 "natural-compare": "^1.4.0",
3186 - "ts-api-utils": "^2.0.0"
3201 + "ts-api-utils": "^2.0.1"
3202 },
3203 "engines": {
3204 "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -3199,16 +3214,16 @@
3214 }
3215 },
3216 "node_modules/@typescript-eslint/parser": {
3202 - "version": "8.22.0",
3203 - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.22.0.tgz",
3204 - "integrity": "sha512-MqtmbdNEdoNxTPzpWiWnqNac54h8JDAmkWtJExBVVnSrSmi9z+sZUt0LfKqk9rjqmKOIeRhO4fHHJ1nQIjduIQ==",
3217 + "version": "8.25.0",
3218 + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.25.0.tgz",
3219 + "integrity": "sha512-4gbs64bnbSzu4FpgMiQ1A+D+urxkoJk/kqlDJ2W//5SygaEiAP2B4GoS7TEdxgwol2el03gckFV9lJ4QOMiiHg==",
3220 "dev": true,
3221 "license": "MIT",
3222 "dependencies": {
3208 - "@typescript-eslint/scope-manager": "8.22.0",
3209 - "@typescript-eslint/types": "8.22.0",
3210 - "@typescript-eslint/typescript-estree": "8.22.0",
3211 - "@typescript-eslint/visitor-keys": "8.22.0",
3223 + "@typescript-eslint/scope-manager": "8.25.0",
3224 + "@typescript-eslint/types": "8.25.0",
3225 + "@typescript-eslint/typescript-estree": "8.25.0",
3226 + "@typescript-eslint/visitor-keys": "8.25.0",
3227 "debug": "^4.3.4"
3228 },
3229 "engines": {
@@ -3224,14 +3239,14 @@
3239 }
3240 },
3241 "node_modules/@typescript-eslint/scope-manager": {
3227 - "version": "8.22.0",
3228 - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.22.0.tgz",
3229 - "integrity": "sha512-/lwVV0UYgkj7wPSw0o8URy6YI64QmcOdwHuGuxWIYznO6d45ER0wXUbksr9pYdViAofpUCNJx/tAzNukgvaaiQ==",
3242 + "version": "8.25.0",
3243 + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.25.0.tgz",
3244 + "integrity": "sha512-6PPeiKIGbgStEyt4NNXa2ru5pMzQ8OYKO1hX1z53HMomrmiSB+R5FmChgQAP1ro8jMtNawz+TRQo/cSXrauTpg==",
3245 "dev": true,
3246 "license": "MIT",
3247 "dependencies": {
3233 - "@typescript-eslint/types": "8.22.0",
3234 - "@typescript-eslint/visitor-keys": "8.22.0"
3248 + "@typescript-eslint/types": "8.25.0",
3249 + "@typescript-eslint/visitor-keys": "8.25.0"
3250 },
3251 "engines": {
3252 "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -3242,16 +3257,16 @@
3257 }
3258 },
3259 "node_modules/@typescript-eslint/type-utils": {
3245 - "version": "8.22.0",
3246 - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.22.0.tgz",
3247 - "integrity": "sha512-NzE3aB62fDEaGjaAYZE4LH7I1MUwHooQ98Byq0G0y3kkibPJQIXVUspzlFOmOfHhiDLwKzMlWxaNv+/qcZurJA==",
3260 + "version": "8.25.0",
3261 + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.25.0.tgz",
3262 + "integrity": "sha512-d77dHgHWnxmXOPJuDWO4FDWADmGQkN5+tt6SFRZz/RtCWl4pHgFl3+WdYCn16+3teG09DY6XtEpf3gGD0a186g==",
3263 "dev": true,
3264 "license": "MIT",
3265 "dependencies": {
3251 - "@typescript-eslint/typescript-estree": "8.22.0",
3252 - "@typescript-eslint/utils": "8.22.0",
3266 + "@typescript-eslint/typescript-estree": "8.25.0",
3267 + "@typescript-eslint/utils": "8.25.0",
3268 "debug": "^4.3.4",
3254 - "ts-api-utils": "^2.0.0"
3269 + "ts-api-utils": "^2.0.1"
3270 },
3271 "engines": {
3272 "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -3266,9 +3281,9 @@
3281 }
3282 },
3283 "node_modules/@typescript-eslint/types": {
3269 - "version": "8.22.0",
3270 - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.22.0.tgz",
3271 - "integrity": "sha512-0S4M4baNzp612zwpD4YOieP3VowOARgK2EkN/GBn95hpyF8E2fbMT55sRHWBq+Huaqk3b3XK+rxxlM8sPgGM6A==",
3284 + "version": "8.25.0",
3285 + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.25.0.tgz",
3286 + "integrity": "sha512-+vUe0Zb4tkNgznQwicsvLUJgZIRs6ITeWSCclX1q85pR1iOiaj+4uZJIUp//Z27QWu5Cseiw3O3AR8hVpax7Aw==",
3287 "dev": true,
3288 "license": "MIT",
3289 "engines": {
@@ -3280,20 +3295,20 @@
3295 }
3296 },
3297 "node_modules/@typescript-eslint/typescript-estree": {
3283 - "version": "8.22.0",
3284 - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.22.0.tgz",
3285 - "integrity": "sha512-SJX99NAS2ugGOzpyhMza/tX+zDwjvwAtQFLsBo3GQxiGcvaKlqGBkmZ+Y1IdiSi9h4Q0Lr5ey+Cp9CGWNY/F/w==",
3298 + "version": "8.25.0",
3299 + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.25.0.tgz",
3300 + "integrity": "sha512-ZPaiAKEZ6Blt/TPAx5Ot0EIB/yGtLI2EsGoY6F7XKklfMxYQyvtL+gT/UCqkMzO0BVFHLDlzvFqQzurYahxv9Q==",
3301 "dev": true,
3302 "license": "MIT",
3303 "dependencies": {
3289 - "@typescript-eslint/types": "8.22.0",
3290 - "@typescript-eslint/visitor-keys": "8.22.0",
3304 + "@typescript-eslint/types": "8.25.0",
3305 + "@typescript-eslint/visitor-keys": "8.25.0",
3306 "debug": "^4.3.4",
3307 "fast-glob": "^3.3.2",
3308 "is-glob": "^4.0.3",
3309 "minimatch": "^9.0.4",
3310 "semver": "^7.6.0",
3296 - "ts-api-utils": "^2.0.0"
3311 + "ts-api-utils": "^2.0.1"
3312 },
3313 "engines": {
3314 "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -3307,16 +3322,16 @@
3322 }
3323 },
3324 "node_modules/@typescript-eslint/utils": {
3310 - "version": "8.22.0",
3311 - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.22.0.tgz",
3312 - "integrity": "sha512-T8oc1MbF8L+Bk2msAvCUzjxVB2Z2f+vXYfcucE2wOmYs7ZUwco5Ep0fYZw8quNwOiw9K8GYVL+Kgc2pETNTLOg==",
3325 + "version": "8.25.0",
3326 + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.25.0.tgz",
3327 + "integrity": "sha512-syqRbrEv0J1wywiLsK60XzHnQe/kRViI3zwFALrNEgnntn1l24Ra2KvOAWwWbWZ1lBZxZljPDGOq967dsl6fkA==",
3328 "dev": true,
3329 "license": "MIT",
3330 "dependencies": {
3331 "@eslint-community/eslint-utils": "^4.4.0",
3317 - "@typescript-eslint/scope-manager": "8.22.0",
3318 - "@typescript-eslint/types": "8.22.0",
3319 - "@typescript-eslint/typescript-estree": "8.22.0"
3332 + "@typescript-eslint/scope-manager": "8.25.0",
3333 + "@typescript-eslint/types": "8.25.0",
3334 + "@typescript-eslint/typescript-estree": "8.25.0"
3335 },
3336 "engines": {
3337 "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -3331,13 +3346,13 @@
3346 }
3347 },
3348 "node_modules/@typescript-eslint/visitor-keys": {
3334 - "version": "8.22.0",
3335 - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.22.0.tgz",
3336 - "integrity": "sha512-AWpYAXnUgvLNabGTy3uBylkgZoosva/miNd1I8Bz3SjotmQPbVqhO4Cczo8AsZ44XVErEBPr/CRSgaj8sG7g0w==",
3349 + "version": "8.25.0",
3350 + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.25.0.tgz",
3351 + "integrity": "sha512-kCYXKAum9CecGVHGij7muybDfTS2sD3t0L4bJsEZLkyrXUImiCTq1M3LG2SRtOhiHFwMR9wAFplpT6XHYjTkwQ==",
3352 "dev": true,
3353 "license": "MIT",
3354 "dependencies": {
3340 - "@typescript-eslint/types": "8.22.0",
3355 + "@typescript-eslint/types": "8.25.0",
3356 "eslint-visitor-keys": "^4.2.0"
3357 },
3358 "engines": {
@@ -3388,9 +3403,9 @@
3403 }
3404 },
3405 "node_modules/@vitest/eslint-plugin": {
3391 - "version": "1.1.25",
3392 - "resolved": "https://registry.npmjs.org/@vitest/eslint-plugin/-/eslint-plugin-1.1.25.tgz",
3393 - "integrity": "sha512-u8DpDnMbPcqBmJOB4PeEtn6q7vKmLVTLFMpzoxSAo0hjYdl4iYSHRleqwPQo0ywc7UV0S6RKIahYRQ3BnZdMVw==",
3406 + "version": "1.1.31",
3407 + "resolved": "https://registry.npmjs.org/@vitest/eslint-plugin/-/eslint-plugin-1.1.31.tgz",
3408 + "integrity": "sha512-xlsLr+e+AXZ/00eVZCtNmMeCJoJaRCoLDiAgLcxgQjSS1EertieB2MUHf8xIqPKs9lECc/UpL+y1xDcpvi02hw==",
3409 "dev": true,
3410 "license": "MIT",
3411 "peerDependencies": {
@@ -3409,15 +3424,15 @@
3424 }
3425 },
3426 "node_modules/@vitest/expect": {
3412 - "version": "3.0.4",
3413 - "resolved": "https://registry.npmjs.org/@vitest/expect/-/expect-3.0.4.tgz",
3414 - "integrity": "sha512-Nm5kJmYw6P2BxhJPkO3eKKhGYKRsnqJqf+r0yOGRKpEP+bSCBDsjXgiu1/5QFrnPMEgzfC38ZEjvCFgaNBC0Eg==",
3427 + "version": "3.0.7",
3428 + "resolved": "https://registry.npmjs.org/@vitest/expect/-/expect-3.0.7.tgz",
3429 + "integrity": "sha512-QP25f+YJhzPfHrHfYHtvRn+uvkCFCqFtW9CktfBxmB+25QqWsx7VB2As6f4GmwllHLDhXNHvqedwhvMmSnNmjw==",
3430 "dev": true,
3431 "license": "MIT",
3432 "dependencies": {
3418 - "@vitest/spy": "3.0.4",
3419 - "@vitest/utils": "3.0.4",
3420 - "chai": "^5.1.2",
3433 + "@vitest/spy": "3.0.7",
3434 + "@vitest/utils": "3.0.7",
3435 + "chai": "^5.2.0",
3436 "tinyrainbow": "^2.0.0"
3437 },
3438 "funding": {
@@ -3425,13 +3440,13 @@
3440 }
3441 },
3442 "node_modules/@vitest/mocker": {
3428 - "version": "3.0.4",
3429 - "resolved": "https://registry.npmjs.org/@vitest/mocker/-/mocker-3.0.4.tgz",
3430 - "integrity": "sha512-gEef35vKafJlfQbnyOXZ0Gcr9IBUsMTyTLXsEQwuyYAerpHqvXhzdBnDFuHLpFqth3F7b6BaFr4qV/Cs1ULx5A==",
3443 + "version": "3.0.7",
3444 + "resolved": "https://registry.npmjs.org/@vitest/mocker/-/mocker-3.0.7.tgz",
3445 + "integrity": "sha512-qui+3BLz9Eonx4EAuR/i+QlCX6AUZ35taDQgwGkK/Tw6/WgwodSrjN1X2xf69IA/643ZX5zNKIn2svvtZDrs4w==",
3446 "dev": true,
3447 "license": "MIT",
3448 "dependencies": {
3434 - "@vitest/spy": "3.0.4",
3449 + "@vitest/spy": "3.0.7",
3450 "estree-walker": "^3.0.3",
3451 "magic-string": "^0.30.17"
3452 },
@@ -3462,9 +3477,9 @@
3477 }
3478 },
3479 "node_modules/@vitest/pretty-format": {
3465 - "version": "3.0.4",
3466 - "resolved": "https://registry.npmjs.org/@vitest/pretty-format/-/pretty-format-3.0.4.tgz",
3467 - "integrity": "sha512-ts0fba+dEhK2aC9PFuZ9LTpULHpY/nd6jhAQ5IMU7Gaj7crPCTdCFfgvXxruRBLFS+MLraicCuFXxISEq8C93g==",
3480 + "version": "3.0.7",
3481 + "resolved": "https://registry.npmjs.org/@vitest/pretty-format/-/pretty-format-3.0.7.tgz",
3482 + "integrity": "sha512-CiRY0BViD/V8uwuEzz9Yapyao+M9M008/9oMOSQydwbwb+CMokEq3XVaF3XK/VWaOK0Jm9z7ENhybg70Gtxsmg==",
3483 "dev": true,
3484 "license": "MIT",
3485 "dependencies": {
@@ -3475,38 +3490,38 @@
3490 }
3491 },
3492 "node_modules/@vitest/runner": {
3478 - "version": "3.0.4",
3479 - "resolved": "https://registry.npmjs.org/@vitest/runner/-/runner-3.0.4.tgz",
3480 - "integrity": "sha512-dKHzTQ7n9sExAcWH/0sh1elVgwc7OJ2lMOBrAm73J7AH6Pf9T12Zh3lNE1TETZaqrWFXtLlx3NVrLRb5hCK+iw==",
3493 + "version": "3.0.7",
3494 + "resolved": "https://registry.npmjs.org/@vitest/runner/-/runner-3.0.7.tgz",
3495 + "integrity": "sha512-WeEl38Z0S2ZcuRTeyYqaZtm4e26tq6ZFqh5y8YD9YxfWuu0OFiGFUbnxNynwLjNRHPsXyee2M9tV7YxOTPZl2g==",
3496 "dev": true,
3497 "license": "MIT",
3498 "dependencies": {
3484 - "@vitest/utils": "3.0.4",
3485 - "pathe": "^2.0.2"
3499 + "@vitest/utils": "3.0.7",
3500 + "pathe": "^2.0.3"
3501 },
3502 "funding": {
3503 "url": "https://opencollective.com/vitest"
3504 }
3505 },
3506 "node_modules/@vitest/snapshot": {
3492 - "version": "3.0.4",
3493 - "resolved": "https://registry.npmjs.org/@vitest/snapshot/-/snapshot-3.0.4.tgz",
3494 - "integrity": "sha512-+p5knMLwIk7lTQkM3NonZ9zBewzVp9EVkVpvNta0/PlFWpiqLaRcF4+33L1it3uRUCh0BGLOaXPPGEjNKfWb4w==",
3507 + "version": "3.0.7",
3508 + "resolved": "https://registry.npmjs.org/@vitest/snapshot/-/snapshot-3.0.7.tgz",
3509 + "integrity": "sha512-eqTUryJWQN0Rtf5yqCGTQWsCFOQe4eNz5Twsu21xYEcnFJtMU5XvmG0vgebhdLlrHQTSq5p8vWHJIeJQV8ovsA==",
3510 "dev": true,
3511 "license": "MIT",
3512 "dependencies": {
3498 - "@vitest/pretty-format": "3.0.4",
3513 + "@vitest/pretty-format": "3.0.7",
3514 "magic-string": "^0.30.17",
3500 - "pathe": "^2.0.2"
3515 + "pathe": "^2.0.3"
3516 },
3517 "funding": {
3518 "url": "https://opencollective.com/vitest"
3519 }
3520 },
3521 "node_modules/@vitest/spy": {
3507 - "version": "3.0.4",
3508 - "resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-3.0.4.tgz",
3509 - "integrity": "sha512-sXIMF0oauYyUy2hN49VFTYodzEAu744MmGcPR3ZBsPM20G+1/cSW/n1U+3Yu/zHxX2bIDe1oJASOkml+osTU6Q==",
3522 + "version": "3.0.7",
3523 + "resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-3.0.7.tgz",
3524 + "integrity": "sha512-4T4WcsibB0B6hrKdAZTM37ekuyFZt2cGbEGd2+L0P8ov15J1/HUsUaqkXEQPNAWr4BtPPe1gI+FYfMHhEKfR8w==",
3525 "dev": true,
3526 "license": "MIT",
3527 "dependencies": {
@@ -3517,14 +3532,14 @@
3532 }
3533 },
3534 "node_modules/@vitest/utils": {
3520 - "version": "3.0.4",
3521 - "resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-3.0.4.tgz",
3522 - "integrity": "sha512-8BqC1ksYsHtbWH+DfpOAKrFw3jl3Uf9J7yeFh85Pz52IWuh1hBBtyfEbRNNZNjl8H8A5yMLH9/t+k7HIKzQcZQ==",
3535 + "version": "3.0.7",
3536 + "resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-3.0.7.tgz",
3537 + "integrity": "sha512-xePVpCRfooFX3rANQjwoditoXgWb1MaFbzmGuPP59MK6i13mrnDw/yEIyJudLeW6/38mCNcwCiJIGmpDPibAIg==",
3538 "dev": true,
3539 "license": "MIT",
3540 "dependencies": {
3526 - "@vitest/pretty-format": "3.0.4",
3527 - "loupe": "^3.1.2",
3541 + "@vitest/pretty-format": "3.0.7",
3542 + "loupe": "^3.1.3",
3543 "tinyrainbow": "^2.0.0"
3544 },
3545 "funding": {
@@ -3673,20 +3688,23 @@
3688 }
3689 },
3690 "node_modules/@vue/devtools-api": {
3676 - "version": "6.6.4",
3677 - "resolved": "https://registry.npmjs.org/@vue/devtools-api/-/devtools-api-6.6.4.tgz",
3678 - "integrity": "sha512-sGhTPMuXqZ1rVOk32RylztWkfXTRhuS7vgAKv0zjqk8gbsHkJ7xfFf+jbySxt7tWObEJwyKaHMikV/WGDiQm8g==",
3679 - "license": "MIT"
3691 + "version": "7.7.2",
3692 + "resolved": "https://registry.npmjs.org/@vue/devtools-api/-/devtools-api-7.7.2.tgz",
3693 + "integrity": "sha512-1syn558KhyN+chO5SjlZIwJ8bV/bQ1nOVTG66t2RbG66ZGekyiYNmRO7X9BJCXQqPsFHlnksqvPhce2qpzxFnA==",
3694 + "license": "MIT",
3695 + "dependencies": {
3696 + "@vue/devtools-kit": "^7.7.2"
3697 + }
3698 },
3699 "node_modules/@vue/devtools-core": {
3682 - "version": "7.7.1",
3683 - "resolved": "https://registry.npmjs.org/@vue/devtools-core/-/devtools-core-7.7.1.tgz",
3684 - "integrity": "sha512-W4CRrSZJodNIfrPO7/dXF6ZS0QyOY6PCYVhpSoTSx9+nh2wpZxcS1482lAdKM0FTlaoApHV6jXT95Me90hSaBA==",
3700 + "version": "7.7.2",
3701 + "resolved": "https://registry.npmjs.org/@vue/devtools-core/-/devtools-core-7.7.2.tgz",
3702 + "integrity": "sha512-lexREWj1lKi91Tblr38ntSsy6CvI8ba7u+jmwh2yruib/ltLUcsIzEjCnrkh1yYGGIKXbAuYV2tOG10fGDB9OQ==",
3703 "dev": true,
3704 "license": "MIT",
3705 "dependencies": {
3688 - "@vue/devtools-kit": "^7.7.1",
3689 - "@vue/devtools-shared": "^7.7.1",
3706 + "@vue/devtools-kit": "^7.7.2",
3707 + "@vue/devtools-shared": "^7.7.2",
3708 "mitt": "^3.0.1",
3709 "nanoid": "^5.0.9",
3710 "pathe": "^2.0.2",
@@ -3697,13 +3715,12 @@
3715 }
3716 },
3717 "node_modules/@vue/devtools-kit": {
3700 - "version": "7.7.1",
3701 - "resolved": "https://registry.npmjs.org/@vue/devtools-kit/-/devtools-kit-7.7.1.tgz",
3702 - "integrity": "sha512-yhZ4NPnK/tmxGtLNQxmll90jIIXdb2jAhPF76anvn5M/UkZCiLJy28bYgPIACKZ7FCosyKoaope89/RsFJll1w==",
3703 - "dev": true,
3718 + "version": "7.7.2",
3719 + "resolved": "https://registry.npmjs.org/@vue/devtools-kit/-/devtools-kit-7.7.2.tgz",
3720 + "integrity": "sha512-CY0I1JH3Z8PECbn6k3TqM1Bk9ASWxeMtTCvZr7vb+CHi+X/QwQm5F1/fPagraamKMAHVfuuCbdcnNg1A4CYVWQ==",
3721 "license": "MIT",
3722 "dependencies": {
3706 - "@vue/devtools-shared": "^7.7.1",
3723 + "@vue/devtools-shared": "^7.7.2",
3724 "birpc": "^0.2.19",
3725 "hookable": "^5.5.3",
3726 "mitt": "^3.0.1",
@@ -3713,19 +3730,18 @@
3730 }
3731 },
3732 "node_modules/@vue/devtools-shared": {
3716 - "version": "7.7.1",
3717 - "resolved": "https://registry.npmjs.org/@vue/devtools-shared/-/devtools-shared-7.7.1.tgz",
3718 - "integrity": "sha512-BtgF7kHq4BHG23Lezc/3W2UhK2ga7a8ohAIAGJMBr4BkxUFzhqntQtCiuL1ijo2ztWnmusymkirgqUrXoQKumA==",
3719 - "dev": true,
3733 + "version": "7.7.2",
3734 + "resolved": "https://registry.npmjs.org/@vue/devtools-shared/-/devtools-shared-7.7.2.tgz",
3735 + "integrity": "sha512-uBFxnp8gwW2vD6FrJB8JZLUzVb6PNRG0B0jBnHsOH8uKyva2qINY8PTF5Te4QlTbMDqU5K6qtJDr6cNsKWhbOA==",
3736 "license": "MIT",
3737 "dependencies": {
3738 "rfdc": "^1.4.1"
3739 }
3740 },
3741 "node_modules/@vue/language-core": {
3726 - "version": "2.2.0",
3727 - "resolved": "https://registry.npmjs.org/@vue/language-core/-/language-core-2.2.0.tgz",
3728 - "integrity": "sha512-O1ZZFaaBGkKbsRfnVH1ifOK1/1BUkyK+3SQsfnh6PmMmD4qJcTU8godCeA96jjDRTL6zgnK7YzCHfaUlH2r0Mw==",
3742 + "version": "2.2.4",
3743 + "resolved": "https://registry.npmjs.org/@vue/language-core/-/language-core-2.2.4.tgz",
3744 + "integrity": "sha512-eGGdw7eWUwdIn9Fy/irJ7uavCGfgemuHQABgJ/hU1UgZFnbTg9VWeXvHQdhY+2SPQZWJqWXvRWIg67t4iWEa+Q==",
3745 "dev": true,
3746 "license": "MIT",
3747 "dependencies": {
@@ -3733,7 +3749,7 @@
3749 "@vue/compiler-dom": "^3.5.0",
3750 "@vue/compiler-vue2": "^2.7.16",
3751 "@vue/shared": "^3.5.0",
3736 - "alien-signals": "^0.4.9",
3752 + "alien-signals": "^1.0.3",
3753 "minimatch": "^9.0.3",
3754 "muggle-string": "^0.4.1",
3755 "path-browserify": "^1.0.1"
@@ -3828,14 +3844,14 @@
3844 }
3845 },
3846 "node_modules/@vueuse/core": {
3831 - "version": "12.5.0",
3832 - "resolved": "https://registry.npmjs.org/@vueuse/core/-/core-12.5.0.tgz",
3833 - "integrity": "sha512-GVyH1iYqNANwcahAx8JBm6awaNgvR/SwZ1fjr10b8l1HIgDp82ngNbfzJUgOgWEoxjL+URAggnlilAEXwCOZtg==",
3847 + "version": "12.7.0",
3848 + "resolved": "https://registry.npmjs.org/@vueuse/core/-/core-12.7.0.tgz",
3849 + "integrity": "sha512-jtK5B7YjZXmkGNHjviyGO4s3ZtEhbzSgrbX+s5o+Lr8i2nYqNyHuPVOeTdM1/hZ5Tkxg/KktAuAVDDiHMraMVA==",
3850 "license": "MIT",
3851 "dependencies": {
3852 "@types/web-bluetooth": "^0.0.20",
3837 - "@vueuse/metadata": "12.5.0",
3838 - "@vueuse/shared": "12.5.0",
3853 + "@vueuse/metadata": "12.7.0",
3854 + "@vueuse/shared": "12.7.0",
3855 "vue": "^3.5.13"
3856 },
3857 "funding": {
@@ -3843,18 +3859,18 @@
3859 }
3860 },
3861 "node_modules/@vueuse/metadata": {
3846 - "version": "12.5.0",
3847 - "resolved": "https://registry.npmjs.org/@vueuse/metadata/-/metadata-12.5.0.tgz",
3848 - "integrity": "sha512-Ui7Lo2a7AxrMAXRF+fAp9QsXuwTeeZ8fIB9wsLHqzq9MQk+2gMYE2IGJW48VMJ8ecvCB3z3GsGLKLbSasQ5Qlg==",
3862 + "version": "12.7.0",
3863 + "resolved": "https://registry.npmjs.org/@vueuse/metadata/-/metadata-12.7.0.tgz",
3864 + "integrity": "sha512-4VvTH9mrjXqFN5LYa5YfqHVRI6j7R00Vy4995Rw7PQxyCL3z0Lli86iN4UemWqixxEvYfRjG+hF9wL8oLOn+3g==",
3865 "license": "MIT",
3866 "funding": {
3867 "url": "https://github.com/sponsors/antfu"
3868 }
3869 },
3870 "node_modules/@vueuse/shared": {
3855 - "version": "12.5.0",
3856 - "resolved": "https://registry.npmjs.org/@vueuse/shared/-/shared-12.5.0.tgz",
3857 - "integrity": "sha512-vMpcL1lStUU6O+kdj6YdHDixh0odjPAUM15uJ9f7MY781jcYkIwFA4iv2EfoIPO6vBmvutI1HxxAwmf0cx5ISQ==",
3871 + "version": "12.7.0",
3872 + "resolved": "https://registry.npmjs.org/@vueuse/shared/-/shared-12.7.0.tgz",
3873 + "integrity": "sha512-coLlUw2HHKsm7rPN6WqHJQr18WymN4wkA/3ThFaJ4v4gWGWAQQGK+MJxLuJTBs4mojQiazlVWAKNJNpUWGRkNw==",
3874 "license": "MIT",
3875 "dependencies": {
3876 "vue": "^3.5.13"
@@ -3871,27 +3887,13 @@
3887 "peer": true
3888 },
3889 "node_modules/abbrev": {
3874 - "version": "2.0.0",
3875 - "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-2.0.0.tgz",
3876 - "integrity": "sha512-6/mh1E2u2YgEsCHdY0Yx5oW+61gZU+1vXaoiHHrpKeuRNNgFvS+/jrwHiQhB5apAf5oB7UB7E19ol2R2LKH8hQ==",
3890 + "version": "3.0.0",
3891 + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-3.0.0.tgz",
3892 + "integrity": "sha512-+/kfrslGQ7TNV2ecmQwMJj/B65g5KVq1/L3SGVZ3tCYGqlzFuFCGBZJtMP99wH3NpEUyAjn0zPdPUg0D+DwrOA==",
3893 "dev": true,
3894 "license": "ISC",
3895 "engines": {
3880 - "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
3881 - }
3882 - },
3883 - "node_modules/accepts": {
3884 - "version": "1.3.8",
3885 - "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz",
3886 - "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==",
3887 - "dev": true,
3888 - "license": "MIT",
3889 - "dependencies": {
3890 - "mime-types": "~2.1.34",
3891 - "negotiator": "0.6.3"
3892 - },
3893 - "engines": {
3894 - "node": ">= 0.6"
3896 + "node": "^18.17.0 || >=20.5.0"
3897 }
3898 },
3899 "node_modules/acorn": {
@@ -3940,6 +3942,16 @@
3942 "node": ">=8"
3943 }
3944 },
3945 + "node_modules/aggregate-error/node_modules/indent-string": {
3946 + "version": "4.0.0",
3947 + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz",
3948 + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==",
3949 + "dev": true,
3950 + "license": "MIT",
3951 + "engines": {
3952 + "node": ">=8"
3953 + }
3954 + },
3955 "node_modules/ajv": {
3956 "version": "6.12.6",
3957 "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz",
@@ -3958,9 +3970,9 @@
3970 }
3971 },
3972 "node_modules/alien-signals": {
3961 - "version": "0.4.14",
3962 - "resolved": "https://registry.npmjs.org/alien-signals/-/alien-signals-0.4.14.tgz",
3963 - "integrity": "sha512-itUAVzhczTmP2U5yX67xVpsbbOiquusbWVyA9N+sy6+r6YVbFkahXvNCeEPWEOMhwDYwbVbGHFkVL03N9I5g+Q==",
3973 + "version": "1.0.4",
3974 + "resolved": "https://registry.npmjs.org/alien-signals/-/alien-signals-1.0.4.tgz",
3975 + "integrity": "sha512-DJqqQD3XcsaQcQ1s+iE2jDUZmmQpXwHiR6fCAim/w87luaW+vmLY8fMlrdkmRwzaFXhkxf3rqPCR59tKVv1MDw==",
3976 "dev": true,
3977 "license": "MIT"
3978 },
@@ -4027,6 +4039,16 @@
4039 "url": "https://github.com/chalk/ansi-styles?sponsor=1"
4040 }
4041 },
4042 + "node_modules/ansis": {
4043 + "version": "3.16.0",
4044 + "resolved": "https://registry.npmjs.org/ansis/-/ansis-3.16.0.tgz",
4045 + "integrity": "sha512-sU7d/tfZiYrsIAXbdL/CNZld5bCkruzwT5KmqmadCJYxuLxHAOBjidxD5+iLmN/6xEfjcQq1l7OpsiCBlc4LzA==",
4046 + "dev": true,
4047 + "license": "ISC",
4048 + "engines": {
4049 + "node": ">=14"
4050 + }
4051 + },
4052 "node_modules/any-promise": {
4053 "version": "1.3.0",
4054 "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz",
@@ -4059,9 +4081,9 @@
4081 }
4082 },
4083 "node_modules/apexcharts": {
4062 - "version": "4.4.0",
4063 - "resolved": "https://registry.npmjs.org/apexcharts/-/apexcharts-4.4.0.tgz",
4064 - "integrity": "sha512-JGsHeQEKDlQh1rob8aBai9/HKvXIpbZ83TnobKZAcdOELf+oQZaxZyAnbbldr6PPBdCgG2zzzLaP1dtEsJxzWw==",
4084 + "version": "4.5.0",
4085 + "resolved": "https://registry.npmjs.org/apexcharts/-/apexcharts-4.5.0.tgz",
4086 + "integrity": "sha512-E7ZkrVqPNBUWy/Rmg8DEIqHNBmElzICE/oxOX5Ekvs2ICQUOK/VkEkMH09JGJu+O/EA0NL31hxlmF+wrwrSLaQ==",
4087 "license": "MIT",
4088 "peer": true,
4089 "dependencies": {
@@ -4338,7 +4360,6 @@
4360 "version": "0.2.19",
4361 "resolved": "https://registry.npmjs.org/birpc/-/birpc-0.2.19.tgz",
4362 "integrity": "sha512-5WeXXAvTmitV1RqJFppT5QtUiz2p1mRSYU000Jkft5ZUCLJIk4uQriYNO50HknxKwM6jd8utNc66K1qGIwwWBQ==",
4341 - "dev": true,
4363 "license": "MIT",
4364 "funding": {
4365 "url": "https://github.com/sponsors/antfu"
@@ -4454,13 +4475,13 @@
4475 }
4476 },
4477 "node_modules/builtin-modules": {
4457 - "version": "3.3.0",
4458 - "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.3.0.tgz",
4459 - "integrity": "sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==",
4478 + "version": "4.0.0",
4479 + "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-4.0.0.tgz",
4480 + "integrity": "sha512-p1n8zyCkt1BVrKNFymOHjcDSAl7oq/gUvfgULv2EblgpPVQlQr9yHnWjg9IJ2MhfwPqiYqMMrr01OY7yQoK2yA==",
4481 "dev": true,
4482 "license": "MIT",
4483 "engines": {
4463 - "node": ">=6"
4484 + "node": ">=18.20"
4485 },
4486 "funding": {
4487 "url": "https://github.com/sponsors/sindresorhus"
@@ -4482,22 +4503,6 @@
4503 "url": "https://github.com/sponsors/sindresorhus"
4504 }
4505 },
4485 - "node_modules/bundle-require": {
4486 - "version": "5.1.0",
4487 - "resolved": "https://registry.npmjs.org/bundle-require/-/bundle-require-5.1.0.tgz",
4488 - "integrity": "sha512-3WrrOuZiyaaZPWiEt4G3+IffISVC9HYlWueJEBWED4ZH4aIAC2PnkdnuRrR94M+w6yGWn4AglWtJtBI8YqvgoA==",
4489 - "dev": true,
4490 - "license": "MIT",
4491 - "dependencies": {
4492 - "load-tsconfig": "^0.2.3"
4493 - },
4494 - "engines": {
4495 - "node": "^12.20.0 || ^14.13.1 || >=16.0.0"
4496 - },
4497 - "peerDependencies": {
4498 - "esbuild": ">=0.18"
4499 - }
4500 - },
4506 "node_modules/bytes": {
4507 "version": "3.1.2",
4508 "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz",
@@ -4508,22 +4513,22 @@
4513 }
4514 },
4515 "node_modules/c12": {
4511 - "version": "2.0.1",
4512 - "resolved": "https://registry.npmjs.org/c12/-/c12-2.0.1.tgz",
4513 - "integrity": "sha512-Z4JgsKXHG37C6PYUtIxCfLJZvo6FyhHJoClwwb9ftUkLpPSkuYqn6Tr+vnaN8hymm0kIbcg6Ey3kv/Q71k5w/A==",
4516 + "version": "2.0.4",
4517 + "resolved": "https://registry.npmjs.org/c12/-/c12-2.0.4.tgz",
4518 + "integrity": "sha512-3DbbhnFt0fKJHxU4tEUPmD1ahWE4PWPMomqfYsTJdrhpmEnRKJi3qSC4rO5U6E6zN1+pjBY7+z8fUmNRMaVKLw==",
4519 "license": "MIT",
4520 "dependencies": {
4516 - "chokidar": "^4.0.1",
4517 - "confbox": "^0.1.7",
4521 + "chokidar": "^4.0.3",
4522 + "confbox": "^0.1.8",
4523 "defu": "^6.1.4",
4519 - "dotenv": "^16.4.5",
4520 - "giget": "^1.2.3",
4521 - "jiti": "^2.3.0",
4522 - "mlly": "^1.7.1",
4523 - "ohash": "^1.1.4",
4524 - "pathe": "^1.1.2",
4524 + "dotenv": "^16.4.7",
4525 + "giget": "^1.2.4",
4526 + "jiti": "^2.4.2",
4527 + "mlly": "^1.7.4",
4528 + "ohash": "^2.0.4",
4529 + "pathe": "^2.0.3",
4530 "perfect-debounce": "^1.0.0",
4526 - "pkg-types": "^1.2.0",
4531 + "pkg-types": "^1.3.1",
4532 "rc9": "^2.1.2"
4533 },
4534 "peerDependencies": {
@@ -4535,10 +4540,10 @@
4540 }
4541 }
4542 },
4538 - "node_modules/c12/node_modules/pathe": {
4539 - "version": "1.1.2",
4540 - "resolved": "https://registry.npmjs.org/pathe/-/pathe-1.1.2.tgz",
4541 - "integrity": "sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==",
4543 + "node_modules/c12/node_modules/ohash": {
4544 + "version": "2.0.4",
4545 + "resolved": "https://registry.npmjs.org/ohash/-/ohash-2.0.4.tgz",
4546 + "integrity": "sha512-ac+SFwzhdHb0hp48/dbR7Jta39qfbuj7t3hApd9uyHS8bisHTfVzSEvjOVgV0L3zG7VR2/7JjkSGimP75D+hOQ==",
4547 "license": "MIT"
4548 },
4549 "node_modules/cac": {
@@ -4551,20 +4556,6 @@
4556 "node": ">=8"
4557 }
4558 },
4554 - "node_modules/cache-content-type": {
4555 - "version": "1.0.1",
4556 - "resolved": "https://registry.npmjs.org/cache-content-type/-/cache-content-type-1.0.1.tgz",
4557 - "integrity": "sha512-IKufZ1o4Ut42YUrZSo8+qnMTrFuKkvyoLXUywKz9GJ5BrhOFGhLdkx9sG4KAnVvbY6kEcSFjLQul+DVmBm2bgA==",
4558 - "dev": true,
4559 - "license": "MIT",
4560 - "dependencies": {
4561 - "mime-types": "^2.1.18",
4562 - "ylru": "^1.2.0"
4563 - },
4564 - "engines": {
4565 - "node": ">= 6.0.0"
4566 - }
4567 - },
4559 "node_modules/cachedir": {
4560 "version": "2.4.0",
4561 "resolved": "https://registry.npmjs.org/cachedir/-/cachedir-2.4.0.tgz",
@@ -4576,10 +4567,9 @@
4567 }
4568 },
4569 "node_modules/call-bind-apply-helpers": {
4579 - "version": "1.0.1",
4580 - "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.1.tgz",
4581 - "integrity": "sha512-BhYE+WDaywFg2TBWYNXAE+8B1ATnThNBqXHP5nQu0jWJdVvY2hvkpyB3qOmtmDePiS5/BDQ8wASEWGMWRG148g==",
4582 - "dev": true,
4570 + "version": "1.0.2",
4571 + "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz",
4572 + "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==",
4573 "license": "MIT",
4574 "dependencies": {
4575 "es-errors": "^1.3.0",
@@ -4648,9 +4638,9 @@
4638 }
4639 },
4640 "node_modules/caniuse-lite": {
4651 - "version": "1.0.30001696",
4652 - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001696.tgz",
4653 - "integrity": "sha512-pDCPkvzfa39ehJtJ+OwGT/2yvT2SbjfHhiIW2LWOAcMQ7BzwxT/XuyUp4OTOd0XFWA6BKw0JalnBHgSi5DGJBQ==",
4641 + "version": "1.0.30001700",
4642 + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001700.tgz",
4643 + "integrity": "sha512-2S6XIXwaE7K7erT8dY+kLQcpa5ms63XlRkMkReXjle+kf6c5g38vyMl+Z5y8dSxOFDhcFe+nxnn261PLxBSQsQ==",
4644 "funding": [
4645 {
4646 "type": "opencollective",
@@ -4685,9 +4675,9 @@
4675 }
4676 },
4677 "node_modules/chai": {
4688 - "version": "5.1.2",
4689 - "resolved": "https://registry.npmjs.org/chai/-/chai-5.1.2.tgz",
4690 - "integrity": "sha512-aGtmf24DW6MLHHG5gCx4zaI3uBq3KRtxeVs0DjFH6Z0rDNbsvTxFASFvdj79pxjxZ8/5u3PIiN3IwEIQkiiuPw==",
4678 + "version": "5.2.0",
4679 + "resolved": "https://registry.npmjs.org/chai/-/chai-5.2.0.tgz",
4680 + "integrity": "sha512-mCuXncKXk5iCLhfhwTc0izo0gtEmpz5CtG2y8GiOINBlMVS6v8TMRc5TaLWKS6692m9+dVVfzgeVxR5UxWHTYw==",
4681 "dev": true,
4682 "license": "MIT",
4683 "dependencies": {
@@ -4798,9 +4788,9 @@
4788 }
4789 },
4790 "node_modules/chokidar/node_modules/readdirp": {
4801 - "version": "4.1.1",
4802 - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-4.1.1.tgz",
4803 - "integrity": "sha512-h80JrZu/MHUZCyHu5ciuoI0+WxsCxzxJTILn6Fs8rxSnFPh+UVHYfeIxK1nVGugMqkfC4vJcBOYbkfkwYK0+gw==",
4791 + "version": "4.1.2",
4792 + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-4.1.2.tgz",
4793 + "integrity": "sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==",
4794 "license": "MIT",
4795 "engines": {
4796 "node": ">= 14.18.0"
@@ -4930,18 +4920,15 @@
4920 }
4921 },
4922 "node_modules/cliui": {
4933 - "version": "8.0.1",
4934 - "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz",
4935 - "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==",
4923 + "version": "7.0.4",
4924 + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz",
4925 + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==",
4926 "dev": true,
4927 "license": "ISC",
4928 "dependencies": {
4929 "string-width": "^4.2.0",
4940 - "strip-ansi": "^6.0.1",
4930 + "strip-ansi": "^6.0.0",
4931 "wrap-ansi": "^7.0.0"
4942 - },
4943 - "engines": {
4944 - "node": ">=12"
4932 }
4933 },
4934 "node_modules/cliui/node_modules/wrap-ansi": {
@@ -4962,17 +4949,6 @@
4949 "url": "https://github.com/chalk/wrap-ansi?sponsor=1"
4950 }
4951 },
4965 - "node_modules/co": {
4966 - "version": "4.6.0",
4967 - "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz",
4968 - "integrity": "sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==",
4969 - "dev": true,
4970 - "license": "MIT",
4971 - "engines": {
4972 - "iojs": ">= 1.0.0",
4973 - "node": ">= 0.12.0"
4974 - }
4975 - },
4952 "node_modules/color-convert": {
4953 "version": "2.0.1",
4954 "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
@@ -5096,54 +5072,16 @@
5072 "node": "^14.18.0 || >=16.10.0"
5073 }
5074 },
5099 - "node_modules/content-disposition": {
5100 - "version": "0.5.4",
5101 - "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz",
5102 - "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==",
5103 - "dev": true,
5104 - "license": "MIT",
5105 - "dependencies": {
5106 - "safe-buffer": "5.2.1"
5107 - },
5108 - "engines": {
5109 - "node": ">= 0.6"
5110 - }
5111 - },
5112 - "node_modules/content-type": {
5113 - "version": "1.0.5",
5114 - "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz",
5115 - "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==",
5116 - "dev": true,
5117 - "license": "MIT",
5118 - "engines": {
5119 - "node": ">= 0.6"
5120 - }
5121 - },
5075 "node_modules/convert-source-map": {
5076 "version": "2.0.0",
5077 "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz",
5078 "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==",
5079 "license": "MIT"
5080 },
5128 - "node_modules/cookies": {
5129 - "version": "0.9.1",
5130 - "resolved": "https://registry.npmjs.org/cookies/-/cookies-0.9.1.tgz",
5131 - "integrity": "sha512-TG2hpqe4ELx54QER/S3HQ9SRVnQnGBtKUz5bLQWtYAQ+o6GpgMs6sYUvaiJjVxb+UXwhRhAEP3m7LbsIZ77Hmw==",
5132 - "dev": true,
5133 - "license": "MIT",
5134 - "dependencies": {
5135 - "depd": "~2.0.0",
5136 - "keygrip": "~1.1.0"
5137 - },
5138 - "engines": {
5139 - "node": ">= 0.8"
5140 - }
5141 - },
5081 "node_modules/copy-anything": {
5082 "version": "3.0.5",
5083 "resolved": "https://registry.npmjs.org/copy-anything/-/copy-anything-3.0.5.tgz",
5084 "integrity": "sha512-yCEafptTtb4bk7GLEQoM8KVJpxAfdBJYaXyzQEgQQQgYrZiDp8SJmGKlYza6CYjEDNstAdNdKA3UuoULlEbS6w==",
5146 - "dev": true,
5085 "license": "MIT",
5086 "dependencies": {
5087 "is-what": "^4.1.8"
@@ -5352,14 +5290,14 @@
5290 "license": "MIT"
5291 },
5292 "node_modules/cypress": {
5355 - "version": "14.0.1",
5356 - "resolved": "https://registry.npmjs.org/cypress/-/cypress-14.0.1.tgz",
5357 - "integrity": "sha512-gBAvKZE3f6eBaW1v8OtrwAFP90rjNZjjOO40M2KvOvmwVXk96Ps5Yjyck1EzGkXmNCaC/8kXFOY/1KD/wsaWpQ==",
5293 + "version": "14.0.3",
5294 + "resolved": "https://registry.npmjs.org/cypress/-/cypress-14.0.3.tgz",
5295 + "integrity": "sha512-yIdvobANw3kS+KF/t5vwjjPNufBA8ux7iQHaWxPTkUw2yCKI72m9mKM24eOwE84Wk4ALPsSvEcGbDrwgmhr4RA==",
5296 "dev": true,
5297 "hasInstallScript": true,
5298 "license": "MIT",
5299 "dependencies": {
5362 - "@cypress/request": "^3.0.6",
5300 + "@cypress/request": "^3.0.7",
5301 "@cypress/xvfb": "^1.2.4",
5302 "@types/sinonjs__fake-timers": "8.1.1",
5303 "@types/sizzle": "^2.3.2",
@@ -5546,13 +5484,6 @@
5484 "node": ">=6"
5485 }
5486 },
5549 - "node_modules/deep-equal": {
5550 - "version": "1.0.1",
5551 - "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.0.1.tgz",
5552 - "integrity": "sha512-bHtC0iYvWhyaTzvV3CZgPeZQqCOBGyGsVV7v4eevpdkLHfiSrXUdBG+qAuSz4RI70sszvjQ1QSZ98An1yNwpSw==",
5553 - "dev": true,
5554 - "license": "MIT"
5555 - },
5487 "node_modules/deep-is": {
5488 "version": "0.1.4",
5489 "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz",
@@ -5621,13 +5552,6 @@
5552 "node": ">=0.4.0"
5553 }
5554 },
5624 - "node_modules/delegates": {
5625 - "version": "1.0.0",
5626 - "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz",
5627 - "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==",
5628 - "dev": true,
5629 - "license": "MIT"
5630 - },
5555 "node_modules/depcheck": {
5556 "version": "1.4.7",
5557 "resolved": "https://registry.npmjs.org/depcheck/-/depcheck-1.4.7.tgz",
@@ -5666,18 +5590,6 @@
5590 "node": ">=10"
5591 }
5592 },
5669 - "node_modules/depcheck/node_modules/cliui": {
5670 - "version": "7.0.4",
5671 - "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz",
5672 - "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==",
5673 - "dev": true,
5674 - "license": "ISC",
5675 - "dependencies": {
5676 - "string-width": "^4.2.0",
5677 - "strip-ansi": "^6.0.0",
5678 - "wrap-ansi": "^7.0.0"
5679 - }
5680 - },
5593 "node_modules/depcheck/node_modules/minimatch": {
5594 "version": "7.4.6",
5595 "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-7.4.6.tgz",
@@ -5694,67 +5606,10 @@
5606 "url": "https://github.com/sponsors/isaacs"
5607 }
5608 },
5697 - "node_modules/depcheck/node_modules/wrap-ansi": {
5698 - "version": "7.0.0",
5699 - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz",
5700 - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==",
5701 - "dev": true,
5702 - "license": "MIT",
5703 - "dependencies": {
5704 - "ansi-styles": "^4.0.0",
5705 - "string-width": "^4.1.0",
5706 - "strip-ansi": "^6.0.0"
5707 - },
5708 - "engines": {
5709 - "node": ">=10"
5710 - },
5711 - "funding": {
5712 - "url": "https://github.com/chalk/wrap-ansi?sponsor=1"
5713 - }
5714 - },
5715 - "node_modules/depcheck/node_modules/yargs": {
5716 - "version": "16.2.0",
5717 - "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz",
5718 - "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==",
5719 - "dev": true,
5720 - "license": "MIT",
5721 - "dependencies": {
5722 - "cliui": "^7.0.2",
5723 - "escalade": "^3.1.1",
5724 - "get-caller-file": "^2.0.5",
5725 - "require-directory": "^2.1.1",
5726 - "string-width": "^4.2.0",
5727 - "y18n": "^5.0.5",
5728 - "yargs-parser": "^20.2.2"
5729 - },
5730 - "engines": {
5731 - "node": ">=10"
5732 - }
5733 - },
5734 - "node_modules/depcheck/node_modules/yargs-parser": {
5735 - "version": "20.2.9",
5736 - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz",
5737 - "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==",
5738 - "dev": true,
5739 - "license": "ISC",
5740 - "engines": {
5741 - "node": ">=10"
5742 - }
5743 - },
5744 - "node_modules/depd": {
5745 - "version": "2.0.0",
5746 - "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz",
5747 - "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==",
5748 - "dev": true,
5749 - "license": "MIT",
5750 - "engines": {
5751 - "node": ">= 0.8"
5752 - }
5753 - },
5754 - "node_modules/deps-regex": {
5755 - "version": "0.2.0",
5756 - "resolved": "https://registry.npmjs.org/deps-regex/-/deps-regex-0.2.0.tgz",
5757 - "integrity": "sha512-PwuBojGMQAYbWkMXOY9Pd/NWCDNHVH12pnS7WHqZkTSeMESe4hwnKKRp0yR87g37113x4JPbo/oIvXY+s/f56Q==",
5609 + "node_modules/deps-regex": {
5610 + "version": "0.2.0",
5611 + "resolved": "https://registry.npmjs.org/deps-regex/-/deps-regex-0.2.0.tgz",
5612 + "integrity": "sha512-PwuBojGMQAYbWkMXOY9Pd/NWCDNHVH12pnS7WHqZkTSeMESe4hwnKKRp0yR87g37113x4JPbo/oIvXY+s/f56Q==",
5613 "dev": true,
5614 "license": "MIT"
5615 },
@@ -5773,17 +5628,6 @@
5628 "integrity": "sha512-2N3BOUU4gYMpTP24s5rF5iP7BDr7uNTCs4ozw3kf/eKfvWSIu93GEBi5m427YoyJoeOzQ5smuu4nNAPGb8idSQ==",
5629 "license": "MIT"
5630 },
5776 - "node_modules/destroy": {
5777 - "version": "1.2.0",
5778 - "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz",
5779 - "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==",
5780 - "dev": true,
5781 - "license": "MIT",
5782 - "engines": {
5783 - "node": ">= 0.8",
5784 - "npm": "1.2.8000 || >= 1.4.16"
5785 - }
5786 - },
5631 "node_modules/detect-file": {
5632 "version": "1.0.0",
5633 "resolved": "https://registry.npmjs.org/detect-file/-/detect-file-1.0.0.tgz",
@@ -5927,7 +5771,6 @@
5771 "version": "1.0.1",
5772 "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz",
5773 "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==",
5930 - "dev": true,
5774 "license": "MIT",
5775 "dependencies": {
5776 "call-bind-apply-helpers": "^1.0.1",
@@ -6023,17 +5866,10 @@
5866 "url": "https://github.com/sponsors/isaacs"
5867 }
5868 },
6026 - "node_modules/ee-first": {
6027 - "version": "1.1.1",
6028 - "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz",
6029 - "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==",
6030 - "dev": true,
6031 - "license": "MIT"
6032 - },
5869 "node_modules/electron-to-chromium": {
6034 - "version": "1.5.88",
6035 - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.88.tgz",
6036 - "integrity": "sha512-K3C2qf1o+bGzbilTDCTBhTQcMS9KW60yTAaTeeXsfvQuTDDwlokLam/AdqlqcSy9u4UainDgsHV23ksXAOgamw==",
5870 + "version": "1.5.104",
5871 + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.104.tgz",
5872 + "integrity": "sha512-Us9M2L4cO/zMBqVkJtnj353nQhMju9slHm62NprKTmdF3HH8wYOtNvDFq/JB2+ZRoGLzdvYDiATlMHs98XBM1g==",
5873 "license": "ISC"
5874 },
5875 "node_modules/emoji-regex": {
@@ -6048,16 +5884,6 @@
5884 "integrity": "sha512-LRlerrMYoIDrT6jgpeZ2YYl/L8EulRTt5hQcYjy5AInh7HWXKimpqx68aknBFpGL2+/IcogTcaydJEgaTmOpDg==",
5885 "license": "MIT"
5886 },
6051 - "node_modules/encodeurl": {
6052 - "version": "1.0.2",
6053 - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz",
6054 - "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==",
6055 - "dev": true,
6056 - "license": "MIT",
6057 - "engines": {
6058 - "node": ">= 0.8"
6059 - }
6060 - },
5887 "node_modules/end-of-stream": {
5888 "version": "1.4.4",
5889 "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz",
@@ -6069,9 +5895,9 @@
5895 }
5896 },
5897 "node_modules/enhanced-resolve": {
6072 - "version": "5.18.0",
6073 - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.18.0.tgz",
6074 - "integrity": "sha512-0/r0MySGYG8YqlayBZ6MuCfECmHFdJ5qyPh8s8wa5Hnm6SaFLSK1VYCbj+NKp090Nm1caZhD+QTnmxO7esYGyQ==",
5898 + "version": "5.18.1",
5899 + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.18.1.tgz",
5900 + "integrity": "sha512-ZSW3ma5GkcQBIpwZTSRAI8N71Uuwgs93IezB7mf7R60tC8ZbJideoDNKjHn2O9KIlx6rkGTTEk1xUCK2E1Y2Yg==",
5901 "dev": true,
5902 "license": "MIT",
5903 "dependencies": {
@@ -6132,7 +5958,6 @@
5958 "version": "1.0.1",
5959 "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz",
5960 "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==",
6135 - "dev": true,
5961 "license": "MIT",
5962 "engines": {
5963 "node": ">= 0.4"
@@ -6142,7 +5967,6 @@
5967 "version": "1.3.0",
5968 "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz",
5969 "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==",
6145 - "dev": true,
5970 "license": "MIT",
5971 "engines": {
5972 "node": ">= 0.4"
@@ -6159,7 +5983,6 @@
5983 "version": "1.1.1",
5984 "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz",
5985 "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==",
6162 - "dev": true,
5986 "license": "MIT",
5987 "dependencies": {
5988 "es-errors": "^1.3.0"
@@ -6168,10 +5991,25 @@
5991 "node": ">= 0.4"
5992 }
5993 },
5994 + "node_modules/es-set-tostringtag": {
5995 + "version": "2.1.0",
5996 + "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz",
5997 + "integrity": "sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==",
5998 + "license": "MIT",
5999 + "dependencies": {
6000 + "es-errors": "^1.3.0",
6001 + "get-intrinsic": "^1.2.6",
6002 + "has-tostringtag": "^1.0.2",
6003 + "hasown": "^2.0.2"
6004 + },
6005 + "engines": {
6006 + "node": ">= 0.4"
6007 + }
6008 + },
6009 "node_modules/esbuild": {
6172 - "version": "0.24.2",
6173 - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.24.2.tgz",
6174 - "integrity": "sha512-+9egpBW8I3CD5XPe0n6BfT5fxLzxrlDzqydF3aviG+9ni1lDC/OvMHcxqEFV0+LANZG5R1bFMWfUrjVsdwxJvA==",
6010 + "version": "0.25.0",
6011 + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.25.0.tgz",
6012 + "integrity": "sha512-BXq5mqc8ltbaN34cDqWuYKyNhX8D/Z0J1xdtdQ8UcIIIyJyz+ZMKUt58tF3SrZ85jcfN/PZYhjR5uDQAYNVbuw==",
6013 "dev": true,
6014 "hasInstallScript": true,
6015 "license": "MIT",
@@ -6182,31 +6020,31 @@
6020 "node": ">=18"
6021 },
6022 "optionalDependencies": {
6185 - "@esbuild/aix-ppc64": "0.24.2",
6186 - "@esbuild/android-arm": "0.24.2",
6187 - "@esbuild/android-arm64": "0.24.2",
6188 - "@esbuild/android-x64": "0.24.2",
6189 - "@esbuild/darwin-arm64": "0.24.2",
6190 - "@esbuild/darwin-x64": "0.24.2",
6191 - "@esbuild/freebsd-arm64": "0.24.2",
6192 - "@esbuild/freebsd-x64": "0.24.2",
6193 - "@esbuild/linux-arm": "0.24.2",
6194 - "@esbuild/linux-arm64": "0.24.2",
6195 - "@esbuild/linux-ia32": "0.24.2",
6196 - "@esbuild/linux-loong64": "0.24.2",
6197 - "@esbuild/linux-mips64el": "0.24.2",
6198 - "@esbuild/linux-ppc64": "0.24.2",
6199 - "@esbuild/linux-riscv64": "0.24.2",
6200 - "@esbuild/linux-s390x": "0.24.2",
6201 - "@esbuild/linux-x64": "0.24.2",
6202 - "@esbuild/netbsd-arm64": "0.24.2",
6203 - "@esbuild/netbsd-x64": "0.24.2",
6204 - "@esbuild/openbsd-arm64": "0.24.2",
6205 - "@esbuild/openbsd-x64": "0.24.2",
6206 - "@esbuild/sunos-x64": "0.24.2",
6207 - "@esbuild/win32-arm64": "0.24.2",
6208 - "@esbuild/win32-ia32": "0.24.2",
6209 - "@esbuild/win32-x64": "0.24.2"
6023 + "@esbuild/aix-ppc64": "0.25.0",
6024 + "@esbuild/android-arm": "0.25.0",
6025 + "@esbuild/android-arm64": "0.25.0",
6026 + "@esbuild/android-x64": "0.25.0",
6027 + "@esbuild/darwin-arm64": "0.25.0",
6028 + "@esbuild/darwin-x64": "0.25.0",
6029 + "@esbuild/freebsd-arm64": "0.25.0",
6030 + "@esbuild/freebsd-x64": "0.25.0",
6031 + "@esbuild/linux-arm": "0.25.0",
6032 + "@esbuild/linux-arm64": "0.25.0",
6033 + "@esbuild/linux-ia32": "0.25.0",
6034 + "@esbuild/linux-loong64": "0.25.0",
6035 + "@esbuild/linux-mips64el": "0.25.0",
6036 + "@esbuild/linux-ppc64": "0.25.0",
6037 + "@esbuild/linux-riscv64": "0.25.0",
6038 + "@esbuild/linux-s390x": "0.25.0",
6039 + "@esbuild/linux-x64": "0.25.0",
6040 + "@esbuild/netbsd-arm64": "0.25.0",
6041 + "@esbuild/netbsd-x64": "0.25.0",
6042 + "@esbuild/openbsd-arm64": "0.25.0",
6043 + "@esbuild/openbsd-x64": "0.25.0",
6044 + "@esbuild/sunos-x64": "0.25.0",
6045 + "@esbuild/win32-arm64": "0.25.0",
6046 + "@esbuild/win32-ia32": "0.25.0",
6047 + "@esbuild/win32-x64": "0.25.0"
6048 }
6049 },
6050 "node_modules/escalade": {
@@ -6218,13 +6056,6 @@
6056 "node": ">=6"
6057 }
6058 },
6221 - "node_modules/escape-html": {
6222 - "version": "1.0.3",
6223 - "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz",
6224 - "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==",
6225 - "dev": true,
6226 - "license": "MIT"
6227 - },
6059 "node_modules/escape-string-regexp": {
6060 "version": "4.0.0",
6061 "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz",
@@ -6239,22 +6070,22 @@
6070 }
6071 },
6072 "node_modules/eslint": {
6242 - "version": "9.19.0",
6243 - "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.19.0.tgz",
6244 - "integrity": "sha512-ug92j0LepKlbbEv6hD911THhoRHmbdXt2gX+VDABAW/Ir7D3nqKdv5Pf5vtlyY6HQMTEP2skXY43ueqTCWssEA==",
6073 + "version": "9.21.0",
6074 + "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.21.0.tgz",
6075 + "integrity": "sha512-KjeihdFqTPhOMXTt7StsDxriV4n66ueuF/jfPNC3j/lduHwr/ijDwJMsF+wyMJethgiKi5wniIE243vi07d3pg==",
6076 "dev": true,
6077 "license": "MIT",
6078 "dependencies": {
6079 "@eslint-community/eslint-utils": "^4.2.0",
6080 "@eslint-community/regexpp": "^4.12.1",
6250 - "@eslint/config-array": "^0.19.0",
6251 - "@eslint/core": "^0.10.0",
6252 - "@eslint/eslintrc": "^3.2.0",
6253 - "@eslint/js": "9.19.0",
6254 - "@eslint/plugin-kit": "^0.2.5",
6081 + "@eslint/config-array": "^0.19.2",
6082 + "@eslint/core": "^0.12.0",
6083 + "@eslint/eslintrc": "^3.3.0",
6084 + "@eslint/js": "9.21.0",
6085 + "@eslint/plugin-kit": "^0.2.7",
6086 "@humanfs/node": "^0.16.6",
6087 "@humanwhocodes/module-importer": "^1.0.1",
6257 - "@humanwhocodes/retry": "^0.4.1",
6088 + "@humanwhocodes/retry": "^0.4.2",
6089 "@types/estree": "^1.0.6",
6090 "@types/json-schema": "^7.0.15",
6091 "ajv": "^6.12.4",
@@ -6315,9 +6146,9 @@
6146 }
6147 },
6148 "node_modules/eslint-config-flat-gitignore": {
6318 - "version": "1.0.1",
6319 - "resolved": "https://registry.npmjs.org/eslint-config-flat-gitignore/-/eslint-config-flat-gitignore-1.0.1.tgz",
6320 - "integrity": "sha512-wjBmJ8TAb67G2or/gBp/H62uCIkDCjpCmlGPSG41/7QagUjMgh+iegVB3gY8eNYhTAmecjKtclT4wGAjHz5yWA==",
6149 + "version": "2.1.0",
6150 + "resolved": "https://registry.npmjs.org/eslint-config-flat-gitignore/-/eslint-config-flat-gitignore-2.1.0.tgz",
6151 + "integrity": "sha512-cJzNJ7L+psWp5mXM7jBX+fjHtBvvh06RBlcweMhKD8jWqQw0G78hOW5tpVALGHGFPsBV+ot2H+pdDGJy6CV8pA==",
6152 "dev": true,
6153 "license": "MIT",
6154 "dependencies": {
@@ -6331,9 +6162,9 @@
6162 }
6163 },
6164 "node_modules/eslint-flat-config-utils": {
6334 - "version": "2.0.0",
6335 - "resolved": "https://registry.npmjs.org/eslint-flat-config-utils/-/eslint-flat-config-utils-2.0.0.tgz",
6336 - "integrity": "sha512-AbpYwI9FBmjF6BQ8UcaDCrM750DWEB6UJzEjQEg+iWFP6UX9rGsUGJlMf7sWbW3dOA0klUEwmWGZa5FoynXU/w==",
6165 + "version": "2.0.1",
6166 + "resolved": "https://registry.npmjs.org/eslint-flat-config-utils/-/eslint-flat-config-utils-2.0.1.tgz",
6167 + "integrity": "sha512-brf0eAgQ6JlKj3bKfOTuuI7VcCZvi8ZCD1MMTVoEvS/d38j8cByZViLFALH/36+eqB17ukmfmKq3bWzGvizejA==",
6168 "dev": true,
6169 "license": "MIT",
6170 "dependencies": {
@@ -6388,9 +6219,9 @@
6219 }
6220 },
6221 "node_modules/eslint-merge-processors": {
6391 - "version": "1.0.0",
6392 - "resolved": "https://registry.npmjs.org/eslint-merge-processors/-/eslint-merge-processors-1.0.0.tgz",
6393 - "integrity": "sha512-4GybyHmhXtT7/W8RAouQzNM0791sYasJCTYHIAYjuiJvbNFY0jMKkoESREhX+mjX37dxiN6v4EqhZ1nc0tJF7A==",
6222 + "version": "2.0.0",
6223 + "resolved": "https://registry.npmjs.org/eslint-merge-processors/-/eslint-merge-processors-2.0.0.tgz",
6224 + "integrity": "sha512-sUuhSf3IrJdGooquEUB5TNpGNpBoQccbnaLHsb1XkBLUPPqCNivCpY05ZcpCOiV9uHwO2yxXEWVczVclzMxYlA==",
6225 "dev": true,
6226 "license": "MIT",
6227 "funding": {
@@ -6401,9 +6232,9 @@
6232 }
6233 },
6234 "node_modules/eslint-plugin-antfu": {
6404 - "version": "3.0.0",
6405 - "resolved": "https://registry.npmjs.org/eslint-plugin-antfu/-/eslint-plugin-antfu-3.0.0.tgz",
6406 - "integrity": "sha512-USaQMR17+l7a0XWS9Pk0T+t9PszkdeIncyAOp1vsjHQnDKIlusSg+9bwTYWIzlJXkHDarAI06cdt+d5mbAGEKA==",
6235 + "version": "3.1.0",
6236 + "resolved": "https://registry.npmjs.org/eslint-plugin-antfu/-/eslint-plugin-antfu-3.1.0.tgz",
6237 + "integrity": "sha512-BKlJcpIG8OGyU5JwQCdyTGaLuRgItheEYinhNroCx3bcuz2bCSYK0eNzJvPy2TY8yyz0uSSRxr5KHuQ1WOdOKg==",
6238 "dev": true,
6239 "license": "MIT",
6240 "funding": {
@@ -6414,9 +6245,9 @@
6245 }
6246 },
6247 "node_modules/eslint-plugin-command": {
6417 - "version": "3.0.0",
6418 - "resolved": "https://registry.npmjs.org/eslint-plugin-command/-/eslint-plugin-command-3.0.0.tgz",
6419 - "integrity": "sha512-6EFOKGnBMHr0dN/9uKYmxYz6RbsCmEzPRcKYrl+dfEMvlt6+zf6x5TzXKzOowhh3f/hqSBMZmxcB3HHyfbpwWw==",
6248 + "version": "3.1.0",
6249 + "resolved": "https://registry.npmjs.org/eslint-plugin-command/-/eslint-plugin-command-3.1.0.tgz",
6250 + "integrity": "sha512-KLgxB8NMQ0iL7iwehyeqWVE7MaqRPwLTGW4d2CXYOj5tt4j6yU/hiNxQ/35FLq4SnMhv+tpE6FCvYbV4VS+BLw==",
6251 "dev": true,
6252 "license": "MIT",
6253 "dependencies": {
@@ -6657,14 +6488,14 @@
6488 }
6489 },
6490 "node_modules/eslint-plugin-perfectionist": {
6660 - "version": "4.7.0",
6661 - "resolved": "https://registry.npmjs.org/eslint-plugin-perfectionist/-/eslint-plugin-perfectionist-4.7.0.tgz",
6662 - "integrity": "sha512-e2ODzm2SsAztFWY3ZRJd1K702vyl8Sapacjc3JluOW294CfA3+jfjin+UxjcrK48EvlNIMOp+JJB9N54YR2LRw==",
6491 + "version": "4.9.0",
6492 + "resolved": "https://registry.npmjs.org/eslint-plugin-perfectionist/-/eslint-plugin-perfectionist-4.9.0.tgz",
6493 + "integrity": "sha512-76lDfJnonOcXGW3bEXuqhEGId0LrOlvIE1yLHvK/eKMMPOc0b43KchAIR2Bdbqlg+LPXU5/Q+UzuzkO+cWHT6w==",
6494 "dev": true,
6495 "license": "MIT",
6496 "dependencies": {
6666 - "@typescript-eslint/types": "^8.21.0",
6667 - "@typescript-eslint/utils": "^8.21.0",
6497 + "@typescript-eslint/types": "^8.24.0",
6498 + "@typescript-eslint/utils": "^8.24.0",
6499 "natural-orderby": "^5.0.0"
6500 },
6501 "engines": {
@@ -6719,28 +6550,28 @@
6550 }
6551 },
6552 "node_modules/eslint-plugin-unicorn": {
6722 - "version": "56.0.1",
6723 - "resolved": "https://registry.npmjs.org/eslint-plugin-unicorn/-/eslint-plugin-unicorn-56.0.1.tgz",
6724 - "integrity": "sha512-FwVV0Uwf8XPfVnKSGpMg7NtlZh0G0gBarCaFcMUOoqPxXryxdYxTRRv4kH6B9TFCVIrjRXG+emcxIk2ayZilog==",
6553 + "version": "57.0.0",
6554 + "resolved": "https://registry.npmjs.org/eslint-plugin-unicorn/-/eslint-plugin-unicorn-57.0.0.tgz",
6555 + "integrity": "sha512-zUYYa6zfNdTeG9BISWDlcLmz16c+2Ck2o5ZDHh0UzXJz3DEP7xjmlVDTzbyV0W+XksgZ0q37WEWzN2D2Ze+g9Q==",
6556 "dev": true,
6557 "license": "MIT",
6558 "dependencies": {
6728 - "@babel/helper-validator-identifier": "^7.24.7",
6729 - "@eslint-community/eslint-utils": "^4.4.0",
6730 - "ci-info": "^4.0.0",
6559 + "@babel/helper-validator-identifier": "^7.25.9",
6560 + "@eslint-community/eslint-utils": "^4.4.1",
6561 + "ci-info": "^4.1.0",
6562 "clean-regexp": "^1.0.0",
6732 - "core-js-compat": "^3.38.1",
6563 + "core-js-compat": "^3.40.0",
6564 "esquery": "^1.6.0",
6734 - "globals": "^15.9.0",
6735 - "indent-string": "^4.0.0",
6736 - "is-builtin-module": "^3.2.1",
6737 - "jsesc": "^3.0.2",
6565 + "globals": "^15.15.0",
6566 + "indent-string": "^5.0.0",
6567 + "is-builtin-module": "^4.0.0",
6568 + "jsesc": "^3.1.0",
6569 "pluralize": "^8.0.0",
6739 - "read-pkg-up": "^7.0.1",
6570 + "read-package-up": "^11.0.0",
6571 "regexp-tree": "^0.1.27",
6741 - "regjsparser": "^0.10.0",
6742 - "semver": "^7.6.3",
6743 - "strip-indent": "^3.0.0"
6572 + "regjsparser": "^0.12.0",
6573 + "semver": "^7.7.1",
6574 + "strip-indent": "^4.0.0"
6575 },
6576 "engines": {
6577 "node": ">=18.18"
@@ -6749,7 +6580,7 @@
6580 "url": "https://github.com/sindresorhus/eslint-plugin-unicorn?sponsor=1"
6581 },
6582 "peerDependencies": {
6752 - "eslint": ">=8.56.0"
6583 + "eslint": ">=9.20.0"
6584 }
6585 },
6586 "node_modules/eslint-plugin-unused-imports": {
@@ -6821,15 +6652,15 @@
6652 }
6653 },
6654 "node_modules/eslint-plugin-yml": {
6824 - "version": "1.16.0",
6825 - "resolved": "https://registry.npmjs.org/eslint-plugin-yml/-/eslint-plugin-yml-1.16.0.tgz",
6826 - "integrity": "sha512-t4MNCetPjTn18/fUDlQ/wKkcYjnuLYKChBrZ0qUaNqRigVqChHWzTP8SrfFi5s4keX3vdlkWRSu8zHJMdKwxWQ==",
6655 + "version": "1.17.0",
6656 + "resolved": "https://registry.npmjs.org/eslint-plugin-yml/-/eslint-plugin-yml-1.17.0.tgz",
6657 + "integrity": "sha512-Q3LXFRnNpGYAK/PM0BY1Xs0IY1xTLfM0kC986nNQkx1l8tOGz+YS50N6wXkAJkrBpeUN9OxEMB7QJ+9MTDAqIQ==",
6658 "dev": true,
6659 "license": "MIT",
6660 "dependencies": {
6661 "debug": "^4.3.2",
6662 + "escape-string-regexp": "4.0.0",
6663 "eslint-compat-utils": "^0.6.0",
6832 - "lodash": "^4.17.21",
6664 "natural-compare": "^1.4.0",
6665 "yaml-eslint-parser": "^1.2.1"
6666 },
@@ -6844,9 +6675,9 @@
6675 }
6676 },
6677 "node_modules/eslint-processor-vue-blocks": {
6847 - "version": "1.0.0",
6848 - "resolved": "https://registry.npmjs.org/eslint-processor-vue-blocks/-/eslint-processor-vue-blocks-1.0.0.tgz",
6849 - "integrity": "sha512-q+Wn9bCml65NwYtuINVCE5dUqZa/uVoY4jfc8qEDwWbcGqdRyfJJmAONNZsreA4Q9EJqjYGjk8Hk1QuwAktgkw==",
6678 + "version": "2.0.0",
6679 + "resolved": "https://registry.npmjs.org/eslint-processor-vue-blocks/-/eslint-processor-vue-blocks-2.0.0.tgz",
6680 + "integrity": "sha512-u4W0CJwGoWY3bjXAuFpc/b6eK3NQEI8MoeW7ritKj3G3z/WtHrKjkqf+wk8mPEy5rlMGS+k6AZYOw2XBoN/02Q==",
6681 "dev": true,
6682 "license": "MIT",
6683 "funding": {
@@ -6854,7 +6685,7 @@
6685 },
6686 "peerDependencies": {
6687 "@vue/compiler-sfc": "^3.3.0",
6857 - "eslint": "^8.50.0 || ^9.0.0"
6688 + "eslint": ">=9.0.0"
6689 }
6690 },
6691 "node_modules/eslint-scope": {
@@ -6887,6 +6718,19 @@
6718 "url": "https://opencollective.com/eslint"
6719 }
6720 },
6721 + "node_modules/eslint/node_modules/@eslint/core": {
6722 + "version": "0.12.0",
6723 + "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.12.0.tgz",
6724 + "integrity": "sha512-cmrR6pytBuSMTaBweKoGMwu3EiHiEC+DoyupPmlZ0HxBJBtIxwe+j/E4XPIKNx+Q74c8lXKPwYawBf5glsTkHg==",
6725 + "dev": true,
6726 + "license": "Apache-2.0",
6727 + "dependencies": {
6728 + "@types/json-schema": "^7.0.15"
6729 + },
6730 + "engines": {
6731 + "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
6732 + }
6733 + },
6734 "node_modules/eslint/node_modules/brace-expansion": {
6735 "version": "1.1.11",
6736 "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
@@ -7172,9 +7016,9 @@
7016 "license": "MIT"
7017 },
7018 "node_modules/fastq": {
7175 - "version": "1.18.0",
7176 - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.18.0.tgz",
7177 - "integrity": "sha512-QKHXPW0hD8g4UET03SdOdunzSouc9N4AuHdsX8XNcTsuz+yYFILVNIX4l9yHABMhiEI9Db0JTTIpu0wB+Y1QQw==",
7019 + "version": "1.19.0",
7020 + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.19.0.tgz",
7021 + "integrity": "sha512-7SFSRCNjBQIZH/xZR3iy5iQYR8aGBE0h3VG6/cwlbrpdciNYBMotQav8c1XI3HjHH+NikUpP53nPdlZSdWmFzA==",
7022 "license": "ISC",
7023 "dependencies": {
7024 "reusify": "^1.0.4"
@@ -7190,6 +7034,20 @@
7034 "pend": "~1.2.0"
7035 }
7036 },
7037 + "node_modules/fdir": {
7038 + "version": "6.4.3",
7039 + "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.4.3.tgz",
7040 + "integrity": "sha512-PMXmW2y1hDDfTSRc9gaXIuCCRpuoz3Kaz8cUelp3smouvfT632ozg2vrT6lJsHKKOF59YLbOGfAWGUcKEfRMQw==",
7041 + "license": "MIT",
7042 + "peerDependencies": {
7043 + "picomatch": "^3 || ^4"
7044 + },
7045 + "peerDependenciesMeta": {
7046 + "picomatch": {
7047 + "optional": true
7048 + }
7049 + }
7050 + },
7051 "node_modules/figures": {
7052 "version": "3.2.0",
7053 "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz",
@@ -7264,6 +7122,19 @@
7122 "url": "https://github.com/sponsors/sindresorhus"
7123 }
7124 },
7125 + "node_modules/find-up-simple": {
7126 + "version": "1.0.0",
7127 + "resolved": "https://registry.npmjs.org/find-up-simple/-/find-up-simple-1.0.0.tgz",
7128 + "integrity": "sha512-q7Us7kcjj2VMePAa02hDAF6d+MzsdsAWEwYyOpwUtlerRBkOEPBCRZrAV4XfcSN8fHAgaD0hP7miwoay6DCprw==",
7129 + "dev": true,
7130 + "license": "MIT",
7131 + "engines": {
7132 + "node": ">=18"
7133 + },
7134 + "funding": {
7135 + "url": "https://github.com/sponsors/sindresorhus"
7136 + }
7137 + },
7138 "node_modules/findup-sync": {
7139 "version": "5.0.0",
7140 "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-5.0.0.tgz",
@@ -7295,9 +7166,9 @@
7166 }
7167 },
7168 "node_modules/flatted": {
7298 - "version": "3.3.2",
7299 - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.2.tgz",
7300 - "integrity": "sha512-AiwGJM8YcNOaobumgtng+6NHuOqC3A7MixFeDafM3X9cIUM+xUXoS5Vfgf+OihAYe20fxqNM9yPBXJzRtZ/4eA==",
7169 + "version": "3.3.3",
7170 + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.3.tgz",
7171 + "integrity": "sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==",
7172 "dev": true,
7173 "license": "ISC"
7174 },
@@ -7342,12 +7213,12 @@
7213 }
7214 },
7215 "node_modules/foreground-child": {
7345 - "version": "3.3.0",
7346 - "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.3.0.tgz",
7347 - "integrity": "sha512-Ld2g8rrAyMYFXBhEqMz8ZAHBi4J4uS1i/CxGMDnjyFWddMXLVcDp051DZfu+t7+ab7Wv6SMqpWmyFIj5UbfFvg==",
7216 + "version": "3.3.1",
7217 + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.3.1.tgz",
7218 + "integrity": "sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==",
7219 "license": "ISC",
7220 "dependencies": {
7350 - "cross-spawn": "^7.0.0",
7221 + "cross-spawn": "^7.0.6",
7222 "signal-exit": "^4.0.1"
7223 },
7224 "engines": {
@@ -7380,13 +7251,14 @@
7251 }
7252 },
7253 "node_modules/form-data": {
7383 - "version": "4.0.1",
7384 - "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.1.tgz",
7385 - "integrity": "sha512-tzN8e4TX8+kkxGPK8D5u0FNmjPUjw3lwC9lSLxxoB/+GtsJG91CO8bSWy73APlgAZzZbXEYZJuxjkHH2w+Ezhw==",
7254 + "version": "4.0.2",
7255 + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.2.tgz",
7256 + "integrity": "sha512-hGfm/slu0ZabnNt4oaRZ6uREyfCj6P4fT/n6A1rGV+Z0VdGXjfOhVUpkn6qVQONHGIFwmveGXyDs75+nr6FM8w==",
7257 "license": "MIT",
7258 "dependencies": {
7259 "asynckit": "^0.4.0",
7260 "combined-stream": "^1.0.8",
7261 + "es-set-tostringtag": "^2.1.0",
7262 "mime-types": "^2.1.12"
7263 },
7264 "engines": {
@@ -7407,16 +7279,6 @@
7279 "url": "https://github.com/sponsors/rawify"
7280 }
7281 },
7410 - "node_modules/fresh": {
7411 - "version": "0.5.2",
7412 - "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz",
7413 - "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==",
7414 - "dev": true,
7415 - "license": "MIT",
7416 - "engines": {
7417 - "node": ">= 0.6"
7418 - }
7419 - },
7282 "node_modules/from": {
7283 "version": "0.1.7",
7284 "resolved": "https://registry.npmjs.org/from/-/from-0.1.7.tgz",
@@ -7469,13 +7331,6 @@
7331 "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
7332 "license": "ISC"
7333 },
7472 - "node_modules/fs.realpath": {
7473 - "version": "1.0.0",
7474 - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
7475 - "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==",
7476 - "dev": true,
7477 - "license": "ISC"
7478 - },
7334 "node_modules/fsevents": {
7335 "version": "2.3.3",
7336 "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz",
@@ -7519,18 +7374,17 @@
7374 }
7375 },
7376 "node_modules/get-intrinsic": {
7522 - "version": "1.2.7",
7523 - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.7.tgz",
7524 - "integrity": "sha512-VW6Pxhsrk0KAOqs3WEd0klDiF/+V7gQOpAvY1jVU/LHmaD/kQO4523aiJuikX/QAKYiW6x8Jh+RJej1almdtCA==",
7525 - "dev": true,
7377 + "version": "1.3.0",
7378 + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz",
7379 + "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==",
7380 "license": "MIT",
7381 "dependencies": {
7528 - "call-bind-apply-helpers": "^1.0.1",
7382 + "call-bind-apply-helpers": "^1.0.2",
7383 "es-define-property": "^1.0.1",
7384 "es-errors": "^1.3.0",
7531 - "es-object-atoms": "^1.0.0",
7385 + "es-object-atoms": "^1.1.1",
7386 "function-bind": "^1.1.2",
7533 - "get-proto": "^1.0.0",
7387 + "get-proto": "^1.0.1",
7388 "gopd": "^1.2.0",
7389 "has-symbols": "^1.1.0",
7390 "hasown": "^2.0.2",
@@ -7547,7 +7401,6 @@
7401 "version": "1.0.1",
7402 "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz",
7403 "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==",
7550 - "dev": true,
7404 "license": "MIT",
7405 "dependencies": {
7406 "dunder-proto": "^1.0.1",
@@ -7607,18 +7460,17 @@
7460 }
7461 },
7462 "node_modules/giget": {
7610 - "version": "1.2.4",
7611 - "resolved": "https://registry.npmjs.org/giget/-/giget-1.2.4.tgz",
7612 - "integrity": "sha512-Wv+daGyispVoA31TrWAVR+aAdP7roubTPEM/8JzRnqXhLbdJH0T9eQyXVFF8fjk3WKTsctII6QcyxILYgNp2DA==",
7463 + "version": "1.2.5",
7464 + "resolved": "https://registry.npmjs.org/giget/-/giget-1.2.5.tgz",
7465 + "integrity": "sha512-r1ekGw/Bgpi3HLV3h1MRBIlSAdHoIMklpaQ3OQLFcRw9PwAj2rqigvIbg+dBUI51OxVI2jsEtDywDBjSiuf7Ug==",
7466 "license": "MIT",
7467 "dependencies": {
7468 "citty": "^0.1.6",
7469 "consola": "^3.4.0",
7470 "defu": "^6.1.4",
7471 "node-fetch-native": "^1.6.6",
7619 - "nypm": "^0.5.1",
7620 - "ohash": "^1.1.4",
7621 - "pathe": "^2.0.2",
7472 + "nypm": "^0.5.4",
7473 + "pathe": "^2.0.3",
7474 "tar": "^6.2.1"
7475 },
7476 "bin": {
@@ -7726,9 +7578,9 @@
7578 }
7579 },
7580 "node_modules/globals": {
7729 - "version": "15.14.0",
7730 - "resolved": "https://registry.npmjs.org/globals/-/globals-15.14.0.tgz",
7731 - "integrity": "sha512-OkToC372DtlQeje9/zHIo5CT8lRP/FUgEOKBEhU4e0abL7J7CD24fD9ohiLN5hagG/kWCYj4K5oaxxtj2Z0Dig==",
7581 + "version": "15.15.0",
7582 + "resolved": "https://registry.npmjs.org/globals/-/globals-15.15.0.tgz",
7583 + "integrity": "sha512-7ACyT3wmyp3I61S4fG682L0VA2RGD9otkqGJIwNUMF1SWUombIIk+af1unuDYgMm082aHYwD+mzJvv9Iu8dsgg==",
7584 "dev": true,
7585 "license": "MIT",
7586 "engines": {
@@ -7739,17 +7591,17 @@
7591 }
7592 },
7593 "node_modules/globby": {
7742 - "version": "14.0.2",
7743 - "resolved": "https://registry.npmjs.org/globby/-/globby-14.0.2.tgz",
7744 - "integrity": "sha512-s3Fq41ZVh7vbbe2PN3nrW7yC7U7MFVc5c98/iTl9c2GawNMKx/J648KQRW6WKkuU8GIbbh2IXfIRQjOZnXcTnw==",
7594 + "version": "14.1.0",
7595 + "resolved": "https://registry.npmjs.org/globby/-/globby-14.1.0.tgz",
7596 + "integrity": "sha512-0Ia46fDOaT7k4og1PDW4YbodWWr3scS2vAr2lTbsplOt2WkKp0vQbkI9wKis/T5LV/dqPjO3bpS/z6GTJB82LA==",
7597 "license": "MIT",
7598 "dependencies": {
7599 "@sindresorhus/merge-streams": "^2.1.0",
7748 - "fast-glob": "^3.3.2",
7749 - "ignore": "^5.2.4",
7750 - "path-type": "^5.0.0",
7600 + "fast-glob": "^3.3.3",
7601 + "ignore": "^7.0.3",
7602 + "path-type": "^6.0.0",
7603 "slash": "^5.1.0",
7752 - "unicorn-magic": "^0.1.0"
7604 + "unicorn-magic": "^0.3.0"
7605 },
7606 "engines": {
7607 "node": ">=18"
@@ -7758,13 +7610,22 @@
7610 "url": "https://github.com/sponsors/sindresorhus"
7611 }
7612 },
7613 + "node_modules/globby/node_modules/ignore": {
7614 + "version": "7.0.3",
7615 + "resolved": "https://registry.npmjs.org/ignore/-/ignore-7.0.3.tgz",
7616 + "integrity": "sha512-bAH5jbK/F3T3Jls4I0SO1hmPR0dKU0a7+SY6n1yzRtG54FLO8d6w/nxLFX2Nb7dBu6cCWXPaAME6cYqFUMmuCA==",
7617 + "license": "MIT",
7618 + "engines": {
7619 + "node": ">= 4"
7620 + }
7621 + },
7622 "node_modules/globby/node_modules/path-type": {
7762 - "version": "5.0.0",
7763 - "resolved": "https://registry.npmjs.org/path-type/-/path-type-5.0.0.tgz",
7764 - "integrity": "sha512-5HviZNaZcfqP95rwpv+1HDgUamezbqdSYTyzjTvwtJSnIH+3vnbmWsItli8OFEndS984VT55M3jduxZbX351gg==",
7623 + "version": "6.0.0",
7624 + "resolved": "https://registry.npmjs.org/path-type/-/path-type-6.0.0.tgz",
7625 + "integrity": "sha512-Vj7sf++t5pBD637NSfkxpHSMfWaeig5+DKWLhcqIYx6mWQz5hdJTGDVMQiJcw1ZYkhs7AazKDGpRVji1LJCZUQ==",
7626 "license": "MIT",
7627 "engines": {
7767 - "node": ">=12"
7628 + "node": ">=18"
7629 },
7630 "funding": {
7631 "url": "https://github.com/sponsors/sindresorhus"
@@ -7774,7 +7635,6 @@
7635 "version": "1.2.0",
7636 "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz",
7637 "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==",
7777 - "dev": true,
7638 "license": "MIT",
7639 "engines": {
7640 "node": ">= 0.4"
@@ -7811,7 +7671,6 @@
7671 "version": "1.1.0",
7672 "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz",
7673 "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==",
7814 - "dev": true,
7674 "license": "MIT",
7675 "engines": {
7676 "node": ">= 0.4"
@@ -7824,7 +7683,6 @@
7683 "version": "1.0.2",
7684 "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz",
7685 "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==",
7827 - "dev": true,
7686 "license": "MIT",
7687 "dependencies": {
7688 "has-symbols": "^1.0.3"
@@ -7849,9 +7707,9 @@
7707 }
7708 },
7709 "node_modules/hast-util-to-html": {
7852 - "version": "9.0.4",
7853 - "resolved": "https://registry.npmjs.org/hast-util-to-html/-/hast-util-to-html-9.0.4.tgz",
7854 - "integrity": "sha512-wxQzXtdbhiwGAUKrnQJXlOPmHnEehzphwkK7aluUPQ+lEc1xefC8pblMgpp2w5ldBTEfveRIrADcrhGIWrlTDA==",
7710 + "version": "9.0.5",
7711 + "resolved": "https://registry.npmjs.org/hast-util-to-html/-/hast-util-to-html-9.0.5.tgz",
7712 + "integrity": "sha512-OguPdidb+fbHQSU4Q4ZiLKnzWo8Wwsf5bZfbvu7//a9oTYoqD/fWpe96NuHkoS9h0ccGOTe0C4NGXdtS0iObOw==",
7713 "license": "MIT",
7714 "dependencies": {
7715 "@types/hast": "^3.0.0",
@@ -7861,7 +7719,7 @@
7719 "hast-util-whitespace": "^3.0.0",
7720 "html-void-elements": "^3.0.0",
7721 "mdast-util-to-hast": "^13.0.0",
7864 - "property-information": "^6.0.0",
7722 + "property-information": "^7.0.0",
7723 "space-separated-tokens": "^2.0.0",
7724 "stringify-entities": "^4.0.0",
7725 "zwitch": "^2.0.4"
@@ -7926,13 +7784,25 @@
7784 "version": "5.5.3",
7785 "resolved": "https://registry.npmjs.org/hookable/-/hookable-5.5.3.tgz",
7786 "integrity": "sha512-Yc+BQe8SvoXH1643Qez1zqLRmbA5rCL+sSmk6TVos0LWVfNIB7PGncdlId77WzLGSIB5KaWgTaNTs2lNVEI6VQ==",
7929 - "dev": true,
7787 "license": "MIT"
7788 },
7789 "node_modules/hosted-git-info": {
7933 - "version": "2.8.9",
7934 - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz",
7935 - "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==",
7790 + "version": "7.0.2",
7791 + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-7.0.2.tgz",
7792 + "integrity": "sha512-puUZAUKT5m8Zzvs72XWy3HtvVbTWljRE66cP60bxJzAqf2DgICo7lYTY2IHUmLnNpjYvw5bvmoHvPc0QO2a62w==",
7793 + "dev": true,
7794 + "license": "ISC",
7795 + "dependencies": {
7796 + "lru-cache": "^10.0.1"
7797 + },
7798 + "engines": {
7799 + "node": "^16.14.0 || >=18.0.0"
7800 + }
7801 + },
7802 + "node_modules/hosted-git-info/node_modules/lru-cache": {
7803 + "version": "10.4.3",
7804 + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz",
7805 + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==",
7806 "dev": true,
7807 "license": "ISC"
7808 },
@@ -7988,74 +7858,6 @@
7858 "url": "https://github.com/sponsors/wooorm"
7859 }
7860 },
7991 - "node_modules/http-assert": {
7992 - "version": "1.5.0",
7993 - "resolved": "https://registry.npmjs.org/http-assert/-/http-assert-1.5.0.tgz",
7994 - "integrity": "sha512-uPpH7OKX4H25hBmU6G1jWNaqJGpTXxey+YOUizJUAgu0AjLUeC8D73hTrhvDS5D+GJN1DN1+hhc/eF/wpxtp0w==",
7995 - "dev": true,
7996 - "license": "MIT",
7997 - "dependencies": {
7998 - "deep-equal": "~1.0.1",
7999 - "http-errors": "~1.8.0"
8000 - },
8001 - "engines": {
8002 - "node": ">= 0.8"
8003 - }
8004 - },
8005 - "node_modules/http-assert/node_modules/depd": {
8006 - "version": "1.1.2",
8007 - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz",
8008 - "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==",
8009 - "dev": true,
8010 - "license": "MIT",
8011 - "engines": {
8012 - "node": ">= 0.6"
8013 - }
8014 - },
8015 - "node_modules/http-assert/node_modules/http-errors": {
8016 - "version": "1.8.1",
8017 - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.8.1.tgz",
8018 - "integrity": "sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g==",
8019 - "dev": true,
8020 - "license": "MIT",
8021 - "dependencies": {
8022 - "depd": "~1.1.2",
8023 - "inherits": "2.0.4",
8024 - "setprototypeof": "1.2.0",
8025 - "statuses": ">= 1.5.0 < 2",
8026 - "toidentifier": "1.0.1"
8027 - },
8028 - "engines": {
8029 - "node": ">= 0.6"
8030 - }
8031 - },
8032 - "node_modules/http-assert/node_modules/statuses": {
8033 - "version": "1.5.0",
8034 - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz",
8035 - "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==",
8036 - "dev": true,
8037 - "license": "MIT",
8038 - "engines": {
8039 - "node": ">= 0.6"
8040 - }
8041 - },
8042 - "node_modules/http-errors": {
8043 - "version": "2.0.0",
8044 - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz",
8045 - "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==",
8046 - "dev": true,
8047 - "license": "MIT",
8048 - "dependencies": {
8049 - "depd": "2.0.0",
8050 - "inherits": "2.0.4",
8051 - "setprototypeof": "1.2.0",
8052 - "statuses": "2.0.1",
8053 - "toidentifier": "1.0.1"
8054 - },
8055 - "engines": {
8056 - "node": ">= 0.8"
8057 - }
8058 - },
7861 "node_modules/http-proxy-agent": {
7862 "version": "7.0.2",
7863 "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.2.tgz",
@@ -8147,6 +7949,7 @@
7949 "version": "5.3.2",
7950 "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz",
7951 "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==",
7952 + "dev": true,
7953 "license": "MIT",
7954 "engines": {
7955 "node": ">= 4"
@@ -8160,9 +7963,9 @@
7963 "license": "MIT"
7964 },
7965 "node_modules/import-fresh": {
8163 - "version": "3.3.0",
8164 - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz",
8165 - "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==",
7966 + "version": "3.3.1",
7967 + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.1.tgz",
7968 + "integrity": "sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==",
7969 "dev": true,
7970 "license": "MIT",
7971 "dependencies": {
@@ -8211,31 +8014,6 @@
8014 "url": "https://github.com/sponsors/wooorm"
8015 }
8016 },
8214 - "node_modules/importx": {
8215 - "version": "0.5.1",
8216 - "resolved": "https://registry.npmjs.org/importx/-/importx-0.5.1.tgz",
8217 - "integrity": "sha512-YrRaigAec1sC2CdIJjf/hCH1Wp9Ii8Cq5ROw4k5nJ19FVl2FcJUHZ5gGIb1vs8+JNYIyOJpc2fcufS2330bxDw==",
8218 - "dev": true,
8219 - "license": "MIT",
8220 - "dependencies": {
8221 - "bundle-require": "^5.0.0",
8222 - "debug": "^4.4.0",
8223 - "esbuild": "^0.20.2 || ^0.21.0 || ^0.22.0 || ^0.23.0 || ^0.24.0",
8224 - "jiti": "^2.4.1",
8225 - "pathe": "^1.1.2",
8226 - "tsx": "^4.19.2"
8227 - },
8228 - "funding": {
8229 - "url": "https://github.com/sponsors/antfu"
8230 - }
8231 - },
8232 - "node_modules/importx/node_modules/pathe": {
8233 - "version": "1.1.2",
8234 - "resolved": "https://registry.npmjs.org/pathe/-/pathe-1.1.2.tgz",
8235 - "integrity": "sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==",
8236 - "dev": true,
8237 - "license": "MIT"
8238 - },
8017 "node_modules/imurmurhash": {
8018 "version": "0.1.4",
8019 "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz",
@@ -8247,34 +8025,31 @@
8025 }
8026 },
8027 "node_modules/indent-string": {
8250 - "version": "4.0.0",
8251 - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz",
8252 - "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==",
8028 + "version": "5.0.0",
8029 + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-5.0.0.tgz",
8030 + "integrity": "sha512-m6FAo/spmsW2Ab2fU35JTYwtOKa2yAwXSwgjSv1TJzh4Mh7mC3lzAOVLBprb72XsTrgkEIsl7YrFNAiDiRhIGg==",
8031 "dev": true,
8032 "license": "MIT",
8033 "engines": {
8256 - "node": ">=8"
8034 + "node": ">=12"
8035 + },
8036 + "funding": {
8037 + "url": "https://github.com/sponsors/sindresorhus"
8038 }
8039 },
8259 - "node_modules/inflight": {
8260 - "version": "1.0.6",
8261 - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
8262 - "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==",
8263 - "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.",
8040 + "node_modules/index-to-position": {
8041 + "version": "0.1.2",
8042 + "resolved": "https://registry.npmjs.org/index-to-position/-/index-to-position-0.1.2.tgz",
8043 + "integrity": "sha512-MWDKS3AS1bGCHLBA2VLImJz42f7bJh8wQsTGCzI3j519/CASStoDONUBVz2I/VID0MpiX3SGSnbOD2xUalbE5g==",
8044 "dev": true,
8265 - "license": "ISC",
8266 - "dependencies": {
8267 - "once": "^1.3.0",
8268 - "wrappy": "1"
8045 + "license": "MIT",
8046 + "engines": {
8047 + "node": ">=18"
8048 + },
8049 + "funding": {
8050 + "url": "https://github.com/sponsors/sindresorhus"
8051 }
8052 },
8271 - "node_modules/inherits": {
8272 - "version": "2.0.4",
8273 - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
8274 - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==",
8275 - "dev": true,
8276 - "license": "ISC"
8277 - },
8053 "node_modules/ini": {
8054 "version": "2.0.0",
8055 "resolved": "https://registry.npmjs.org/ini/-/ini-2.0.0.tgz",
@@ -8305,16 +8080,16 @@
8080 }
8081 },
8082 "node_modules/is-builtin-module": {
8308 - "version": "3.2.1",
8309 - "resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-3.2.1.tgz",
8310 - "integrity": "sha512-BSLE3HnV2syZ0FK0iMA/yUGplUeMmNz4AW5fnTunbCIqZi4vG3WjJT9FHMy5D69xmAYBHXQhJdALdpwVxV501A==",
8083 + "version": "4.0.0",
8084 + "resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-4.0.0.tgz",
8085 + "integrity": "sha512-rWP3AMAalQSesXO8gleROyL2iKU73SX5Er66losQn9rWOWL4Gef0a/xOEOVqjWGMuR2vHG3FJ8UUmT700O8oFg==",
8086 "dev": true,
8087 "license": "MIT",
8088 "dependencies": {
8314 - "builtin-modules": "^3.3.0"
8089 + "builtin-modules": "^4.0.0"
8090 },
8091 "engines": {
8317 - "node": ">=6"
8092 + "node": ">=18.20"
8093 },
8094 "funding": {
8095 "url": "https://github.com/sponsors/sindresorhus"
@@ -8369,25 +8144,6 @@
8144 "node": ">=8"
8145 }
8146 },
8372 - "node_modules/is-generator-function": {
8373 - "version": "1.1.0",
8374 - "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.1.0.tgz",
8375 - "integrity": "sha512-nPUB5km40q9e8UfN/Zc24eLlzdSf9OfKByBw9CIdw4H1giPMeA0OIJvbchsCu4npfI2QcMVBsGEBHKZ7wLTWmQ==",
8376 - "dev": true,
8377 - "license": "MIT",
8378 - "dependencies": {
8379 - "call-bound": "^1.0.3",
8380 - "get-proto": "^1.0.0",
8381 - "has-tostringtag": "^1.0.2",
8382 - "safe-regex-test": "^1.1.0"
8383 - },
8384 - "engines": {
8385 - "node": ">= 0.4"
8386 - },
8387 - "funding": {
8388 - "url": "https://github.com/sponsors/ljharb"
8389 - }
8390 - },
8147 "node_modules/is-glob": {
8148 "version": "4.0.3",
8149 "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz",
@@ -8491,25 +8247,6 @@
8247 "dev": true,
8248 "license": "MIT"
8249 },
8494 - "node_modules/is-regex": {
8495 - "version": "1.2.1",
8496 - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.2.1.tgz",
8497 - "integrity": "sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==",
8498 - "dev": true,
8499 - "license": "MIT",
8500 - "dependencies": {
8501 - "call-bound": "^1.0.2",
8502 - "gopd": "^1.2.0",
8503 - "has-tostringtag": "^1.0.2",
8504 - "hasown": "^2.0.2"
8505 - },
8506 - "engines": {
8507 - "node": ">= 0.4"
8508 - },
8509 - "funding": {
8510 - "url": "https://github.com/sponsors/ljharb"
8511 - }
8512 - },
8250 "node_modules/is-stream": {
8251 "version": "2.0.1",
8252 "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz",
@@ -8547,7 +8284,6 @@
8284 "version": "4.1.16",
8285 "resolved": "https://registry.npmjs.org/is-what/-/is-what-4.1.16.tgz",
8286 "integrity": "sha512-ZhMwEosbFJkA0YhFnNDgTM4ZxDRsS6HqTo7qsZM08fehyRYIYa0yHu5R6mgo1n/8MgaPBXiPimPD77baVFYg+A==",
8550 - "dev": true,
8287 "license": "MIT",
8288 "engines": {
8289 "node": ">=12.13"
@@ -8631,26 +8367,26 @@
8367 }
8368 },
8369 "node_modules/jose": {
8634 - "version": "5.9.6",
8635 - "resolved": "https://registry.npmjs.org/jose/-/jose-5.9.6.tgz",
8636 - "integrity": "sha512-AMlnetc9+CV9asI19zHmrgS/WYsWUwCn2R7RzlbJWD7F9eWYUTGyBmU9o6PxngtLGOiDGPRu+Uc4fhKzbpteZQ==",
8370 + "version": "6.0.6",
8371 + "resolved": "https://registry.npmjs.org/jose/-/jose-6.0.6.tgz",
8372 + "integrity": "sha512-FFF9x3KcdRJgQo74X8e6I4D1h3Wtd27fEo0suijveKFc+HFz6M5gonqxFPnDos9ulJFRqMNqWI6NexiHQPSnfQ==",
8373 "license": "MIT",
8374 "funding": {
8375 "url": "https://github.com/sponsors/panva"
8376 }
8377 },
8378 "node_modules/js-beautify": {
8643 - "version": "1.15.1",
8644 - "resolved": "https://registry.npmjs.org/js-beautify/-/js-beautify-1.15.1.tgz",
8645 - "integrity": "sha512-ESjNzSlt/sWE8sciZH8kBF8BPlwXPwhR6pWKAw8bw4Bwj+iZcnKW6ONWUutJ7eObuBZQpiIb8S7OYspWrKt7rA==",
8379 + "version": "1.15.3",
8380 + "resolved": "https://registry.npmjs.org/js-beautify/-/js-beautify-1.15.3.tgz",
8381 + "integrity": "sha512-rKKGuyTxGNlyN4EQKWzNndzXpi0bOl8Gl8YQAW1as/oMz0XhD6sHJO1hTvoBDOSzKuJb9WkwoAb34FfdkKMv2A==",
8382 "dev": true,
8383 "license": "MIT",
8384 "dependencies": {
8385 "config-chain": "^1.1.13",
8386 "editorconfig": "^1.0.4",
8651 - "glob": "^10.3.3",
8387 + "glob": "^10.4.2",
8388 "js-cookie": "^3.0.5",
8653 - "nopt": "^7.2.0"
8389 + "nopt": "^8.0.0"
8390 },
8391 "bin": {
8392 "css-beautify": "js/bin/css-beautify.js",
@@ -8910,19 +8646,6 @@
8646 "verror": "1.10.0"
8647 }
8648 },
8913 - "node_modules/keygrip": {
8914 - "version": "1.1.0",
8915 - "resolved": "https://registry.npmjs.org/keygrip/-/keygrip-1.1.0.tgz",
8916 - "integrity": "sha512-iYSchDJ+liQ8iwbSI2QqsQOvqv58eJCEanyJPJi+Khyu8smkcKSFUCbPwzFcL7YVtZ6eONjqRX/38caJ7QjRAQ==",
8917 - "dev": true,
8918 - "license": "MIT",
8919 - "dependencies": {
8920 - "tsscmp": "1.0.6"
8921 - },
8922 - "engines": {
8923 - "node": ">= 0.6"
8924 - }
8925 - },
8649 "node_modules/keyv": {
8650 "version": "4.5.4",
8651 "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz",
@@ -8948,175 +8671,6 @@
8671 "integrity": "sha512-xYSH7AvuQ6nXkq42x0v5S8/Iry+cfulBz/DJQzhIyESdLD7425jXsPy4vn5cCXU+HhRN2kVw51Vd1K6/By4BQg==",
8672 "license": "MIT"
8673 },
8951 - "node_modules/koa": {
8952 - "version": "2.15.3",
8953 - "resolved": "https://registry.npmjs.org/koa/-/koa-2.15.3.tgz",
8954 - "integrity": "sha512-j/8tY9j5t+GVMLeioLaxweJiKUayFhlGqNTzf2ZGwL0ZCQijd2RLHK0SLW5Tsko8YyyqCZC2cojIb0/s62qTAg==",
8955 - "dev": true,
8956 - "license": "MIT",
8957 - "dependencies": {
8958 - "accepts": "^1.3.5",
8959 - "cache-content-type": "^1.0.0",
8960 - "content-disposition": "~0.5.2",
8961 - "content-type": "^1.0.4",
8962 - "cookies": "~0.9.0",
8963 - "debug": "^4.3.2",
8964 - "delegates": "^1.0.0",
8965 - "depd": "^2.0.0",
8966 - "destroy": "^1.0.4",
8967 - "encodeurl": "^1.0.2",
8968 - "escape-html": "^1.0.3",
8969 - "fresh": "~0.5.2",
8970 - "http-assert": "^1.3.0",
8971 - "http-errors": "^1.6.3",
8972 - "is-generator-function": "^1.0.7",
8973 - "koa-compose": "^4.1.0",
8974 - "koa-convert": "^2.0.0",
8975 - "on-finished": "^2.3.0",
8976 - "only": "~0.0.2",
8977 - "parseurl": "^1.3.2",
8978 - "statuses": "^1.5.0",
8979 - "type-is": "^1.6.16",
8980 - "vary": "^1.1.2"
8981 - },
8982 - "engines": {
8983 - "node": "^4.8.4 || ^6.10.1 || ^7.10.1 || >= 8.1.4"
8984 - }
8985 - },
8986 - "node_modules/koa-compose": {
8987 - "version": "4.1.0",
8988 - "resolved": "https://registry.npmjs.org/koa-compose/-/koa-compose-4.1.0.tgz",
8989 - "integrity": "sha512-8ODW8TrDuMYvXRwra/Kh7/rJo9BtOfPc6qO8eAfC80CnCvSjSl0bkRM24X6/XBBEyj0v1nRUQ1LyOy3dbqOWXw==",
8990 - "dev": true,
8991 - "license": "MIT"
8992 - },
8993 - "node_modules/koa-convert": {
8994 - "version": "2.0.0",
8995 - "resolved": "https://registry.npmjs.org/koa-convert/-/koa-convert-2.0.0.tgz",
8996 - "integrity": "sha512-asOvN6bFlSnxewce2e/DK3p4tltyfC4VM7ZwuTuepI7dEQVcvpyFuBcEARu1+Hxg8DIwytce2n7jrZtRlPrARA==",
8997 - "dev": true,
8998 - "license": "MIT",
8999 - "dependencies": {
9000 - "co": "^4.6.0",
9001 - "koa-compose": "^4.1.0"
9002 - },
9003 - "engines": {
9004 - "node": ">= 10"
9005 - }
9006 - },
9007 - "node_modules/koa-send": {
9008 - "version": "5.0.1",
9009 - "resolved": "https://registry.npmjs.org/koa-send/-/koa-send-5.0.1.tgz",
9010 - "integrity": "sha512-tmcyQ/wXXuxpDxyNXv5yNNkdAMdFRqwtegBXUaowiQzUKqJehttS0x2j0eOZDQAyloAth5w6wwBImnFzkUz3pQ==",
9011 - "dev": true,
9012 - "license": "MIT",
9013 - "dependencies": {
9014 - "debug": "^4.1.1",
9015 - "http-errors": "^1.7.3",
9016 - "resolve-path": "^1.4.0"
9017 - },
9018 - "engines": {
9019 - "node": ">= 8"
9020 - }
9021 - },
9022 - "node_modules/koa-send/node_modules/depd": {
9023 - "version": "1.1.2",
9024 - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz",
9025 - "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==",
9026 - "dev": true,
9027 - "license": "MIT",
9028 - "engines": {
9029 - "node": ">= 0.6"
9030 - }
9031 - },
9032 - "node_modules/koa-send/node_modules/http-errors": {
9033 - "version": "1.8.1",
9034 - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.8.1.tgz",
9035 - "integrity": "sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g==",
9036 - "dev": true,
9037 - "license": "MIT",
9038 - "dependencies": {
9039 - "depd": "~1.1.2",
9040 - "inherits": "2.0.4",
9041 - "setprototypeof": "1.2.0",
9042 - "statuses": ">= 1.5.0 < 2",
9043 - "toidentifier": "1.0.1"
9044 - },
9045 - "engines": {
9046 - "node": ">= 0.6"
9047 - }
9048 - },
9049 - "node_modules/koa-send/node_modules/statuses": {
9050 - "version": "1.5.0",
9051 - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz",
9052 - "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==",
9053 - "dev": true,
9054 - "license": "MIT",
9055 - "engines": {
9056 - "node": ">= 0.6"
9057 - }
9058 - },
9059 - "node_modules/koa-static": {
9060 - "version": "5.0.0",
9061 - "resolved": "https://registry.npmjs.org/koa-static/-/koa-static-5.0.0.tgz",
9062 - "integrity": "sha512-UqyYyH5YEXaJrf9S8E23GoJFQZXkBVJ9zYYMPGz919MSX1KuvAcycIuS0ci150HCoPf4XQVhQ84Qf8xRPWxFaQ==",
9063 - "dev": true,
9064 - "license": "MIT",
9065 - "dependencies": {
9066 - "debug": "^3.1.0",
9067 - "koa-send": "^5.0.0"
9068 - },
9069 - "engines": {
9070 - "node": ">= 7.6.0"
9071 - }
9072 - },
9073 - "node_modules/koa-static/node_modules/debug": {
9074 - "version": "3.2.7",
9075 - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz",
9076 - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==",
9077 - "dev": true,
9078 - "license": "MIT",
9079 - "dependencies": {
9080 - "ms": "^2.1.1"
9081 - }
9082 - },
9083 - "node_modules/koa/node_modules/http-errors": {
9084 - "version": "1.8.1",
9085 - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.8.1.tgz",
9086 - "integrity": "sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g==",
9087 - "dev": true,
9088 - "license": "MIT",
9089 - "dependencies": {
9090 - "depd": "~1.1.2",
9091 - "inherits": "2.0.4",
9092 - "setprototypeof": "1.2.0",
9093 - "statuses": ">= 1.5.0 < 2",
9094 - "toidentifier": "1.0.1"
9095 - },
9096 - "engines": {
9097 - "node": ">= 0.6"
9098 - }
9099 - },
9100 - "node_modules/koa/node_modules/http-errors/node_modules/depd": {
9101 - "version": "1.1.2",
9102 - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz",
9103 - "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==",
9104 - "dev": true,
9105 - "license": "MIT",
9106 - "engines": {
9107 - "node": ">= 0.6"
9108 - }
9109 - },
9110 - "node_modules/koa/node_modules/statuses": {
9111 - "version": "1.5.0",
9112 - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz",
9113 - "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==",
9114 - "dev": true,
9115 - "license": "MIT",
9116 - "engines": {
9117 - "node": ">= 0.6"
9118 - }
9119 - },
8674 "node_modules/kolorist": {
8675 "version": "1.8.0",
8676 "resolved": "https://registry.npmjs.org/kolorist/-/kolorist-1.8.0.tgz",
@@ -9221,16 +8775,6 @@
8775 "url": "https://github.com/chalk/wrap-ansi?sponsor=1"
8776 }
8777 },
9224 - "node_modules/load-tsconfig": {
9225 - "version": "0.2.5",
9226 - "resolved": "https://registry.npmjs.org/load-tsconfig/-/load-tsconfig-0.2.5.tgz",
9227 - "integrity": "sha512-IXO6OCs9yg8tMKzfPZ1YmheJbZCiEsnBdcB03l0OcfK9prKnJb96siuHCr5Fl37/yo9DnKU+TLpxzTUspw9shg==",
9228 - "dev": true,
9229 - "license": "MIT",
9230 - "engines": {
9231 - "node": "^12.20.0 || ^14.13.1 || >=16.0.0"
9232 - }
9233 - },
8778 "node_modules/local-pkg": {
8779 "version": "1.0.0",
8780 "resolved": "https://registry.npmjs.org/local-pkg/-/local-pkg-1.0.0.tgz",
@@ -9447,7 +8991,6 @@
8991 "version": "1.1.0",
8992 "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz",
8993 "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==",
9450 - "dev": true,
8994 "license": "MIT",
8995 "engines": {
8996 "node": ">= 0.4"
@@ -9509,9 +9052,9 @@
9052 }
9053 },
9054 "node_modules/mdast-util-gfm": {
9512 - "version": "3.0.0",
9513 - "resolved": "https://registry.npmjs.org/mdast-util-gfm/-/mdast-util-gfm-3.0.0.tgz",
9514 - "integrity": "sha512-dgQEX5Amaq+DuUqf26jJqSK9qgixgd6rYDHAv4aTBuA92cTknZlKpPfa86Z/s8Dj8xsAQpFfBmPUHWJBWqS4Bw==",
9055 + "version": "3.1.0",
9056 + "resolved": "https://registry.npmjs.org/mdast-util-gfm/-/mdast-util-gfm-3.1.0.tgz",
9057 + "integrity": "sha512-0ulfdQOM3ysHhCJ1p06l0b0VKlhU0wuQs3thxZQagjcjPrlFRqY215uZGHHJan9GEAXd9MbfPjFJz+qMkVR6zQ==",
9058 "dev": true,
9059 "license": "MIT",
9060 "dependencies": {
@@ -9547,9 +9090,9 @@
9090 }
9091 },
9092 "node_modules/mdast-util-gfm-footnote": {
9550 - "version": "2.0.0",
9551 - "resolved": "https://registry.npmjs.org/mdast-util-gfm-footnote/-/mdast-util-gfm-footnote-2.0.0.tgz",
9552 - "integrity": "sha512-5jOT2boTSVkMnQ7LTrd6n/18kqwjmuYqo7JUPe+tRCY6O7dAuTFMtTPauYYrMPpox9hlN0uOx/FL8XvEfG9/mQ==",
9093 + "version": "2.1.0",
9094 + "resolved": "https://registry.npmjs.org/mdast-util-gfm-footnote/-/mdast-util-gfm-footnote-2.1.0.tgz",
9095 + "integrity": "sha512-sqpDWlsHn7Ac9GNZQMeUzPQSMzR6Wv0WKRNvQRg0KqHh02fpTz69Qc1QSseNX29bhz1ROIyNyxExfawVKTm1GQ==",
9096 "dev": true,
9097 "license": "MIT",
9098 "dependencies": {
@@ -9700,16 +9243,6 @@
9243 "integrity": "sha512-Lf+9+2r+Tdp5wXDXC4PcIBjTDtq4UKjCPMQhKIuzpJNW0b96kVqSwW0bT7FhRSfmAiFYgP+SCRvdrDozfh0U5w==",
9244 "license": "MIT"
9245 },
9703 - "node_modules/media-typer": {
9704 - "version": "0.3.0",
9705 - "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz",
9706 - "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==",
9707 - "dev": true,
9708 - "license": "MIT",
9709 - "engines": {
9710 - "node": ">= 0.6"
9711 - }
9712 - },
9246 "node_modules/memorystream": {
9247 "version": "0.3.1",
9248 "resolved": "https://registry.npmjs.org/memorystream/-/memorystream-0.3.1.tgz",
@@ -9735,16 +9268,6 @@
9268 "node": ">= 8"
9269 }
9270 },
9738 - "node_modules/methods": {
9739 - "version": "1.1.2",
9740 - "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz",
9741 - "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==",
9742 - "dev": true,
9743 - "license": "MIT",
9744 - "engines": {
9745 - "node": ">= 0.6"
9746 - }
9747 - },
9271 "node_modules/micromark": {
9272 "version": "4.0.1",
9273 "resolved": "https://registry.npmjs.org/micromark/-/micromark-4.0.1.tgz",
@@ -10469,16 +9992,15 @@
9992 "license": "MIT"
9993 },
9994 "node_modules/mkdirp": {
10472 - "version": "0.5.6",
10473 - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz",
10474 - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==",
10475 - "dev": true,
9995 + "version": "1.0.4",
9996 + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz",
9997 + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==",
9998 "license": "MIT",
10477 - "dependencies": {
10478 - "minimist": "^1.2.6"
10479 - },
9999 "bin": {
10000 "mkdirp": "bin/cmd.js"
10001 + },
10002 + "engines": {
10003 + "node": ">=10"
10004 }
10005 },
10006 "node_modules/mlly": {
@@ -10494,9 +10016,9 @@
10016 }
10017 },
10018 "node_modules/mrmime": {
10497 - "version": "2.0.0",
10498 - "resolved": "https://registry.npmjs.org/mrmime/-/mrmime-2.0.0.tgz",
10499 - "integrity": "sha512-eu38+hdgojoyq63s+yTpN4XMBdt5l8HhMhc4VKLO9KM5caLIBvUm4thi7fFaxyTmCKeNnXZ5pAlBwCUnhA09uw==",
10019 + "version": "2.0.1",
10020 + "resolved": "https://registry.npmjs.org/mrmime/-/mrmime-2.0.1.tgz",
10021 + "integrity": "sha512-Y3wQdFg2Va6etvQ5I82yUhGdsKrcYox6p7FfL1LbK2J4V01F9TGlepTIhnK24t7koZibmg82KGglhA1XK5IsLQ==",
10022 "dev": true,
10023 "license": "MIT",
10024 "engines": {
@@ -10602,9 +10124,9 @@
10124 }
10125 },
10126 "node_modules/nanoid": {
10605 - "version": "5.0.9",
10606 - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-5.0.9.tgz",
10607 - "integrity": "sha512-Aooyr6MXU6HpvvWXKoVoXwKMs/KyVakWwg7xQfv5/S/RIgJMy0Ifa45H9qqYy7pTCszrHzP21Uk4PZq2HpEM8Q==",
10127 + "version": "5.1.2",
10128 + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-5.1.2.tgz",
10129 + "integrity": "sha512-b+CiXQCNMUGe0Ri64S9SXFcP9hogjAJ2Rd6GdVxhPLRm7mhGaM7VgOvCAJ1ZshfHbqVDI3uqTI5C8/GaKuLI7g==",
10130 "funding": [
10131 {
10132 "type": "github",
@@ -10636,16 +10158,6 @@
10158 "node": ">=18"
10159 }
10160 },
10639 - "node_modules/negotiator": {
10640 - "version": "0.6.3",
10641 - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz",
10642 - "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==",
10643 - "dev": true,
10644 - "license": "MIT",
10645 - "engines": {
10646 - "node": ">= 0.6"
10647 - }
10648 - },
10161 "node_modules/node-addon-api": {
10162 "version": "7.1.1",
10163 "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-7.1.1.tgz",
@@ -10667,42 +10179,34 @@
10179 "license": "MIT"
10180 },
10181 "node_modules/nopt": {
10670 - "version": "7.2.1",
10671 - "resolved": "https://registry.npmjs.org/nopt/-/nopt-7.2.1.tgz",
10672 - "integrity": "sha512-taM24ViiimT/XntxbPyJQzCG+p4EKOpgD3mxFwW38mGjVUrfERQOeY4EDHjdnptttfHuHQXFx+lTP08Q+mLa/w==",
10182 + "version": "8.1.0",
10183 + "resolved": "https://registry.npmjs.org/nopt/-/nopt-8.1.0.tgz",
10184 + "integrity": "sha512-ieGu42u/Qsa4TFktmaKEwM6MQH0pOWnaB3htzh0JRtx84+Mebc0cbZYN5bC+6WTZ4+77xrL9Pn5m7CV6VIkV7A==",
10185 "dev": true,
10186 "license": "ISC",
10187 "dependencies": {
10676 - "abbrev": "^2.0.0"
10188 + "abbrev": "^3.0.0"
10189 },
10190 "bin": {
10191 "nopt": "bin/nopt.js"
10192 },
10193 "engines": {
10682 - "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
10194 + "node": "^18.17.0 || >=20.5.0"
10195 }
10196 },
10197 "node_modules/normalize-package-data": {
10686 - "version": "2.5.0",
10687 - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz",
10688 - "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==",
10198 + "version": "6.0.2",
10199 + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-6.0.2.tgz",
10200 + "integrity": "sha512-V6gygoYb/5EmNI+MEGrWkC+e6+Rr7mTmfHrxDbLzxQogBkgzo76rkok0Am6thgSF7Mv2nLOajAJj5vDJZEFn7g==",
10201 "dev": true,
10202 "license": "BSD-2-Clause",
10203 "dependencies": {
10692 - "hosted-git-info": "^2.1.4",
10693 - "resolve": "^1.10.0",
10694 - "semver": "2 || 3 || 4 || 5",
10695 - "validate-npm-package-license": "^3.0.1"
10696 - }
10697 - },
10698 - "node_modules/normalize-package-data/node_modules/semver": {
10699 - "version": "5.7.2",
10700 - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz",
10701 - "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==",
10702 - "dev": true,
10703 - "license": "ISC",
10704 - "bin": {
10705 - "semver": "bin/semver"
10204 + "hosted-git-info": "^7.0.0",
10205 + "semver": "^7.3.5",
10206 + "validate-npm-package-license": "^3.0.4"
10207 + },
10208 + "engines": {
10209 + "node": "^16.14.0 || >=18.0.0"
10210 }
10211 },
10212 "node_modules/normalize-path": {
@@ -10834,14 +10338,14 @@
10338 "license": "MIT"
10339 },
10340 "node_modules/nypm": {
10837 - "version": "0.5.2",
10838 - "resolved": "https://registry.npmjs.org/nypm/-/nypm-0.5.2.tgz",
10839 - "integrity": "sha512-AHzvnyUJYSrrphPhRWWZNcoZfArGNp3Vrc4pm/ZurO74tYNTgAPrEyBQEKy+qioqmWlPXwvMZCG2wOaHlPG0Pw==",
10341 + "version": "0.5.4",
10342 + "resolved": "https://registry.npmjs.org/nypm/-/nypm-0.5.4.tgz",
10343 + "integrity": "sha512-X0SNNrZiGU8/e/zAB7sCTtdxWTMSIO73q+xuKgglm2Yvzwlo8UoC5FNySQFCvl84uPaeADkqHUZUkWy4aH4xOA==",
10344 "license": "MIT",
10345 "dependencies": {
10346 "citty": "^0.1.6",
10347 "consola": "^3.4.0",
10844 - "pathe": "^2.0.2",
10348 + "pathe": "^2.0.3",
10349 "pkg-types": "^1.3.1",
10350 "tinyexec": "^0.3.2",
10351 "ufo": "^1.5.4"
@@ -10872,9 +10376,9 @@
10376 }
10377 },
10378 "node_modules/object-inspect": {
10875 - "version": "1.13.3",
10876 - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.3.tgz",
10877 - "integrity": "sha512-kDCGIbxkDSXE3euJZZXzc6to7fCrKHNI/hSRQnRuQ+BWjFNzZwiFF8fj/6o2t2G9/jTj8PSIYTfCLelLZEeRpA==",
10379 + "version": "1.13.4",
10380 + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.4.tgz",
10381 + "integrity": "sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==",
10382 "dev": true,
10383 "license": "MIT",
10384 "engines": {
@@ -10902,19 +10406,6 @@
10406 "integrity": "sha512-FlDryZAahJmEF3VR3w1KogSEdWX3WhA5GPakFx4J81kEAiHyLMpdLLElS8n8dfNadMgAne/MywcvmogzscVt4g==",
10407 "license": "MIT"
10408 },
10905 - "node_modules/on-finished": {
10906 - "version": "2.4.1",
10907 - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz",
10908 - "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==",
10909 - "dev": true,
10910 - "license": "MIT",
10911 - "dependencies": {
10912 - "ee-first": "1.1.1"
10913 - },
10914 - "engines": {
10915 - "node": ">= 0.8"
10916 - }
10917 - },
10409 "node_modules/once": {
10410 "version": "1.4.0",
10411 "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
@@ -10942,34 +10433,29 @@
10433 }
10434 },
10435 "node_modules/oniguruma-to-es": {
10945 - "version": "2.3.0",
10946 - "resolved": "https://registry.npmjs.org/oniguruma-to-es/-/oniguruma-to-es-2.3.0.tgz",
10947 - "integrity": "sha512-bwALDxriqfKGfUufKGGepCzu9x7nJQuoRoAFp4AnwehhC2crqrDIAP/uN2qdlsAvSMpeRC3+Yzhqc7hLmle5+g==",
10436 + "version": "3.1.1",
10437 + "resolved": "https://registry.npmjs.org/oniguruma-to-es/-/oniguruma-to-es-3.1.1.tgz",
10438 + "integrity": "sha512-bUH8SDvPkH3ho3dvwJwfonjlQ4R80vjyvrU8YpxuROddv55vAEJrTuCuCVUhhsHbtlD9tGGbaNApGQckXhS8iQ==",
10439 "license": "MIT",
10440 "dependencies": {
10441 "emoji-regex-xs": "^1.0.0",
10951 - "regex": "^5.1.1",
10952 - "regex-recursion": "^5.1.1"
10442 + "regex": "^6.0.1",
10443 + "regex-recursion": "^6.0.2"
10444 }
10445 },
10955 - "node_modules/only": {
10956 - "version": "0.0.2",
10957 - "resolved": "https://registry.npmjs.org/only/-/only-0.0.2.tgz",
10958 - "integrity": "sha512-Fvw+Jemq5fjjyWz6CpKx6w9s7xxqo3+JCyM0WXWeCSOboZ8ABkyvP8ID4CZuChA/wxSx+XSJmdOm8rGVyJ1hdQ==",
10959 - "dev": true
10960 - },
10446 "node_modules/open": {
10962 - "version": "7.4.2",
10963 - "resolved": "https://registry.npmjs.org/open/-/open-7.4.2.tgz",
10964 - "integrity": "sha512-MVHddDVweXZF3awtlAS+6pgKLlm/JgxZ90+/NBurBoQctVOOB/zDdVjcyPzQ+0laDGbsWgrRkflI65sQeOgT9Q==",
10447 + "version": "8.4.2",
10448 + "resolved": "https://registry.npmjs.org/open/-/open-8.4.2.tgz",
10449 + "integrity": "sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==",
10450 "dev": true,
10451 "license": "MIT",
10452 "dependencies": {
10968 - "is-docker": "^2.0.0",
10969 - "is-wsl": "^2.1.1"
10453 + "define-lazy-prop": "^2.0.0",
10454 + "is-docker": "^2.1.1",
10455 + "is-wsl": "^2.2.0"
10456 },
10457 "engines": {
10972 - "node": ">=8"
10458 + "node": ">=12"
10459 },
10460 "funding": {
10461 "url": "https://github.com/sponsors/sindresorhus"
@@ -11048,16 +10534,6 @@
10534 "url": "https://github.com/sponsors/sindresorhus"
10535 }
10536 },
11051 - "node_modules/p-try": {
11052 - "version": "2.2.0",
11053 - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz",
11054 - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==",
11055 - "dev": true,
11056 - "license": "MIT",
11057 - "engines": {
11058 - "node": ">=6"
11059 - }
11060 - },
10537 "node_modules/package-json-from-dist": {
10538 "version": "1.0.1",
10539 "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz",
@@ -11065,9 +10541,9 @@
10541 "license": "BlueOak-1.0.0"
10542 },
10543 "node_modules/package-manager-detector": {
11068 - "version": "0.2.8",
11069 - "resolved": "https://registry.npmjs.org/package-manager-detector/-/package-manager-detector-0.2.8.tgz",
11070 - "integrity": "sha512-ts9KSdroZisdvKMWVAVCXiKqnqNfXz4+IbrBG8/BWx/TR5le+jfenvoBuIZ6UWM9nz47W7AbD9qYfAwfWMIwzA==",
10544 + "version": "0.2.9",
10545 + "resolved": "https://registry.npmjs.org/package-manager-detector/-/package-manager-detector-0.2.9.tgz",
10546 + "integrity": "sha512-+vYvA/Y31l8Zk8dwxHhL3JfTuHPm6tlxM2A3GeQyl7ovYnSp1+mzAxClxaOr0qO1TtPxbQxetI7v5XqKLJZk7Q==",
10547 "dev": true,
10548 "license": "MIT"
10549 },
@@ -11163,16 +10639,6 @@
10639 "url": "https://github.com/inikulin/parse5?sponsor=1"
10640 }
10641 },
11166 - "node_modules/parseurl": {
11167 - "version": "1.3.3",
11168 - "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz",
11169 - "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==",
11170 - "dev": true,
11171 - "license": "MIT",
11172 - "engines": {
11173 - "node": ">= 0.8"
11174 - }
11175 - },
10642 "node_modules/password-validator": {
10643 "version": "5.3.0",
10644 "resolved": "https://registry.npmjs.org/password-validator/-/password-validator-5.3.0.tgz",
@@ -11199,16 +10665,6 @@
10665 "node": ">=8"
10666 }
10667 },
11202 - "node_modules/path-is-absolute": {
11203 - "version": "1.0.1",
11204 - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
11205 - "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==",
11206 - "dev": true,
11207 - "license": "MIT",
11208 - "engines": {
11209 - "node": ">=0.10.0"
11210 - }
11211 - },
10668 "node_modules/path-key": {
10669 "version": "3.1.1",
10670 "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz",
@@ -11246,13 +10702,6 @@
10702 "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==",
10703 "license": "ISC"
10704 },
11249 - "node_modules/path-to-regexp": {
11250 - "version": "6.3.0",
11251 - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-6.3.0.tgz",
11252 - "integrity": "sha512-Yhpw4T9C6hPpgPeA28us07OJeqZ5EzQTkbfwuhsUg0c237RomFoETJgmp2sa3F/41gfLE6G5cqcYwznmeEeOlQ==",
11253 - "dev": true,
11254 - "license": "MIT"
11255 - },
10705 "node_modules/path-type": {
10706 "version": "4.0.0",
10707 "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz",
@@ -11264,9 +10713,9 @@
10713 }
10714 },
10715 "node_modules/pathe": {
11267 - "version": "2.0.2",
11268 - "resolved": "https://registry.npmjs.org/pathe/-/pathe-2.0.2.tgz",
11269 - "integrity": "sha512-15Ztpk+nov8DR524R4BF7uEuzESgzUEAV4Ah7CUMNGXdE5ELuvxElxGXndBl32vMSsWa1jpNf22Z+Er3sKwq+w==",
10716 + "version": "2.0.3",
10717 + "resolved": "https://registry.npmjs.org/pathe/-/pathe-2.0.3.tgz",
10718 + "integrity": "sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w==",
10719 "license": "MIT"
10720 },
10721 "node_modules/pathval": {
@@ -11353,13 +10802,12 @@
10802 }
10803 },
10804 "node_modules/pinia": {
11356 - "version": "2.3.1",
11357 - "resolved": "https://registry.npmjs.org/pinia/-/pinia-2.3.1.tgz",
11358 - "integrity": "sha512-khUlZSwt9xXCaTbbxFYBKDc/bWAGWJjOgvxETwkTN7KRm66EeT1ZdZj6i2ceh9sP2Pzqsbc704r2yngBrxBVug==",
10805 + "version": "3.0.1",
10806 + "resolved": "https://registry.npmjs.org/pinia/-/pinia-3.0.1.tgz",
10807 + "integrity": "sha512-WXglsDzztOTH6IfcJ99ltYZin2mY8XZCXujkYWVIJlBjqsP6ST7zw+Aarh63E1cDVYeyUcPCxPHzJpEOmzB6Wg==",
10808 "license": "MIT",
10809 "dependencies": {
11361 - "@vue/devtools-api": "^6.6.3",
11362 - "vue-demi": "^0.14.10"
10810 + "@vue/devtools-api": "^7.7.2"
10811 },
10812 "funding": {
10813 "url": "https://github.com/sponsors/posva"
@@ -11438,45 +10886,10 @@
10886 "node": ">=4"
10887 }
10888 },
11441 - "node_modules/portfinder": {
11442 - "version": "1.0.32",
11443 - "resolved": "https://registry.npmjs.org/portfinder/-/portfinder-1.0.32.tgz",
11444 - "integrity": "sha512-on2ZJVVDXRADWE6jnQaX0ioEylzgBpQk8r55NE4wjXW1ZxO+BgDlY6DXwj20i0V8eB4SenDQ00WEaxfiIQPcxg==",
11445 - "dev": true,
11446 - "license": "MIT",
11447 - "dependencies": {
11448 - "async": "^2.6.4",
11449 - "debug": "^3.2.7",
11450 - "mkdirp": "^0.5.6"
11451 - },
11452 - "engines": {
11453 - "node": ">= 0.12.0"
11454 - }
11455 - },
11456 - "node_modules/portfinder/node_modules/async": {
11457 - "version": "2.6.4",
11458 - "resolved": "https://registry.npmjs.org/async/-/async-2.6.4.tgz",
11459 - "integrity": "sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==",
11460 - "dev": true,
11461 - "license": "MIT",
11462 - "dependencies": {
11463 - "lodash": "^4.17.14"
11464 - }
11465 - },
11466 - "node_modules/portfinder/node_modules/debug": {
11467 - "version": "3.2.7",
11468 - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz",
11469 - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==",
11470 - "dev": true,
11471 - "license": "MIT",
11472 - "dependencies": {
11473 - "ms": "^2.1.1"
11474 - }
11475 - },
10889 "node_modules/postcss": {
11477 - "version": "8.5.1",
11478 - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.1.tgz",
11479 - "integrity": "sha512-6oz2beyjc5VMn/KV1pPw8fliQkhBXrVn1Z3TVyqZxU8kZpzEKhBdmCFqI6ZbmGtamQvQGuU1sgPTk8ZrXDD7jQ==",
10890 + "version": "8.5.3",
10891 + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.3.tgz",
10892 + "integrity": "sha512-dle9A3yYxlBSrt8Fu+IpjGT8SY8hN0mlaA6GY8t0P5PjIOZemULz/E2Bnm/2dcUOena75OTNkHI76uZBNUUq3A==",
10893 "funding": [
10894 {
10895 "type": "opencollective",
@@ -11645,9 +11058,9 @@
11058 }
11059 },
11060 "node_modules/prettier": {
11648 - "version": "3.4.2",
11649 - "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.4.2.tgz",
11650 - "integrity": "sha512-e9MewbtFo+Fevyuxn/4rrcDAaq0IYxPGLvObpQjiZBMAzB9IGmzlnG9RZy3FFas+eBMu2vA0CszMeduow5dIuQ==",
11061 + "version": "3.5.2",
11062 + "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.5.2.tgz",
11063 + "integrity": "sha512-lc6npv5PH7hVqozBR7lkBNOGXV9vMwROAPlumdBkX0wTbbzPu/U1hk5yL8p2pt4Xoc+2mkT8t/sow2YrV/M5qg==",
11064 "dev": true,
11065 "license": "MIT",
11066 "bin": {
@@ -11779,9 +11192,9 @@
11192 }
11193 },
11194 "node_modules/property-information": {
11782 - "version": "6.5.0",
11783 - "resolved": "https://registry.npmjs.org/property-information/-/property-information-6.5.0.tgz",
11784 - "integrity": "sha512-PgTgs/BlvHxOu8QuEN7wi5A0OmXaBcHpmCSTehcs6Uuu9IkDIEo13Hy7n898RHfrQ49vKCoGeWZSaAK01nwVig==",
11195 + "version": "7.0.0",
11196 + "resolved": "https://registry.npmjs.org/property-information/-/property-information-7.0.0.tgz",
11197 + "integrity": "sha512-7D/qOz/+Y4X/rzSB6jKxKUsQnphO046ei8qxG59mtM3RG3DHgTK81HrxrmoDVINJb8NKT5ZsRbwHvQ6B68Iyhg==",
11198 "license": "MIT",
11199 "funding": {
11200 "type": "github",
@@ -11926,114 +11339,73 @@
11339 "node": "^18.17.0 || >=20.5.0"
11340 }
11341 },
11929 - "node_modules/read-pkg": {
11930 - "version": "5.2.0",
11931 - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz",
11932 - "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==",
11933 - "dev": true,
11934 - "license": "MIT",
11935 - "dependencies": {
11936 - "@types/normalize-package-data": "^2.4.0",
11937 - "normalize-package-data": "^2.5.0",
11938 - "parse-json": "^5.0.0",
11939 - "type-fest": "^0.6.0"
11940 - },
11941 - "engines": {
11942 - "node": ">=8"
11943 - }
11944 - },
11945 - "node_modules/read-pkg-up": {
11946 - "version": "7.0.1",
11947 - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz",
11948 - "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==",
11342 + "node_modules/read-package-up": {
11343 + "version": "11.0.0",
11344 + "resolved": "https://registry.npmjs.org/read-package-up/-/read-package-up-11.0.0.tgz",
11345 + "integrity": "sha512-MbgfoNPANMdb4oRBNg5eqLbB2t2r+o5Ua1pNt8BqGp4I0FJZhuVSOj3PaBPni4azWuSzEdNn2evevzVmEk1ohQ==",
11346 "dev": true,
11347 "license": "MIT",
11348 "dependencies": {
11952 - "find-up": "^4.1.0",
11953 - "read-pkg": "^5.2.0",
11954 - "type-fest": "^0.8.1"
11349 + "find-up-simple": "^1.0.0",
11350 + "read-pkg": "^9.0.0",
11351 + "type-fest": "^4.6.0"
11352 },
11353 "engines": {
11957 - "node": ">=8"
11354 + "node": ">=18"
11355 },
11356 "funding": {
11357 "url": "https://github.com/sponsors/sindresorhus"
11358 }
11359 },
11963 - "node_modules/read-pkg-up/node_modules/find-up": {
11964 - "version": "4.1.0",
11965 - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz",
11966 - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==",
11360 + "node_modules/read-pkg": {
11361 + "version": "9.0.1",
11362 + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-9.0.1.tgz",
11363 + "integrity": "sha512-9viLL4/n1BJUCT1NXVTdS1jtm80yDEgR5T4yCelII49Mbj0v1rZdKqj7zCiYdbB0CuCgdrvHcNogAKTFPBocFA==",
11364 "dev": true,
11365 "license": "MIT",
11366 "dependencies": {
11970 - "locate-path": "^5.0.0",
11971 - "path-exists": "^4.0.0"
11367 + "@types/normalize-package-data": "^2.4.3",
11368 + "normalize-package-data": "^6.0.0",
11369 + "parse-json": "^8.0.0",
11370 + "type-fest": "^4.6.0",
11371 + "unicorn-magic": "^0.1.0"
11372 },
11373 "engines": {
11974 - "node": ">=8"
11975 - }
11976 - },
11977 - "node_modules/read-pkg-up/node_modules/locate-path": {
11978 - "version": "5.0.0",
11979 - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz",
11980 - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==",
11981 - "dev": true,
11982 - "license": "MIT",
11983 - "dependencies": {
11984 - "p-locate": "^4.1.0"
11374 + "node": ">=18"
11375 },
11986 - "engines": {
11987 - "node": ">=8"
11376 + "funding": {
11377 + "url": "https://github.com/sponsors/sindresorhus"
11378 }
11379 },
11990 - "node_modules/read-pkg-up/node_modules/p-limit": {
11991 - "version": "2.3.0",
11992 - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
11993 - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
11380 + "node_modules/read-pkg/node_modules/parse-json": {
11381 + "version": "8.1.0",
11382 + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-8.1.0.tgz",
11383 + "integrity": "sha512-rum1bPifK5SSar35Z6EKZuYPJx85pkNaFrxBK3mwdfSJ1/WKbYrjoW/zTPSjRRamfmVX1ACBIdFAO0VRErW/EA==",
11384 "dev": true,
11385 "license": "MIT",
11386 "dependencies": {
11997 - "p-try": "^2.0.0"
11387 + "@babel/code-frame": "^7.22.13",
11388 + "index-to-position": "^0.1.2",
11389 + "type-fest": "^4.7.1"
11390 },
11391 "engines": {
12000 - "node": ">=6"
11392 + "node": ">=18"
11393 },
11394 "funding": {
11395 "url": "https://github.com/sponsors/sindresorhus"
11396 }
11397 },
12006 - "node_modules/read-pkg-up/node_modules/p-locate": {
12007 - "version": "4.1.0",
12008 - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz",
12009 - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==",
11398 + "node_modules/read-pkg/node_modules/unicorn-magic": {
11399 + "version": "0.1.0",
11400 + "resolved": "https://registry.npmjs.org/unicorn-magic/-/unicorn-magic-0.1.0.tgz",
11401 + "integrity": "sha512-lRfVq8fE8gz6QMBuDM6a+LO3IAzTi05H6gCVaUpir2E1Rwpo4ZUog45KpNXKC/Mn3Yb9UDuHumeFTo9iV/D9FQ==",
11402 "dev": true,
11403 "license": "MIT",
12012 - "dependencies": {
12013 - "p-limit": "^2.2.0"
12014 - },
12015 - "engines": {
12016 - "node": ">=8"
12017 - }
12018 - },
12019 - "node_modules/read-pkg-up/node_modules/type-fest": {
12020 - "version": "0.8.1",
12021 - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz",
12022 - "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==",
12023 - "dev": true,
12024 - "license": "(MIT OR CC0-1.0)",
12025 - "engines": {
12026 - "node": ">=8"
12027 - }
12028 - },
12029 - "node_modules/read-pkg/node_modules/type-fest": {
12030 - "version": "0.6.0",
12031 - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz",
12032 - "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==",
12033 - "dev": true,
12034 - "license": "(MIT OR CC0-1.0)",
11404 "engines": {
12036 - "node": ">=8"
11405 + "node": ">=18"
11406 + },
11407 + "funding": {
11408 + "url": "https://github.com/sponsors/sindresorhus"
11409 }
11410 },
11411 "node_modules/readdirp": {
@@ -12074,21 +11446,20 @@
11446 }
11447 },
11448 "node_modules/regex": {
12077 - "version": "5.1.1",
12078 - "resolved": "https://registry.npmjs.org/regex/-/regex-5.1.1.tgz",
12079 - "integrity": "sha512-dN5I359AVGPnwzJm2jN1k0W9LPZ+ePvoOeVMMfqIMFz53sSwXkxaJoxr50ptnsC771lK95BnTrVSZxq0b9yCGw==",
11449 + "version": "6.0.1",
11450 + "resolved": "https://registry.npmjs.org/regex/-/regex-6.0.1.tgz",
11451 + "integrity": "sha512-uorlqlzAKjKQZ5P+kTJr3eeJGSVroLKoHmquUj4zHWuR+hEyNqlXsSKlYYF5F4NI6nl7tWCs0apKJ0lmfsXAPA==",
11452 "license": "MIT",
11453 "dependencies": {
11454 "regex-utilities": "^2.3.0"
11455 }
11456 },
11457 "node_modules/regex-recursion": {
12086 - "version": "5.1.1",
12087 - "resolved": "https://registry.npmjs.org/regex-recursion/-/regex-recursion-5.1.1.tgz",
12088 - "integrity": "sha512-ae7SBCbzVNrIjgSbh7wMznPcQel1DNlDtzensnFxpiNpXt1U2ju/bHugH422r+4LAVS1FpW1YCwilmnNsjum9w==",
11458 + "version": "6.0.2",
11459 + "resolved": "https://registry.npmjs.org/regex-recursion/-/regex-recursion-6.0.2.tgz",
11460 + "integrity": "sha512-0YCaSCq2VRIebiaUviZNs0cBz1kg5kVS2UKUfNIx8YVs1cN3AV7NTctO5FOKBA+UT2BPJIWZauYHPqJODG50cg==",
11461 "license": "MIT",
11462 "dependencies": {
12091 - "regex": "^5.1.1",
11463 "regex-utilities": "^2.3.0"
11464 }
11465 },
@@ -12123,89 +11494,29 @@
11494 }
11495 },
11496 "node_modules/regjsparser": {
12126 - "version": "0.10.0",
12127 - "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.10.0.tgz",
12128 - "integrity": "sha512-qx+xQGZVsy55CH0a1hiVwHmqjLryfh7wQyF5HO07XJ9f7dQMY/gPQHhlyDkIzJKC+x2fUCpCcUODUUUFrm7SHA==",
11497 + "version": "0.12.0",
11498 + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.12.0.tgz",
11499 + "integrity": "sha512-cnE+y8bz4NhMjISKbgeVJtqNbtf5QpjZP+Bslo+UqkIt9QPnX9q095eiRRASJG1/tz6dlNr6Z5NsBiWYokp6EQ==",
11500 "dev": true,
11501 "license": "BSD-2-Clause",
11502 "dependencies": {
12132 - "jsesc": "~0.5.0"
11503 + "jsesc": "~3.0.2"
11504 },
11505 "bin": {
11506 "regjsparser": "bin/parser"
11507 }
11508 },
11509 "node_modules/regjsparser/node_modules/jsesc": {
12139 - "version": "0.5.0",
12140 - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz",
12141 - "integrity": "sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==",
12142 - "dev": true,
12143 - "bin": {
12144 - "jsesc": "bin/jsesc"
12145 - }
12146 - },
12147 - "node_modules/replace-in-file": {
12148 - "version": "6.3.5",
12149 - "resolved": "https://registry.npmjs.org/replace-in-file/-/replace-in-file-6.3.5.tgz",
12150 - "integrity": "sha512-arB9d3ENdKva2fxRnSjwBEXfK1npgyci7ZZuwysgAp7ORjHSyxz6oqIjTEv8R0Ydl4Ll7uOAZXL4vbkhGIizCg==",
11510 + "version": "3.0.2",
11511 + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.0.2.tgz",
11512 + "integrity": "sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g==",
11513 "dev": true,
11514 "license": "MIT",
12153 - "dependencies": {
12154 - "chalk": "^4.1.2",
12155 - "glob": "^7.2.0",
12156 - "yargs": "^17.2.1"
12157 - },
11515 "bin": {
12159 - "replace-in-file": "bin/cli.js"
12160 - },
12161 - "engines": {
12162 - "node": ">=10"
12163 - }
12164 - },
12165 - "node_modules/replace-in-file/node_modules/brace-expansion": {
12166 - "version": "1.1.11",
12167 - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
12168 - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
12169 - "dev": true,
12170 - "license": "MIT",
12171 - "dependencies": {
12172 - "balanced-match": "^1.0.0",
12173 - "concat-map": "0.0.1"
12174 - }
12175 - },
12176 - "node_modules/replace-in-file/node_modules/glob": {
12177 - "version": "7.2.3",
12178 - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz",
12179 - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==",
12180 - "deprecated": "Glob versions prior to v9 are no longer supported",
12181 - "dev": true,
12182 - "license": "ISC",
12183 - "dependencies": {
12184 - "fs.realpath": "^1.0.0",
12185 - "inflight": "^1.0.4",
12186 - "inherits": "2",
12187 - "minimatch": "^3.1.1",
12188 - "once": "^1.3.0",
12189 - "path-is-absolute": "^1.0.0"
12190 - },
12191 - "engines": {
12192 - "node": "*"
12193 - },
12194 - "funding": {
12195 - "url": "https://github.com/sponsors/isaacs"
12196 - }
12197 - },
12198 - "node_modules/replace-in-file/node_modules/minimatch": {
12199 - "version": "3.1.2",
12200 - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
12201 - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
12202 - "dev": true,
12203 - "license": "ISC",
12204 - "dependencies": {
12205 - "brace-expansion": "^1.1.7"
11516 + "jsesc": "bin/jsesc"
11517 },
11518 "engines": {
12208 - "node": "*"
11519 + "node": ">=6"
11520 }
11521 },
11522 "node_modules/request-progress": {
@@ -12279,70 +11590,6 @@
11590 "node": ">=8"
11591 }
11592 },
12282 - "node_modules/resolve-path": {
12283 - "version": "1.4.0",
12284 - "resolved": "https://registry.npmjs.org/resolve-path/-/resolve-path-1.4.0.tgz",
12285 - "integrity": "sha512-i1xevIst/Qa+nA9olDxLWnLk8YZbi8R/7JPbCMcgyWaFR6bKWaexgJgEB5oc2PKMjYdrHynyz0NY+if+H98t1w==",
12286 - "dev": true,
12287 - "license": "MIT",
12288 - "dependencies": {
12289 - "http-errors": "~1.6.2",
12290 - "path-is-absolute": "1.0.1"
12291 - },
12292 - "engines": {
12293 - "node": ">= 0.8"
12294 - }
12295 - },
12296 - "node_modules/resolve-path/node_modules/depd": {
12297 - "version": "1.1.2",
12298 - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz",
12299 - "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==",
12300 - "dev": true,
12301 - "license": "MIT",
12302 - "engines": {
12303 - "node": ">= 0.6"
12304 - }
12305 - },
12306 - "node_modules/resolve-path/node_modules/http-errors": {
12307 - "version": "1.6.3",
12308 - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz",
12309 - "integrity": "sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A==",
12310 - "dev": true,
12311 - "license": "MIT",
12312 - "dependencies": {
12313 - "depd": "~1.1.2",
12314 - "inherits": "2.0.3",
12315 - "setprototypeof": "1.1.0",
12316 - "statuses": ">= 1.4.0 < 2"
12317 - },
12318 - "engines": {
12319 - "node": ">= 0.6"
12320 - }
12321 - },
12322 - "node_modules/resolve-path/node_modules/inherits": {
12323 - "version": "2.0.3",
12324 - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz",
12325 - "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==",
12326 - "dev": true,
12327 - "license": "ISC"
12328 - },
12329 - "node_modules/resolve-path/node_modules/setprototypeof": {
12330 - "version": "1.1.0",
12331 - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz",
12332 - "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==",
12333 - "dev": true,
12334 - "license": "ISC"
12335 - },
12336 - "node_modules/resolve-path/node_modules/statuses": {
12337 - "version": "1.5.0",
12338 - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz",
12339 - "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==",
12340 - "dev": true,
12341 - "license": "MIT",
12342 - "engines": {
12343 - "node": ">= 0.6"
12344 - }
12345 - },
11593 "node_modules/resolve-pkg-maps": {
11594 "version": "1.0.0",
11595 "resolved": "https://registry.npmjs.org/resolve-pkg-maps/-/resolve-pkg-maps-1.0.0.tgz",
@@ -12381,14 +11628,13 @@
11628 "version": "1.4.1",
11629 "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.4.1.tgz",
11630 "integrity": "sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==",
12384 - "dev": true,
11631 "license": "MIT"
11632 },
11633 "node_modules/rollup": {
12388 - "version": "4.32.1",
12389 - "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.32.1.tgz",
12390 - "integrity": "sha512-z+aeEsOeEa3mEbS1Tjl6sAZ8NE3+AalQz1RJGj81M+fizusbdDMoEJwdJNHfaB40Scr4qNu+welOfes7maKonA==",
12391 - "devOptional": true,
11634 + "version": "4.34.8",
11635 + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.34.8.tgz",
11636 + "integrity": "sha512-489gTVMzAYdiZHFVA/ig/iYFllCcWFHMvUHI1rpFmkoUtRlQxqh6/yiNqnYibjMZ2b/+FUQwldG+aLsEt6bglQ==",
11637 + "dev": true,
11638 "license": "MIT",
11639 "dependencies": {
11640 "@types/estree": "1.0.6"
@@ -12401,25 +11647,25 @@
11647 "npm": ">=8.0.0"
11648 },
11649 "optionalDependencies": {
12404 - "@rollup/rollup-android-arm-eabi": "4.32.1",
12405 - "@rollup/rollup-android-arm64": "4.32.1",
12406 - "@rollup/rollup-darwin-arm64": "4.32.1",
12407 - "@rollup/rollup-darwin-x64": "4.32.1",
12408 - "@rollup/rollup-freebsd-arm64": "4.32.1",
12409 - "@rollup/rollup-freebsd-x64": "4.32.1",
12410 - "@rollup/rollup-linux-arm-gnueabihf": "4.32.1",
12411 - "@rollup/rollup-linux-arm-musleabihf": "4.32.1",
12412 - "@rollup/rollup-linux-arm64-gnu": "4.32.1",
12413 - "@rollup/rollup-linux-arm64-musl": "4.32.1",
12414 - "@rollup/rollup-linux-loongarch64-gnu": "4.32.1",
12415 - "@rollup/rollup-linux-powerpc64le-gnu": "4.32.1",
12416 - "@rollup/rollup-linux-riscv64-gnu": "4.32.1",
12417 - "@rollup/rollup-linux-s390x-gnu": "4.32.1",
12418 - "@rollup/rollup-linux-x64-gnu": "4.32.1",
12419 - "@rollup/rollup-linux-x64-musl": "4.32.1",
12420 - "@rollup/rollup-win32-arm64-msvc": "4.32.1",
12421 - "@rollup/rollup-win32-ia32-msvc": "4.32.1",
12422 - "@rollup/rollup-win32-x64-msvc": "4.32.1",
11650 + "@rollup/rollup-android-arm-eabi": "4.34.8",
11651 + "@rollup/rollup-android-arm64": "4.34.8",
11652 + "@rollup/rollup-darwin-arm64": "4.34.8",
11653 + "@rollup/rollup-darwin-x64": "4.34.8",
11654 + "@rollup/rollup-freebsd-arm64": "4.34.8",
11655 + "@rollup/rollup-freebsd-x64": "4.34.8",
11656 + "@rollup/rollup-linux-arm-gnueabihf": "4.34.8",
11657 + "@rollup/rollup-linux-arm-musleabihf": "4.34.8",
11658 + "@rollup/rollup-linux-arm64-gnu": "4.34.8",
11659 + "@rollup/rollup-linux-arm64-musl": "4.34.8",
11660 + "@rollup/rollup-linux-loongarch64-gnu": "4.34.8",
11661 + "@rollup/rollup-linux-powerpc64le-gnu": "4.34.8",
11662 + "@rollup/rollup-linux-riscv64-gnu": "4.34.8",
11663 + "@rollup/rollup-linux-s390x-gnu": "4.34.8",
11664 + "@rollup/rollup-linux-x64-gnu": "4.34.8",
11665 + "@rollup/rollup-linux-x64-musl": "4.34.8",
11666 + "@rollup/rollup-win32-arm64-msvc": "4.34.8",
11667 + "@rollup/rollup-win32-ia32-msvc": "4.34.8",
11668 + "@rollup/rollup-win32-x64-msvc": "4.34.8",
11669 "fsevents": "~2.3.2"
11670 }
11671 },
@@ -12454,22 +11700,66 @@
11700 }
11701 }
11702 },
12457 - "node_modules/rollup-plugin-visualizer/node_modules/open": {
12458 - "version": "8.4.2",
12459 - "resolved": "https://registry.npmjs.org/open/-/open-8.4.2.tgz",
12460 - "integrity": "sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==",
11703 + "node_modules/rollup-plugin-visualizer/node_modules/cliui": {
11704 + "version": "8.0.1",
11705 + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz",
11706 + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==",
11707 "dev": true,
12462 - "license": "MIT",
11708 + "license": "ISC",
11709 "dependencies": {
12464 - "define-lazy-prop": "^2.0.0",
12465 - "is-docker": "^2.1.1",
12466 - "is-wsl": "^2.2.0"
11710 + "string-width": "^4.2.0",
11711 + "strip-ansi": "^6.0.1",
11712 + "wrap-ansi": "^7.0.0"
11713 },
11714 "engines": {
11715 "node": ">=12"
11716 + }
11717 + },
11718 + "node_modules/rollup-plugin-visualizer/node_modules/wrap-ansi": {
11719 + "version": "7.0.0",
11720 + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz",
11721 + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==",
11722 + "dev": true,
11723 + "license": "MIT",
11724 + "dependencies": {
11725 + "ansi-styles": "^4.0.0",
11726 + "string-width": "^4.1.0",
11727 + "strip-ansi": "^6.0.0"
11728 + },
11729 + "engines": {
11730 + "node": ">=10"
11731 },
11732 "funding": {
12472 - "url": "https://github.com/sponsors/sindresorhus"
11733 + "url": "https://github.com/chalk/wrap-ansi?sponsor=1"
11734 + }
11735 + },
11736 + "node_modules/rollup-plugin-visualizer/node_modules/yargs": {
11737 + "version": "17.7.2",
11738 + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz",
11739 + "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==",
11740 + "dev": true,
11741 + "license": "MIT",
11742 + "dependencies": {
11743 + "cliui": "^8.0.1",
11744 + "escalade": "^3.1.1",
11745 + "get-caller-file": "^2.0.5",
11746 + "require-directory": "^2.1.1",
11747 + "string-width": "^4.2.3",
11748 + "y18n": "^5.0.5",
11749 + "yargs-parser": "^21.1.1"
11750 + },
11751 + "engines": {
11752 + "node": ">=12"
11753 + }
11754 + },
11755 + "node_modules/rollup-plugin-visualizer/node_modules/yargs-parser": {
11756 + "version": "21.1.1",
11757 + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz",
11758 + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==",
11759 + "dev": true,
11760 + "license": "ISC",
11761 + "engines": {
11762 + "node": ">=12"
11763 }
11764 },
11765 "node_modules/rrweb-cssom": {
@@ -12516,9 +11806,9 @@
11806 }
11807 },
11808 "node_modules/rxjs": {
12519 - "version": "7.8.1",
12520 - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.1.tgz",
12521 - "integrity": "sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==",
11809 + "version": "7.8.2",
11810 + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.2.tgz",
11811 + "integrity": "sha512-dhKf903U/PQZY6boNNtAGdWbG85WAbjT/1xYoZIC7FAY0yWapOBQVsVrDl58W86//e1VpMNBtRV4MaXfdMySFA==",
11812 "dev": true,
11813 "license": "Apache-2.0",
11814 "dependencies": {
@@ -12546,24 +11836,6 @@
11836 ],
11837 "license": "MIT"
11838 },
12549 - "node_modules/safe-regex-test": {
12550 - "version": "1.1.0",
12551 - "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.1.0.tgz",
12552 - "integrity": "sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==",
12553 - "dev": true,
12554 - "license": "MIT",
12555 - "dependencies": {
12556 - "call-bound": "^1.0.2",
12557 - "es-errors": "^1.3.0",
12558 - "is-regex": "^1.2.1"
12559 - },
12560 - "engines": {
12561 - "node": ">= 0.4"
12562 - },
12563 - "funding": {
12564 - "url": "https://github.com/sponsors/ljharb"
12565 - }
12566 - },
11839 "node_modules/safer-buffer": {
11840 "version": "2.1.2",
11841 "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
@@ -12572,9 +11844,9 @@
11844 "license": "MIT"
11845 },
11846 "node_modules/sass": {
12575 - "version": "1.83.4",
12576 - "resolved": "https://registry.npmjs.org/sass/-/sass-1.83.4.tgz",
12577 - "integrity": "sha512-B1bozCeNQiOgDcLd33e2Cs2U60wZwjUUXzh900ZyQF5qUasvMdDZYbQ566LJu7cqR+sAHlAfO6RMkaID5s6qpA==",
11847 + "version": "1.85.1",
11848 + "resolved": "https://registry.npmjs.org/sass/-/sass-1.85.1.tgz",
11849 + "integrity": "sha512-Uk8WpxM5v+0cMR0XjX9KfRIacmSG86RH4DCCZjLU2rFh5tyutt9siAXJ7G+YfxQ99Q6wrRMbMlVl6KqUms71ag==",
11850 "dev": true,
11851 "license": "MIT",
11852 "dependencies": {
@@ -12640,15 +11912,15 @@
11912 }
11913 },
11914 "node_modules/seemly": {
12643 - "version": "0.3.9",
12644 - "resolved": "https://registry.npmjs.org/seemly/-/seemly-0.3.9.tgz",
12645 - "integrity": "sha512-bMLcaEqhIViiPbaumjLN8t1y+JpD/N8SiyYOyp0i0W6RgdyLWboIsUWAbZojF//JyerxPZR5Tgda+x3Pdne75A==",
11915 + "version": "0.3.10",
11916 + "resolved": "https://registry.npmjs.org/seemly/-/seemly-0.3.10.tgz",
11917 + "integrity": "sha512-2+SMxtG1PcsL0uyhkumlOU6Qo9TAQ/WyH7tthnPIOQB05/12jz9naq6GZ6iZ6ApVsO3rr2gsnTf3++OV63kE1Q==",
11918 "license": "MIT"
11919 },
11920 "node_modules/semver": {
12649 - "version": "7.6.3",
12650 - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz",
12651 - "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==",
11921 + "version": "7.7.1",
11922 + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz",
11923 + "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==",
11924 "license": "ISC",
11925 "bin": {
11926 "semver": "bin/semver.js"
@@ -12664,13 +11936,6 @@
11936 "dev": true,
11937 "license": "MIT"
11938 },
12667 - "node_modules/setprototypeof": {
12668 - "version": "1.2.0",
12669 - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz",
12670 - "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==",
12671 - "dev": true,
12672 - "license": "ISC"
12673 - },
11939 "node_modules/shebang-command": {
11940 "version": "2.0.0",
11941 "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz",
@@ -12706,18 +11971,18 @@
11971 }
11972 },
11973 "node_modules/shiki": {
12709 - "version": "2.1.0",
12710 - "resolved": "https://registry.npmjs.org/shiki/-/shiki-2.1.0.tgz",
12711 - "integrity": "sha512-yvKPdNGLXZv7WC4bl7JBbU3CEcUxnBanvMez8MG3gZXKpClGL4bHqFyLhTx+2zUvbjClUANs/S22HXb7aeOgmA==",
11974 + "version": "3.0.0",
11975 + "resolved": "https://registry.npmjs.org/shiki/-/shiki-3.0.0.tgz",
11976 + "integrity": "sha512-x6MMdYN9auPGx7kMFtyKbaj65eCdetfrfkvQZwqisZLnGMnAZsZxOpcWD0ElvLPFWHOSMukVyN9Opm7TxQjnZA==",
11977 "license": "MIT",
11978 "dependencies": {
12714 - "@shikijs/core": "2.1.0",
12715 - "@shikijs/engine-javascript": "2.1.0",
12716 - "@shikijs/engine-oniguruma": "2.1.0",
12717 - "@shikijs/langs": "2.1.0",
12718 - "@shikijs/themes": "2.1.0",
12719 - "@shikijs/types": "2.1.0",
12720 - "@shikijs/vscode-textmate": "^10.0.1",
11979 + "@shikijs/core": "3.0.0",
11980 + "@shikijs/engine-javascript": "3.0.0",
11981 + "@shikijs/engine-oniguruma": "3.0.0",
11982 + "@shikijs/langs": "3.0.0",
11983 + "@shikijs/themes": "3.0.0",
11984 + "@shikijs/types": "3.0.0",
11985 + "@shikijs/vscode-textmate": "^10.0.2",
11986 "@types/hast": "^3.0.4"
11987 }
11988 },
@@ -12812,9 +12077,9 @@
12077 "license": "ISC"
12078 },
12079 "node_modules/sirv": {
12815 - "version": "3.0.0",
12816 - "resolved": "https://registry.npmjs.org/sirv/-/sirv-3.0.0.tgz",
12817 - "integrity": "sha512-BPwJGUeDaDCHihkORDchNyyTvWFhcusy1XMmhEVTQTwGeybFbp8YEmB+njbPnth1FibULBSBVwCQni25XlCUDg==",
12080 + "version": "3.0.1",
12081 + "resolved": "https://registry.npmjs.org/sirv/-/sirv-3.0.1.tgz",
12082 + "integrity": "sha512-FoqMu0NCGBLCcAkS1qA+XJIQTR6/JHfQXl+uGteNCQ76T91DMUjPa9xfmeqMY3z80nLSg9yQmNjK0Px6RWsH/A==",
12083 "dev": true,
12084 "license": "MIT",
12085 "dependencies": {
@@ -12953,7 +12218,6 @@
12218 "version": "14.0.1",
12219 "resolved": "https://registry.npmjs.org/speakingurl/-/speakingurl-14.0.1.tgz",
12220 "integrity": "sha512-1POYv7uv2gXoyGFpBCmpDVSNV74IfsWlDW216UPjbWufNf+bSU6GdbDsxdcxtfwb4xlI3yxzOTKClUosxARYrQ==",
12956 - "dev": true,
12221 "license": "BSD-3-Clause",
12222 "engines": {
12223 "node": ">=0.10.0"
@@ -13091,16 +12355,6 @@
12355 "node": ">=10.17.0"
12356 }
12357 },
13094 - "node_modules/statuses": {
13095 - "version": "2.0.1",
13096 - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz",
13097 - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==",
13098 - "dev": true,
13099 - "license": "MIT",
13100 - "engines": {
13101 - "node": ">= 0.8"
13102 - }
13103 - },
12358 "node_modules/std-env": {
12359 "version": "3.8.0",
12360 "resolved": "https://registry.npmjs.org/std-env/-/std-env-3.8.0.tgz",
@@ -13196,16 +12450,19 @@
12450 }
12451 },
12452 "node_modules/strip-indent": {
13199 - "version": "3.0.0",
13200 - "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz",
13201 - "integrity": "sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==",
12453 + "version": "4.0.0",
12454 + "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-4.0.0.tgz",
12455 + "integrity": "sha512-mnVSV2l+Zv6BLpSD/8V87CW/y9EmmbYzGCIavsnsI6/nwn26DwffM/yztm30Z/I2DY9wdS3vXVCMnHDgZaVNoA==",
12456 "dev": true,
12457 "license": "MIT",
12458 "dependencies": {
13205 - "min-indent": "^1.0.0"
12459 + "min-indent": "^1.0.1"
12460 },
12461 "engines": {
13208 - "node": ">=8"
12462 + "node": ">=12"
12463 + },
12464 + "funding": {
12465 + "url": "https://github.com/sponsors/sindresorhus"
12466 }
12467 },
12468 "node_modules/strip-json-comments": {
@@ -13274,7 +12531,6 @@
12531 "version": "2.2.2",
12532 "resolved": "https://registry.npmjs.org/superjson/-/superjson-2.2.2.tgz",
12533 "integrity": "sha512-5JRxVqC8I8NuOUjzBbvVJAKNM8qoVuH0O77h4WInc/qC2q5IreqKxYwgkga3PfA22OayK2ikceb/B26dztPl+Q==",
13277 - "dev": true,
12534 "license": "MIT",
12535 "dependencies": {
12536 "copy-anything": "^3.0.2"
@@ -13384,49 +12640,6 @@
12640 "dev": true,
12641 "license": "0BSD"
12642 },
13387 - "node_modules/tailwind-config-viewer": {
13388 - "version": "2.0.4",
13389 - "resolved": "https://registry.npmjs.org/tailwind-config-viewer/-/tailwind-config-viewer-2.0.4.tgz",
13390 - "integrity": "sha512-icvcmdMmt9dphvas8wL40qttrHwAnW3QEN4ExJ2zICjwRsPj7gowd1cOceaWG3IfTuM/cTNGQcx+bsjMtmV+cw==",
13391 - "dev": true,
13392 - "license": "MIT",
13393 - "dependencies": {
13394 - "@koa/router": "^12.0.1",
13395 - "commander": "^6.0.0",
13396 - "fs-extra": "^9.0.1",
13397 - "koa": "^2.14.2",
13398 - "koa-static": "^5.0.0",
13399 - "open": "^7.0.4",
13400 - "portfinder": "^1.0.26",
13401 - "replace-in-file": "^6.1.0"
13402 - },
13403 - "bin": {
13404 - "tailwind-config-viewer": "cli/index.js",
13405 - "tailwindcss-config-viewer": "cli/index.js"
13406 - },
13407 - "engines": {
13408 - "node": ">=13"
13409 - },
13410 - "peerDependencies": {
13411 - "tailwindcss": "1 || 2 || 2.0.1-compat || 3"
13412 - }
13413 - },
13414 - "node_modules/tailwind-config-viewer/node_modules/fs-extra": {
13415 - "version": "9.1.0",
13416 - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz",
13417 - "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==",
13418 - "dev": true,
13419 - "license": "MIT",
13420 - "dependencies": {
13421 - "at-least-node": "^1.0.0",
13422 - "graceful-fs": "^4.2.0",
13423 - "jsonfile": "^6.0.1",
13424 - "universalify": "^2.0.0"
13425 - },
13426 - "engines": {
13427 - "node": ">=10"
13428 - }
13429 - },
12643 "node_modules/tailwindcss": {
12644 "version": "3.4.17",
12645 "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.4.17.tgz",
@@ -13545,18 +12758,6 @@
12758 "node": ">=8"
12759 }
12760 },
13548 - "node_modules/tar/node_modules/mkdirp": {
13549 - "version": "1.0.4",
13550 - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz",
13551 - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==",
13552 - "license": "MIT",
13553 - "bin": {
13554 - "mkdirp": "bin/cmd.js"
13555 - },
13556 - "engines": {
13557 - "node": ">=10"
13558 - }
13559 - },
12761 "node_modules/tar/node_modules/yallist": {
12762 "version": "4.0.0",
12763 "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
@@ -13564,18 +12765,20 @@
12765 "license": "ISC"
12766 },
12767 "node_modules/taze": {
13567 - "version": "18.3.0",
13568 - "resolved": "https://registry.npmjs.org/taze/-/taze-18.3.0.tgz",
13569 - "integrity": "sha512-x5akxPGBWSn+QSu2RSNZantKp7ufaPNz+cPPVjgzchNzicxuL7rnUuMXBeQufivyu4Uy6RaafHv7YzUpM74RzQ==",
12768 + "version": "18.6.0",
12769 + "resolved": "https://registry.npmjs.org/taze/-/taze-18.6.0.tgz",
12770 + "integrity": "sha512-VfAQzvSRFLbKpNon1aUx982P0Z7znNuaRJDFEcIjnyT3ly8+aFUVGGWKCm3KIZ/h9eqCV9aoZPjiFUojqYe1pw==",
12771 "dev": true,
12772 "license": "MIT",
12773 "dependencies": {
13573 - "@antfu/ni": "^23.2.0",
13574 - "js-yaml": "^4.1.0",
12774 + "@antfu/ni": "^23.3.1",
12775 + "find-up-simple": "^1.0.0",
12776 "ofetch": "^1.4.1",
13576 - "package-manager-detector": "^0.2.8",
12777 + "package-manager-detector": "^0.2.9",
12778 + "pathe": "^2.0.3",
12779 "tinyexec": "^0.3.2",
13578 - "unconfig": "^0.6.1",
12780 + "unconfig": "^7.0.0",
12781 + "yaml": "^2.7.0",
12782 "yargs": "^17.7.2"
12783 },
12784 "bin": {
@@ -13585,24 +12788,66 @@
12788 "url": "https://github.com/sponsors/antfu"
12789 }
12790 },
13588 - "node_modules/taze/node_modules/argparse": {
13589 - "version": "2.0.1",
13590 - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz",
13591 - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==",
12791 + "node_modules/taze/node_modules/cliui": {
12792 + "version": "8.0.1",
12793 + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz",
12794 + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==",
12795 "dev": true,
13593 - "license": "Python-2.0"
12796 + "license": "ISC",
12797 + "dependencies": {
12798 + "string-width": "^4.2.0",
12799 + "strip-ansi": "^6.0.1",
12800 + "wrap-ansi": "^7.0.0"
12801 + },
12802 + "engines": {
12803 + "node": ">=12"
12804 + }
12805 },
13595 - "node_modules/taze/node_modules/js-yaml": {
13596 - "version": "4.1.0",
13597 - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz",
13598 - "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==",
12806 + "node_modules/taze/node_modules/wrap-ansi": {
12807 + "version": "7.0.0",
12808 + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz",
12809 + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==",
12810 "dev": true,
12811 "license": "MIT",
12812 "dependencies": {
13602 - "argparse": "^2.0.1"
12813 + "ansi-styles": "^4.0.0",
12814 + "string-width": "^4.1.0",
12815 + "strip-ansi": "^6.0.0"
12816 },
13604 - "bin": {
13605 - "js-yaml": "bin/js-yaml.js"
12817 + "engines": {
12818 + "node": ">=10"
12819 + },
12820 + "funding": {
12821 + "url": "https://github.com/chalk/wrap-ansi?sponsor=1"
12822 + }
12823 + },
12824 + "node_modules/taze/node_modules/yargs": {
12825 + "version": "17.7.2",
12826 + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz",
12827 + "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==",
12828 + "dev": true,
12829 + "license": "MIT",
12830 + "dependencies": {
12831 + "cliui": "^8.0.1",
12832 + "escalade": "^3.1.1",
12833 + "get-caller-file": "^2.0.5",
12834 + "require-directory": "^2.1.1",
12835 + "string-width": "^4.2.3",
12836 + "y18n": "^5.0.5",
12837 + "yargs-parser": "^21.1.1"
12838 + },
12839 + "engines": {
12840 + "node": ">=12"
12841 + }
12842 + },
12843 + "node_modules/taze/node_modules/yargs-parser": {
12844 + "version": "21.1.1",
12845 + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz",

This file is too large to show in full.

frontend/package.json
+39 -35
@@ -9,12 +9,12 @@
9 "scripts": {
10 "dev": "vite --host 0.0.0.0",
11 "dev:debug": "DEBUG=vite:* vite",
12 - "build": "run-p type-check \"build-only {@}\" --",
13 - "build-only": "vite build",
14 - "build-analyzer": "vite-bundle-visualizer -t sunburst",
15 - "build-check": "run-s libs-reload build lint type-check format test:e2e test:unit",
12 + "build": "run-p type-check \"build:only {@}\" --",
13 + "build:only": "vite build",
14 + "build:analyzer": "vite-bundle-visualizer -t sunburst",
15 + "build:check": "run-s libs:reload build lint type-check format test:e2e test:unit",
16 "preview": "vite build && echo '' && vite preview --port 4173 --host",
17 - "preview-only": "vite preview --port 4173 --host",
17 + "preview:only": "vite preview --port 4173 --host",
18 "test:unit": "vitest",
19 "test:e2e": "start-server-and-test preview http://localhost:4173 'cypress run --e2e'",
20 "test:e2e:dev": "start-server-and-test 'vite dev --port 4173' http://localhost:4173 'cypress open --e2e'",
@@ -22,15 +22,14 @@
22 "lint": "eslint . --fix",
23 "format": "prettier --write src/",
24 "lint-format": "run-s lint type-check format",
25 - "tailwind-config-viewer": "tailwind-config-viewer -o",
25 "design-tokens": "node scripts/tokens-tool.js",
27 - "start-server-old": "cd ../backend && uvicorn copilot:app --reload --port=5000",
28 - "start-server-venv": "cd ../backend && source .venv/bin/activate && uvicorn copilot:app --port=5000 --log-level debug",
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",
28 "start-server": "cd ../backend && /opt/venv/bin/python copilot.py",
30 - "start-vue": "vite --host 0.0.0.0",
31 - "start": "concurrently \"npm run start-server\" \"npm run start-vue\"",
32 - "libs-check": "taze && depcheck",
33 - "libs-reload": "rm -rf node_modules package-lock.json && npm install",
29 + "start-frontend": "vite --host 0.0.0.0",
30 + "start": "concurrently \"npm run start-server\" \"npm run start-frontend\"",
31 + "libs:check": "taze && depcheck",
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"
35 },
@@ -40,9 +39,9 @@
39 "@fontsource/jetbrains-mono": "^5.1.2",
40 "@fontsource/lexend": "^5.1.2",
41 "@fontsource/public-sans": "^5.1.2",
43 - "@shikijs/markdown-it": "^2.1.0",
42 + "@shikijs/markdown-it": "^3.0.0",
43 "@tailwindcss/container-queries": "^0.1.1",
45 - "@vueuse/core": "^12.5.0",
44 + "@vueuse/core": "^12.7.0",
45 "axios": "^1.7.9",
46 "bytes": "^3.1.2",
47 "colord": "^2.9.3",
@@ -51,22 +50,22 @@
50 "echarts": "^5.6.0",
51 "file-saver": "^2.0.5",
52 "html-entities": "^2.5.2",
54 - "jose": "^5.9.6",
53 + "jose": "^6.0.6",
54 "js-md5": "^0.8.3",
55 "lodash": "^4.17.21",
56 "mitt": "^3.0.1",
57 "naive-ui": "^2.41.0",
59 - "nanoid": "^5.0.9",
58 + "nanoid": "^5.1.2",
59 "password-validator": "^5.3.0",
61 - "pinia": "^2.3.1",
60 + "pinia": "^3.0.1",
61 "pinia-plugin-persistedstate": "^4.2.0",
62 "secure-ls": "^2.0.0",
64 - "shiki": "^2.1.0",
63 + "shiki": "^3.0.0",
64 "validator": "^13.12.0",
65 "vue": "^3.5.13",
66 "vue-advanced-cropper": "^2.8.9",
67 "vue-highlight-words": "^3.0.1",
69 - "vue-i18n": "^11.0.1",
68 + "vue-i18n": "^11.1.1",
69 "vue-router": "^4.5.0",
70 "vue-sjv": "^0.0.6",
71 "vue3-apexcharts": "^1.8.0",
@@ -74,13 +73,13 @@
73 "vuedraggable": "^4.1.0"
74 },
75 "optionalDependencies": {
77 - "@rollup/rollup-linux-x64-gnu": "^4.30.1",
76 + "@rollup/rollup-linux-x64-gnu": "^4.34.8",
77 "treemate": "^0.3.11",
78 "vueuc": "^0.4.64"
79 },
80 "devDependencies": {
82 - "@antfu/eslint-config": "^4.1.0",
83 - "@clack/prompts": "^0.9.1",
81 + "@antfu/eslint-config": "^4.3.0",
82 + "@clack/prompts": "^0.10.0",
83 "@iconify/vue": "^4.3.0",
84 "@tsconfig/node20": "^20.1.4",
85 "@types/bytes": "^3.1.5",
@@ -88,35 +87,40 @@
87 "@types/fs-extra": "^11.0.4",
88 "@types/jsdom": "^21.1.7",
89 "@types/lodash": "^4.17.15",
91 - "@types/node": "^22.12.0",
90 + "@types/node": "^22.13.5",
91 "@types/validator": "^13.12.2",
92 "@vitejs/plugin-vue": "^5.2.1",
93 "@vitejs/plugin-vue-jsx": "^4.1.1",
94 "@vue/test-utils": "^2.4.6",
95 "@vue/tsconfig": "^0.7.0",
96 "autoprefixer": "^10.4.20",
98 - "cypress": "^14.0.1",
97 + "cypress": "^14.0.3",
98 "depcheck": "^1.4.7",
100 - "eslint": "^9.19.0",
99 + "eslint": "^9.21.0",
100 "flourite": "^1.3.0",
101 "fs-extra": "^11.3.0",
102 "jsdom": "^26.0.0",
103 "npm-run-all2": "^7.0.2",
105 - "postcss": "^8.5.1",
106 - "prettier": "^3.4.2",
104 + "postcss": "^8.5.3",
105 + "prettier": "^3.5.2",
106 "prettier-plugin-tailwindcss": "^0.6.11",
108 - "sass": "^1.83.4",
107 + "sass": "^1.85.1",
108 "start-server-and-test": "^2.0.10",
110 - "tailwind-config-viewer": "^2.0.4",
109 "tailwindcss": "^3.4.17",
112 - "taze": "^18.3.0",
113 - "type-fest": "^4.33.0",
110 + "taze": "^18.6.0",
111 + "type-fest": "^4.35.0",
112 "typescript": "~5.7.3",
115 - "vite": "^6.0.11",
113 + "vite": "^6.2.0",
114 "vite-bundle-visualizer": "^1.2.1",
117 - "vite-plugin-vue-devtools": "^7.7.1",
115 + "vite-plugin-vue-devtools": "^7.7.2",
116 "vite-svg-loader": "^5.1.0",
119 - "vitest": "^3.0.4",
120 - "vue-tsc": "^2.2.0"
117 + "vitest": "^3.0.7",
118 + "vue-tsc": "^2.2.4"
119 + },
120 + "pnpm": {
121 + "onlyBuiltDependencies": [
122 + "cypress",
123 + "esbuild"
124 + ]
125 }
126 }
frontend/pnpm-lock.yaml deleted
-10214
@@ -1,10214 +0,0 @@
1 -lockfileVersion: '9.0'
2 -
3 -settings:
4 - autoInstallPeers: true
5 - excludeLinksFromLockfile: false
6 -
7 -overrides:
8 - '@typescript-eslint/eslint-plugin': ^8.11.0
9 - '@typescript-eslint/eslint-plugin>eslint': ^9.13.0
10 - '@typescript-eslint/parser': ^8.11.0
11 - '@typescript-eslint/parser>eslint': ^9.13.0
12 - eslint: ^9.13.0
13 -
14 -importers:
15 -
16 - .:
17 - dependencies:
18 - '@ajoelp/json-to-formdata':
19 - specifier: ^1.5.0
20 - version: 1.5.0
21 - '@f3ve/vue-markdown-it':
22 - specifier: ^0.2.2
23 - version: 0.2.2(eslint@9.13.0(jiti@2.3.3))(prettier@3.3.3)(typescript@5.6.3)(vue@3.5.12(typescript@5.6.3))
24 - '@fontsource/jetbrains-mono':
25 - specifier: ^5.1.1
26 - version: 5.1.1
27 - '@fontsource/lexend':
28 - specifier: ^5.1.1
29 - version: 5.1.1
30 - '@fontsource/public-sans':
31 - specifier: ^5.1.1
32 - version: 5.1.1
33 - '@shikijs/markdown-it':
34 - specifier: ^1.22.0
35 - version: 1.22.0
36 - '@tailwindcss/container-queries':
37 - specifier: ^0.1.1
38 - version: 0.1.1(tailwindcss@3.4.14)
39 - '@vueuse/core':
40 - specifier: ^11.1.0
41 - version: 11.1.0(vue@3.5.12(typescript@5.6.3))
42 - axios:
43 - specifier: ^1.7.7
44 - version: 1.7.7(debug@4.3.7)
45 - bytes:
46 - specifier: ^3.1.2
47 - version: 3.1.2
48 - colord:
49 - specifier: ^2.9.3
50 - version: 2.9.3
51 - dayjs:
52 - specifier: ^1.11.13
53 - version: 1.11.13
54 - detect-touch-device:
55 - specifier: ^1.1.6
56 - version: 1.1.6
57 - echarts:
58 - specifier: ^5.5.1
59 - version: 5.5.1
60 - file-saver:
61 - specifier: ^2.0.5
62 - version: 2.0.5
63 - html-entities:
64 - specifier: ^2.5.2
65 - version: 2.5.2
66 - jose:
67 - specifier: ^5.9.6
68 - version: 5.9.6
69 - js-md5:
70 - specifier: ^0.8.3
71 - version: 0.8.3
72 - lodash:
73 - specifier: ^4.17.21
74 - version: 4.17.21
75 - mitt:
76 - specifier: ^3.0.1
77 - version: 3.0.1
78 - naive-ui:
79 - specifier: ^2.40.1
80 - version: 2.40.1(vue@3.5.12(typescript@5.6.3))
81 - nanoid:
82 - specifier: ^5.0.7
83 - version: 5.0.7
84 - password-validator:
85 - specifier: ^5.3.0
86 - version: 5.3.0
87 - pinia:
88 - specifier: ^2.2.4
89 - version: 2.2.4(typescript@5.6.3)(vue@3.5.12(typescript@5.6.3))
90 - pinia-plugin-persistedstate:
91 - specifier: ^4.1.1
92 - version: 4.1.1(pinia@2.2.4(typescript@5.6.3)(vue@3.5.12(typescript@5.6.3)))(rollup@4.24.0)
93 - secure-ls:
94 - specifier: ^2.0.0
95 - version: 2.0.0
96 - shiki:
97 - specifier: ^1.22.0
98 - version: 1.22.0
99 - validator:
100 - specifier: ^13.12.0
101 - version: 13.12.0
102 - vue:
103 - specifier: ^3.5.12
104 - version: 3.5.12(typescript@5.6.3)
105 - vue-advanced-cropper:
106 - specifier: ^2.8.9
107 - version: 2.8.9(vue@3.5.12(typescript@5.6.3))
108 - vue-highlight-words:
109 - specifier: ^3.0.1
110 - version: 3.0.1(vue@3.5.12(typescript@5.6.3))
111 - vue-i18n:
112 - specifier: ^10.0.4
113 - version: 10.0.4(vue@3.5.12(typescript@5.6.3))
114 - vue-router:
115 - specifier: ^4.4.5
116 - version: 4.4.5(vue@3.5.12(typescript@5.6.3))
117 - vue-sjv:
118 - specifier: ^0.0.6
119 - version: 0.0.6(vue@3.5.12(typescript@5.6.3))
120 - vue3-apexcharts:
121 - specifier: ^1.7.0
122 - version: 1.7.0(apexcharts@3.54.1)(vue@3.5.12(typescript@5.6.3))
123 - vue3-marquee:
124 - specifier: ^4.2.2
125 - version: 4.2.2(vue@3.5.12(typescript@5.6.3))
126 - vuedraggable:
127 - specifier: ^4.1.0
128 - version: 4.1.0(vue@3.5.12(typescript@5.6.3))
129 - optionalDependencies:
130 - '@rollup/rollup-linux-x64-gnu':
131 - specifier: ^4.24.0
132 - version: 4.24.0
133 - devDependencies:
134 - '@antfu/eslint-config':
135 - specifier: ^3.8.0
136 - version: 3.8.0(@typescript-eslint/utils@8.11.0(eslint@9.13.0(jiti@2.3.3))(typescript@5.6.3))(@unocss/eslint-plugin@0.56.5(eslint@9.13.0(jiti@2.3.3))(typescript@5.6.3))(@vue/compiler-sfc@3.5.12)(eslint@9.13.0(jiti@2.3.3))(typescript@5.6.3)(vitest@2.1.3(@types/node@22.7.8)(jsdom@25.0.1)(sass@1.80.3))
137 - '@clack/prompts':
138 - specifier: ^0.7.0
139 - version: 0.7.0
140 - '@iconify/vue':
141 - specifier: ^4.1.2
142 - version: 4.1.2(vue@3.5.12(typescript@5.6.3))
143 - '@tsconfig/node20':
144 - specifier: ^20.1.4
145 - version: 20.1.4
146 - '@types/bytes':
147 - specifier: ^3.1.4
148 - version: 3.1.4
149 - '@types/file-saver':
150 - specifier: ^2.0.7
151 - version: 2.0.7
152 - '@types/fs-extra':
153 - specifier: ^11.0.4
154 - version: 11.0.4
155 - '@types/jsdom':
156 - specifier: ^21.1.7
157 - version: 21.1.7
158 - '@types/lodash':
159 - specifier: ^4.17.12
160 - version: 4.17.12
161 - '@types/node':
162 - specifier: ^22.7.8
163 - version: 22.7.8
164 - '@types/validator':
165 - specifier: ^13.12.2
166 - version: 13.12.2
167 - '@vitejs/plugin-vue':
168 - specifier: ^5.1.4
169 - version: 5.1.4(vite@5.4.9(@types/node@22.7.8)(sass@1.80.3))(vue@3.5.12(typescript@5.6.3))
170 - '@vitejs/plugin-vue-jsx':
171 - specifier: ^4.0.1
172 - version: 4.0.1(vite@5.4.9(@types/node@22.7.8)(sass@1.80.3))(vue@3.5.12(typescript@5.6.3))
173 - '@vue/test-utils':
174 - specifier: ^2.4.6
175 - version: 2.4.6
176 - '@vue/tsconfig':
177 - specifier: ^0.5.1
178 - version: 0.5.1
179 - autoprefixer:
180 - specifier: ^10.4.20
181 - version: 10.4.20(postcss@8.4.47)
182 - cypress:
183 - specifier: ^13.15.0
184 - version: 13.15.0
185 - depcheck:
186 - specifier: ^1.4.7
187 - version: 1.4.7
188 - eslint:
189 - specifier: ^9.13.0
190 - version: 9.13.0(jiti@2.3.3)
191 - flourite:
192 - specifier: ^1.3.0
193 - version: 1.3.0
194 - fs-extra:
195 - specifier: ^11.2.0
196 - version: 11.2.0
197 - jsdom:
198 - specifier: ^25.0.1
199 - version: 25.0.1
200 - npm-run-all2:
201 - specifier: ^7.0.0
202 - version: 7.0.0
203 - postcss:
204 - specifier: ^8.4.47
205 - version: 8.4.47
206 - prettier:
207 - specifier: ^3.3.3
208 - version: 3.3.3
209 - prettier-plugin-tailwindcss:
210 - specifier: ^0.6.8
211 - version: 0.6.8(prettier@3.3.3)
212 - sass:
213 - specifier: ^1.80.3
214 - version: 1.80.3
215 - start-server-and-test:
216 - specifier: ^2.0.8
217 - version: 2.0.8
218 - tailwind-config-viewer:
219 - specifier: ^2.0.4
220 - version: 2.0.4(tailwindcss@3.4.14)
221 - tailwindcss:
222 - specifier: ^3.4.14
223 - version: 3.4.14
224 - taze:
225 - specifier: ^0.17.2
226 - version: 0.17.2
227 - type-fest:
228 - specifier: ^4.26.1
229 - version: 4.26.1
230 - typescript:
231 - specifier: ~5.6.3
232 - version: 5.6.3
233 - unplugin-vue-components:
234 - specifier: ^0.27.4
235 - version: 0.27.4(@babel/parser@7.25.8)(@nuxt/kit@3.13.2(rollup@4.24.0))(rollup@4.24.0)(vue@3.5.12(typescript@5.6.3))
236 - vite:
237 - specifier: ^5.4.9
238 - version: 5.4.9(@types/node@22.7.8)(sass@1.80.3)
239 - vite-bundle-visualizer:
240 - specifier: ^1.2.1
241 - version: 1.2.1(rollup@4.24.0)
242 - vite-plugin-vue-devtools:
243 - specifier: ^7.5.2
244 - version: 7.5.2(@nuxt/kit@3.13.2(rollup@4.24.0))(rollup@4.24.0)(vite@5.4.9(@types/node@22.7.8)(sass@1.80.3))(vue@3.5.12(typescript@5.6.3))
245 - vite-svg-loader:
246 - specifier: ^5.1.0
247 - version: 5.1.0(vue@3.5.12(typescript@5.6.3))
248 - vitest:
249 - specifier: ^2.1.3
250 - version: 2.1.3(@types/node@22.7.8)(jsdom@25.0.1)(sass@1.80.3)
251 - vue-tsc:
252 - specifier: ^2.1.6
253 - version: 2.1.6(typescript@5.6.3)
254 -
255 -packages:
256 -
257 - '@ajoelp/json-to-formdata@1.5.0':
258 - resolution: {integrity: sha512-nrlfeTSL0X0dtx5r2KpzPiqLSIQquiiJjUKsQAKzWaCmO2QoYZCyb5ENZwF3YoffKronOCJr25mxaD8JRJmK8w==}
259 -
260 - '@alloc/quick-lru@5.2.0':
261 - resolution: {integrity: sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==}
262 - engines: {node: '>=10'}
263 -
264 - '@ampproject/remapping@2.3.0':
265 - resolution: {integrity: sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==}
266 - engines: {node: '>=6.0.0'}
267 -
268 - '@antfu/eslint-config@3.8.0':
269 - resolution: {integrity: sha512-O5QSufPHpKTm0wk1OQ5c2mOZVzCqYV3hIDrt5zt+cOWqiG8YXLPkSOD4fFwjomATtOuUbcLUwkcgY5dErM7aIw==}
270 - hasBin: true
271 - peerDependencies:
272 - '@eslint-react/eslint-plugin': ^1.5.8
273 - '@prettier/plugin-xml': ^3.4.1
274 - '@unocss/eslint-plugin': '>=0.50.0'
275 - astro-eslint-parser: ^1.0.2
276 - eslint: ^9.13.0
277 - eslint-plugin-astro: ^1.2.0
278 - eslint-plugin-format: '>=0.1.0'
279 - eslint-plugin-react-hooks: ^5.0.0
280 - eslint-plugin-react-refresh: ^0.4.4
281 - eslint-plugin-solid: ^0.14.3
282 - eslint-plugin-svelte: '>=2.35.1'
283 - prettier-plugin-astro: ^0.13.0
284 - prettier-plugin-slidev: ^1.0.5
285 - svelte-eslint-parser: '>=0.37.0'
286 - peerDependenciesMeta:
287 - '@eslint-react/eslint-plugin':
288 - optional: true
289 - '@prettier/plugin-xml':
290 - optional: true
291 - '@unocss/eslint-plugin':
292 - optional: true
293 - astro-eslint-parser:
294 - optional: true
295 - eslint-plugin-astro:
296 - optional: true
297 - eslint-plugin-format:
298 - optional: true
299 - eslint-plugin-react-hooks:
300 - optional: true
301 - eslint-plugin-react-refresh:
302 - optional: true
303 - eslint-plugin-solid:
304 - optional: true
305 - eslint-plugin-svelte:
306 - optional: true
307 - prettier-plugin-astro:
308 - optional: true
309 - prettier-plugin-slidev:
310 - optional: true
311 - svelte-eslint-parser:
312 - optional: true
313 -
314 - '@antfu/install-pkg@0.4.1':
315 - resolution: {integrity: sha512-T7yB5QNG29afhWVkVq7XeIMBa5U/vs9mX69YqayXypPRmYzUmzwnYltplHmPtZ4HPCn+sQKeXW8I47wCbuBOjw==}
316 -
317 - '@antfu/ni@0.23.0':
318 - resolution: {integrity: sha512-R5/GkA3PfGewAXLzz6lN5XagunF6PKeDtWt8dbZQXvHfebLS0qEczV+Azg/d+tKgSh6kRBpxvu8oSjARdPtw0A==}
319 - hasBin: true
320 -
321 - '@antfu/utils@0.7.10':
322 - resolution: {integrity: sha512-+562v9k4aI80m1+VuMHehNJWLOFjBnXn3tdOitzD0il5b7smkSBal4+a3oKiQTbrwMmN/TBUMDvbdoWDehgOww==}
323 -
324 - '@babel/code-frame@7.25.7':
325 - resolution: {integrity: sha512-0xZJFNE5XMpENsgfHYTw8FbX4kv53mFLn2i3XPoq69LyhYSCBJtitaHx9QnsVTrsogI4Z3+HtEfZ2/GFPOtf5g==}
326 - engines: {node: '>=6.9.0'}
327 -
328 - '@babel/compat-data@7.25.8':
329 - resolution: {integrity: sha512-ZsysZyXY4Tlx+Q53XdnOFmqwfB9QDTHYxaZYajWRoBLuLEAwI2UIbtxOjWh/cFaa9IKUlcB+DDuoskLuKu56JA==}
330 - engines: {node: '>=6.9.0'}
331 -
332 - '@babel/core@7.25.8':
333 - resolution: {integrity: sha512-Oixnb+DzmRT30qu9d3tJSQkxuygWm32DFykT4bRoORPa9hZ/L4KhVB/XiRm6KG+roIEM7DBQlmg27kw2HZkdZg==}
334 - engines: {node: '>=6.9.0'}
335 -
336 - '@babel/generator@7.25.7':
337 - resolution: {integrity: sha512-5Dqpl5fyV9pIAD62yK9P7fcA768uVPUyrQmqpqstHWgMma4feF1x/oFysBCVZLY5wJ2GkMUCdsNDnGZrPoR6rA==}
338 - engines: {node: '>=6.9.0'}
339 -
340 - '@babel/helper-annotate-as-pure@7.25.7':
341 - resolution: {integrity: sha512-4xwU8StnqnlIhhioZf1tqnVWeQ9pvH/ujS8hRfw/WOza+/a+1qv69BWNy+oY231maTCWgKWhfBU7kDpsds6zAA==}
342 - engines: {node: '>=6.9.0'}
343 -
344 - '@babel/helper-compilation-targets@7.25.7':
345 - resolution: {integrity: sha512-DniTEax0sv6isaw6qSQSfV4gVRNtw2rte8HHM45t9ZR0xILaufBRNkpMifCRiAPyvL4ACD6v0gfCwCmtOQaV4A==}
346 - engines: {node: '>=6.9.0'}
347 -
348 - '@babel/helper-create-class-features-plugin@7.25.7':
349 - resolution: {integrity: sha512-bD4WQhbkx80mAyj/WCm4ZHcF4rDxkoLFO6ph8/5/mQ3z4vAzltQXAmbc7GvVJx5H+lk5Mi5EmbTeox5nMGCsbw==}
350 - engines: {node: '>=6.9.0'}
351 - peerDependencies:
352 - '@babel/core': ^7.0.0
353 -
354 - '@babel/helper-member-expression-to-functions@7.25.7':
355 - resolution: {integrity: sha512-O31Ssjd5K6lPbTX9AAYpSKrZmLeagt9uwschJd+Ixo6QiRyfpvgtVQp8qrDR9UNFjZ8+DO34ZkdrN+BnPXemeA==}
356 - engines: {node: '>=6.9.0'}
357 -
358 - '@babel/helper-module-imports@7.25.7':
359 - resolution: {integrity: sha512-o0xCgpNmRohmnoWKQ0Ij8IdddjyBFE4T2kagL/x6M3+4zUgc+4qTOUBoNe4XxDskt1HPKO007ZPiMgLDq2s7Kw==}
360 - engines: {node: '>=6.9.0'}
361 -
362 - '@babel/helper-module-transforms@7.25.7':
363 - resolution: {integrity: sha512-k/6f8dKG3yDz/qCwSM+RKovjMix563SLxQFo0UhRNo239SP6n9u5/eLtKD6EAjwta2JHJ49CsD8pms2HdNiMMQ==}
364 - engines: {node: '>=6.9.0'}
365 - peerDependencies:
366 - '@babel/core': ^7.0.0
367 -
368 - '@babel/helper-optimise-call-expression@7.25.7':
369 - resolution: {integrity: sha512-VAwcwuYhv/AT+Vfr28c9y6SHzTan1ryqrydSTFGjU0uDJHw3uZ+PduI8plCLkRsDnqK2DMEDmwrOQRsK/Ykjng==}
370 - engines: {node: '>=6.9.0'}
371 -
372 - '@babel/helper-plugin-utils@7.25.7':
373 - resolution: {integrity: sha512-eaPZai0PiqCi09pPs3pAFfl/zYgGaE6IdXtYvmf0qlcDTd3WCtO7JWCcRd64e0EQrcYgiHibEZnOGsSY4QSgaw==}
374 - engines: {node: '>=6.9.0'}
375 -
376 - '@babel/helper-replace-supers@7.25.7':
377 - resolution: {integrity: sha512-iy8JhqlUW9PtZkd4pHM96v6BdJ66Ba9yWSE4z0W4TvSZwLBPkyDsiIU3ENe4SmrzRBs76F7rQXTy1lYC49n6Lw==}
378 - engines: {node: '>=6.9.0'}
379 - peerDependencies:
380 - '@babel/core': ^7.0.0
381 -
382 - '@babel/helper-simple-access@7.25.7':
383 - resolution: {integrity: sha512-FPGAkJmyoChQeM+ruBGIDyrT2tKfZJO8NcxdC+CWNJi7N8/rZpSxK7yvBJ5O/nF1gfu5KzN7VKG3YVSLFfRSxQ==}
384 - engines: {node: '>=6.9.0'}
385 -
386 - '@babel/helper-skip-transparent-expression-wrappers@7.25.7':
387 - resolution: {integrity: sha512-pPbNbchZBkPMD50K0p3JGcFMNLVUCuU/ABybm/PGNj4JiHrpmNyqqCphBk4i19xXtNV0JhldQJJtbSW5aUvbyA==}
388 - engines: {node: '>=6.9.0'}
389 -
390 - '@babel/helper-string-parser@7.25.7':
391 - resolution: {integrity: sha512-CbkjYdsJNHFk8uqpEkpCvRs3YRp9tY6FmFY7wLMSYuGYkrdUi7r2lc4/wqsvlHoMznX3WJ9IP8giGPq68T/Y6g==}
392 - engines: {node: '>=6.9.0'}
393 -
394 - '@babel/helper-validator-identifier@7.25.7':
395 - resolution: {integrity: sha512-AM6TzwYqGChO45oiuPqwL2t20/HdMC1rTPAesnBCgPCSF1x3oN9MVUwQV2iyz4xqWrctwK5RNC8LV22kaQCNYg==}
396 - engines: {node: '>=6.9.0'}
397 -
398 - '@babel/helper-validator-option@7.25.7':
399 - resolution: {integrity: sha512-ytbPLsm+GjArDYXJ8Ydr1c/KJuutjF2besPNbIZnZ6MKUxi/uTA22t2ymmA4WFjZFpjiAMO0xuuJPqK2nvDVfQ==}
400 - engines: {node: '>=6.9.0'}
401 -
402 - '@babel/helpers@7.25.7':
403 - resolution: {integrity: sha512-Sv6pASx7Esm38KQpF/U/OXLwPPrdGHNKoeblRxgZRLXnAtnkEe4ptJPDtAZM7fBLadbc1Q07kQpSiGQ0Jg6tRA==}
404 - engines: {node: '>=6.9.0'}
405 -
406 - '@babel/highlight@7.25.7':
407 - resolution: {integrity: sha512-iYyACpW3iW8Fw+ZybQK+drQre+ns/tKpXbNESfrhNnPLIklLbXr7MYJ6gPEd0iETGLOK+SxMjVvKb/ffmk+FEw==}
408 - engines: {node: '>=6.9.0'}
409 -
410 - '@babel/parser@7.25.8':
411 - resolution: {integrity: sha512-HcttkxzdPucv3nNFmfOOMfFf64KgdJVqm1KaCm25dPGMLElo9nsLvXeJECQg8UzPuBGLyTSA0ZzqCtDSzKTEoQ==}
412 - engines: {node: '>=6.0.0'}
413 - hasBin: true
414 -
415 - '@babel/plugin-proposal-decorators@7.25.7':
416 - resolution: {integrity: sha512-q1mqqqH0e1lhmsEQHV5U8OmdueBC2y0RFr2oUzZoFRtN3MvPmt2fsFRcNQAoGLTSNdHBFUYGnlgcRFhkBbKjPw==}
417 - engines: {node: '>=6.9.0'}
418 - peerDependencies:
419 - '@babel/core': ^7.0.0-0
420 -
421 - '@babel/plugin-syntax-decorators@7.25.7':
422 - resolution: {integrity: sha512-oXduHo642ZhstLVYTe2z2GSJIruU0c/W3/Ghr6A5yGMsVrvdnxO1z+3pbTcT7f3/Clnt+1z8D/w1r1f1SHaCHw==}
423 - engines: {node: '>=6.9.0'}
424 - peerDependencies:
425 - '@babel/core': ^7.0.0-0
426 -
427 - '@babel/plugin-syntax-import-attributes@7.25.7':
428 - resolution: {integrity: sha512-AqVo+dguCgmpi/3mYBdu9lkngOBlQ2w2vnNpa6gfiCxQZLzV4ZbhsXitJ2Yblkoe1VQwtHSaNmIaGll/26YWRw==}
429 - engines: {node: '>=6.9.0'}
430 - peerDependencies:
431 - '@babel/core': ^7.0.0-0
432 -
433 - '@babel/plugin-syntax-import-meta@7.10.4':
434 - resolution: {integrity: sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==}
435 - peerDependencies:
436 - '@babel/core': ^7.0.0-0
437 -
438 - '@babel/plugin-syntax-jsx@7.25.7':
439 - resolution: {integrity: sha512-ruZOnKO+ajVL/MVx+PwNBPOkrnXTXoWMtte1MBpegfCArhqOe3Bj52avVj1huLLxNKYKXYaSxZ2F+woK1ekXfw==}
440 - engines: {node: '>=6.9.0'}
441 - peerDependencies:
442 - '@babel/core': ^7.0.0-0
443 -
444 - '@babel/plugin-syntax-typescript@7.25.7':
445 - resolution: {integrity: sha512-rR+5FDjpCHqqZN2bzZm18bVYGaejGq5ZkpVCJLXor/+zlSrSoc4KWcHI0URVWjl/68Dyr1uwZUz/1njycEAv9g==}
446 - engines: {node: '>=6.9.0'}
447 - peerDependencies:
448 - '@babel/core': ^7.0.0-0
449 -
450 - '@babel/plugin-transform-typescript@7.25.7':
451 - resolution: {integrity: sha512-VKlgy2vBzj8AmEzunocMun2fF06bsSWV+FvVXohtL6FGve/+L217qhHxRTVGHEDO/YR8IANcjzgJsd04J8ge5Q==}
452 - engines: {node: '>=6.9.0'}
453 - peerDependencies:
454 - '@babel/core': ^7.0.0-0
455 -
456 - '@babel/standalone@7.25.8':
457 - resolution: {integrity: sha512-UvRanvLCGPRscJ5Rw9o6vUBS5P+E+gkhl6eaokrIN+WM1kUkmj254VZhyihFdDZVDlI3cPcZoakbJJw24QPISw==}
458 - engines: {node: '>=6.9.0'}
459 -
460 - '@babel/template@7.25.7':
461 - resolution: {integrity: sha512-wRwtAgI3bAS+JGU2upWNL9lSlDcRCqD05BZ1n3X2ONLH1WilFP6O1otQjeMK/1g0pvYcXC7b/qVUB1keofjtZA==}
462 - engines: {node: '>=6.9.0'}
463 -
464 - '@babel/traverse@7.25.7':
465 - resolution: {integrity: sha512-jatJPT1Zjqvh/1FyJs6qAHL+Dzb7sTb+xr7Q+gM1b+1oBsMsQQ4FkVKb6dFlJvLlVssqkRzV05Jzervt9yhnzg==}
466 - engines: {node: '>=6.9.0'}
467 -
468 - '@babel/types@7.25.8':
469 - resolution: {integrity: sha512-JWtuCu8VQsMladxVz/P4HzHUGCAwpuqacmowgXFs5XjxIgKuNjnLokQzuVjlTvIzODaDmpjT3oxcC48vyk9EWg==}
470 - engines: {node: '>=6.9.0'}
471 -
472 - '@clack/core@0.3.4':
473 - resolution: {integrity: sha512-H4hxZDXgHtWTwV3RAVenqcC4VbJZNegbBjlPvzOzCouXtS2y3sDvlO3IsbrPNWuLWPPlYVYPghQdSF64683Ldw==}
474 -
475 - '@clack/prompts@0.7.0':
476 - resolution: {integrity: sha512-0MhX9/B4iL6Re04jPrttDm+BsP8y6mS7byuv0BvXgdXhbV5PdlsHt55dvNsuBCPZ7xq1oTAOOuotR9NFbQyMSA==}
477 - bundledDependencies:
478 - - is-unicode-supported
479 -
480 - '@colors/colors@1.5.0':
481 - resolution: {integrity: sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==}
482 - engines: {node: '>=0.1.90'}
483 -
484 - '@css-render/plugin-bem@0.15.14':
485 - resolution: {integrity: sha512-QK513CJ7yEQxm/P3EwsI+d+ha8kSOcjGvD6SevM41neEMxdULE+18iuQK6tEChAWMOQNQPLG/Rw3Khb69r5neg==}
486 - peerDependencies:
487 - css-render: ~0.15.14
488 -
489 - '@css-render/vue3-ssr@0.15.14':
490 - resolution: {integrity: sha512-//8027GSbxE9n3QlD73xFY6z4ZbHbvrOVB7AO6hsmrEzGbg+h2A09HboUyDgu+xsmj7JnvJD39Irt+2D0+iV8g==}
491 - peerDependencies:
492 - vue: ^3.0.11
493 -
494 - '@cypress/request@3.0.5':
495 - resolution: {integrity: sha512-v+XHd9XmWbufxF1/bTaVm2yhbxY+TB4YtWRqF2zaXBlDNMkls34KiATz0AVDLavL3iB6bQk9/7n3oY1EoLSWGA==}
496 - engines: {node: '>= 6'}
497 -
498 - '@cypress/xvfb@1.2.4':
499 - resolution: {integrity: sha512-skbBzPggOVYCbnGgV+0dmBdW/s77ZkAOXIC1knS8NagwDjBrNC1LuXtQJeiN6l+m7lzmHtaoUw/ctJKdqkG57Q==}
500 -
501 - '@emotion/hash@0.8.0':
502 - resolution: {integrity: sha512-kBJtf7PH6aWwZ6fka3zQ0p6SBYzx4fl1LoZXE2RrnYST9Xljm7WfKJrU4g/Xr3Beg72MLrp1AWNUmuYJTL7Cow==}
503 -
504 - '@es-joy/jsdoccomment@0.48.0':
505 - resolution: {integrity: sha512-G6QUWIcC+KvSwXNsJyDTHvqUdNoAVJPPgkc3+Uk4WBKqZvoXhlvazOgm9aL0HwihJLQf0l+tOE2UFzXBqCqgDw==}
506 - engines: {node: '>=16'}
507 -
508 - '@es-joy/jsdoccomment@0.49.0':
509 - resolution: {integrity: sha512-xjZTSFgECpb9Ohuk5yMX5RhUEbfeQcuOp8IF60e+wyzWEF0M5xeSgqsfLtvPEX8BIyOX9saZqzuGPmZ8oWc+5Q==}
510 - engines: {node: '>=16'}
511 -
512 - '@esbuild/aix-ppc64@0.21.5':
513 - resolution: {integrity: sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==}
514 - engines: {node: '>=12'}
515 - cpu: [ppc64]
516 - os: [aix]
517 -
518 - '@esbuild/aix-ppc64@0.23.1':
519 - resolution: {integrity: sha512-6VhYk1diRqrhBAqpJEdjASR/+WVRtfjpqKuNw11cLiaWpAT/Uu+nokB+UJnevzy/P9C/ty6AOe0dwueMrGh/iQ==}
520 - engines: {node: '>=18'}
521 - cpu: [ppc64]
522 - os: [aix]
523 -
524 - '@esbuild/android-arm64@0.21.5':
525 - resolution: {integrity: sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==}
526 - engines: {node: '>=12'}
527 - cpu: [arm64]
528 - os: [android]
529 -
530 - '@esbuild/android-arm64@0.23.1':
531 - resolution: {integrity: sha512-xw50ipykXcLstLeWH7WRdQuysJqejuAGPd30vd1i5zSyKK3WE+ijzHmLKxdiCMtH1pHz78rOg0BKSYOSB/2Khw==}
532 - engines: {node: '>=18'}
533 - cpu: [arm64]
534 - os: [android]
535 -
536 - '@esbuild/android-arm@0.21.5':
537 - resolution: {integrity: sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==}
538 - engines: {node: '>=12'}
539 - cpu: [arm]
540 - os: [android]
541 -
542 - '@esbuild/android-arm@0.23.1':
543 - resolution: {integrity: sha512-uz6/tEy2IFm9RYOyvKl88zdzZfwEfKZmnX9Cj1BHjeSGNuGLuMD1kR8y5bteYmwqKm1tj8m4cb/aKEorr6fHWQ==}
544 - engines: {node: '>=18'}
545 - cpu: [arm]
546 - os: [android]
547 -
548 - '@esbuild/android-x64@0.21.5':
549 - resolution: {integrity: sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==}
550 - engines: {node: '>=12'}
551 - cpu: [x64]
552 - os: [android]
553 -
554 - '@esbuild/android-x64@0.23.1':
555 - resolution: {integrity: sha512-nlN9B69St9BwUoB+jkyU090bru8L0NA3yFvAd7k8dNsVH8bi9a8cUAUSEcEEgTp2z3dbEDGJGfP6VUnkQnlReg==}
556 - engines: {node: '>=18'}
557 - cpu: [x64]
558 - os: [android]
559 -
560 - '@esbuild/darwin-arm64@0.21.5':
561 - resolution: {integrity: sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==}
562 - engines: {node: '>=12'}
563 - cpu: [arm64]
564 - os: [darwin]
565 -
566 - '@esbuild/darwin-arm64@0.23.1':
567 - resolution: {integrity: sha512-YsS2e3Wtgnw7Wq53XXBLcV6JhRsEq8hkfg91ESVadIrzr9wO6jJDMZnCQbHm1Guc5t/CdDiFSSfWP58FNuvT3Q==}
568 - engines: {node: '>=18'}
569 - cpu: [arm64]
570 - os: [darwin]
571 -
572 - '@esbuild/darwin-x64@0.21.5':
573 - resolution: {integrity: sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==}
574 - engines: {node: '>=12'}
575 - cpu: [x64]
576 - os: [darwin]
577 -
578 - '@esbuild/darwin-x64@0.23.1':
579 - resolution: {integrity: sha512-aClqdgTDVPSEGgoCS8QDG37Gu8yc9lTHNAQlsztQ6ENetKEO//b8y31MMu2ZaPbn4kVsIABzVLXYLhCGekGDqw==}
580 - engines: {node: '>=18'}
581 - cpu: [x64]
582 - os: [darwin]
583 -
584 - '@esbuild/freebsd-arm64@0.21.5':
585 - resolution: {integrity: sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==}
586 - engines: {node: '>=12'}
587 - cpu: [arm64]
588 - os: [freebsd]
589 -
590 - '@esbuild/freebsd-arm64@0.23.1':
591 - resolution: {integrity: sha512-h1k6yS8/pN/NHlMl5+v4XPfikhJulk4G+tKGFIOwURBSFzE8bixw1ebjluLOjfwtLqY0kewfjLSrO6tN2MgIhA==}
592 - engines: {node: '>=18'}
593 - cpu: [arm64]
594 - os: [freebsd]
595 -
596 - '@esbuild/freebsd-x64@0.21.5':
597 - resolution: {integrity: sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==}
598 - engines: {node: '>=12'}
599 - cpu: [x64]
600 - os: [freebsd]
601 -
602 - '@esbuild/freebsd-x64@0.23.1':
603 - resolution: {integrity: sha512-lK1eJeyk1ZX8UklqFd/3A60UuZ/6UVfGT2LuGo3Wp4/z7eRTRYY+0xOu2kpClP+vMTi9wKOfXi2vjUpO1Ro76g==}
604 - engines: {node: '>=18'}
605 - cpu: [x64]
606 - os: [freebsd]
607 -
608 - '@esbuild/linux-arm64@0.21.5':
609 - resolution: {integrity: sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==}
610 - engines: {node: '>=12'}
611 - cpu: [arm64]
612 - os: [linux]
613 -
614 - '@esbuild/linux-arm64@0.23.1':
615 - resolution: {integrity: sha512-/93bf2yxencYDnItMYV/v116zff6UyTjo4EtEQjUBeGiVpMmffDNUyD9UN2zV+V3LRV3/on4xdZ26NKzn6754g==}
616 - engines: {node: '>=18'}
617 - cpu: [arm64]
618 - os: [linux]
619 -
620 - '@esbuild/linux-arm@0.21.5':
621 - resolution: {integrity: sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==}
622 - engines: {node: '>=12'}
623 - cpu: [arm]
624 - os: [linux]
625 -
626 - '@esbuild/linux-arm@0.23.1':
627 - resolution: {integrity: sha512-CXXkzgn+dXAPs3WBwE+Kvnrf4WECwBdfjfeYHpMeVxWE0EceB6vhWGShs6wi0IYEqMSIzdOF1XjQ/Mkm5d7ZdQ==}
628 - engines: {node: '>=18'}
629 - cpu: [arm]
630 - os: [linux]
631 -
632 - '@esbuild/linux-ia32@0.21.5':
633 - resolution: {integrity: sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==}
634 - engines: {node: '>=12'}
635 - cpu: [ia32]
636 - os: [linux]
637 -
638 - '@esbuild/linux-ia32@0.23.1':
639 - resolution: {integrity: sha512-VTN4EuOHwXEkXzX5nTvVY4s7E/Krz7COC8xkftbbKRYAl96vPiUssGkeMELQMOnLOJ8k3BY1+ZY52tttZnHcXQ==}
640 - engines: {node: '>=18'}
641 - cpu: [ia32]
642 - os: [linux]
643 -
644 - '@esbuild/linux-loong64@0.21.5':
645 - resolution: {integrity: sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==}
646 - engines: {node: '>=12'}
647 - cpu: [loong64]
648 - os: [linux]
649 -
650 - '@esbuild/linux-loong64@0.23.1':
651 - resolution: {integrity: sha512-Vx09LzEoBa5zDnieH8LSMRToj7ir/Jeq0Gu6qJ/1GcBq9GkfoEAoXvLiW1U9J1qE/Y/Oyaq33w5p2ZWrNNHNEw==}
652 - engines: {node: '>=18'}
653 - cpu: [loong64]
654 - os: [linux]
655 -
656 - '@esbuild/linux-mips64el@0.21.5':
657 - resolution: {integrity: sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==}
658 - engines: {node: '>=12'}
659 - cpu: [mips64el]
660 - os: [linux]
661 -
662 - '@esbuild/linux-mips64el@0.23.1':
663 - resolution: {integrity: sha512-nrFzzMQ7W4WRLNUOU5dlWAqa6yVeI0P78WKGUo7lg2HShq/yx+UYkeNSE0SSfSure0SqgnsxPvmAUu/vu0E+3Q==}
664 - engines: {node: '>=18'}
665 - cpu: [mips64el]
666 - os: [linux]
667 -
668 - '@esbuild/linux-ppc64@0.21.5':
669 - resolution: {integrity: sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==}
670 - engines: {node: '>=12'}
671 - cpu: [ppc64]
672 - os: [linux]
673 -
674 - '@esbuild/linux-ppc64@0.23.1':
675 - resolution: {integrity: sha512-dKN8fgVqd0vUIjxuJI6P/9SSSe/mB9rvA98CSH2sJnlZ/OCZWO1DJvxj8jvKTfYUdGfcq2dDxoKaC6bHuTlgcw==}
676 - engines: {node: '>=18'}
677 - cpu: [ppc64]
678 - os: [linux]
679 -
680 - '@esbuild/linux-riscv64@0.21.5':
681 - resolution: {integrity: sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==}
682 - engines: {node: '>=12'}
683 - cpu: [riscv64]
684 - os: [linux]
685 -
686 - '@esbuild/linux-riscv64@0.23.1':
687 - resolution: {integrity: sha512-5AV4Pzp80fhHL83JM6LoA6pTQVWgB1HovMBsLQ9OZWLDqVY8MVobBXNSmAJi//Csh6tcY7e7Lny2Hg1tElMjIA==}
688 - engines: {node: '>=18'}
689 - cpu: [riscv64]
690 - os: [linux]
691 -
692 - '@esbuild/linux-s390x@0.21.5':
693 - resolution: {integrity: sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==}
694 - engines: {node: '>=12'}
695 - cpu: [s390x]
696 - os: [linux]
697 -
698 - '@esbuild/linux-s390x@0.23.1':
699 - resolution: {integrity: sha512-9ygs73tuFCe6f6m/Tb+9LtYxWR4c9yg7zjt2cYkjDbDpV/xVn+68cQxMXCjUpYwEkze2RcU/rMnfIXNRFmSoDw==}
700 - engines: {node: '>=18'}
701 - cpu: [s390x]
702 - os: [linux]
703 -
704 - '@esbuild/linux-x64@0.21.5':
705 - resolution: {integrity: sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==}
706 - engines: {node: '>=12'}
707 - cpu: [x64]
708 - os: [linux]
709 -
710 - '@esbuild/linux-x64@0.23.1':
711 - resolution: {integrity: sha512-EV6+ovTsEXCPAp58g2dD68LxoP/wK5pRvgy0J/HxPGB009omFPv3Yet0HiaqvrIrgPTBuC6wCH1LTOY91EO5hQ==}
712 - engines: {node: '>=18'}
713 - cpu: [x64]
714 - os: [linux]
715 -
716 - '@esbuild/netbsd-x64@0.21.5':
717 - resolution: {integrity: sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==}
718 - engines: {node: '>=12'}
719 - cpu: [x64]
720 - os: [netbsd]
721 -
722 - '@esbuild/netbsd-x64@0.23.1':
723 - resolution: {integrity: sha512-aevEkCNu7KlPRpYLjwmdcuNz6bDFiE7Z8XC4CPqExjTvrHugh28QzUXVOZtiYghciKUacNktqxdpymplil1beA==}
724 - engines: {node: '>=18'}
725 - cpu: [x64]
726 - os: [netbsd]
727 -
728 - '@esbuild/openbsd-arm64@0.23.1':
729 - resolution: {integrity: sha512-3x37szhLexNA4bXhLrCC/LImN/YtWis6WXr1VESlfVtVeoFJBRINPJ3f0a/6LV8zpikqoUg4hyXw0sFBt5Cr+Q==}
730 - engines: {node: '>=18'}
731 - cpu: [arm64]
732 - os: [openbsd]
733 -
734 - '@esbuild/openbsd-x64@0.21.5':
735 - resolution: {integrity: sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==}
736 - engines: {node: '>=12'}
737 - cpu: [x64]
738 - os: [openbsd]
739 -
740 - '@esbuild/openbsd-x64@0.23.1':
741 - resolution: {integrity: sha512-aY2gMmKmPhxfU+0EdnN+XNtGbjfQgwZj43k8G3fyrDM/UdZww6xrWxmDkuz2eCZchqVeABjV5BpildOrUbBTqA==}
742 - engines: {node: '>=18'}
743 - cpu: [x64]
744 - os: [openbsd]
745 -
746 - '@esbuild/sunos-x64@0.21.5':
747 - resolution: {integrity: sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==}
748 - engines: {node: '>=12'}
749 - cpu: [x64]
750 - os: [sunos]
751 -
752 - '@esbuild/sunos-x64@0.23.1':
753 - resolution: {integrity: sha512-RBRT2gqEl0IKQABT4XTj78tpk9v7ehp+mazn2HbUeZl1YMdaGAQqhapjGTCe7uw7y0frDi4gS0uHzhvpFuI1sA==}
754 - engines: {node: '>=18'}
755 - cpu: [x64]
756 - os: [sunos]
757 -
758 - '@esbuild/win32-arm64@0.21.5':
759 - resolution: {integrity: sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==}
760 - engines: {node: '>=12'}
761 - cpu: [arm64]
762 - os: [win32]
763 -
764 - '@esbuild/win32-arm64@0.23.1':
765 - resolution: {integrity: sha512-4O+gPR5rEBe2FpKOVyiJ7wNDPA8nGzDuJ6gN4okSA1gEOYZ67N8JPk58tkWtdtPeLz7lBnY6I5L3jdsr3S+A6A==}
766 - engines: {node: '>=18'}
767 - cpu: [arm64]
768 - os: [win32]
769 -
770 - '@esbuild/win32-ia32@0.21.5':
771 - resolution: {integrity: sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==}
772 - engines: {node: '>=12'}
773 - cpu: [ia32]
774 - os: [win32]
775 -
776 - '@esbuild/win32-ia32@0.23.1':
777 - resolution: {integrity: sha512-BcaL0Vn6QwCwre3Y717nVHZbAa4UBEigzFm6VdsVdT/MbZ38xoj1X9HPkZhbmaBGUD1W8vxAfffbDe8bA6AKnQ==}
778 - engines: {node: '>=18'}
779 - cpu: [ia32]
780 - os: [win32]
781 -
782 - '@esbuild/win32-x64@0.21.5':
783 - resolution: {integrity: sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==}
784 - engines: {node: '>=12'}
785 - cpu: [x64]
786 - os: [win32]
787 -
788 - '@esbuild/win32-x64@0.23.1':
789 - resolution: {integrity: sha512-BHpFFeslkWrXWyUPnbKm+xYYVYruCinGcftSBaa8zoF9hZO4BcSCFUvHVTtzpIY6YzUnYtuEhZ+C9iEXjxnasg==}
790 - engines: {node: '>=18'}
791 - cpu: [x64]
792 - os: [win32]
793 -
794 - '@eslint-community/eslint-plugin-eslint-comments@4.4.0':
795 - resolution: {integrity: sha512-yljsWl5Qv3IkIRmJ38h3NrHXFCm4EUl55M8doGTF6hvzvFF8kRpextgSrg2dwHev9lzBZyafCr9RelGIyQm6fw==}
796 - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
797 - peerDependencies:
798 - eslint: ^9.13.0
799 -
800 - '@eslint-community/eslint-utils@4.4.0':
801 - resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==}
802 - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
803 - peerDependencies:
804 - eslint: ^9.13.0
805 -
806 - '@eslint-community/regexpp@4.11.1':
807 - resolution: {integrity: sha512-m4DVN9ZqskZoLU5GlWZadwDnYo3vAEydiUayB9widCl9ffWx2IvPnp6n3on5rJmziJSw9Bv+Z3ChDVdMwXCY8Q==}
808 - engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0}
809 -
810 - '@eslint/compat@1.2.1':
811 - resolution: {integrity: sha512-JbHG2TWuCeNzh87fXo+/46Z1LEo9DBA9T188d0fZgGxAD+cNyS6sx9fdiyxjGPBMyQVRlCutTByZ6a5+YMkF7g==}
812 - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
813 - peerDependencies:
814 - eslint: ^9.13.0
815 - peerDependenciesMeta:
816 - eslint:
817 - optional: true
818 -
819 - '@eslint/config-array@0.18.0':
820 - resolution: {integrity: sha512-fTxvnS1sRMu3+JjXwJG0j/i4RT9u4qJ+lqS/yCGap4lH4zZGzQ7tu+xZqQmcMZq5OBZDL4QRxQzRjkWcGt8IVw==}
821 - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
822 -
823 - '@eslint/core@0.7.0':
824 - resolution: {integrity: sha512-xp5Jirz5DyPYlPiKat8jaq0EmYvDXKKpzTbxXMpT9eqlRJkRKIz9AGMdlvYjih+im+QlhWrpvVjl8IPC/lHlUw==}
825 - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
826 -
827 - '@eslint/eslintrc@3.1.0':
828 - resolution: {integrity: sha512-4Bfj15dVJdoy3RfZmmo86RK1Fwzn6SstsvK9JS+BaVKqC6QQQQyXekNaC+g+LKNgkQ+2VhGAzm6hO40AhMR3zQ==}
829 - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
830 -
831 - '@eslint/js@8.57.1':
832 - resolution: {integrity: sha512-d9zaMRSTIKDLhctzH12MtXvJKSSUhaHcjV+2Z+GK+EEY7XKpP5yR4x+N3TAcHTcu963nIr+TMcCb4DBCYX1z6Q==}
833 - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
834 -
835 - '@eslint/js@9.13.0':
836 - resolution: {integrity: sha512-IFLyoY4d72Z5y/6o/BazFBezupzI/taV8sGumxTAVw3lXG9A6md1Dc34T9s1FoD/an9pJH8RHbAxsaEbBed9lA==}
837 - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
838 -
839 - '@eslint/markdown@6.2.1':
840 - resolution: {integrity: sha512-cKVd110hG4ICHmWhIwZJfKmmJBvbiDWyrHODJknAtudKgZtlROGoLX9UEOA0o746zC0hCY4UV4vR+aOGW9S6JQ==}
841 - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
842 -
843 - '@eslint/object-schema@2.1.4':
844 - resolution: {integrity: sha512-BsWiH1yFGjXXS2yvrf5LyuoSIIbPrGUWob917o+BTKuZ7qJdxX8aJLRxs1fS9n6r7vESrq1OUqb68dANcFXuQQ==}
845 - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
846 -
847 - '@eslint/plugin-kit@0.2.1':
848 - resolution: {integrity: sha512-HFZ4Mp26nbWk9d/BpvP0YNL6W4UoZF0VFcTw/aPPA8RpOxeFQgK+ClABGgAUXs9Y/RGX/l1vOmrqz1MQt9MNuw==}
849 - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
850 -
851 - '@f3ve/eslint-config@1.0.6':
852 - resolution: {integrity: sha512-DVLPAVZskaOUY6Gu/1VFaL0gGyY3VhjZBVExZVde2siwwgdwt+8XDSupLll0arKqVv4bqO2fRK21QomN3jy2yg==}
853 - peerDependencies:
854 - eslint: ^9.13.0
855 -
856 - '@f3ve/vue-markdown-it@0.2.2':
857 - resolution: {integrity: sha512-0LVoa7bCI+pKuMRp8iap7DNNSVgXH51xkAxFmBWjdY6gd9yXBwD64P0p7o1NSYFUXaQCGR+cfOpsudJY7zjeBg==}
858 - peerDependencies:
859 - vue: ^3.3.4
860 -
861 - '@fontsource/jetbrains-mono@5.1.1':
862 - resolution: {integrity: sha512-5rwvmdQQpXev4LlBX1P+7h2dguu6iwW/9Npjde4+DEq+HgpVJI/7QY8DI1NVVFdvLtXZNP+vO2L/5BQED6FUhA==}
863 -
864 - '@fontsource/lexend@5.1.1':
865 - resolution: {integrity: sha512-92A96vmx5xk1NgNphB62w5PKhW53Ruo74ki3UsUrV1q7/tbhJ73k2podhCNmldUlpUeO6rrCUWpRM20WloiNXA==}
866 -
867 - '@fontsource/public-sans@5.1.1':
868 - resolution: {integrity: sha512-BEJEc9kpLBowHLqeOlex1lMJPZ/6mzKn3ArhbvWY9dvMcjSqH7jzJyTN44j0H78FTOrVjIW1g4A8nDdbx8VV5Q==}
869 -
870 - '@hapi/hoek@9.3.0':
871 - resolution: {integrity: sha512-/c6rf4UJlmHlC9b5BaNvzAcFv7HZ2QHaV0D4/HNlBdvFnvQq8RI4kYdhyPCl7Xj+oWvTWQ8ujhqS53LIgAe6KQ==}
872 -
873 - '@hapi/topo@5.1.0':
874 - resolution: {integrity: sha512-foQZKJig7Ob0BMAYBfcJk8d77QtOe7Wo4ox7ff1lQYoNNAb6jwcY1ncdoy2e9wQZzvNy7ODZCYJkK8kzmcAnAg==}
875 -
876 - '@humanfs/core@0.19.0':
877 - resolution: {integrity: sha512-2cbWIHbZVEweE853g8jymffCA+NCMiuqeECeBBLm8dg2oFdjuGJhgN4UAbI+6v0CKbbhvtXA4qV8YR5Ji86nmw==}
878 - engines: {node: '>=18.18.0'}
879 -
880 - '@humanfs/node@0.16.5':
881 - resolution: {integrity: sha512-KSPA4umqSG4LHYRodq31VDwKAvaTF4xmVlzM8Aeh4PlU1JQ3IG0wiA8C25d3RQ9nJyM3mBHyI53K06VVL/oFFg==}
882 - engines: {node: '>=18.18.0'}
883 -
884 - '@humanwhocodes/module-importer@1.0.1':
885 - resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==}
886 - engines: {node: '>=12.22'}
887 -
888 - '@humanwhocodes/retry@0.3.1':
889 - resolution: {integrity: sha512-JBxkERygn7Bv/GbN5Rv8Ul6LVknS+5Bp6RgDC/O8gEBU/yeH5Ui5C/OlWrTb6qct7LjjfT6Re2NxB0ln0yYybA==}
890 - engines: {node: '>=18.18'}
891 -
892 - '@iconify/types@2.0.0':
893 - resolution: {integrity: sha512-+wluvCrRhXrhyOmRDJ3q8mux9JkKy5SJ/v8ol2tu4FVjyYvtEzkc/3pK15ET6RKg4b4w4BmTk1+gsCUhf21Ykg==}
894 -
895 - '@iconify/vue@4.1.2':
896 - resolution: {integrity: sha512-CQnYqLiQD5LOAaXhBrmj1mdL2/NCJvwcC4jtW2Z8ukhThiFkLDkutarTOV2trfc9EXqUqRs0KqXOL9pZ/IyysA==}
897 - peerDependencies:
898 - vue: '>=3'
899 -
900 - '@intlify/core-base@10.0.4':
901 - resolution: {integrity: sha512-GG428DkrrWCMhxRMRQZjuS7zmSUzarYcaHJqG9VB8dXAxw4iQDoKVQ7ChJRB6ZtsCsX3Jse1PEUlHrJiyQrOTg==}
902 - engines: {node: '>= 16'}
903 -
904 - '@intlify/message-compiler@10.0.4':
905 - resolution: {integrity: sha512-AFbhEo10DP095/45EauinQJ5hJ3rJUmuuqltGguvc3WsvezZN+g8qNHLGWKu60FHQVizMrQY7VJ+zVlBXlQQkQ==}
906 - engines: {node: '>= 16'}
907 -
908 - '@intlify/shared@10.0.4':
909 - resolution: {integrity: sha512-ukFn0I01HsSgr3VYhYcvkTCLS7rGa0gw4A4AMpcy/A9xx/zRJy7PS2BElMXLwUazVFMAr5zuiTk3MQeoeGXaJg==}
910 - engines: {node: '>= 16'}
911 -
912 - '@isaacs/cliui@8.0.2':
913 - resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==}
914 - engines: {node: '>=12'}
915 -
916 - '@jridgewell/gen-mapping@0.3.5':
917 - resolution: {integrity: sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==}
918 - engines: {node: '>=6.0.0'}
919 -
920 - '@jridgewell/resolve-uri@3.1.2':
921 - resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==}
922 - engines: {node: '>=6.0.0'}
923 -
924 - '@jridgewell/set-array@1.2.1':
925 - resolution: {integrity: sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==}
926 - engines: {node: '>=6.0.0'}
927 -
928 - '@jridgewell/sourcemap-codec@1.5.0':
929 - resolution: {integrity: sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==}
930 -
931 - '@jridgewell/trace-mapping@0.3.25':
932 - resolution: {integrity: sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==}
933 -
934 - '@juggle/resize-observer@3.4.0':
935 - resolution: {integrity: sha512-dfLbk+PwWvFzSxwk3n5ySL0hfBog779o8h68wK/7/APo/7cgyWp5jcXockbxdk5kFRkbeXWm4Fbi9FrdN381sA==}
936 -
937 - '@koa/router@12.0.2':
938 - resolution: {integrity: sha512-sYcHglGKTxGF+hQ6x67xDfkE9o+NhVlRHBqq6gLywaMc6CojK/5vFZByphdonKinYlMLkEkacm+HEse9HzwgTA==}
939 - engines: {node: '>= 12'}
940 -
941 - '@nodelib/fs.scandir@2.1.5':
942 - resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==}
943 - engines: {node: '>= 8'}
944 -
945 - '@nodelib/fs.stat@2.0.5':
946 - resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==}
947 - engines: {node: '>= 8'}
948 -
949 - '@nodelib/fs.walk@1.2.8':
950 - resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==}
951 - engines: {node: '>= 8'}
952 -
953 - '@nuxt/kit@3.13.2':
954 - resolution: {integrity: sha512-KvRw21zU//wdz25IeE1E5m/aFSzhJloBRAQtv+evcFeZvuroIxpIQuUqhbzuwznaUwpiWbmwlcsp5uOWmi4vwA==}
955 - engines: {node: ^14.18.0 || >=16.10.0}
956 -
957 - '@nuxt/schema@3.13.2':
958 - resolution: {integrity: sha512-CCZgpm+MkqtOMDEgF9SWgGPBXlQ01hV/6+2reDEpJuqFPGzV8HYKPBcIFvn7/z5ahtgutHLzjP71Na+hYcqSpw==}
959 - engines: {node: ^14.18.0 || >=16.10.0}
960 -
961 - '@one-ini/wasm@0.1.1':
962 - resolution: {integrity: sha512-XuySG1E38YScSJoMlqovLru4KTUNSjgVTIjyh7qMX6aNN5HY5Ct5LhRJdxO79JtTzKfzV/bnWpz+zquYrISsvw==}
963 -
964 - '@parcel/watcher-android-arm64@2.4.1':
965 - resolution: {integrity: sha512-LOi/WTbbh3aTn2RYddrO8pnapixAziFl6SMxHM69r3tvdSm94JtCenaKgk1GRg5FJ5wpMCpHeW+7yqPlvZv7kg==}
966 - engines: {node: '>= 10.0.0'}
967 - cpu: [arm64]
968 - os: [android]
969 -
970 - '@parcel/watcher-darwin-arm64@2.4.1':
971 - resolution: {integrity: sha512-ln41eihm5YXIY043vBrrHfn94SIBlqOWmoROhsMVTSXGh0QahKGy77tfEywQ7v3NywyxBBkGIfrWRHm0hsKtzA==}
972 - engines: {node: '>= 10.0.0'}
973 - cpu: [arm64]
974 - os: [darwin]
975 -
976 - '@parcel/watcher-darwin-x64@2.4.1':
977 - resolution: {integrity: sha512-yrw81BRLjjtHyDu7J61oPuSoeYWR3lDElcPGJyOvIXmor6DEo7/G2u1o7I38cwlcoBHQFULqF6nesIX3tsEXMg==}
978 - engines: {node: '>= 10.0.0'}
979 - cpu: [x64]
980 - os: [darwin]
981 -
982 - '@parcel/watcher-freebsd-x64@2.4.1':
983 - resolution: {integrity: sha512-TJa3Pex/gX3CWIx/Co8k+ykNdDCLx+TuZj3f3h7eOjgpdKM+Mnix37RYsYU4LHhiYJz3DK5nFCCra81p6g050w==}
984 - engines: {node: '>= 10.0.0'}
985 - cpu: [x64]
986 - os: [freebsd]
987 -
988 - '@parcel/watcher-linux-arm-glibc@2.4.1':
989 - resolution: {integrity: sha512-4rVYDlsMEYfa537BRXxJ5UF4ddNwnr2/1O4MHM5PjI9cvV2qymvhwZSFgXqbS8YoTk5i/JR0L0JDs69BUn45YA==}
990 - engines: {node: '>= 10.0.0'}
991 - cpu: [arm]
992 - os: [linux]
993 -
994 - '@parcel/watcher-linux-arm64-glibc@2.4.1':
995 - resolution: {integrity: sha512-BJ7mH985OADVLpbrzCLgrJ3TOpiZggE9FMblfO65PlOCdG++xJpKUJ0Aol74ZUIYfb8WsRlUdgrZxKkz3zXWYA==}
996 - engines: {node: '>= 10.0.0'}
997 - cpu: [arm64]
998 - os: [linux]
999 -
1000 - '@parcel/watcher-linux-arm64-musl@2.4.1':
1001 - resolution: {integrity: sha512-p4Xb7JGq3MLgAfYhslU2SjoV9G0kI0Xry0kuxeG/41UfpjHGOhv7UoUDAz/jb1u2elbhazy4rRBL8PegPJFBhA==}
1002 - engines: {node: '>= 10.0.0'}
1003 - cpu: [arm64]
1004 - os: [linux]
1005 -
1006 - '@parcel/watcher-linux-x64-glibc@2.4.1':
1007 - resolution: {integrity: sha512-s9O3fByZ/2pyYDPoLM6zt92yu6P4E39a03zvO0qCHOTjxmt3GHRMLuRZEWhWLASTMSrrnVNWdVI/+pUElJBBBg==}
1008 - engines: {node: '>= 10.0.0'}
1009 - cpu: [x64]
1010 - os: [linux]
1011 -
1012 - '@parcel/watcher-linux-x64-musl@2.4.1':
1013 - resolution: {integrity: sha512-L2nZTYR1myLNST0O632g0Dx9LyMNHrn6TOt76sYxWLdff3cB22/GZX2UPtJnaqQPdCRoszoY5rcOj4oMTtp5fQ==}
1014 - engines: {node: '>= 10.0.0'}
1015 - cpu: [x64]
1016 - os: [linux]
1017 -
1018 - '@parcel/watcher-win32-arm64@2.4.1':
1019 - resolution: {integrity: sha512-Uq2BPp5GWhrq/lcuItCHoqxjULU1QYEcyjSO5jqqOK8RNFDBQnenMMx4gAl3v8GiWa59E9+uDM7yZ6LxwUIfRg==}
1020 - engines: {node: '>= 10.0.0'}
1021 - cpu: [arm64]
1022 - os: [win32]
1023 -
1024 - '@parcel/watcher-win32-ia32@2.4.1':
1025 - resolution: {integrity: sha512-maNRit5QQV2kgHFSYwftmPBxiuK5u4DXjbXx7q6eKjq5dsLXZ4FJiVvlcw35QXzk0KrUecJmuVFbj4uV9oYrcw==}
1026 - engines: {node: '>= 10.0.0'}
1027 - cpu: [ia32]
1028 - os: [win32]
1029 -
1030 - '@parcel/watcher-win32-x64@2.4.1':
1031 - resolution: {integrity: sha512-+DvS92F9ezicfswqrvIRM2njcYJbd5mb9CUgtrHCHmvn7pPPa+nMDRu1o1bYYz/l5IB2NVGNJWiH7h1E58IF2A==}
1032 - engines: {node: '>= 10.0.0'}
1033 - cpu: [x64]
1034 - os: [win32]
1035 -
1036 - '@parcel/watcher@2.4.1':
1037 - resolution: {integrity: sha512-HNjmfLQEVRZmHRET336f20H/8kOozUGwk7yajvsonjNxbj2wBTK1WsQuHkD5yYh9RxFGL2EyDHryOihOwUoKDA==}
1038 - engines: {node: '>= 10.0.0'}
1039 -
1040 - '@pkgjs/parseargs@0.11.0':
1041 - resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==}
1042 - engines: {node: '>=14'}
1043 -
1044 - '@pkgr/core@0.1.1':
1045 - resolution: {integrity: sha512-cq8o4cWH0ibXh9VGi5P20Tu9XF/0fFXl9EUinr9QfTM7a7p0oTA4iJRCQWppXR1Pg8dSM0UCItCkPwsk9qWWYA==}
1046 - engines: {node: ^12.20.0 || ^14.18.0 || >=16.0.0}
1047 -
1048 - '@polka/url@1.0.0-next.28':
1049 - resolution: {integrity: sha512-8LduaNlMZGwdZ6qWrKlfa+2M4gahzFkprZiAt2TF8uS0qQgBizKXpXURqvTJ4WtmupWxaLqjRb2UCTe72mu+Aw==}
1050 -
1051 - '@rollup/pluginutils@5.1.2':
1052 - resolution: {integrity: sha512-/FIdS3PyZ39bjZlwqFnWqCOVnW7o963LtKMwQOD0NhQqw22gSr2YY1afu3FxRip4ZCZNsD5jq6Aaz6QV3D/Njw==}
1053 - engines: {node: '>=14.0.0'}
1054 - peerDependencies:
1055 - rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0
1056 - peerDependenciesMeta:
1057 - rollup:
1058 - optional: true
1059 -
1060 - '@rollup/rollup-android-arm-eabi@4.24.0':
1061 - resolution: {integrity: sha512-Q6HJd7Y6xdB48x8ZNVDOqsbh2uByBhgK8PiQgPhwkIw/HC/YX5Ghq2mQY5sRMZWHb3VsFkWooUVOZHKr7DmDIA==}
1062 - cpu: [arm]
1063 - os: [android]
1064 -
1065 - '@rollup/rollup-android-arm64@4.24.0':
1066 - resolution: {integrity: sha512-ijLnS1qFId8xhKjT81uBHuuJp2lU4x2yxa4ctFPtG+MqEE6+C5f/+X/bStmxapgmwLwiL3ih122xv8kVARNAZA==}
1067 - cpu: [arm64]
1068 - os: [android]
1069 -
1070 - '@rollup/rollup-darwin-arm64@4.24.0':
1071 - resolution: {integrity: sha512-bIv+X9xeSs1XCk6DVvkO+S/z8/2AMt/2lMqdQbMrmVpgFvXlmde9mLcbQpztXm1tajC3raFDqegsH18HQPMYtA==}
1072 - cpu: [arm64]
1073 - os: [darwin]
1074 -
1075 - '@rollup/rollup-darwin-x64@4.24.0':
1076 - resolution: {integrity: sha512-X6/nOwoFN7RT2svEQWUsW/5C/fYMBe4fnLK9DQk4SX4mgVBiTA9h64kjUYPvGQ0F/9xwJ5U5UfTbl6BEjaQdBQ==}
1077 - cpu: [x64]
1078 - os: [darwin]
1079 -
1080 - '@rollup/rollup-linux-arm-gnueabihf@4.24.0':
1081 - resolution: {integrity: sha512-0KXvIJQMOImLCVCz9uvvdPgfyWo93aHHp8ui3FrtOP57svqrF/roSSR5pjqL2hcMp0ljeGlU4q9o/rQaAQ3AYA==}
1082 - cpu: [arm]
1083 - os: [linux]
1084 -
1085 - '@rollup/rollup-linux-arm-musleabihf@4.24.0':
1086 - resolution: {integrity: sha512-it2BW6kKFVh8xk/BnHfakEeoLPv8STIISekpoF+nBgWM4d55CZKc7T4Dx1pEbTnYm/xEKMgy1MNtYuoA8RFIWw==}
1087 - cpu: [arm]
1088 - os: [linux]
1089 -
1090 - '@rollup/rollup-linux-arm64-gnu@4.24.0':
1091 - resolution: {integrity: sha512-i0xTLXjqap2eRfulFVlSnM5dEbTVque/3Pi4g2y7cxrs7+a9De42z4XxKLYJ7+OhE3IgxvfQM7vQc43bwTgPwA==}
1092 - cpu: [arm64]
1093 - os: [linux]
1094 -
1095 - '@rollup/rollup-linux-arm64-musl@4.24.0':
1096 - resolution: {integrity: sha512-9E6MKUJhDuDh604Qco5yP/3qn3y7SLXYuiC0Rpr89aMScS2UAmK1wHP2b7KAa1nSjWJc/f/Lc0Wl1L47qjiyQw==}
1097 - cpu: [arm64]
1098 - os: [linux]
1099 -
1100 - '@rollup/rollup-linux-powerpc64le-gnu@4.24.0':
1101 - resolution: {integrity: sha512-2XFFPJ2XMEiF5Zi2EBf4h73oR1V/lycirxZxHZNc93SqDN/IWhYYSYj8I9381ikUFXZrz2v7r2tOVk2NBwxrWw==}
1102 - cpu: [ppc64]
1103 - os: [linux]
1104 -
1105 - '@rollup/rollup-linux-riscv64-gnu@4.24.0':
1106 - resolution: {integrity: sha512-M3Dg4hlwuntUCdzU7KjYqbbd+BLq3JMAOhCKdBE3TcMGMZbKkDdJ5ivNdehOssMCIokNHFOsv7DO4rlEOfyKpg==}
1107 - cpu: [riscv64]
1108 - os: [linux]
1109 -
1110 - '@rollup/rollup-linux-s390x-gnu@4.24.0':
1111 - resolution: {integrity: sha512-mjBaoo4ocxJppTorZVKWFpy1bfFj9FeCMJqzlMQGjpNPY9JwQi7OuS1axzNIk0nMX6jSgy6ZURDZ2w0QW6D56g==}
1112 - cpu: [s390x]
1113 - os: [linux]
1114 -
1115 - '@rollup/rollup-linux-x64-gnu@4.24.0':
1116 - resolution: {integrity: sha512-ZXFk7M72R0YYFN5q13niV0B7G8/5dcQ9JDp8keJSfr3GoZeXEoMHP/HlvqROA3OMbMdfr19IjCeNAnPUG93b6A==}
1117 - cpu: [x64]
1118 - os: [linux]
1119 -
1120 - '@rollup/rollup-linux-x64-musl@4.24.0':
1121 - resolution: {integrity: sha512-w1i+L7kAXZNdYl+vFvzSZy8Y1arS7vMgIy8wusXJzRrPyof5LAb02KGr1PD2EkRcl73kHulIID0M501lN+vobQ==}
1122 - cpu: [x64]
1123 - os: [linux]
1124 -
1125 - '@rollup/rollup-win32-arm64-msvc@4.24.0':
1126 - resolution: {integrity: sha512-VXBrnPWgBpVDCVY6XF3LEW0pOU51KbaHhccHw6AS6vBWIC60eqsH19DAeeObl+g8nKAz04QFdl/Cefta0xQtUQ==}
1127 - cpu: [arm64]
1128 - os: [win32]
1129 -
1130 - '@rollup/rollup-win32-ia32-msvc@4.24.0':
1131 - resolution: {integrity: sha512-xrNcGDU0OxVcPTH/8n/ShH4UevZxKIO6HJFK0e15XItZP2UcaiLFd5kiX7hJnqCbSztUF8Qot+JWBC/QXRPYWQ==}
1132 - cpu: [ia32]
1133 - os: [win32]
1134 -
1135 - '@rollup/rollup-win32-x64-msvc@4.24.0':
1136 - resolution: {integrity: sha512-fbMkAF7fufku0N2dE5TBXcNlg0pt0cJue4xBRE2Qc5Vqikxr4VCgKj/ht6SMdFcOacVA9rqF70APJ8RN/4vMJw==}
1137 - cpu: [x64]
1138 - os: [win32]
1139 -
1140 - '@shikijs/core@1.22.0':
1141 - resolution: {integrity: sha512-S8sMe4q71TJAW+qG93s5VaiihujRK6rqDFqBnxqvga/3LvqHEnxqBIOPkt//IdXVtHkQWKu4nOQNk0uBGicU7Q==}
1142 -
1143 - '@shikijs/engine-javascript@1.22.0':
1144 - resolution: {integrity: sha512-AeEtF4Gcck2dwBqCFUKYfsCq0s+eEbCEbkUuFou53NZ0sTGnJnJ/05KHQFZxpii5HMXbocV9URYVowOP2wH5kw==}
1145 -
1146 - '@shikijs/engine-oniguruma@1.22.0':
1147 - resolution: {integrity: sha512-5iBVjhu/DYs1HB0BKsRRFipRrD7rqjxlWTj4F2Pf+nQSPqc3kcyqFFeZXnBMzDf0HdqaFVvhDRAGiYNvyLP+Mw==}
1148 -
1149 - '@shikijs/markdown-it@1.22.0':
1150 - resolution: {integrity: sha512-IAWi2pbzYndiuXOWnV5Ll4ULQJeWl45WUACl1Xc2KSiBl0JtQmqKvPOGKN7YSZbyIzkB6bWUItRrv5ucO35U+g==}
1151 -
1152 - '@shikijs/types@1.22.0':
1153 - resolution: {integrity: sha512-Fw/Nr7FGFhlQqHfxzZY8Cwtwk5E9nKDUgeLjZgt3UuhcM3yJR9xj3ZGNravZZok8XmEZMiYkSMTPlPkULB8nww==}
1154 -
1155 - '@shikijs/vscode-textmate@9.3.0':
1156 - resolution: {integrity: sha512-jn7/7ky30idSkd/O5yDBfAnVt+JJpepofP/POZ1iMOxK59cOfqIgg/Dj0eFsjOTMw+4ycJN0uhZH/Eb0bs/EUA==}
1157 -
1158 - '@sideway/address@4.1.5':
1159 - resolution: {integrity: sha512-IqO/DUQHUkPeixNQ8n0JA6102hT9CmaljNTPmQ1u8MEhBo/R4Q8eKLN/vGZxuebwOroDB4cbpjheD4+/sKFK4Q==}
1160 -
1161 - '@sideway/formula@3.0.1':
1162 - resolution: {integrity: sha512-/poHZJJVjx3L+zVD6g9KgHfYnb443oi7wLu/XKojDviHy6HOEOA6z1Trk5aR1dGcmPenJEgb2sK2I80LeS3MIg==}
1163 -
1164 - '@sideway/pinpoint@2.0.0':
1165 - resolution: {integrity: sha512-RNiOoTPkptFtSVzQevY/yWtZwf/RxyVnPy/OcA9HBM3MlGDnBEYL5B41H0MTn0Uec8Hi+2qUtTfG2WWZBmMejQ==}
1166 -
1167 - '@sindresorhus/merge-streams@2.3.0':
1168 - resolution: {integrity: sha512-LtoMMhxAlorcGhmFYI+LhPgbPZCkgP6ra1YL604EeF6U98pLlQ3iWIGMdWSC+vWmPBWBNgmDBAhnAobLROJmwg==}
1169 - engines: {node: '>=18'}
1170 -
1171 - '@stylistic/eslint-plugin@2.9.0':
1172 - resolution: {integrity: sha512-OrDyFAYjBT61122MIY1a3SfEgy3YCMgt2vL4eoPmvTwDBwyQhAXurxNQznlRD/jESNfYWfID8Ej+31LljvF7Xg==}
1173 - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
1174 - peerDependencies:
1175 - eslint: ^9.13.0
1176 -
1177 - '@tailwindcss/container-queries@0.1.1':
1178 - resolution: {integrity: sha512-p18dswChx6WnTSaJCSGx6lTmrGzNNvm2FtXmiO6AuA1V4U5REyoqwmT6kgAsIMdjo07QdAfYXHJ4hnMtfHzWgA==}
1179 - peerDependencies:
1180 - tailwindcss: '>=3.2.0'
1181 -
1182 - '@trysound/sax@0.2.0':
1183 - resolution: {integrity: sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==}
1184 - engines: {node: '>=10.13.0'}
1185 -
1186 - '@tsconfig/node20@20.1.4':
1187 - resolution: {integrity: sha512-sqgsT69YFeLWf5NtJ4Xq/xAF8p4ZQHlmGW74Nu2tD4+g5fAsposc4ZfaaPixVu4y01BEiDCWLRDCvDM5JOsRxg==}
1188 -
1189 - '@types/bytes@3.1.4':
1190 - resolution: {integrity: sha512-A0uYgOj3zNc4hNjHc5lYUfJQ/HVyBXiUMKdXd7ysclaE6k9oJdavQzODHuwjpUu2/boCP8afjQYi8z/GtvNCWA==}
1191 -
1192 - '@types/debug@4.1.12':
1193 - resolution: {integrity: sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==}
1194 -
1195 - '@types/estree@1.0.6':
1196 - resolution: {integrity: sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==}
1197 -
1198 - '@types/file-saver@2.0.7':
1199 - resolution: {integrity: sha512-dNKVfHd/jk0SkR/exKGj2ggkB45MAkzvWCaqLUUgkyjITkGNzH8H+yUwr+BLJUBjZOe9w8X3wgmXhZDRg1ED6A==}
1200 -
1201 - '@types/fs-extra@11.0.4':
1202 - resolution: {integrity: sha512-yTbItCNreRooED33qjunPthRcSjERP1r4MqCZc7wv0u2sUkzTFp45tgUfS5+r7FrZPdmCCNflLhVSP/o+SemsQ==}
1203 -
1204 - '@types/hast@3.0.4':
1205 - resolution: {integrity: sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==}
1206 -
1207 - '@types/jsdom@21.1.7':
1208 - resolution: {integrity: sha512-yOriVnggzrnQ3a9OKOCxaVuSug3w3/SbOj5i7VwXWZEyUNl3bLF9V3MfxGbZKuwqJOQyRfqXyROBB1CoZLFWzA==}
1209 -
1210 - '@types/json-schema@7.0.15':
1211 - resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==}
1212 -
1213 - '@types/jsonfile@6.1.4':
1214 - resolution: {integrity: sha512-D5qGUYwjvnNNextdU59/+fI+spnwtTFmyQP0h+PfIOSkNfpU6AOICUOkm4i0OnSk+NyjdPJrxCDro0sJsWlRpQ==}
1215 -
1216 - '@types/katex@0.16.7':
1217 - resolution: {integrity: sha512-HMwFiRujE5PjrgwHQ25+bsLJgowjGjm5Z8FVSf0N6PwgJrwxH0QxzHYDcKsTfV3wva0vzrpqMTJS2jXPr5BMEQ==}
1218 -
1219 - '@types/lodash-es@4.17.12':
1220 - resolution: {integrity: sha512-0NgftHUcV4v34VhXm8QBSftKVXtbkBG3ViCjs6+eJ5a6y6Mi/jiFGPc1sC7QK+9BFhWrURE3EOggmWaSxL9OzQ==}
1221 -
1222 - '@types/lodash@4.17.12':
1223 - resolution: {integrity: sha512-sviUmCE8AYdaF/KIHLDJBQgeYzPBI0vf/17NaYehBJfYD1j6/L95Slh07NlyK2iNyBNaEkb3En2jRt+a8y3xZQ==}
1224 -
1225 - '@types/mdast@4.0.4':
1226 - resolution: {integrity: sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA==}
1227 -
1228 - '@types/minimatch@3.0.5':
1229 - resolution: {integrity: sha512-Klz949h02Gz2uZCMGwDUSDS1YBlTdDDgbWHi+81l29tQALUtvz4rAYi5uoVhE5Lagoq6DeqAUlbrHvW/mXDgdQ==}
1230 -
1231 - '@types/ms@0.7.34':
1232 - resolution: {integrity: sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==}
1233 -
1234 - '@types/node@22.7.8':
1235 - resolution: {integrity: sha512-a922jJy31vqR5sk+kAdIENJjHblqcZ4RmERviFsER4WJcEONqxKcjNOlk0q7OUfrF5sddT+vng070cdfMlrPLg==}
1236 -
1237 - '@types/normalize-package-data@2.4.4':
1238 - resolution: {integrity: sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==}
1239 -
1240 - '@types/parse-json@4.0.2':
1241 - resolution: {integrity: sha512-dISoDXWWQwUquiKsyZ4Ng+HX2KsPL7LyHKHQwgGFEA3IaKac4Obd+h2a/a6waisAoepJlBcx9paWqjA8/HVjCw==}
1242 -
1243 - '@types/semver@7.5.8':
1244 - resolution: {integrity: sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ==}
1245 -
1246 - '@types/sinonjs__fake-timers@8.1.1':
1247 - resolution: {integrity: sha512-0kSuKjAS0TrGLJ0M/+8MaFkGsQhZpB6pxOmvS3K8FYI72K//YmdfoW9X2qPsAKh1mkwxGD5zib9s1FIFed6E8g==}
1248 -
1249 - '@types/sizzle@2.3.8':
1250 - resolution: {integrity: sha512-0vWLNK2D5MT9dg0iOo8GlKguPAU02QjmZitPEsXRuJXU/OGIOt9vT9Fc26wtYuavLxtO45v9PGleoL9Z0k1LHg==}
1251 -
1252 - '@types/tough-cookie@4.0.5':
1253 - resolution: {integrity: sha512-/Ad8+nIOV7Rl++6f1BdKxFSMgmoqEoYbHRpPcx3JEfv8VRsQe9Z4mCXeJBzxs7mbHY/XOZZuXlRNfhpVPbs6ZA==}
1254 -
1255 - '@types/unist@3.0.3':
1256 - resolution: {integrity: sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==}
1257 -
1258 - '@types/validator@13.12.2':
1259 - resolution: {integrity: sha512-6SlHBzUW8Jhf3liqrGGXyTJSIFe4nqlJ5A5KaMZ2l/vbM3Wh3KSybots/wfWVzNLK4D1NZluDlSQIbIEPx6oyA==}
1260 -
1261 - '@types/web-bluetooth@0.0.20':
1262 - resolution: {integrity: sha512-g9gZnnXVq7gM7v3tJCWV/qw7w+KeOlSHAhgF9RytFyifW6AF61hdT2ucrYhPq9hLs5JIryeupHV3qGk95dH9ow==}
1263 -
1264 - '@types/yauzl@2.10.3':
1265 - resolution: {integrity: sha512-oJoftv0LSuaDZE3Le4DbKX+KS9G36NzOeSap90UIK0yMA/NhKJhqlSGtNDORNRaIbQfzjXDrQa0ytJ6mNRGz/Q==}
1266 -
1267 - '@typescript-eslint/eslint-plugin@8.11.0':
1268 - resolution: {integrity: sha512-KhGn2LjW1PJT2A/GfDpiyOfS4a8xHQv2myUagTM5+zsormOmBlYsnQ6pobJ8XxJmh6hnHwa2Mbe3fPrDJoDhbA==}
1269 - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
1270 - peerDependencies:
1271 - '@typescript-eslint/parser': ^8.11.0
1272 - eslint: ^9.13.0
1273 - typescript: '*'
1274 - peerDependenciesMeta:
1275 - typescript:
1276 - optional: true
1277 -
1278 - '@typescript-eslint/parser@8.11.0':
1279 - resolution: {integrity: sha512-lmt73NeHdy1Q/2ul295Qy3uninSqi6wQI18XwSpm8w0ZbQXUpjCAWP1Vlv/obudoBiIjJVjlztjQ+d/Md98Yxg==}
1280 - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
1281 - peerDependencies:
1282 - eslint: ^9.13.0
1283 - typescript: '*'
1284 - peerDependenciesMeta:
1285 - typescript:
1286 - optional: true
1287 -
1288 - '@typescript-eslint/scope-manager@6.21.0':
1289 - resolution: {integrity: sha512-OwLUIWZJry80O99zvqXVEioyniJMa+d2GrqpUTqi5/v5D5rOrppJVBPa0yKCblcigC0/aYAzxxqQ1B+DS2RYsg==}
1290 - engines: {node: ^16.0.0 || >=18.0.0}
1291 -
1292 - '@typescript-eslint/scope-manager@8.11.0':
1293 - resolution: {integrity: sha512-Uholz7tWhXmA4r6epo+vaeV7yjdKy5QFCERMjs1kMVsLRKIrSdM6o21W2He9ftp5PP6aWOVpD5zvrvuHZC0bMQ==}
1294 - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
1295 -
1296 - '@typescript-eslint/type-utils@8.11.0':
1297 - resolution: {integrity: sha512-ItiMfJS6pQU0NIKAaybBKkuVzo6IdnAhPFZA/2Mba/uBjuPQPet/8+zh5GtLHwmuFRShZx+8lhIs7/QeDHflOg==}
1298 - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
1299 - peerDependencies:
1300 - typescript: '*'
1301 - peerDependenciesMeta:
1302 - typescript:
1303 - optional: true
1304 -
1305 - '@typescript-eslint/types@6.21.0':
1306 - resolution: {integrity: sha512-1kFmZ1rOm5epu9NZEZm1kckCDGj5UJEf7P1kliH4LKu/RkwpsfqqGmY2OOcUs18lSlQBKLDYBOGxRVtrMN5lpg==}
1307 - engines: {node: ^16.0.0 || >=18.0.0}
1308 -
1309 - '@typescript-eslint/types@8.11.0':
1310 - resolution: {integrity: sha512-tn6sNMHf6EBAYMvmPUaKaVeYvhUsrE6x+bXQTxjQRp360h1giATU0WvgeEys1spbvb5R+VpNOZ+XJmjD8wOUHw==}
1311 - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
1312 -
1313 - '@typescript-eslint/typescript-estree@6.21.0':
1314 - resolution: {integrity: sha512-6npJTkZcO+y2/kr+z0hc4HwNfrrP4kNYh57ek7yCNlrBjWQ1Y0OS7jiZTkgumrvkX5HkEKXFZkkdFNkaW2wmUQ==}
1315 - engines: {node: ^16.0.0 || >=18.0.0}
1316 - peerDependencies:
1317 - typescript: '*'
1318 - peerDependenciesMeta:
1319 - typescript:
1320 - optional: true
1321 -
1322 - '@typescript-eslint/typescript-estree@8.11.0':
1323 - resolution: {integrity: sha512-yHC3s1z1RCHoCz5t06gf7jH24rr3vns08XXhfEqzYpd6Hll3z/3g23JRi0jM8A47UFKNc3u/y5KIMx8Ynbjohg==}
1324 - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
1325 - peerDependencies:
1326 - typescript: '*'
1327 - peerDependenciesMeta:
1328 - typescript:
1329 - optional: true
1330 -
1331 - '@typescript-eslint/utils@6.21.0':
1332 - resolution: {integrity: sha512-NfWVaC8HP9T8cbKQxHcsJBY5YE1O33+jpMwN45qzWWaPDZgLIbo12toGMWnmhvCpd3sIxkpDw3Wv1B3dYrbDQQ==}
1333 - engines: {node: ^16.0.0 || >=18.0.0}
1334 - peerDependencies:
1335 - eslint: ^9.13.0
1336 -
1337 - '@typescript-eslint/utils@8.11.0':
1338 - resolution: {integrity: sha512-CYiX6WZcbXNJV7UNB4PLDIBtSdRmRI/nb0FMyqHPTQD1rMjA0foPLaPUV39C/MxkTd/QKSeX+Gb34PPsDVC35g==}
1339 - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
1340 - peerDependencies:
1341 - eslint: ^9.13.0
1342 -
1343 - '@typescript-eslint/visitor-keys@6.21.0':
1344 - resolution: {integrity: sha512-JJtkDduxLi9bivAB+cYOVMtbkqdPOhZ+ZI5LC47MIRrDV4Yn2o+ZnW10Nkmr28xRpSpdJ6Sm42Hjf2+REYXm0A==}
1345 - engines: {node: ^16.0.0 || >=18.0.0}
1346 -
1347 - '@typescript-eslint/visitor-keys@8.11.0':
1348 - resolution: {integrity: sha512-EaewX6lxSjRJnc+99+dqzTeoDZUfyrA52d2/HRrkI830kgovWsmIiTfmr0NZorzqic7ga+1bS60lRBUgR3n/Bw==}
1349 - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
1350 -
1351 - '@ungap/structured-clone@1.2.0':
1352 - resolution: {integrity: sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==}
1353 -
1354 - '@unocss/config@0.56.5':
1355 - resolution: {integrity: sha512-rscnFIYgUlN/0hXHdhANyjFcDjDutt3JO0ZRITdNLzoglh7GVNiDTURBJwUZejF/vGJ7IkMd3qOdNhPFuRY1Bg==}
1356 - engines: {node: '>=14'}
1357 -
1358 - '@unocss/core@0.56.5':
1359 - resolution: {integrity: sha512-fx5VhOjSHn0HdV2D34pEwFMAHJcJQRTCp1xEE4GzxY1irXzaa+m2aYf5PZjmDxehiOC16IH7TO9FOWANXk1E0w==}
1360 -
1361 - '@unocss/eslint-config@0.56.5':
1362 - resolution: {integrity: sha512-UP7EBTl4ORRO0yqptW7oUWxM0qNh1Nk+z4rufC0C2kI8vKc8yab+sWvlBSC8DeX3kzR7uJxvtUsHGcBcoqZujg==}
1363 - engines: {node: '>=14'}
1364 -
1365 - '@unocss/eslint-plugin@0.56.5':
1366 - resolution: {integrity: sha512-nMVw/kc0sYU5i8UBU1rEahzKhZRPTUjCztpPzo2KUKFKLBPAbTv0gJAOmU/n2kV3YiGk5Tl6jmShxu1MHjk5rA==}
1367 - engines: {node: '>=14'}
1368 -
1369 - '@vitejs/plugin-vue-jsx@4.0.1':
1370 - resolution: {integrity: sha512-7mg9HFGnFHMEwCdB6AY83cVK4A6sCqnrjFYF4WIlebYAQVVJ/sC/CiTruVdrRlhrFoeZ8rlMxY9wYpPTIRhhAg==}
1371 - engines: {node: ^18.0.0 || >=20.0.0}
1372 - peerDependencies:
1373 - vite: ^5.0.0
1374 - vue: ^3.0.0
1375 -
1376 - '@vitejs/plugin-vue@5.1.4':
1377 - resolution: {integrity: sha512-N2XSI2n3sQqp5w7Y/AN/L2XDjBIRGqXko+eDp42sydYSBeJuSm5a1sLf8zakmo8u7tA8NmBgoDLA1HeOESjp9A==}
1378 - engines: {node: ^18.0.0 || >=20.0.0}
1379 - peerDependencies:
1380 - vite: ^5.0.0
1381 - vue: ^3.2.25
1382 -
1383 - '@vitest/eslint-plugin@1.1.7':
1384 - resolution: {integrity: sha512-pTWGW3y6lH2ukCuuffpan6kFxG6nIuoesbhMiQxskyQMRcCN5t9SXsKrNHvEw3p8wcCsgJoRqFZVkOTn6TjclA==}
1385 - peerDependencies:
1386 - '@typescript-eslint/utils': '>= 8.0'
1387 - eslint: ^9.13.0
1388 - typescript: '>= 5.0.0'
1389 - vitest: '*'
1390 - peerDependenciesMeta:
1391 - typescript:
1392 - optional: true
1393 - vitest:
1394 - optional: true
1395 -
1396 - '@vitest/expect@2.1.3':
1397 - resolution: {integrity: sha512-SNBoPubeCJhZ48agjXruCI57DvxcsivVDdWz+SSsmjTT4QN/DfHk3zB/xKsJqMs26bLZ/pNRLnCf0j679i0uWQ==}
1398 -
1399 - '@vitest/mocker@2.1.3':
1400 - resolution: {integrity: sha512-eSpdY/eJDuOvuTA3ASzCjdithHa+GIF1L4PqtEELl6Qa3XafdMLBpBlZCIUCX2J+Q6sNmjmxtosAG62fK4BlqQ==}
1401 - peerDependencies:
1402 - '@vitest/spy': 2.1.3
1403 - msw: ^2.3.5
1404 - vite: ^5.0.0
1405 - peerDependenciesMeta:
1406 - msw:
1407 - optional: true
1408 - vite:
1409 - optional: true
1410 -
1411 - '@vitest/pretty-format@2.1.3':
1412 - resolution: {integrity: sha512-XH1XdtoLZCpqV59KRbPrIhFCOO0hErxrQCMcvnQete3Vibb9UeIOX02uFPfVn3Z9ZXsq78etlfyhnkmIZSzIwQ==}
1413 -
1414 - '@vitest/runner@2.1.3':
1415 - resolution: {integrity: sha512-JGzpWqmFJ4fq5ZKHtVO3Xuy1iF2rHGV4d/pdzgkYHm1+gOzNZtqjvyiaDGJytRyMU54qkxpNzCx+PErzJ1/JqQ==}
1416 -
1417 - '@vitest/snapshot@2.1.3':
1418 - resolution: {integrity: sha512-qWC2mWc7VAXmjAkEKxrScWHWFyCQx/cmiZtuGqMi+WwqQJ2iURsVY4ZfAK6dVo6K2smKRU6l3BPwqEBvhnpQGg==}
1419 -
1420 - '@vitest/spy@2.1.3':
1421 - resolution: {integrity: sha512-Nb2UzbcUswzeSP7JksMDaqsI43Sj5+Kry6ry6jQJT4b5gAK+NS9NED6mDb8FlMRCX8m5guaHCDZmqYMMWRy5nQ==}
1422 -
1423 - '@vitest/utils@2.1.3':
1424 - resolution: {integrity: sha512-xpiVfDSg1RrYT0tX6czgerkpcKFmFOF/gCr30+Mve5V2kewCy4Prn1/NDMSRwaSmT7PRaOF83wu+bEtsY1wrvA==}
1425 -
1426 - '@volar/language-core@2.4.6':
1427 - resolution: {integrity: sha512-FxUfxaB8sCqvY46YjyAAV6c3mMIq/NWQMVvJ+uS4yxr1KzOvyg61gAuOnNvgCvO4TZ7HcLExBEsWcDu4+K4E8A==}
1428 -
1429 - '@volar/source-map@2.4.6':
1430 - resolution: {integrity: sha512-Nsh7UW2ruK+uURIPzjJgF0YRGP5CX9nQHypA2OMqdM2FKy7rh+uv3XgPnWPw30JADbKvZ5HuBzG4gSbVDYVtiw==}
1431 -
1432 - '@volar/typescript@2.4.6':
1433 - resolution: {integrity: sha512-NMIrA7y5OOqddL9VtngPWYmdQU03htNKFtAYidbYfWA0TOhyGVd9tfcP4TsLWQ+RBWDZCbBqsr8xzU0ZOxYTCQ==}
1434 -
1435 - '@vue/babel-helper-vue-transform-on@1.2.5':
1436 - resolution: {integrity: sha512-lOz4t39ZdmU4DJAa2hwPYmKc8EsuGa2U0L9KaZaOJUt0UwQNjNA3AZTq6uEivhOKhhG1Wvy96SvYBoFmCg3uuw==}
1437 -
1438 - '@vue/babel-plugin-jsx@1.2.5':
1439 - resolution: {integrity: sha512-zTrNmOd4939H9KsRIGmmzn3q2zvv1mjxkYZHgqHZgDrXz5B1Q3WyGEjO2f+JrmKghvl1JIRcvo63LgM1kH5zFg==}
1440 - peerDependencies:
1441 - '@babel/core': ^7.0.0-0
1442 - peerDependenciesMeta:
1443 - '@babel/core':
1444 - optional: true
1445 -
1446 - '@vue/babel-plugin-resolve-type@1.2.5':
1447 - resolution: {integrity: sha512-U/ibkQrf5sx0XXRnUZD1mo5F7PkpKyTbfXM3a3rC4YnUz6crHEz9Jg09jzzL6QYlXNto/9CePdOg/c87O4Nlfg==}
1448 - peerDependencies:
1449 - '@babel/core': ^7.0.0-0
1450 -
1451 - '@vue/compiler-core@3.5.12':
1452 - resolution: {integrity: sha512-ISyBTRMmMYagUxhcpyEH0hpXRd/KqDU4ymofPgl2XAkY9ZhQ+h0ovEZJIiPop13UmR/54oA2cgMDjgroRelaEw==}
1453 -
1454 - '@vue/compiler-dom@3.5.12':
1455 - resolution: {integrity: sha512-9G6PbJ03uwxLHKQ3P42cMTi85lDRvGLB2rSGOiQqtXELat6uI4n8cNz9yjfVHRPIu+MsK6TE418Giruvgptckg==}
1456 -
1457 - '@vue/compiler-sfc@3.5.12':
1458 - resolution: {integrity: sha512-2k973OGo2JuAa5+ZlekuQJtitI5CgLMOwgl94BzMCsKZCX/xiqzJYzapl4opFogKHqwJk34vfsaKpfEhd1k5nw==}
1459 -
1460 - '@vue/compiler-ssr@3.5.12':
1461 - resolution: {integrity: sha512-eLwc7v6bfGBSM7wZOGPmRavSWzNFF6+PdRhE+VFJhNCgHiF8AM7ccoqcv5kBXA2eWUfigD7byekvf/JsOfKvPA==}
1462 -
1463 - '@vue/compiler-vue2@2.7.16':
1464 - resolution: {integrity: sha512-qYC3Psj9S/mfu9uVi5WvNZIzq+xnXMhOwbTFKKDD7b1lhpnn71jXSFdTQ+WsIEk0ONCd7VV2IMm7ONl6tbQ86A==}
1465 -
1466 - '@vue/devtools-api@6.6.4':
1467 - resolution: {integrity: sha512-sGhTPMuXqZ1rVOk32RylztWkfXTRhuS7vgAKv0zjqk8gbsHkJ7xfFf+jbySxt7tWObEJwyKaHMikV/WGDiQm8g==}
1468 -
1469 - '@vue/devtools-core@7.5.2':
1470 - resolution: {integrity: sha512-J7vcCb2P7bH3TvikqSe3BquCZsgWC7PL0t9yO88c3LUK3cyhQdJoWcn0Tkgop55UztHWs40+7uQNDmTkcdNZAQ==}
1471 - peerDependencies:
1472 - vue: ^3.0.0
1473 -
1474 - '@vue/devtools-kit@7.5.2':
1475 - resolution: {integrity: sha512-0leUOE2HBfl8sHf9ePKzxqnCFskkU22tWWqd9OfeSlslAKE30/TViYvWcF4vgQmPlJnAAdHU0WfW5dYlCeOiuw==}
1476 -
1477 - '@vue/devtools-shared@7.5.2':
1478 - resolution: {integrity: sha512-+zmcixnD6TAo+zwm30YuwZckhL9iIi4u+gFwbq9C8zpm3SMndTlEYZtNhAHUhOXB+bCkzyunxw80KQ/T0trF4w==}
1479 -
1480 - '@vue/language-core@2.1.6':
1481 - resolution: {integrity: sha512-MW569cSky9R/ooKMh6xa2g1D0AtRKbL56k83dzus/bx//RDJk24RHWkMzbAlXjMdDNyxAaagKPRquBIxkxlCkg==}
1482 - peerDependencies:
1483 - typescript: '*'
1484 - peerDependenciesMeta:
1485 - typescript:
1486 - optional: true
1487 -
1488 - '@vue/reactivity@3.5.12':
1489 - resolution: {integrity: sha512-UzaN3Da7xnJXdz4Okb/BGbAaomRHc3RdoWqTzlvd9+WBR5m3J39J1fGcHes7U3za0ruYn/iYy/a1euhMEHvTAg==}
1490 -
1491 - '@vue/runtime-core@3.5.12':
1492 - resolution: {integrity: sha512-hrMUYV6tpocr3TL3Ad8DqxOdpDe4zuQY4HPY3X/VRh+L2myQO8MFXPAMarIOSGNu0bFAjh1yBkMPXZBqCk62Uw==}
1493 -
1494 - '@vue/runtime-dom@3.5.12':
1495 - resolution: {integrity: sha512-q8VFxR9A2MRfBr6/55Q3umyoN7ya836FzRXajPB6/Vvuv0zOPL+qltd9rIMzG/DbRLAIlREmnLsplEF/kotXKA==}
1496 -
1497 - '@vue/server-renderer@3.5.12':
1498 - resolution: {integrity: sha512-I3QoeDDeEPZm8yR28JtY+rk880Oqmj43hreIBVTicisFTx/Dl7JpG72g/X7YF8hnQD3IFhkky5i2bPonwrTVPg==}
1499 - peerDependencies:
1500 - vue: 3.5.12
1501 -
1502 - '@vue/shared@3.5.12':
1503 - resolution: {integrity: sha512-L2RPSAwUFbgZH20etwrXyVyCBu9OxRSi8T/38QsvnkJyvq2LufW2lDCOzm7t/U9C1mkhJGWYfCuFBCmIuNivrg==}
1504 -
1505 - '@vue/test-utils@2.4.6':
1506 - resolution: {integrity: sha512-FMxEjOpYNYiFe0GkaHsnJPXFHxQ6m4t8vI/ElPGpMWxZKpmRvQ33OIrvRXemy6yha03RxhOlQuy+gZMC3CQSow==}
1507 -
1508 - '@vue/tsconfig@0.5.1':
1509 - resolution: {integrity: sha512-VcZK7MvpjuTPx2w6blwnwZAu5/LgBUtejFOi3pPGQFXQN5Ela03FUtd2Qtg4yWGGissVL0dr6Ro1LfOFh+PCuQ==}
1510 -
1511 - '@vueuse/core@11.1.0':
1512 - resolution: {integrity: sha512-P6dk79QYA6sKQnghrUz/1tHi0n9mrb/iO1WTMk/ElLmTyNqgDeSZ3wcDf6fRBGzRJbeG1dxzEOvLENMjr+E3fg==}
1513 -
1514 - '@vueuse/metadata@11.1.0':
1515 - resolution: {integrity: sha512-l9Q502TBTaPYGanl1G+hPgd3QX5s4CGnpXriVBR5fEZ/goI6fvDaVmIl3Td8oKFurOxTmbXvBPSsgrd6eu6HYg==}
1516 -
1517 - '@vueuse/shared@11.1.0':
1518 - resolution: {integrity: sha512-YUtIpY122q7osj+zsNMFAfMTubGz0sn5QzE5gPzAIiCmtt2ha3uQUY1+JPyL4gRCTsLPX82Y9brNbo/aqlA91w==}
1519 -
1520 - '@yr/monotone-cubic-spline@1.0.3':
1521 - resolution: {integrity: sha512-FQXkOta0XBSUPHndIKON2Y9JeQz5ZeMqLYZVVK93FliNBFm7LNMIZmY6FrMEB9XPcDbE2bekMbZD6kzDkxwYjA==}
1522 -
1523 - abbrev@2.0.0:
1524 - resolution: {integrity: sha512-6/mh1E2u2YgEsCHdY0Yx5oW+61gZU+1vXaoiHHrpKeuRNNgFvS+/jrwHiQhB5apAf5oB7UB7E19ol2R2LKH8hQ==}
1525 - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0}
1526 -
1527 - accepts@1.3.8:
1528 - resolution: {integrity: sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==}
1529 - engines: {node: '>= 0.6'}
1530 -
1531 - acorn-jsx@5.3.2:
1532 - resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==}
1533 - peerDependencies:
1534 - acorn: ^6.0.0 || ^7.0.0 || ^8.0.0
1535 -
1536 - acorn@8.13.0:
1537 - resolution: {integrity: sha512-8zSiw54Oxrdym50NlZ9sUusyO1Z1ZchgRLWRaK6c86XJFClyCgFKetdowBg5bKxyp/u+CDBJG4Mpp0m3HLZl9w==}
1538 - engines: {node: '>=0.4.0'}
1539 - hasBin: true
1540 -
1541 - agent-base@7.1.1:
1542 - resolution: {integrity: sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==}
1543 - engines: {node: '>= 14'}
1544 -
1545 - aggregate-error@3.1.0:
1546 - resolution: {integrity: sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==}
1547 - engines: {node: '>=8'}
1548 -
1549 - ajv@6.12.6:
1550 - resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==}
1551 -
1552 - ansi-colors@4.1.3:
1553 - resolution: {integrity: sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==}
1554 - engines: {node: '>=6'}
1555 -
1556 - ansi-escapes@4.3.2:
1557 - resolution: {integrity: sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==}
1558 - engines: {node: '>=8'}
1559 -
1560 - ansi-regex@5.0.1:
1561 - resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==}
1562 - engines: {node: '>=8'}
1563 -
1564 - ansi-regex@6.1.0:
1565 - resolution: {integrity: sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==}
1566 - engines: {node: '>=12'}
1567 -
1568 - ansi-styles@3.2.1:
1569 - resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==}
1570 - engines: {node: '>=4'}
1571 -
1572 - ansi-styles@4.3.0:
1573 - resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==}
1574 - engines: {node: '>=8'}
1575 -
1576 - ansi-styles@6.2.1:
1577 - resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==}
1578 - engines: {node: '>=12'}
1579 -
1580 - any-promise@1.3.0:
1581 - resolution: {integrity: sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==}
1582 -
1583 - anymatch@3.1.3:
1584 - resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==}
1585 - engines: {node: '>= 8'}
1586 -
1587 - apexcharts@3.54.1:
1588 - resolution: {integrity: sha512-E4et0h/J1U3r3EwS/WlqJCQIbepKbp6wGUmaAwJOMjHUP4Ci0gxanLa7FR3okx6p9coi4st6J853/Cb1NP0vpA==}
1589 -
1590 - arch@2.2.0:
1591 - resolution: {integrity: sha512-Of/R0wqp83cgHozfIYLbBMnej79U/SVGOOyuB3VVFv1NRM/PSFMK12x9KVtiYzJqmnU5WR2qp0Z5rHb7sWGnFQ==}
1592 -
1593 - are-docs-informative@0.0.2:
1594 - resolution: {integrity: sha512-ixiS0nLNNG5jNQzgZJNoUpBKdo9yTYZMGJ+QgT2jmjR7G7+QHRCc4v6LQ3NgE7EBJq+o0ams3waJwkrlBom8Ig==}
1595 - engines: {node: '>=14'}
1596 -
1597 - arg@5.0.2:
1598 - resolution: {integrity: sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==}
1599 -
1600 - argparse@1.0.10:
1601 - resolution: {integrity: sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==}
1602 -
1603 - argparse@2.0.1:
1604 - resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==}
1605 -
1606 - array-differ@3.0.0:
1607 - resolution: {integrity: sha512-THtfYS6KtME/yIAhKjZ2ul7XI96lQGHRputJQHO80LAWQnuGP4iCIN8vdMRboGbIEYBwU33q8Tch1os2+X0kMg==}
1608 - engines: {node: '>=8'}
1609 -
1610 - array-union@2.1.0:
1611 - resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==}
1612 - engines: {node: '>=8'}
1613 -
1614 - arrify@2.0.1:
1615 - resolution: {integrity: sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug==}
1616 - engines: {node: '>=8'}
1617 -
1618 - asn1@0.2.6:
1619 - resolution: {integrity: sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==}
1620 -
1621 - assert-plus@1.0.0:
1622 - resolution: {integrity: sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==}
1623 - engines: {node: '>=0.8'}
1624 -
1625 - assertion-error@2.0.1:
1626 - resolution: {integrity: sha512-Izi8RQcffqCeNVgFigKli1ssklIbpHnCYc6AknXGYoB6grJqyeby7jv12JUQgmTAnIDnbck1uxksT4dzN3PWBA==}
1627 - engines: {node: '>=12'}
1628 -
1629 - astral-regex@2.0.0:
1630 - resolution: {integrity: sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==}
1631 - engines: {node: '>=8'}
1632 -
1633 - async-validator@4.2.5:
1634 - resolution: {integrity: sha512-7HhHjtERjqlNbZtqNqy2rckN/SpOOlmDliet+lP7k+eKZEjPk3DgyeU9lIXLdeLz0uBbbVp+9Qdow9wJWgwwfg==}
1635 -
1636 - async@2.6.4:
1637 - resolution: {integrity: sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==}
1638 -
1639 - async@3.2.6:
1640 - resolution: {integrity: sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA==}
1641 -
1642 - asynckit@0.4.0:
1643 - resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==}
1644 -
1645 - at-least-node@1.0.0:
1646 - resolution: {integrity: sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==}
1647 - engines: {node: '>= 4.0.0'}
1648 -
1649 - autoprefixer@10.4.20:
1650 - resolution: {integrity: sha512-XY25y5xSv/wEoqzDyXXME4AFfkZI0P23z6Fs3YgymDnKJkCGOnkL0iTxCa85UTqaSgfcqyf3UA6+c7wUvx/16g==}
1651 - engines: {node: ^10 || ^12 || >=14}
1652 - hasBin: true
1653 - peerDependencies:
1654 - postcss: ^8.1.0
1655 -
1656 - aws-sign2@0.7.0:
1657 - resolution: {integrity: sha512-08kcGqnYf/YmjoRhfxyu+CLxBjUtHLXLXX/vUfx9l2LYzG3c1m61nrpyFUZI6zeS+Li/wWMMidD9KgrqtGq3mA==}
1658 -
1659 - aws4@1.13.2:
1660 - resolution: {integrity: sha512-lHe62zvbTB5eEABUVi/AwVh0ZKY9rMMDhmm+eeyuuUQbQ3+J+fONVQOZyj+DdrvD4BY33uYniyRJ4UJIaSKAfw==}
1661 -
1662 - axios@1.7.7:
1663 - resolution: {integrity: sha512-S4kL7XrjgBmvdGut0sN3yJxqYzrDOnivkBiN0OFs6hLiUam3UPvswUo0kqGyhqUZGEOytHyumEdXsAkgCOUf3Q==}
1664 -
1665 - balanced-match@1.0.2:
1666 - resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==}
1667 -
1668 - base64-js@1.5.1:
1669 - resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==}
1670 -
1671 - bcrypt-pbkdf@1.0.2:
1672 - resolution: {integrity: sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w==}
1673 -
1674 - binary-extensions@2.3.0:
1675 - resolution: {integrity: sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==}
1676 - engines: {node: '>=8'}
1677 -
1678 - birpc@0.2.19:
1679 - resolution: {integrity: sha512-5WeXXAvTmitV1RqJFppT5QtUiz2p1mRSYU000Jkft5ZUCLJIk4uQriYNO50HknxKwM6jd8utNc66K1qGIwwWBQ==}
1680 -
1681 - blob-util@2.0.2:
1682 - resolution: {integrity: sha512-T7JQa+zsXXEa6/8ZhHcQEW1UFfVM49Ts65uBkFL6fz2QmrElqmbajIDJvuA0tEhRe5eIjpV9ZF+0RfZR9voJFQ==}
1683 -
1684 - bluebird@3.7.2:
1685 - resolution: {integrity: sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==}
1686 -
1687 - boolbase@1.0.0:
1688 - resolution: {integrity: sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==}
1689 -
1690 - brace-expansion@1.1.11:
1691 - resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==}
1692 -
1693 - brace-expansion@2.0.1:
1694 - resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==}
1695 -
1696 - braces@3.0.3:
1697 - resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==}
1698 - engines: {node: '>=8'}
1699 -
1700 - browserslist@4.24.2:
1701 - resolution: {integrity: sha512-ZIc+Q62revdMcqC6aChtW4jz3My3klmCO1fEmINZY/8J3EpBg5/A/D0AKmBveUh6pgoeycoMkVMko84tuYS+Gg==}
1702 - engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7}
1703 - hasBin: true
1704 -
1705 - buffer-crc32@0.2.13:
1706 - resolution: {integrity: sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==}
1707 -
1708 - buffer@5.7.1:
1709 - resolution: {integrity: sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==}
1710 -
1711 - builtin-modules@3.3.0:
1712 - resolution: {integrity: sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==}
1713 - engines: {node: '>=6'}
1714 -
1715 - bundle-name@4.1.0:
1716 - resolution: {integrity: sha512-tjwM5exMg6BGRI+kNmTntNsvdZS1X8BFYS6tnJ2hdH0kVxM6/eVZ2xy+FqStSWvYmtfFMDLIxurorHwDKfDz5Q==}
1717 - engines: {node: '>=18'}
1718 -
1719 - bundle-require@5.0.0:
1720 - resolution: {integrity: sha512-GuziW3fSSmopcx4KRymQEJVbZUfqlCqcq7dvs6TYwKRZiegK/2buMxQTPs6MGlNv50wms1699qYO54R8XfRX4w==}
1721 - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
1722 - peerDependencies:
1723 - esbuild: '>=0.18'
1724 -
1725 - bytes@3.1.2:
1726 - resolution: {integrity: sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==}
1727 - engines: {node: '>= 0.8'}
1728 -
1729 - c12@1.11.2:
1730 - resolution: {integrity: sha512-oBs8a4uvSDO9dm8b7OCFW7+dgtVrwmwnrVXYzLm43ta7ep2jCn/0MhoUFygIWtxhyy6+/MG7/agvpY0U1Iemew==}
1731 - peerDependencies:
1732 - magicast: ^0.3.4
1733 - peerDependenciesMeta:
1734 - magicast:
1735 - optional: true
1736 -
1737 - cac@6.7.14:
1738 - resolution: {integrity: sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==}
1739 - engines: {node: '>=8'}
1740 -
1741 - cache-content-type@1.0.1:
1742 - resolution: {integrity: sha512-IKufZ1o4Ut42YUrZSo8+qnMTrFuKkvyoLXUywKz9GJ5BrhOFGhLdkx9sG4KAnVvbY6kEcSFjLQul+DVmBm2bgA==}
1743 - engines: {node: '>= 6.0.0'}
1744 -
1745 - cachedir@2.4.0:
1746 - resolution: {integrity: sha512-9EtFOZR8g22CL7BWjJ9BUx1+A/djkofnyW3aOXZORNW2kxoUpx2h+uN2cOqwPmFhnpVmxg+KW2OjOSgChTEvsQ==}
1747 - engines: {node: '>=6'}
1748 -
1749 - call-bind@1.0.7:
1750 - resolution: {integrity: sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==}
1751 - engines: {node: '>= 0.4'}
1752 -
1753 - callsite@1.0.0:
1754 - resolution: {integrity: sha512-0vdNRFXn5q+dtOqjfFtmtlI9N2eVZ7LMyEV2iKC5mEEFvSg/69Ml6b/WU2qF8W1nLRa0wiSrDT3Y5jOHZCwKPQ==}
1755 -
1756 - callsites@3.1.0:
1757 - resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==}
1758 - engines: {node: '>=6'}
1759 -
1760 - camelcase-css@2.0.1:
1761 - resolution: {integrity: sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==}
1762 - engines: {node: '>= 6'}
1763 -
1764 - camelcase@6.3.0:
1765 - resolution: {integrity: sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==}
1766 - engines: {node: '>=10'}
1767 -
1768 - caniuse-lite@1.0.30001669:
1769 - resolution: {integrity: sha512-DlWzFDJqstqtIVx1zeSpIMLjunf5SmwOw0N2Ck/QSQdS8PLS4+9HrLaYei4w8BIAL7IB/UEDu889d8vhCTPA0w==}
1770 -
1771 - caseless@0.12.0:
1772 - resolution: {integrity: sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==}
1773 -
1774 - ccount@2.0.1:
1775 - resolution: {integrity: sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==}
1776 -
1777 - chai@5.1.1:
1778 - resolution: {integrity: sha512-pT1ZgP8rPNqUgieVaEY+ryQr6Q4HXNg8Ei9UnLUrjN4IA7dvQC5JB+/kxVcPNDHyBcc/26CXPkbNzq3qwrOEKA==}
1779 - engines: {node: '>=12'}
1780 -
1781 - chalk@2.4.2:
1782 - resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==}
1783 - engines: {node: '>=4'}
1784 -
1785 - chalk@4.1.2:
1786 - resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==}
1787 - engines: {node: '>=10'}
1788 -
1789 - character-entities-html4@2.1.0:
1790 - resolution: {integrity: sha512-1v7fgQRj6hnSwFpq1Eu0ynr/CDEw0rXo2B61qXrLNdHZmPKgb7fqS1a2JwF0rISo9q77jDI8VMEHoApn8qDoZA==}
1791 -
1792 - character-entities-legacy@3.0.0:
1793 - resolution: {integrity: sha512-RpPp0asT/6ufRm//AJVwpViZbGM/MkjQFxJccQRHmISF/22NBtsHqAWmL+/pmkPWoIUJdWyeVleTl1wydHATVQ==}
1794 -
1795 - character-entities@2.0.2:
1796 - resolution: {integrity: sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ==}
1797 -
1798 - check-error@2.1.1:
1799 - resolution: {integrity: sha512-OAlb+T7V4Op9OwdkjmguYRqncdlx5JiofwOAUkmTF+jNdHwzTaTs4sRAGpzLF3oOz5xAyDGrPgeIDFQmDOTiJw==}
1800 - engines: {node: '>= 16'}
1801 -
1802 - check-more-types@2.24.0:
1803 - resolution: {integrity: sha512-Pj779qHxV2tuapviy1bSZNEL1maXr13bPYpsvSDB68HlYcYuhlDrmGd63i0JHMCLKzc7rUSNIrpdJlhVlNwrxA==}
1804 - engines: {node: '>= 0.8.0'}
1805 -
1806 - chokidar@3.6.0:
1807 - resolution: {integrity: sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==}
1808 - engines: {node: '>= 8.10.0'}
1809 -
1810 - chokidar@4.0.1:
1811 - resolution: {integrity: sha512-n8enUVCED/KVRQlab1hr3MVpcVMvxtZjmEa956u+4YijlmQED223XMSYj2tLuKvr4jcCTzNNMpQDUer72MMmzA==}
1812 - engines: {node: '>= 14.16.0'}
1813 -
1814 - chownr@2.0.0:
1815 - resolution: {integrity: sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==}
1816 - engines: {node: '>=10'}
1817 -
1818 - ci-info@3.9.0:
1819 - resolution: {integrity: sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==}
1820 - engines: {node: '>=8'}
1821 -
1822 - ci-info@4.0.0:
1823 - resolution: {integrity: sha512-TdHqgGf9odd8SXNuxtUBVx8Nv+qZOejE6qyqiy5NtbYYQOeFa6zmHkxlPzmaLxWWHsU6nJmB7AETdVPi+2NBUg==}
1824 - engines: {node: '>=8'}
1825 -
1826 - citty@0.1.6:
1827 - resolution: {integrity: sha512-tskPPKEs8D2KPafUypv2gxwJP8h/OaJmC82QQGGDQcHvXX43xF2VDACcJVmZ0EuSxkpO9Kc4MlrA3q0+FG58AQ==}
1828 -
1829 - classnames@2.5.1:
1830 - resolution: {integrity: sha512-saHYOzhIQs6wy2sVxTM6bUDsQO4F50V9RQ22qBpEdCW+I+/Wmke2HOl6lS6dTpdxVhb88/I6+Hs+438c3lfUow==}
1831 -
1832 - clean-regexp@1.0.0:
1833 - resolution: {integrity: sha512-GfisEZEJvzKrmGWkvfhgzcz/BllN1USeqD2V6tg14OAOgaCD2Z/PUEuxnAZ/nPvmaHRG7a8y77p1T/IRQ4D1Hw==}
1834 - engines: {node: '>=4'}
1835 -
1836 - clean-stack@2.2.0:
1837 - resolution: {integrity: sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==}
1838 - engines: {node: '>=6'}
1839 -
1840 - cli-cursor@3.1.0:
1841 - resolution: {integrity: sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==}
1842 - engines: {node: '>=8'}
1843 -
1844 - cli-table3@0.6.5:
1845 - resolution: {integrity: sha512-+W/5efTR7y5HRD7gACw9yQjqMVvEMLBHmboM/kPWam+H+Hmyrgjh6YncVKK122YZkXrLudzTuAukUw9FnMf7IQ==}
1846 - engines: {node: 10.* || >= 12.*}
1847 -
1848 - cli-truncate@2.1.0:
1849 - resolution: {integrity: sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg==}
1850 - engines: {node: '>=8'}
1851 -
1852 - cliui@7.0.4:
1853 - resolution: {integrity: sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==}
1854 -
1855 - cliui@8.0.1:
1856 - resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==}
1857 - engines: {node: '>=12'}
1858 -
1859 - co@4.6.0:
1860 - resolution: {integrity: sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==}
1861 - engines: {iojs: '>= 1.0.0', node: '>= 0.12.0'}
1862 -
1863 - color-convert@1.9.3:
1864 - resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==}
1865 -
1866 - color-convert@2.0.1:
1867 - resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==}
1868 - engines: {node: '>=7.0.0'}
1869 -
1870 - color-name@1.1.3:
1871 - resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==}
1872 -
1873 - color-name@1.1.4:
1874 - resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==}
1875 -
1876 - colord@2.9.3:
1877 - resolution: {integrity: sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw==}
1878 -
1879 - colorette@2.0.20:
1880 - resolution: {integrity: sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==}
1881 -
1882 - combined-stream@1.0.8:
1883 - resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==}
1884 - engines: {node: '>= 0.8'}
1885 -
1886 - comma-separated-tokens@2.0.3:
1887 - resolution: {integrity: sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==}
1888 -
1889 - commander@10.0.1:
1890 - resolution: {integrity: sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==}
1891 - engines: {node: '>=14'}
1892 -
1893 - commander@4.1.1:
1894 - resolution: {integrity: sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==}
1895 - engines: {node: '>= 6'}
1896 -
1897 - commander@6.2.1:
1898 - resolution: {integrity: sha512-U7VdrJFnJgo4xjrHpTzu0yrHPGImdsmD95ZlgYSEajAn2JKzDhDTPG9kBTefmObL2w/ngeZnilk+OV9CG3d7UA==}
1899 - engines: {node: '>= 6'}
1900 -
1901 - commander@7.2.0:
1902 - resolution: {integrity: sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==}
1903 - engines: {node: '>= 10'}
1904 -
1905 - comment-parser@1.4.1:
1906 - resolution: {integrity: sha512-buhp5kePrmda3vhc5B9t7pUQXAb2Tnd0qgpkIhPhkHXxJpiPJ11H0ZEU0oBpJ2QztSbzG/ZxMj/CHsYJqRHmyg==}
1907 - engines: {node: '>= 12.0.0'}
1908 -
1909 - common-tags@1.8.2:
1910 - resolution: {integrity: sha512-gk/Z852D2Wtb//0I+kRFNKKE9dIIVirjoqPoA1wJU+XePVXZfGeBpk45+A1rKO4Q43prqWBNY/MiIeRLbPWUaA==}
1911 - engines: {node: '>=4.0.0'}
1912 -
1913 - compatx@0.1.8:
1914 - resolution: {integrity: sha512-jcbsEAR81Bt5s1qOFymBufmCbXCXbk0Ql+K5ouj6gCyx2yHlu6AgmGIi9HxfKixpUDO5bCFJUHQ5uM6ecbTebw==}
1915 -
1916 - computeds@0.0.1:
1917 - resolution: {integrity: sha512-7CEBgcMjVmitjYo5q8JTJVra6X5mQ20uTThdK+0kR7UEaDrAWEQcRiBtWJzga4eRpP6afNwwLsX2SET2JhVB1Q==}
1918 -
1919 - concat-map@0.0.1:
1920 - resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==}
1921 -
1922 - confbox@0.1.8:
1923 - resolution: {integrity: sha512-RMtmw0iFkeR4YV+fUOSucriAQNb9g8zFR52MWCtl+cCZOFRNL6zeB395vPzFhEjjn4fMxXudmELnl/KF/WrK6w==}
1924 -
1925 - config-chain@1.1.13:
1926 - resolution: {integrity: sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ==}
1927 -
1928 - consola@3.2.3:
1929 - resolution: {integrity: sha512-I5qxpzLv+sJhTVEoLYNcTW+bThDCPsit0vLNKShZx6rLtpilNpmmeTPaeqJb9ZE9dV3DGaeby6Vuhrw38WjeyQ==}
1930 - engines: {node: ^14.18.0 || >=16.10.0}
1931 -
1932 - content-disposition@0.5.4:
1933 - resolution: {integrity: sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==}
1934 - engines: {node: '>= 0.6'}
1935 -
1936 - content-type@1.0.5:
1937 - resolution: {integrity: sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==}
1938 - engines: {node: '>= 0.6'}
1939 -
1940 - convert-source-map@2.0.0:
1941 - resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==}
1942 -
1943 - cookies@0.9.1:
1944 - resolution: {integrity: sha512-TG2hpqe4ELx54QER/S3HQ9SRVnQnGBtKUz5bLQWtYAQ+o6GpgMs6sYUvaiJjVxb+UXwhRhAEP3m7LbsIZ77Hmw==}
1945 - engines: {node: '>= 0.8'}
1946 -
1947 - copy-anything@3.0.5:
1948 - resolution: {integrity: sha512-yCEafptTtb4bk7GLEQoM8KVJpxAfdBJYaXyzQEgQQQgYrZiDp8SJmGKlYza6CYjEDNstAdNdKA3UuoULlEbS6w==}
1949 - engines: {node: '>=12.13'}
1950 -
1951 - core-js-compat@3.38.1:
1952 - resolution: {integrity: sha512-JRH6gfXxGmrzF3tZ57lFx97YARxCXPaMzPo6jELZhv88pBH5VXpQ+y0znKGlFnzuaihqhLbefxSJxWJMPtfDzw==}
1953 -
1954 - core-util-is@1.0.2:
1955 - resolution: {integrity: sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==}
1956 -
1957 - cosmiconfig@7.1.0:
1958 - resolution: {integrity: sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==}
1959 - engines: {node: '>=10'}
1960 -
1961 - cross-spawn@7.0.3:
1962 - resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==}
1963 - engines: {node: '>= 8'}
1964 -
1965 - crypto-js@4.2.0:
1966 - resolution: {integrity: sha512-KALDyEYgpY+Rlob/iriUtjV6d5Eq+Y191A5g4UqLAi8CyGP9N1+FdVbkc1SxKc2r4YAYqG8JzO2KGL+AizD70Q==}
1967 -
1968 - css-render@0.15.14:
1969 - resolution: {integrity: sha512-9nF4PdUle+5ta4W5SyZdLCCmFd37uVimSjg1evcTqKJCyvCEEj12WKzOSBNak6r4im4J4iYXKH1OWpUV5LBYFg==}
1970 -
1971 - css-select@5.1.0:
1972 - resolution: {integrity: sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg==}
1973 -
1974 - css-tree@2.2.1:
1975 - resolution: {integrity: sha512-OA0mILzGc1kCOCSJerOeqDxDQ4HOh+G8NbOJFOTgOCzpw7fCBubk0fEyxp8AgOL/jvLgYA/uV0cMbe43ElF1JA==}
1976 - engines: {node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0, npm: '>=7.0.0'}
1977 -
1978 - css-tree@2.3.1:
1979 - resolution: {integrity: sha512-6Fv1DV/TYw//QF5IzQdqsNDjx/wc8TrMBZsqjL9eW01tWb7R7k/mq+/VXfJCl7SoD5emsJop9cOByJZfs8hYIw==}
1980 - engines: {node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0}
1981 -
1982 - css-what@6.1.0:
1983 - resolution: {integrity: sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==}
1984 - engines: {node: '>= 6'}
1985 -
1986 - cssesc@3.0.0:
1987 - resolution: {integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==}
1988 - engines: {node: '>=4'}
1989 - hasBin: true
1990 -
1991 - csso@5.0.5:
1992 - resolution: {integrity: sha512-0LrrStPOdJj+SPCCrGhzryycLjwcgUSHBtxNA8aIDxf0GLsRh1cKYhB00Gd1lDOS4yGH69+SNn13+TWbVHETFQ==}
1993 - engines: {node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0, npm: '>=7.0.0'}
1994 -
1995 - cssstyle@4.1.0:
1996 - resolution: {integrity: sha512-h66W1URKpBS5YMI/V8PyXvTMFT8SupJ1IzoIV8IeBC/ji8WVmrO8dGlTi+2dh6whmdk6BiKJLD/ZBkhWbcg6nA==}
1997 - engines: {node: '>=18'}
1998 -
1999 - csstype@3.0.11:
2000 - resolution: {integrity: sha512-sa6P2wJ+CAbgyy4KFssIb/JNMLxFvKF1pCYCSXS8ZMuqZnMsrxqI2E5sPyoTpxoPU/gVZMzr2zjOfg8GIZOMsw==}
2001 -
2002 - csstype@3.1.3:
2003 - resolution: {integrity: sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==}
2004 -
2005 - cypress@13.15.0:
2006 - resolution: {integrity: sha512-53aO7PwOfi604qzOkCSzNlWquCynLlKE/rmmpSPcziRH6LNfaDUAklQT6WJIsD8ywxlIy+uVZsnTMCCQVd2kTw==}
2007 - engines: {node: ^16.0.0 || ^18.0.0 || >=20.0.0}
2008 - hasBin: true
2009 -
2010 - dashdash@1.14.1:
2011 - resolution: {integrity: sha512-jRFi8UDGo6j+odZiEpjazZaWqEal3w/basFjQHQEwVtZJGDpxbH1MeYluwCS8Xq5wmLJooDlMgvVarmWfGM44g==}
2012 - engines: {node: '>=0.10'}
2013 -
2014 - data-urls@5.0.0:
2015 - resolution: {integrity: sha512-ZYP5VBHshaDAiVZxjbRVcFJpc+4xGgT0bK3vzy1HLN8jTO975HEbuYzZJcHoQEY5K1a0z8YayJkyVETa08eNTg==}
2016 - engines: {node: '>=18'}
2017 -
2018 - date-fns-tz@3.2.0:
2019 - resolution: {integrity: sha512-sg8HqoTEulcbbbVXeg84u5UnlsQa8GS5QXMqjjYIhS4abEVVKIUwe0/l/UhrZdKaL/W5eWZNlbTeEIiOXTcsBQ==}
2020 - peerDependencies:
2021 - date-fns: ^3.0.0 || ^4.0.0
2022 -
2023 - date-fns@3.6.0:
2024 - resolution: {integrity: sha512-fRHTG8g/Gif+kSh50gaGEdToemgfj74aRX3swtiouboip5JDLAyDE9F11nHMIcvOaXeOC6D7SpNhi7uFyB7Uww==}
2025 -
2026 - dayjs@1.11.13:
2027 - resolution: {integrity: sha512-oaMBel6gjolK862uaPQOVTA7q3TZhuSvuMQAAglQDOWYO9A91IrAOUJEyKVlqJlHE0vq5p5UXxzdPfMH/x6xNg==}
2028 -
2029 - de-indent@1.0.2:
2030 - resolution: {integrity: sha512-e/1zu3xH5MQryN2zdVaF0OrdNLUbvWxzMbi+iNA6Bky7l1RoP8a2fIbRocyHclXt/arDrrR6lL3TqFD9pMQTsg==}
2031 -
2032 - debounce@1.2.1:
2033 - resolution: {integrity: sha512-XRRe6Glud4rd/ZGQfiV1ruXSfbvfJedlV9Y6zOlP+2K04vBYiJEte6stfFkCP03aMnY5tsipamumUjL14fofug==}
2034 -
2035 - debug@3.2.7:
2036 - resolution: {integrity: sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==}
2037 - peerDependencies:
2038 - supports-color: '*'
2039 - peerDependenciesMeta:
2040 - supports-color:
2041 - optional: true
2042 -
2043 - debug@4.3.7:
2044 - resolution: {integrity: sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==}
2045 - engines: {node: '>=6.0'}
2046 - peerDependencies:
2047 - supports-color: '*'
2048 - peerDependenciesMeta:
2049 - supports-color:
2050 - optional: true
2051 -
2052 - decimal.js@10.4.3:
2053 - resolution: {integrity: sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==}
2054 -
2055 - decode-named-character-reference@1.0.2:
2056 - resolution: {integrity: sha512-O8x12RzrUF8xyVcY0KJowWsmaJxQbmy0/EtnNtHRpsOcT7dFk5W598coHqBVpmWo1oQQfsCqfCmkZN5DJrZVdg==}
2057 -
2058 - deep-eql@5.0.2:
2059 - resolution: {integrity: sha512-h5k/5U50IJJFpzfL6nO9jaaumfjO/f2NjK/oYB2Djzm4p9L+3T9qWpZqZ2hAbLPuuYq9wrU08WQyBTL5GbPk5Q==}
2060 - engines: {node: '>=6'}
2061 -
2062 - deep-equal@1.0.1:
2063 - resolution: {integrity: sha512-bHtC0iYvWhyaTzvV3CZgPeZQqCOBGyGsVV7v4eevpdkLHfiSrXUdBG+qAuSz4RI70sszvjQ1QSZ98An1yNwpSw==}
2064 -
2065 - deep-is@0.1.4:
2066 - resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==}
2067 -
2068 - deep-pick-omit@1.2.1:
2069 - resolution: {integrity: sha512-2J6Kc/m3irCeqVG42T+SaUMesaK7oGWaedGnQQK/+O0gYc+2SP5bKh/KKTE7d7SJ+GCA9UUE1GRzh6oDe0EnGw==}
2070 -
2071 - default-browser-id@5.0.0:
2072 - resolution: {integrity: sha512-A6p/pu/6fyBcA1TRz/GqWYPViplrftcW2gZC9q79ngNCKAeR/X3gcEdXQHl4KNXV+3wgIJ1CPkJQ3IHM6lcsyA==}
2073 - engines: {node: '>=18'}
2074 -
2075 - default-browser@5.2.1:
2076 - resolution: {integrity: sha512-WY/3TUME0x3KPYdRRxEJJvXRHV4PyPoUsxtZa78lwItwRQRHhd2U9xOscaT/YTf8uCXIAjeJOFBVEh/7FtD8Xg==}
2077 - engines: {node: '>=18'}
2078 -
2079 - define-data-property@1.1.4:
2080 - resolution: {integrity: sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==}
2081 - engines: {node: '>= 0.4'}
2082 -
2083 - define-lazy-prop@2.0.0:
2084 - resolution: {integrity: sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==}
2085 - engines: {node: '>=8'}
2086 -
2087 - define-lazy-prop@3.0.0:
2088 - resolution: {integrity: sha512-N+MeXYoqr3pOgn8xfyRPREN7gHakLYjhsHhWGT3fWAiL4IkAt0iDw14QiiEm2bE30c5XX5q0FtAA3CK5f9/BUg==}
2089 - engines: {node: '>=12'}
2090 -
2091 - defu@6.1.4:
2092 - resolution: {integrity: sha512-mEQCMmwJu317oSz8CwdIOdwf3xMif1ttiM8LTufzc3g6kR+9Pe236twL8j3IYT1F7GfRgGcW6MWxzZjLIkuHIg==}
2093 -
2094 - delayed-stream@1.0.0:
2095 - resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==}
2096 - engines: {node: '>=0.4.0'}
2097 -
2098 - delegates@1.0.0:
2099 - resolution: {integrity: sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==}
2100 -
2101 - depcheck@1.4.7:
2102 - resolution: {integrity: sha512-1lklS/bV5chOxwNKA/2XUUk/hPORp8zihZsXflr8x0kLwmcZ9Y9BsS6Hs3ssvA+2wUVbG0U2Ciqvm1SokNjPkA==}
2103 - engines: {node: '>=10'}
2104 - hasBin: true
2105 -
2106 - depd@1.1.2:
2107 - resolution: {integrity: sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==}
2108 - engines: {node: '>= 0.6'}
2109 -
2110 - depd@2.0.0:
2111 - resolution: {integrity: sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==}
2112 - engines: {node: '>= 0.8'}
2113 -
2114 - deps-regex@0.2.0:
2115 - resolution: {integrity: sha512-PwuBojGMQAYbWkMXOY9Pd/NWCDNHVH12pnS7WHqZkTSeMESe4hwnKKRp0yR87g37113x4JPbo/oIvXY+s/f56Q==}
2116 -
2117 - dequal@2.0.3:
2118 - resolution: {integrity: sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==}
2119 - engines: {node: '>=6'}
2120 -
2121 - destr@2.0.3:
2122 - resolution: {integrity: sha512-2N3BOUU4gYMpTP24s5rF5iP7BDr7uNTCs4ozw3kf/eKfvWSIu93GEBi5m427YoyJoeOzQ5smuu4nNAPGb8idSQ==}
2123 -
2124 - destroy@1.2.0:
2125 - resolution: {integrity: sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==}
2126 - engines: {node: '>= 0.8', npm: 1.2.8000 || >= 1.4.16}
2127 -
2128 - detect-file@1.0.0:
2129 - resolution: {integrity: sha512-DtCOLG98P007x7wiiOmfI0fi3eIKyWiLTGJ2MDnVi/E04lWGbf+JzrRHMm0rgIIZJGtHpKpbVgLWHrv8xXpc3Q==}
2130 - engines: {node: '>=0.10.0'}
2131 -
2132 - detect-libc@1.0.3:
2133 - resolution: {integrity: sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg==}
2134 - engines: {node: '>=0.10'}
2135 - hasBin: true
2136 -
2137 - detect-touch-device@1.1.6:
2138 - resolution: {integrity: sha512-9DYLJE05EFGI9f8m/GyJtWjw7aMZMBQM2QVy6bb7zX8uC3iorOE3Erdrk3TWCj5FVOlHTfinU0bATTE9GWYebw==}
2139 -
2140 - devlop@1.1.0:
2141 - resolution: {integrity: sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA==}
2142 -
2143 - didyoumean@1.2.2:
2144 - resolution: {integrity: sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==}
2145 -
2146 - dir-glob@3.0.1:
2147 - resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==}
2148 - engines: {node: '>=8'}
2149 -
2150 - dlv@1.1.3:
2151 - resolution: {integrity: sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==}
2152 -
2153 - doctrine@3.0.0:
2154 - resolution: {integrity: sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==}
2155 - engines: {node: '>=6.0.0'}
2156 -
2157 - dom-serializer@2.0.0:
2158 - resolution: {integrity: sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==}
2159 -
2160 - domelementtype@2.3.0:
2161 - resolution: {integrity: sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==}
2162 -
2163 - domhandler@5.0.3:
2164 - resolution: {integrity: sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==}
2165 - engines: {node: '>= 4'}
2166 -
2167 - domutils@3.1.0:
2168 - resolution: {integrity: sha512-H78uMmQtI2AhgDJjWeQmHwJJ2bLPD3GMmO7Zja/ZZh84wkm+4ut+IUnUdRa8uCGX88DiVx1j6FRe1XfxEgjEZA==}
2169 -
2170 - dotenv@16.4.5:
2171 - resolution: {integrity: sha512-ZmdL2rui+eB2YwhsWzjInR8LldtZHGDoQ1ugH85ppHKwpUHL7j7rN0Ti9NCnGiQbhaZ11FpR+7ao1dNsmduNUg==}
2172 - engines: {node: '>=12'}
2173 -
2174 - duplexer@0.1.2:
2175 - resolution: {integrity: sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==}
2176 -
2177 - eastasianwidth@0.2.0:
2178 - resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==}
2179 -
2180 - easy-bem@1.1.1:
2181 - resolution: {integrity: sha512-GJRqdiy2h+EXy6a8E6R+ubmqUM08BK0FWNq41k24fup6045biQ8NXxoXimiwegMQvFFV3t1emADdGNL1TlS61A==}
2182 -
2183 - ecc-jsbn@0.1.2:
2184 - resolution: {integrity: sha512-eh9O+hwRHNbG4BLTjEl3nw044CkGm5X6LoaCf7LPp7UU8Qrt47JYNi6nPX8xjW97TKGKm1ouctg0QSpZe9qrnw==}
2185 -
2186 - echarts@5.5.1:
2187 - resolution: {integrity: sha512-Fce8upazaAXUVUVsjgV6mBnGuqgO+JNDlcgF79Dksy4+wgGpQB2lmYoO4TSweFg/mZITdpGHomw/cNBJZj1icA==}
2188 -
2189 - editorconfig@1.0.4:
2190 - resolution: {integrity: sha512-L9Qe08KWTlqYMVvMcTIvMAdl1cDUubzRNYL+WfA4bLDMHe4nemKkpmYzkznE1FwLKu0EEmy6obgQKzMJrg4x9Q==}
2191 - engines: {node: '>=14'}
2192 - hasBin: true
2193 -
2194 - ee-first@1.1.1:
2195 - resolution: {integrity: sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==}
2196 -
2197 - electron-to-chromium@1.5.42:
2198 - resolution: {integrity: sha512-gIfKavKDw1mhvic9nbzA5lZw8QSHpdMwLwXc0cWidQz9B15pDoDdDH4boIatuFfeoCatb3a/NGL6CYRVFxGZ9g==}
2199 -
2200 - emoji-regex@8.0.0:
2201 - resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==}
2202 -
2203 - emoji-regex@9.2.2:
2204 - resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==}
2205 -
2206 - encodeurl@1.0.2:
2207 - resolution: {integrity: sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==}
2208 - engines: {node: '>= 0.8'}
2209 -
2210 - end-of-stream@1.4.4:
2211 - resolution: {integrity: sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==}
2212 -
2213 - enhanced-resolve@5.17.1:
2214 - resolution: {integrity: sha512-LMHl3dXhTcfv8gM4kEzIUeTQ+7fpdA0l2tUf34BddXPkz2A5xJ5L/Pchd5BL6rdccM9QGvu0sWZzK1Z1t4wwyg==}
2215 - engines: {node: '>=10.13.0'}
2216 -
2217 - enquirer@2.4.1:
2218 - resolution: {integrity: sha512-rRqJg/6gd538VHvR3PSrdRBb/1Vy2YfzHqzvbhGIQpDRKIa4FgV/54b5Q1xYSxOOwKvjXweS26E0Q+nAMwp2pQ==}
2219 - engines: {node: '>=8.6'}
2220 -
2221 - entities@4.5.0:
2222 - resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==}
2223 - engines: {node: '>=0.12'}
2224 -
2225 - error-ex@1.3.2:
2226 - resolution: {integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==}
2227 -
2228 - error-stack-parser-es@0.1.5:
2229 - resolution: {integrity: sha512-xHku1X40RO+fO8yJ8Wh2f2rZWVjqyhb1zgq1yZ8aZRQkv6OOKhKWRUaht3eSCUbAOBaKIgM+ykwFLE+QUxgGeg==}
2230 -
2231 - es-define-property@1.0.0:
2232 - resolution: {integrity: sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==}
2233 - engines: {node: '>= 0.4'}
2234 -
2235 - es-errors@1.3.0:
2236 - resolution: {integrity: sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==}
2237 - engines: {node: '>= 0.4'}
2238 -
2239 - es-module-lexer@1.5.4:
2240 - resolution: {integrity: sha512-MVNK56NiMrOwitFB7cqDwq0CQutbw+0BvLshJSse0MUNU+y1FC3bUS/AQg7oUng+/wKrrki7JfmwtVHkVfPLlw==}
2241 -
2242 - esbuild@0.21.5:
2243 - resolution: {integrity: sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==}
2244 - engines: {node: '>=12'}
2245 - hasBin: true
2246 -
2247 - esbuild@0.23.1:
2248 - resolution: {integrity: sha512-VVNz/9Sa0bs5SELtn3f7qhJCDPCF5oMEl5cO9/SSinpE9hbPVvxbd572HH5AKiP7WD8INO53GgfDDhRjkylHEg==}
2249 - engines: {node: '>=18'}
2250 - hasBin: true
2251 -
2252 - escalade@3.2.0:
2253 - resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==}
2254 - engines: {node: '>=6'}
2255 -
2256 - escape-html@1.0.3:
2257 - resolution: {integrity: sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==}
2258 -
2259 - escape-string-regexp@1.0.5:
2260 - resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==}
2261 - engines: {node: '>=0.8.0'}
2262 -
2263 - escape-string-regexp@4.0.0:
2264 - resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==}
2265 - engines: {node: '>=10'}
2266 -
2267 - escape-string-regexp@5.0.0:
2268 - resolution: {integrity: sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==}
2269 - engines: {node: '>=12'}
2270 -
2271 - eslint-compat-utils@0.5.1:
2272 - resolution: {integrity: sha512-3z3vFexKIEnjHE3zCMRo6fn/e44U7T1khUjg+Hp0ZQMCigh28rALD0nPFBcGZuiLC5rLZa2ubQHDRln09JfU2Q==}
2273 - engines: {node: '>=12'}
2274 - peerDependencies:
2275 - eslint: ^9.13.0
2276 -
2277 - eslint-config-flat-gitignore@0.3.0:
2278 - resolution: {integrity: sha512-0Ndxo4qGhcewjTzw52TK06Mc00aDtHNTdeeW2JfONgDcLkRO/n/BteMRzNVpLQYxdCC/dFEilfM9fjjpGIJ9Og==}
2279 - peerDependencies:
2280 - eslint: ^9.13.0
2281 -
2282 - eslint-config-prettier@9.1.0:
2283 - resolution: {integrity: sha512-NSWl5BFQWEPi1j4TjVNItzYV7dZXZ+wP6I6ZhrBGpChQhZRUaElihE9uRRkcbRnNb76UMKDF3r+WTmNcGPKsqw==}
2284 - hasBin: true
2285 - peerDependencies:
2286 - eslint: ^9.13.0
2287 -
2288 - eslint-define-config@1.24.1:
2289 - resolution: {integrity: sha512-o36vBhPSWyIQlHoMqGhhcGmOOm2A2ccBVIdLTG/AWdm9YmjpsLpf+5ntf9LlHR6dduLREgxtGwvwPwSt7vnXJg==}
2290 - engines: {node: '>=18.0.0', npm: '>=9.0.0', pnpm: '>= 8.6.0'}
2291 -
2292 - eslint-flat-config-utils@0.4.0:
2293 - resolution: {integrity: sha512-kfd5kQZC+BMO0YwTol6zxjKX1zAsk8JfSAopbKjKqmENTJcew+yBejuvccAg37cvOrN0Mh+DVbeyznuNWEjt4A==}
2294 -
2295 - eslint-import-resolver-node@0.3.9:
2296 - resolution: {integrity: sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==}
2297 -
2298 - eslint-merge-processors@0.1.0:
2299 - resolution: {integrity: sha512-IvRXXtEajLeyssvW4wJcZ2etxkR9mUf4zpNwgI+m/Uac9RfXHskuJefkHUcawVzePnd6xp24enp5jfgdHzjRdQ==}
2300 - peerDependencies:
2301 - eslint: ^9.13.0
2302 -
2303 - eslint-plugin-antfu@2.7.0:
2304 - resolution: {integrity: sha512-gZM3jq3ouqaoHmUNszb1Zo2Ux7RckSvkGksjLWz9ipBYGSv1EwwBETN6AdiUXn+RpVHXTbEMPAPlXJazcA6+iA==}
2305 - peerDependencies:
2306 - eslint: ^9.13.0
2307 -
2308 - eslint-plugin-command@0.2.6:
2309 - resolution: {integrity: sha512-T0bHZ1oblW1xUHUVoBKZJR2osSNNGkfZuK4iqboNwuNS/M7tdp3pmURaJtTi/XDzitxaQ02lvOdFH0mUd5QLvQ==}
2310 - peerDependencies:
2311 - eslint: ^9.13.0
2312 -
2313 - eslint-plugin-es-x@7.8.0:
2314 - resolution: {integrity: sha512-7Ds8+wAAoV3T+LAKeu39Y5BzXCrGKrcISfgKEqTS4BDN8SFEDQd0S43jiQ8vIa3wUKD07qitZdfzlenSi8/0qQ==}
2315 - engines: {node: ^14.18.0 || >=16.0.0}
2316 - peerDependencies:
2317 - eslint: ^9.13.0
2318 -
2319 - eslint-plugin-import-x@4.3.1:
2320 - resolution: {integrity: sha512-5TriWkXulDl486XnYYRgsL+VQoS/7mhN/2ci02iLCuL7gdhbiWxnsuL/NTcaKY9fpMgsMFjWZBtIGW7pb+RX0g==}
2321 - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
2322 - peerDependencies:
2323 - eslint: ^9.13.0
2324 -
2325 - eslint-plugin-jsdoc@50.4.3:
2326 - resolution: {integrity: sha512-uWtwFxGRv6B8sU63HZM5dAGDhgsatb+LONwmILZJhdRALLOkCX2HFZhdL/Kw2ls8SQMAVEfK+LmnEfxInRN8HA==}
2327 - engines: {node: '>=18'}
2328 - peerDependencies:
2329 - eslint: ^9.13.0
2330 -
2331 - eslint-plugin-jsonc@2.16.0:
2332 - resolution: {integrity: sha512-Af/ZL5mgfb8FFNleH6KlO4/VdmDuTqmM+SPnWcdoWywTetv7kq+vQe99UyQb9XO3b0OWLVuTH7H0d/PXYCMdSg==}
2333 - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
2334 - peerDependencies:
2335 - eslint: ^9.13.0
2336 -
2337 - eslint-plugin-n@17.11.1:
2338 - resolution: {integrity: sha512-93IUD82N6tIEgjztVI/l3ElHtC2wTa9boJHrD8iN+NyDxjxz/daZUZKfkedjBZNdg6EqDk4irybUsiPwDqXAEA==}
2339 - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
2340 - peerDependencies:
2341 - eslint: ^9.13.0
2342 -
2343 - eslint-plugin-no-only-tests@3.3.0:
2344 - resolution: {integrity: sha512-brcKcxGnISN2CcVhXJ/kEQlNa0MEfGRtwKtWA16SkqXHKitaKIMrfemJKLKX1YqDU5C/5JY3PvZXd5jEW04e0Q==}
2345 - engines: {node: '>=5.0.0'}
2346 -
2347 - eslint-plugin-perfectionist@3.9.1:
2348 - resolution: {integrity: sha512-9WRzf6XaAxF4Oi5t/3TqKP5zUjERhasHmLFHin2Yw6ZAp/EP/EVA2dr3BhQrrHWCm5SzTMZf0FcjDnBkO2xFkA==}
2349 - engines: {node: ^18.0.0 || >=20.0.0}
2350 - peerDependencies:
2351 - astro-eslint-parser: ^1.0.2
2352 - eslint: ^9.13.0
2353 - svelte: '>=3.0.0'
2354 - svelte-eslint-parser: ^0.41.1
2355 - vue-eslint-parser: '>=9.0.0'
2356 - peerDependenciesMeta:
2357 - astro-eslint-parser:
2358 - optional: true
2359 - svelte:
2360 - optional: true
2361 - svelte-eslint-parser:
2362 - optional: true
2363 - vue-eslint-parser:
2364 - optional: true
2365 -
2366 - eslint-plugin-prettier@5.2.1:
2367 - resolution: {integrity: sha512-gH3iR3g4JfF+yYPaJYkN7jEl9QbweL/YfkoRlNnuIEHEz1vHVlCmWOS+eGGiRuzHQXdJFCOTxRgvju9b8VUmrw==}
2368 - engines: {node: ^14.18.0 || >=16.0.0}
2369 - peerDependencies:
2370 - '@types/eslint': '>=8.0.0'
2371 - eslint: ^9.13.0
2372 - eslint-config-prettier: '*'
2373 - prettier: '>=3.0.0'
2374 - peerDependenciesMeta:
2375 - '@types/eslint':
2376 - optional: true
2377 - eslint-config-prettier:
2378 - optional: true
2379 -
2380 - eslint-plugin-regexp@2.6.0:
2381 - resolution: {integrity: sha512-FCL851+kislsTEQEMioAlpDuK5+E5vs0hi1bF8cFlPlHcEjeRhuAzEsGikXRreE+0j4WhW2uO54MqTjXtYOi3A==}
2382 - engines: {node: ^18 || >=20}
2383 - peerDependencies:
2384 - eslint: ^9.13.0
2385 -
2386 - eslint-plugin-toml@0.11.1:
2387 - resolution: {integrity: sha512-Y1WuMSzfZpeMIrmlP1nUh3kT8p96mThIq4NnHrYUhg10IKQgGfBZjAWnrg9fBqguiX4iFps/x/3Hb5TxBisfdw==}
2388 - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
2389 - peerDependencies:
2390 - eslint: ^9.13.0
2391 -
2392 - eslint-plugin-unicorn@56.0.0:
2393 - resolution: {integrity: sha512-aXpddVz/PQMmd69uxO98PA4iidiVNvA0xOtbpUoz1WhBd4RxOQQYqN618v68drY0hmy5uU2jy1bheKEVWBjlPw==}
2394 - engines: {node: '>=18.18'}
2395 - peerDependencies:
2396 - eslint: ^9.13.0
2397 -
2398 - eslint-plugin-unused-imports@4.1.4:
2399 - resolution: {integrity: sha512-YptD6IzQjDardkl0POxnnRBhU1OEePMV0nd6siHaRBbd+lyh6NAhFEobiznKU7kTsSsDeSD62Pe7kAM1b7dAZQ==}
2400 - peerDependencies:
2401 - '@typescript-eslint/eslint-plugin': ^8.11.0
2402 - eslint: ^9.13.0
2403 - peerDependenciesMeta:
2404 - '@typescript-eslint/eslint-plugin':
2405 - optional: true
2406 -
2407 - eslint-plugin-vue@9.29.1:
2408 - resolution: {integrity: sha512-MH/MbVae4HV/tM8gKAVWMPJbYgW04CK7SuzYRrlNERpxbO0P3+Zdsa2oAcFBW6xNu7W6lIkGOsFAMCRTYmrlWQ==}
2409 - engines: {node: ^14.17.0 || >=16.0.0}
2410 - peerDependencies:
2411 - eslint: ^9.13.0
2412 -
2413 - eslint-plugin-yml@1.14.0:
2414 - resolution: {integrity: sha512-ESUpgYPOcAYQO9czugcX5OqRvn/ydDVwGCPXY4YjPqc09rHaUVUA6IE6HLQys4rXk/S+qx3EwTd1wHCwam/OWQ==}
2415 - engines: {node: ^14.17.0 || >=16.0.0}
2416 - peerDependencies:
2417 - eslint: ^9.13.0
2418 -
2419 - eslint-processor-vue-blocks@0.1.2:
2420 - resolution: {integrity: sha512-PfpJ4uKHnqeL/fXUnzYkOax3aIenlwewXRX8jFinA1a2yCFnLgMuiH3xvCgvHHUlV2xJWQHbCTdiJWGwb3NqpQ==}
2421 - peerDependencies:
2422 - '@vue/compiler-sfc': ^3.3.0
2423 - eslint: ^9.13.0
2424 -
2425 - eslint-scope@7.2.2:
2426 - resolution: {integrity: sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==}
2427 - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
2428 -
2429 - eslint-scope@8.1.0:
2430 - resolution: {integrity: sha512-14dSvlhaVhKKsa9Fx1l8A17s7ah7Ef7wCakJ10LYk6+GYmP9yDti2oq2SEwcyndt6knfcZyhyxwY3i9yL78EQw==}
2431 - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
2432 -
2433 - eslint-visitor-keys@3.4.3:
2434 - resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==}
2435 - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
2436 -
2437 - eslint-visitor-keys@4.1.0:
2438 - resolution: {integrity: sha512-Q7lok0mqMUSf5a/AdAZkA5a/gHcO6snwQClVNNvFKCAVlxXucdU8pKydU5ZVZjBx5xr37vGbFFWtLQYreLzrZg==}
2439 - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
2440 -
2441 - eslint@9.13.0:
2442 - resolution: {integrity: sha512-EYZK6SX6zjFHST/HRytOdA/zE72Cq/bfw45LSyuwrdvcclb/gqV8RRQxywOBEWO2+WDpva6UZa4CcDeJKzUCFA==}
2443 - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
2444 - hasBin: true
2445 - peerDependencies:
2446 - jiti: '*'
2447 - peerDependenciesMeta:
2448 - jiti:
2449 - optional: true
2450 -
2451 - espree@10.2.0:
2452 - resolution: {integrity: sha512-upbkBJbckcCNBDBDXEbuhjbP68n+scUd3k/U2EkyM9nw+I/jPiL4cLF/Al06CF96wRltFda16sxDFrxsI1v0/g==}
2453 - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
2454 -
2455 - espree@9.6.1:
2456 - resolution: {integrity: sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==}
2457 - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
2458 -
2459 - esprima@4.0.1:
2460 - resolution: {integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==}
2461 - engines: {node: '>=4'}
2462 - hasBin: true
2463 -
2464 - esquery@1.6.0:
2465 - resolution: {integrity: sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==}
2466 - engines: {node: '>=0.10'}
2467 -
2468 - esrecurse@4.3.0:
2469 - resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==}
2470 - engines: {node: '>=4.0'}
2471 -
2472 - estraverse@5.3.0:
2473 - resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==}
2474 - engines: {node: '>=4.0'}
2475 -
2476 - estree-walker@2.0.2:
2477 - resolution: {integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==}
2478 -
2479 - estree-walker@3.0.3:
2480 - resolution: {integrity: sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==}
2481 -
2482 - esutils@2.0.3:
2483 - resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==}
2484 - engines: {node: '>=0.10.0'}
2485 -
2486 - event-stream@3.3.4:
2487 - resolution: {integrity: sha512-QHpkERcGsR0T7Qm3HNJSyXKEEj8AHNxkY3PK8TS2KJvQ7NiSHe3DDpwVKKtoYprL/AreyzFBeIkBIWChAqn60g==}
2488 -
2489 - eventemitter2@6.4.7:
2490 - resolution: {integrity: sha512-tYUSVOGeQPKt/eC1ABfhHy5Xd96N3oIijJvN3O9+TsC28T5V9yX9oEfEK5faP0EFSNVOG97qtAS68GBrQB2hDg==}
2491 -
2492 - evtd@0.2.4:
2493 - resolution: {integrity: sha512-qaeGN5bx63s/AXgQo8gj6fBkxge+OoLddLniox5qtLAEY5HSnuSlISXVPxnSae1dWblvTh4/HoMIB+mbMsvZzw==}
2494 -
2495 - execa@4.1.0:
2496 - resolution: {integrity: sha512-j5W0//W7f8UxAn8hXVnwG8tLwdiUy4FJLcSupCg6maBYZDpyBvTApK7KyuI4bKj8KOh1r2YH+6ucuYtJv1bTZA==}
2497 - engines: {node: '>=10'}
2498 -
2499 - execa@5.1.1:
2500 - resolution: {integrity: sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==}
2501 - engines: {node: '>=10'}
2502 -
2503 - execa@8.0.1:
2504 - resolution: {integrity: sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==}
2505 - engines: {node: '>=16.17'}
2506 -
2507 - executable@4.1.1:
2508 - resolution: {integrity: sha512-8iA79xD3uAch729dUG8xaaBBFGaEa0wdD2VkYLFHwlqosEj/jT66AzcreRDSgV7ehnNLBW2WR5jIXwGKjVdTLg==}
2509 - engines: {node: '>=4'}
2510 -
2511 - expand-tilde@2.0.2:
2512 - resolution: {integrity: sha512-A5EmesHW6rfnZ9ysHQjPdJRni0SRar0tjtG5MNtm9n5TUvsYU8oozprtRD4AqHxcZWWlVuAmQo2nWKfN9oyjTw==}
2513 - engines: {node: '>=0.10.0'}
2514 -
2515 - extend@3.0.2:
2516 - resolution: {integrity: sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==}
2517 -
2518 - extract-zip@2.0.1:
2519 - resolution: {integrity: sha512-GDhU9ntwuKyGXdZBUgTIe+vXnWj0fppUEtMDL0+idd5Sta8TGpHssn/eusA9mrPr9qNDym6SxAYZjNvCn/9RBg==}
2520 - engines: {node: '>= 10.17.0'}
2521 - hasBin: true
2522 -
2523 - extsprintf@1.3.0:
2524 - resolution: {integrity: sha512-11Ndz7Nv+mvAC1j0ktTa7fAb0vLyGGX+rMHNBYQviQDGU0Hw7lhctJANqbPhu9nV9/izT/IntTgZ7Im/9LJs9g==}
2525 - engines: {'0': node >=0.6.0}
2526 -
2527 - fast-deep-equal@3.1.3:
2528 - resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==}
2529 -
2530 - fast-diff@1.3.0:
2531 - resolution: {integrity: sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw==}
2532 -
2533 - fast-glob@3.3.2:
2534 - resolution: {integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==}
2535 - engines: {node: '>=8.6.0'}
2536 -
2537 - fast-json-stable-stringify@2.1.0:
2538 - resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==}
2539 -
2540 - fast-levenshtein@2.0.6:
2541 - resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==}
2542 -
2543 - fastq@1.17.1:
2544 - resolution: {integrity: sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==}
2545 -
2546 - fd-slicer@1.1.0:
2547 - resolution: {integrity: sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g==}
2548 -
2549 - figures@3.2.0:
2550 - resolution: {integrity: sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==}
2551 - engines: {node: '>=8'}
2552 -
2553 - file-entry-cache@8.0.0:
2554 - resolution: {integrity: sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==}
2555 - engines: {node: '>=16.0.0'}
2556 -
2557 - file-saver@2.0.5:
2558 - resolution: {integrity: sha512-P9bmyZ3h/PRG+Nzga+rbdI4OEpNDzAVyy74uVO9ATgzLK6VtAsYybF/+TOCvrc0MO793d6+42lLyZTw7/ArVzA==}
2559 -
2560 - fill-range@7.1.1:
2561 - resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==}
2562 - engines: {node: '>=8'}
2563 -
2564 - find-up-simple@1.0.0:
2565 - resolution: {integrity: sha512-q7Us7kcjj2VMePAa02hDAF6d+MzsdsAWEwYyOpwUtlerRBkOEPBCRZrAV4XfcSN8fHAgaD0hP7miwoay6DCprw==}
2566 - engines: {node: '>=18'}
2567 -
2568 - find-up@4.1.0:
2569 - resolution: {integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==}
2570 - engines: {node: '>=8'}
2571 -
2572 - find-up@5.0.0:
2573 - resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==}
2574 - engines: {node: '>=10'}
2575 -
2576 - findup-sync@5.0.0:
2577 - resolution: {integrity: sha512-MzwXju70AuyflbgeOhzvQWAvvQdo1XL0A9bVvlXsYcFEBM87WR4OakL4OfZq+QRmr+duJubio+UtNQCPsVESzQ==}
2578 - engines: {node: '>= 10.13.0'}
2579 -
2580 - flat-cache@4.0.1:
2581 - resolution: {integrity: sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==}
2582 - engines: {node: '>=16'}
2583 -
2584 - flatted@3.3.1:
2585 - resolution: {integrity: sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==}
2586 -
2587 - flourite@1.3.0:
2588 - resolution: {integrity: sha512-iuhWXuX07QwHMnJ1Irh4sD1bk/QFMHg8jVgWsjSAqoIqgIyJtRPnUNKyZAPXrw7pQkDvxb5AIz2KPihEoyVcqw==}
2589 - engines: {node: '>=16'}
2590 -
2591 - follow-redirects@1.15.9:
2592 - resolution: {integrity: sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ==}
2593 - engines: {node: '>=4.0'}
2594 - peerDependencies:
2595 - debug: '*'
2596 - peerDependenciesMeta:
2597 - debug:
2598 - optional: true
2599 -
2600 - foreground-child@3.3.0:
2601 - resolution: {integrity: sha512-Ld2g8rrAyMYFXBhEqMz8ZAHBi4J4uS1i/CxGMDnjyFWddMXLVcDp051DZfu+t7+ab7Wv6SMqpWmyFIj5UbfFvg==}
2602 - engines: {node: '>=14'}
2603 -
2604 - forever-agent@0.6.1:
2605 - resolution: {integrity: sha512-j0KLYPhm6zeac4lz3oJ3o65qvgQCcPubiyotZrXqEaG4hNagNYO8qdlUrX5vwqv9ohqeT/Z3j6+yW067yWWdUw==}
2606 -
2607 - form-data@4.0.1:
2608 - resolution: {integrity: sha512-tzN8e4TX8+kkxGPK8D5u0FNmjPUjw3lwC9lSLxxoB/+GtsJG91CO8bSWy73APlgAZzZbXEYZJuxjkHH2w+Ezhw==}
2609 - engines: {node: '>= 6'}
2610 -
2611 - fraction.js@4.3.7:
2612 - resolution: {integrity: sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==}
2613 -
2614 - fresh@0.5.2:
2615 - resolution: {integrity: sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==}
2616 - engines: {node: '>= 0.6'}
2617 -
2618 - from@0.1.7:
2619 - resolution: {integrity: sha512-twe20eF1OxVxp/ML/kq2p1uc6KvFK/+vs8WjEbeKmV2He22MKm7YF2ANIt+EOqhJ5L3K/SuuPhk0hWQDjOM23g==}
2620 -
2621 - fs-extra@11.2.0:
2622 - resolution: {integrity: sha512-PmDi3uwK5nFuXh7XDTlVnS17xJS7vW36is2+w3xcv8SVxiB4NyATf4ctkVY5bkSjX0Y4nbvZCq1/EjtEyr9ktw==}
2623 - engines: {node: '>=14.14'}
2624 -
2625 - fs-extra@9.1.0:
2626 - resolution: {integrity: sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==}
2627 - engines: {node: '>=10'}
2628 -
2629 - fs-minipass@2.1.0:
2630 - resolution: {integrity: sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==}
2631 - engines: {node: '>= 8'}
2632 -
2633 - fs.realpath@1.0.0:
2634 - resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==}
2635 -
2636 - fsevents@2.3.3:
2637 - resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==}
2638 - engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0}
2639 - os: [darwin]
2640 -
2641 - function-bind@1.1.2:
2642 - resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==}
2643 -
2644 - gensync@1.0.0-beta.2:
2645 - resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==}
2646 - engines: {node: '>=6.9.0'}
2647 -
2648 - get-caller-file@2.0.5:
2649 - resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==}
2650 - engines: {node: 6.* || 8.* || >= 10.*}
2651 -
2652 - get-intrinsic@1.2.4:
2653 - resolution: {integrity: sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==}
2654 - engines: {node: '>= 0.4'}
2655 -
2656 - get-stream@5.2.0:
2657 - resolution: {integrity: sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==}
2658 - engines: {node: '>=8'}
2659 -
2660 - get-stream@6.0.1:
2661 - resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==}
2662 - engines: {node: '>=10'}
2663 -
2664 - get-stream@8.0.1:
2665 - resolution: {integrity: sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==}
2666 - engines: {node: '>=16'}
2667 -
2668 - get-tsconfig@4.8.1:
2669 - resolution: {integrity: sha512-k9PN+cFBmaLWtVz29SkUoqU5O0slLuHJXt/2P+tMVFT+phsSGXGkp9t3rQIqdz0e+06EHNGs3oM6ZX1s2zHxRg==}
2670 -
2671 - getos@3.2.1:
2672 - resolution: {integrity: sha512-U56CfOK17OKgTVqozZjUKNdkfEv6jk5WISBJ8SHoagjE6L69zOwl3Z+O8myjY9MEW3i2HPWQBt/LTbCgcC973Q==}
2673 -
2674 - getpass@0.1.7:
2675 - resolution: {integrity: sha512-0fzj9JxOLfJ+XGLhR8ze3unN0KZCgZwiSSDz168VERjK8Wl8kVSdcu2kspd4s4wtAa1y/qrVRiAA0WclVsu0ng==}
2676 -
2677 - giget@1.2.3:
2678 - resolution: {integrity: sha512-8EHPljDvs7qKykr6uw8b+lqLiUc/vUg+KVTI0uND4s63TdsZM2Xus3mflvF0DDG9SiM4RlCkFGL+7aAjRmV7KA==}
2679 - hasBin: true
2680 -
2681 - glob-parent@5.1.2:
2682 - resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==}
2683 - engines: {node: '>= 6'}
2684 -
2685 - glob-parent@6.0.2:
2686 - resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==}
2687 - engines: {node: '>=10.13.0'}
2688 -
2689 - glob@10.4.5:
2690 - resolution: {integrity: sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==}
2691 - hasBin: true
2692 -
2693 - glob@7.2.3:
2694 - resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==}
2695 - deprecated: Glob versions prior to v9 are no longer supported
2696 -
2697 - global-dirs@3.0.1:
2698 - resolution: {integrity: sha512-NBcGGFbBA9s1VzD41QXDG+3++t9Mn5t1FpLdhESY6oKY4gYTFpX4wO3sqGUa0Srjtbfj3szX0RnemmrVRUdULA==}
2699 - engines: {node: '>=10'}
2700 -
2701 - global-modules@1.0.0:
2702 - resolution: {integrity: sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg==}
2703 - engines: {node: '>=0.10.0'}
2704 -
2705 - global-prefix@1.0.2:
2706 - resolution: {integrity: sha512-5lsx1NUDHtSjfg0eHlmYvZKv8/nVqX4ckFbM+FrGcQ+04KWcWFo9P5MxPZYSzUvyzmdTbI7Eix8Q4IbELDqzKg==}
2707 - engines: {node: '>=0.10.0'}
2708 -
2709 - globals@11.12.0:
2710 - resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==}
2711 - engines: {node: '>=4'}
2712 -
2713 - globals@13.24.0:
2714 - resolution: {integrity: sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==}
2715 - engines: {node: '>=8'}
2716 -
2717 - globals@14.0.0:
2718 - resolution: {integrity: sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==}
2719 - engines: {node: '>=18'}
2720 -
2721 - globals@15.11.0:
2722 - resolution: {integrity: sha512-yeyNSjdbyVaWurlwCpcA6XNBrHTMIeDdj0/hnvX/OLJ9ekOXYbLsLinH/MucQyGvNnXhidTdNhTtJaffL2sMfw==}
2723 - engines: {node: '>=18'}
2724 -
2725 - globby@11.1.0:
2726 - resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==}
2727 - engines: {node: '>=10'}
2728 -
2729 - globby@14.0.2:
2730 - resolution: {integrity: sha512-s3Fq41ZVh7vbbe2PN3nrW7yC7U7MFVc5c98/iTl9c2GawNMKx/J648KQRW6WKkuU8GIbbh2IXfIRQjOZnXcTnw==}
2731 - engines: {node: '>=18'}
2732 -
2733 - gopd@1.0.1:
2734 - resolution: {integrity: sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==}
2735 -
2736 - graceful-fs@4.2.11:
2737 - resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==}
2738 -
2739 - graphemer@1.4.0:
2740 - resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==}
2741 -
2742 - has-flag@3.0.0:
2743 - resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==}
2744 - engines: {node: '>=4'}
2745 -
2746 - has-flag@4.0.0:
2747 - resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==}
2748 - engines: {node: '>=8'}
2749 -
2750 - has-property-descriptors@1.0.2:
2751 - resolution: {integrity: sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==}
2752 -
2753 - has-proto@1.0.3:
2754 - resolution: {integrity: sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==}
2755 - engines: {node: '>= 0.4'}
2756 -
2757 - has-symbols@1.0.3:
2758 - resolution: {integrity: sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==}
2759 - engines: {node: '>= 0.4'}
2760 -
2761 - has-tostringtag@1.0.2:
2762 - resolution: {integrity: sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==}
2763 - engines: {node: '>= 0.4'}
2764 -
2765 - hash-sum@2.0.0:
2766 - resolution: {integrity: sha512-WdZTbAByD+pHfl/g9QSsBIIwy8IT+EsPiKDs0KNX+zSHhdDLFKdZu0BQHljvO+0QI/BasbMSUa8wYNCZTvhslg==}
2767 -
2768 - hasown@2.0.2:
2769 - resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==}
2770 - engines: {node: '>= 0.4'}
2771 -
2772 - hast-util-to-html@9.0.3:
2773 - resolution: {integrity: sha512-M17uBDzMJ9RPCqLMO92gNNUDuBSq10a25SDBI08iCCxmorf4Yy6sYHK57n9WAbRAAaU+DuR4W6GN9K4DFZesYg==}
2774 -
2775 - hast-util-whitespace@3.0.0:
2776 - resolution: {integrity: sha512-88JUN06ipLwsnv+dVn+OIYOvAuvBMy/Qoi6O7mQHxdPXpjy+Cd6xRkWwux7DKO+4sYILtLBRIKgsdpS2gQc7qw==}
2777 -
2778 - he@1.2.0:
2779 - resolution: {integrity: sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==}
2780 - hasBin: true
2781 -
2782 - highlight-words-core@1.2.3:
2783 - resolution: {integrity: sha512-m1O9HW3/GNHxzSIXWw1wCNXXsgLlxrP0OI6+ycGUhiUHkikqW3OrwVHz+lxeNBe5yqLESdIcj8PowHQ2zLvUvQ==}
2784 -
2785 - highlight.js@11.10.0:
2786 - resolution: {integrity: sha512-SYVnVFswQER+zu1laSya563s+F8VDGt7o35d4utbamowvUNLLMovFqwCLSocpZTz3MgaSRA1IbqRWZv97dtErQ==}
2787 - engines: {node: '>=12.0.0'}
2788 -
2789 - homedir-polyfill@1.0.3:
2790 - resolution: {integrity: sha512-eSmmWE5bZTK2Nou4g0AI3zZ9rswp7GRKoKXS1BLUkvPviOqs4YTN1djQIqrXy9k5gEtdLPy86JjRwsNM9tnDcA==}
2791 - engines: {node: '>=0.10.0'}
2792 -
2793 - hookable@5.5.3:
2794 - resolution: {integrity: sha512-Yc+BQe8SvoXH1643Qez1zqLRmbA5rCL+sSmk6TVos0LWVfNIB7PGncdlId77WzLGSIB5KaWgTaNTs2lNVEI6VQ==}
2795 -
2796 - hosted-git-info@2.8.9:
2797 - resolution: {integrity: sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==}
2798 -
2799 - html-encoding-sniffer@4.0.0:
2800 - resolution: {integrity: sha512-Y22oTqIU4uuPgEemfz7NDJz6OeKf12Lsu+QC+s3BVpda64lTiMYCyGwg5ki4vFxkMwQdeZDl2adZoqUgdFuTgQ==}
2801 - engines: {node: '>=18'}
2802 -
2803 - html-entities@2.5.2:
2804 - resolution: {integrity: sha512-K//PSRMQk4FZ78Kyau+mZurHn3FH0Vwr+H36eE0rPbeYkRRi9YxceYPhuN60UwWorxyKHhqoAJl2OFKa4BVtaA==}
2805 -
2806 - html-tags@3.3.1:
2807 - resolution: {integrity: sha512-ztqyC3kLto0e9WbNp0aeP+M3kTt+nbaIveGmUxAtZa+8iFgKLUOD4YKM5j+f3QD89bra7UeumolZHKuOXnTmeQ==}
2808 - engines: {node: '>=8'}
2809 -
2810 - html-void-elements@3.0.0:
2811 - resolution: {integrity: sha512-bEqo66MRXsUGxWHV5IP0PUiAWwoEjba4VCzg0LjFJBpchPaTfyfCKTG6bc5F8ucKec3q5y6qOdGyYTSBEvhCrg==}
2812 -
2813 - http-assert@1.5.0:
2814 - resolution: {integrity: sha512-uPpH7OKX4H25hBmU6G1jWNaqJGpTXxey+YOUizJUAgu0AjLUeC8D73hTrhvDS5D+GJN1DN1+hhc/eF/wpxtp0w==}
2815 - engines: {node: '>= 0.8'}
2816 -
2817 - http-errors@1.6.3:
2818 - resolution: {integrity: sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A==}
2819 - engines: {node: '>= 0.6'}
2820 -
2821 - http-errors@1.8.1:
2822 - resolution: {integrity: sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g==}
2823 - engines: {node: '>= 0.6'}
2824 -
2825 - http-errors@2.0.0:
2826 - resolution: {integrity: sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==}
2827 - engines: {node: '>= 0.8'}
2828 -
2829 - http-proxy-agent@7.0.2:
2830 - resolution: {integrity: sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig==}
2831 - engines: {node: '>= 14'}
2832 -
2833 - http-signature@1.4.0:
2834 - resolution: {integrity: sha512-G5akfn7eKbpDN+8nPS/cb57YeA1jLTVxjpCj7tmm3QKPdyDy7T+qSC40e9ptydSWvkwjSXw1VbkpyEm39ukeAg==}
2835 - engines: {node: '>=0.10'}
2836 -
2837 - https-proxy-agent@7.0.5:
2838 - resolution: {integrity: sha512-1e4Wqeblerz+tMKPIq2EMGiiWW1dIjZOksyHWSUm1rmuvw/how9hBHZ38lAGj5ID4Ik6EdkOw7NmWPy6LAwalw==}
2839 - engines: {node: '>= 14'}
2840 -
2841 - human-signals@1.1.1:
2842 - resolution: {integrity: sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==}
2843 - engines: {node: '>=8.12.0'}
2844 -
2845 - human-signals@2.1.0:
2846 - resolution: {integrity: sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==}
2847 - engines: {node: '>=10.17.0'}
2848 -
2849 - human-signals@5.0.0:
2850 - resolution: {integrity: sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==}
2851 - engines: {node: '>=16.17.0'}
2852 -
2853 - iconv-lite@0.6.3:
2854 - resolution: {integrity: sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==}
2855 - engines: {node: '>=0.10.0'}
2856 -
2857 - ieee754@1.2.1:
2858 - resolution: {integrity: sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==}
2859 -
2860 - ignore@5.3.2:
2861 - resolution: {integrity: sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==}
2862 - engines: {node: '>= 4'}
2863 -
2864 - immutable@4.3.7:
2865 - resolution: {integrity: sha512-1hqclzwYwjRDFLjcFxOM5AYkkG0rpFPpr1RLPMEuGczoS7YA8gLhy8SWXYRAA/XwfEHpfo3cw5JGioS32fnMRw==}
2866 -
2867 - import-fresh@3.3.0:
2868 - resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==}
2869 - engines: {node: '>=6'}
2870 -
2871 - import-from-esm@1.3.4:
2872 - resolution: {integrity: sha512-7EyUlPFC0HOlBDpUFGfYstsU7XHxZJKAAMzCT8wZ0hMW7b+hG51LIKTDcsgtz8Pu6YC0HqRVbX+rVUtsGMUKvg==}
2873 - engines: {node: '>=16.20'}
2874 -
2875 - import-meta-resolve@4.1.0:
2876 - resolution: {integrity: sha512-I6fiaX09Xivtk+THaMfAwnA3MVA5Big1WHF1Dfx9hFuvNIWpXnorlkzhcQf6ehrqQiiZECRt1poOAkPmer3ruw==}
2877 -
2878 - importx@0.5.0:
2879 - resolution: {integrity: sha512-qROz3rSOjQYclmEQAajH9RhBuqpAGHM+5CNd9fk+TsF4JKmQsAI1egafW8XZZv8vARCo4nAmmt5d0eI2B8GUsA==}
2880 -
2881 - imurmurhash@0.1.4:
2882 - resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==}
2883 - engines: {node: '>=0.8.19'}
2884 -
2885 - indent-string@4.0.0:
2886 - resolution: {integrity: sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==}
2887 - engines: {node: '>=8'}
2888 -
2889 - inflight@1.0.6:
2890 - resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==}
2891 - deprecated: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.
2892 -
2893 - inherits@2.0.3:
2894 - resolution: {integrity: sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==}
2895 -
2896 - inherits@2.0.4:
2897 - resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==}
2898 -
2899 - ini@1.3.8:
2900 - resolution: {integrity: sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==}
2901 -
2902 - ini@2.0.0:
2903 - resolution: {integrity: sha512-7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA==}
2904 - engines: {node: '>=10'}
2905 -
2906 - is-arrayish@0.2.1:
2907 - resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==}
2908 -
2909 - is-binary-path@2.1.0:
2910 - resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==}
2911 - engines: {node: '>=8'}
2912 -
2913 - is-builtin-module@3.2.1:
2914 - resolution: {integrity: sha512-BSLE3HnV2syZ0FK0iMA/yUGplUeMmNz4AW5fnTunbCIqZi4vG3WjJT9FHMy5D69xmAYBHXQhJdALdpwVxV501A==}
2915 - engines: {node: '>=6'}
2916 -
2917 - is-ci@3.0.1:
2918 - resolution: {integrity: sha512-ZYvCgrefwqoQ6yTyYUbQu64HsITZ3NfKX1lzaEYdkTDcfKzzCI/wthRRYKkdjHKFVgNiXKAKm65Zo1pk2as/QQ==}
2919 - hasBin: true
2920 -
2921 - is-core-module@2.15.1:
2922 - resolution: {integrity: sha512-z0vtXSwucUJtANQWldhbtbt7BnL0vxiFjIdDLAatwhDYty2bad6s+rijD6Ri4YuYJubLzIJLUidCh09e1djEVQ==}
2923 - engines: {node: '>= 0.4'}
2924 -
2925 - is-docker@2.2.1:
2926 - resolution: {integrity: sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==}
2927 - engines: {node: '>=8'}
2928 - hasBin: true
2929 -
2930 - is-docker@3.0.0:
2931 - resolution: {integrity: sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ==}
2932 - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
2933 - hasBin: true
2934 -
2935 - is-extglob@2.1.1:
2936 - resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==}
2937 - engines: {node: '>=0.10.0'}
2938 -
2939 - is-fullwidth-code-point@3.0.0:
2940 - resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==}
2941 - engines: {node: '>=8'}
2942 -
2943 - is-generator-function@1.0.10:
2944 - resolution: {integrity: sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==}
2945 - engines: {node: '>= 0.4'}
2946 -
2947 - is-glob@4.0.3:
2948 - resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==}
2949 - engines: {node: '>=0.10.0'}
2950 -
2951 - is-inside-container@1.0.0:
2952 - resolution: {integrity: sha512-KIYLCCJghfHZxqjYBE7rEy0OBuTd5xCHS7tHVgvCLkx7StIoaxwNW3hCALgEUjFfeRk+MG/Qxmp/vtETEF3tRA==}
2953 - engines: {node: '>=14.16'}
2954 - hasBin: true
2955 -
2956 - is-installed-globally@0.4.0:
2957 - resolution: {integrity: sha512-iwGqO3J21aaSkC7jWnHP/difazwS7SFeIqxv6wEtLU8Y5KlzFTjyqcSIT0d8s4+dDhKytsk9PJZ2BkS5eZwQRQ==}
2958 - engines: {node: '>=10'}
2959 -
2960 - is-number@7.0.0:
2961 - resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==}
2962 - engines: {node: '>=0.12.0'}
2963 -
2964 - is-path-inside@3.0.3:
2965 - resolution: {integrity: sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==}
2966 - engines: {node: '>=8'}
2967 -
2968 - is-potential-custom-element-name@1.0.1:
2969 - resolution: {integrity: sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==}
2970 -
2971 - is-stream@2.0.1:
2972 - resolution: {integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==}
2973 - engines: {node: '>=8'}
2974 -
2975 - is-stream@3.0.0:
2976 - resolution: {integrity: sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==}
2977 - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
2978 -
2979 - is-typedarray@1.0.0:
2980 - resolution: {integrity: sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==}
2981 -
2982 - is-unicode-supported@0.1.0:
2983 - resolution: {integrity: sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==}
2984 - engines: {node: '>=10'}
2985 -
2986 - is-what@4.1.16:
2987 - resolution: {integrity: sha512-ZhMwEosbFJkA0YhFnNDgTM4ZxDRsS6HqTo7qsZM08fehyRYIYa0yHu5R6mgo1n/8MgaPBXiPimPD77baVFYg+A==}
2988 - engines: {node: '>=12.13'}
2989 -
2990 - is-windows@1.0.2:
2991 - resolution: {integrity: sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==}
2992 - engines: {node: '>=0.10.0'}
2993 -
2994 - is-wsl@2.2.0:
2995 - resolution: {integrity: sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==}
2996 - engines: {node: '>=8'}
2997 -
2998 - is-wsl@3.1.0:
2999 - resolution: {integrity: sha512-UcVfVfaK4Sc4m7X3dUSoHoozQGBEFeDC+zVo06t98xe8CzHSZZBekNXH+tu0NalHolcJ/QAGqS46Hef7QXBIMw==}
3000 - engines: {node: '>=16'}
3001 -
3002 - isexe@2.0.0:
3003 - resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==}
3004 -
3005 - isexe@3.1.1:
3006 - resolution: {integrity: sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ==}
3007 - engines: {node: '>=16'}
3008 -
3009 - isstream@0.1.2:
3010 - resolution: {integrity: sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g==}
3011 -
3012 - jackspeak@3.4.3:
3013 - resolution: {integrity: sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==}
3014 -
3015 - jiti@1.21.6:
3016 - resolution: {integrity: sha512-2yTgeWTWzMWkHu6Jp9NKgePDaYHbntiwvYuuJLbbN9vl7DC9DvXKOB2BC3ZZ92D3cvV/aflH0osDfwpHepQ53w==}
3017 - hasBin: true
3018 -
3019 - jiti@2.3.3:
3020 - resolution: {integrity: sha512-EX4oNDwcXSivPrw2qKH2LB5PoFxEvgtv2JgwW0bU858HoLQ+kutSvjLMUqBd0PeJYEinLWhoI9Ol0eYMqj/wNQ==}
3021 - hasBin: true
3022 -
3023 - joi@17.13.3:
3024 - resolution: {integrity: sha512-otDA4ldcIx+ZXsKHWmp0YizCweVRZG96J10b0FevjfuncLO1oX59THoAmHkNubYJ+9gWsYsp5k8v4ib6oDv1fA==}
3025 -
3026 - jose@5.9.6:
3027 - resolution: {integrity: sha512-AMlnetc9+CV9asI19zHmrgS/WYsWUwCn2R7RzlbJWD7F9eWYUTGyBmU9o6PxngtLGOiDGPRu+Uc4fhKzbpteZQ==}
3028 -
3029 - js-beautify@1.15.1:
3030 - resolution: {integrity: sha512-ESjNzSlt/sWE8sciZH8kBF8BPlwXPwhR6pWKAw8bw4Bwj+iZcnKW6ONWUutJ7eObuBZQpiIb8S7OYspWrKt7rA==}
3031 - engines: {node: '>=14'}
3032 - hasBin: true
3033 -
3034 - js-cookie@3.0.5:
3035 - resolution: {integrity: sha512-cEiJEAEoIbWfCZYKWhVwFuvPX1gETRYPw6LlaTKoxD3s2AkXzkCjnp6h0V77ozyqj0jakteJ4YqDJT830+lVGw==}
3036 - engines: {node: '>=14'}
3037 -
3038 - js-md5@0.8.3:
3039 - resolution: {integrity: sha512-qR0HB5uP6wCuRMrWPTrkMaev7MJZwJuuw4fnwAzRgP4J4/F8RwtodOKpGp4XpqsLBFzzgqIO42efFAyz2Et6KQ==}
3040 -
3041 - js-tokens@4.0.0:
3042 - resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==}
3043 -
3044 - js-tokens@9.0.0:
3045 - resolution: {integrity: sha512-WriZw1luRMlmV3LGJaR6QOJjWwgLUTf89OwT2lUOyjX2dJGBwgmIkbcz+7WFZjrZM635JOIR517++e/67CP9dQ==}
3046 -
3047 - js-yaml@3.14.1:
3048 - resolution: {integrity: sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==}
3049 - hasBin: true
3050 -
3051 - js-yaml@4.1.0:
3052 - resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==}
3053 - hasBin: true
3054 -
3055 - jsbn@0.1.1:
3056 - resolution: {integrity: sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg==}
3057 -
3058 - jsdoc-type-pratt-parser@4.1.0:
3059 - resolution: {integrity: sha512-Hicd6JK5Njt2QB6XYFS7ok9e37O8AYk3jTcppG4YVQnYjOemymvTcmc7OWsmq/Qqj5TdRFO5/x/tIPmBeRtGHg==}
3060 - engines: {node: '>=12.0.0'}
3061 -
3062 - jsdom@25.0.1:
3063 - resolution: {integrity: sha512-8i7LzZj7BF8uplX+ZyOlIz86V6TAsSs+np6m1kpW9u0JWi4z/1t+FzcK1aek+ybTnAC4KhBL4uXCNT0wcUIeCw==}
3064 - engines: {node: '>=18'}
3065 - peerDependencies:
3066 - canvas: ^2.11.2
3067 - peerDependenciesMeta:
3068 - canvas:
3069 - optional: true
3070 -
3071 - jsesc@0.5.0:
3072 - resolution: {integrity: sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==}
3073 - hasBin: true
3074 -
3075 - jsesc@3.0.2:
3076 - resolution: {integrity: sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g==}
3077 - engines: {node: '>=6'}
3078 - hasBin: true
3079 -
3080 - json-buffer@3.0.1:
3081 - resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==}
3082 -
3083 - json-parse-even-better-errors@2.3.1:
3084 - resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==}
3085 -
3086 - json-parse-even-better-errors@4.0.0:
3087 - resolution: {integrity: sha512-lR4MXjGNgkJc7tkQ97kb2nuEMnNCyU//XYVH0MKTGcXEiSudQ5MKGKen3C5QubYy0vmq+JGitUg92uuywGEwIA==}
3088 - engines: {node: ^18.17.0 || >=20.5.0}
3089 -
3090 - json-schema-traverse@0.4.1:
3091 - resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==}
3092 -
3093 - json-schema@0.4.0:
3094 - resolution: {integrity: sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==}
3095 -
3096 - json-stable-stringify-without-jsonify@1.0.1:
3097 - resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==}
3098 -
3099 - json-stringify-safe@5.0.1:
3100 - resolution: {integrity: sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==}
3101 -
3102 - json5@2.2.3:
3103 - resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==}
3104 - engines: {node: '>=6'}
3105 - hasBin: true
3106 -
3107 - jsonc-eslint-parser@2.4.0:
3108 - resolution: {integrity: sha512-WYDyuc/uFcGp6YtM2H0uKmUwieOuzeE/5YocFJLnLfclZ4inf3mRn8ZVy1s7Hxji7Jxm6Ss8gqpexD/GlKoGgg==}
3109 - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
3110 -
3111 - jsonfile@6.1.0:
3112 - resolution: {integrity: sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==}
3113 -
3114 - jsprim@2.0.2:
3115 - resolution: {integrity: sha512-gqXddjPqQ6G40VdnI6T6yObEC+pDNvyP95wdQhkWkg7crHH3km5qP1FsOXEkzEQwnz6gz5qGTn1c2Y52wP3OyQ==}
3116 - engines: {'0': node >=0.6.0}
3117 -
3118 - keygrip@1.1.0:
3119 - resolution: {integrity: sha512-iYSchDJ+liQ8iwbSI2QqsQOvqv58eJCEanyJPJi+Khyu8smkcKSFUCbPwzFcL7YVtZ6eONjqRX/38caJ7QjRAQ==}
3120 - engines: {node: '>= 0.6'}
3121 -
3122 - keyv@4.5.4:
3123 - resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==}
3124 -
3125 - klona@2.0.6:
3126 - resolution: {integrity: sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA==}
3127 - engines: {node: '>= 8'}
3128 -
3129 - knitwork@1.1.0:
3130 - resolution: {integrity: sha512-oHnmiBUVHz1V+URE77PNot2lv3QiYU2zQf1JjOVkMt3YDKGbu8NAFr+c4mcNOhdsGrB/VpVbRwPwhiXrPhxQbw==}
3131 -
3132 - koa-compose@4.1.0:
3133 - resolution: {integrity: sha512-8ODW8TrDuMYvXRwra/Kh7/rJo9BtOfPc6qO8eAfC80CnCvSjSl0bkRM24X6/XBBEyj0v1nRUQ1LyOy3dbqOWXw==}
3134 -
3135 - koa-convert@2.0.0:
3136 - resolution: {integrity: sha512-asOvN6bFlSnxewce2e/DK3p4tltyfC4VM7ZwuTuepI7dEQVcvpyFuBcEARu1+Hxg8DIwytce2n7jrZtRlPrARA==}
3137 - engines: {node: '>= 10'}
3138 -
3139 - koa-send@5.0.1:
3140 - resolution: {integrity: sha512-tmcyQ/wXXuxpDxyNXv5yNNkdAMdFRqwtegBXUaowiQzUKqJehttS0x2j0eOZDQAyloAth5w6wwBImnFzkUz3pQ==}
3141 - engines: {node: '>= 8'}
3142 -
3143 - koa-static@5.0.0:
3144 - resolution: {integrity: sha512-UqyYyH5YEXaJrf9S8E23GoJFQZXkBVJ9zYYMPGz919MSX1KuvAcycIuS0ci150HCoPf4XQVhQ84Qf8xRPWxFaQ==}
3145 - engines: {node: '>= 7.6.0'}
3146 -
3147 - koa@2.15.3:
3148 - resolution: {integrity: sha512-j/8tY9j5t+GVMLeioLaxweJiKUayFhlGqNTzf2ZGwL0ZCQijd2RLHK0SLW5Tsko8YyyqCZC2cojIb0/s62qTAg==}
3149 - engines: {node: ^4.8.4 || ^6.10.1 || ^7.10.1 || >= 8.1.4}
3150 -
3151 - kolorist@1.8.0:
3152 - resolution: {integrity: sha512-Y+60/zizpJ3HRH8DCss+q95yr6145JXZo46OTpFvDZWLfRCE4qChOyk1b26nMaNpfHHgxagk9dXT5OP0Tfe+dQ==}
3153 -
3154 - lazy-ass@1.6.0:
3155 - resolution: {integrity: sha512-cc8oEVoctTvsFZ/Oje/kGnHbpWHYBe8IAJe4C0QNc3t8uM/0Y8+erSz/7Y1ALuXTEZTMvxXwO6YbX1ey3ujiZw==}
3156 - engines: {node: '> 0.8'}
3157 -
3158 - levn@0.4.1:
3159 - resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==}
3160 - engines: {node: '>= 0.8.0'}
3161 -
3162 - lilconfig@2.1.0:
3163 - resolution: {integrity: sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==}
3164 - engines: {node: '>=10'}
3165 -
3166 - lilconfig@3.1.2:
3167 - resolution: {integrity: sha512-eop+wDAvpItUys0FWkHIKeC9ybYrTGbU41U5K7+bttZZeohvnY7M9dZ5kB21GNWiFT2q1OoPTvncPCgSOVO5ow==}
3168 - engines: {node: '>=14'}
3169 -
3170 - lines-and-columns@1.2.4:
3171 - resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==}
3172 -
3173 - linkify-it@5.0.0:
3174 - resolution: {integrity: sha512-5aHCbzQRADcdP+ATqnDuhhJ/MRIqDkZX5pyjFHRRysS8vZ5AbqGEoFIb6pYHPZ+L/OC2Lc+xT8uHVVR5CAK/wQ==}
3175 -
3176 - listr2@3.14.0:
3177 - resolution: {integrity: sha512-TyWI8G99GX9GjE54cJ+RrNMcIFBfwMPxc3XTFiAYGN4s10hWROGtOg7+O6u6LE3mNkyld7RSLE6nrKBvTfcs3g==}
3178 - engines: {node: '>=10.0.0'}
3179 - peerDependencies:
3180 - enquirer: '>= 2.3.0 < 3'
3181 - peerDependenciesMeta:
3182 - enquirer:
3183 - optional: true
3184 -
3185 - load-tsconfig@0.2.5:
3186 - resolution: {integrity: sha512-IXO6OCs9yg8tMKzfPZ1YmheJbZCiEsnBdcB03l0OcfK9prKnJb96siuHCr5Fl37/yo9DnKU+TLpxzTUspw9shg==}
3187 - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
3188 -
3189 - local-pkg@0.5.0:
3190 - resolution: {integrity: sha512-ok6z3qlYyCDS4ZEU27HaU6x/xZa9Whf8jD4ptH5UZTQYZVYeb9bnZ3ojVhiJNLiXK1Hfc0GNbLXcmZ5plLDDBg==}
3191 - engines: {node: '>=14'}
3192 -
3193 - locate-path@5.0.0:
3194 - resolution: {integrity: sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==}
3195 - engines: {node: '>=8'}
3196 -
3197 - locate-path@6.0.0:
3198 - resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==}
3199 - engines: {node: '>=10'}
3200 -
3201 - lodash-es@4.17.21:
3202 - resolution: {integrity: sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==}
3203 -
3204 - lodash.merge@4.6.2:
3205 - resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==}
3206 -
3207 - lodash.once@4.1.1:
3208 - resolution: {integrity: sha512-Sb487aTOCr9drQVL8pIxOzVhafOjZN9UU54hiN8PU3uAiSV7lx1yYNpbNmex2PK6dSJoNTSJUUswT651yww3Mg==}
3209 -
3210 - lodash@4.17.21:
3211 - resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==}
3212 -
3213 - log-symbols@4.1.0:
3214 - resolution: {integrity: sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==}
3215 - engines: {node: '>=10'}
3216 -
3217 - log-update@4.0.0:
3218 - resolution: {integrity: sha512-9fkkDevMefjg0mmzWFBW8YkFP91OrizzkW3diF7CpG+S2EYdy4+TVfGwz1zeF8x7hCx1ovSPTOE9Ngib74qqUg==}
3219 - engines: {node: '>=10'}
3220 -
3221 - longest-streak@3.1.0:
3222 - resolution: {integrity: sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g==}
3223 -
3224 - loupe@3.1.2:
3225 - resolution: {integrity: sha512-23I4pFZHmAemUnz8WZXbYRSKYj801VDaNv9ETuMh7IrMc7VuVVSo+Z9iLE3ni30+U48iDWfi30d3twAXBYmnCg==}
3226 -
3227 - lru-cache@10.4.3:
3228 - resolution: {integrity: sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==}
3229 -
3230 - lru-cache@5.1.1:
3231 - resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==}
3232 -
3233 - lz-string@1.5.0:
3234 - resolution: {integrity: sha512-h5bgJWpxJNswbU7qCrV0tIKQCaS3blPDrqKWx+QxzuzL1zGUzij9XCWLrSLsJPu5t+eWA/ycetzYAO5IOMcWAQ==}
3235 - hasBin: true
3236 -
3237 - magic-string@0.30.12:
3238 - resolution: {integrity: sha512-Ea8I3sQMVXr8JhN4z+H/d8zwo+tYDgHE9+5G4Wnrwhs0gaK9fXTKx0Tw5Xwsd/bCPTTZNRAdpyzvoeORe9LYpw==}
3239 -
3240 - map-stream@0.1.0:
3241 - resolution: {integrity: sha512-CkYQrPYZfWnu/DAmVCpTSX/xHpKZ80eKh2lAkyA6AJTef6bW+6JpbQZN5rofum7da+SyN1bi5ctTm+lTfcCW3g==}
3242 -
3243 - markdown-it@14.1.0:
3244 - resolution: {integrity: sha512-a54IwgWPaeBCAAsv13YgmALOF1elABB08FxO9i+r4VFk5Vl4pKokRPeX8u5TCgSsPi6ec1otfLjdOpVcgbpshg==}
3245 - hasBin: true
3246 -
3247 - markdown-table@3.0.3:
3248 - resolution: {integrity: sha512-Z1NL3Tb1M9wH4XESsCDEksWoKTdlUafKc4pt0GRwjUyXaCFZ+dc3g2erqB6zm3szA2IUSi7VnPI+o/9jnxh9hw==}
3249 -
3250 - mdast-util-find-and-replace@3.0.1:
3251 - resolution: {integrity: sha512-SG21kZHGC3XRTSUhtofZkBzZTJNM5ecCi0SK2IMKmSXR8vO3peL+kb1O0z7Zl83jKtutG4k5Wv/W7V3/YHvzPA==}
3252 -
3253 - mdast-util-from-markdown@2.0.1:
3254 - resolution: {integrity: sha512-aJEUyzZ6TzlsX2s5B4Of7lN7EQtAxvtradMMglCQDyaTFgse6CmtmdJ15ElnVRlCg1vpNyVtbem0PWzlNieZsA==}
3255 -
3256 - mdast-util-gfm-autolink-literal@2.0.1:
3257 - resolution: {integrity: sha512-5HVP2MKaP6L+G6YaxPNjuL0BPrq9orG3TsrZ9YXbA3vDw/ACI4MEsnoDpn6ZNm7GnZgtAcONJyPhOP8tNJQavQ==}
3258 -
3259 - mdast-util-gfm-footnote@2.0.0:
3260 - resolution: {integrity: sha512-5jOT2boTSVkMnQ7LTrd6n/18kqwjmuYqo7JUPe+tRCY6O7dAuTFMtTPauYYrMPpox9hlN0uOx/FL8XvEfG9/mQ==}
3261 -
3262 - mdast-util-gfm-strikethrough@2.0.0:
3263 - resolution: {integrity: sha512-mKKb915TF+OC5ptj5bJ7WFRPdYtuHv0yTRxK2tJvi+BDqbkiG7h7u/9SI89nRAYcmap2xHQL9D+QG/6wSrTtXg==}
3264 -
3265 - mdast-util-gfm-table@2.0.0:
3266 - resolution: {integrity: sha512-78UEvebzz/rJIxLvE7ZtDd/vIQ0RHv+3Mh5DR96p7cS7HsBhYIICDBCu8csTNWNO6tBWfqXPWekRuj2FNOGOZg==}
3267 -
3268 - mdast-util-gfm-task-list-item@2.0.0:
3269 - resolution: {integrity: sha512-IrtvNvjxC1o06taBAVJznEnkiHxLFTzgonUdy8hzFVeDun0uTjxxrRGVaNFqkU1wJR3RBPEfsxmU6jDWPofrTQ==}
3270 -
3271 - mdast-util-gfm@3.0.0:
3272 - resolution: {integrity: sha512-dgQEX5Amaq+DuUqf26jJqSK9qgixgd6rYDHAv4aTBuA92cTknZlKpPfa86Z/s8Dj8xsAQpFfBmPUHWJBWqS4Bw==}
3273 -
3274 - mdast-util-phrasing@4.1.0:
3275 - resolution: {integrity: sha512-TqICwyvJJpBwvGAMZjj4J2n0X8QWp21b9l0o7eXyVJ25YNWYbJDVIyD1bZXE6WtV6RmKJVYmQAKWa0zWOABz2w==}
3276 -
3277 - mdast-util-to-hast@13.2.0:
3278 - resolution: {integrity: sha512-QGYKEuUsYT9ykKBCMOEDLsU5JRObWQusAolFMeko/tYPufNkRffBAQjIE+99jbA87xv6FgmjLtwjh9wBWajwAA==}
3279 -
3280 - mdast-util-to-markdown@2.1.0:
3281 - resolution: {integrity: sha512-SR2VnIEdVNCJbP6y7kVTJgPLifdr8WEU440fQec7qHoHOUz/oJ2jmNRqdDQ3rbiStOXb2mCDGTuwsK5OPUgYlQ==}
3282 -
3283 - mdast-util-to-string@4.0.0:
3284 - resolution: {integrity: sha512-0H44vDimn51F0YwvxSJSm0eCDOJTRlmN0R1yBh4HLj9wiV1Dn0QoXGbvFAWj2hSItVTlCmBF1hqKlIyUBVFLPg==}
3285 -
3286 - mdn-data@2.0.28:
3287 - resolution: {integrity: sha512-aylIc7Z9y4yzHYAJNuESG3hfhC+0Ibp/MAMiaOZgNv4pmEdFyfZhhhny4MNiAfWdBQ1RQ2mfDWmM1x8SvGyp8g==}
3288 -
3289 - mdn-data@2.0.30:
3290 - resolution: {integrity: sha512-GaqWWShW4kv/G9IEucWScBx9G1/vsFZZJUO+tD26M8J8z3Kw5RDQjaoZe03YAClgeS/SWPOcb4nkFBTEi5DUEA==}
3291 -
3292 - mdurl@2.0.0:
3293 - resolution: {integrity: sha512-Lf+9+2r+Tdp5wXDXC4PcIBjTDtq4UKjCPMQhKIuzpJNW0b96kVqSwW0bT7FhRSfmAiFYgP+SCRvdrDozfh0U5w==}
3294 -
3295 - media-typer@0.3.0:
3296 - resolution: {integrity: sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==}
3297 - engines: {node: '>= 0.6'}
3298 -
3299 - memorystream@0.3.1:
3300 - resolution: {integrity: sha512-S3UwM3yj5mtUSEfP41UZmt/0SCoVYUcU1rkXv+BQ5Ig8ndL4sPoJNBUJERafdPb5jjHJGuMgytgKvKIf58XNBw==}
3301 - engines: {node: '>= 0.10.0'}
3302 -
3303 - merge-stream@2.0.0:
3304 - resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==}
3305 -
3306 - merge2@1.4.1:
3307 - resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==}
3308 - engines: {node: '>= 8'}
3309 -
3310 - methods@1.1.2:
3311 - resolution: {integrity: sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==}
3312 - engines: {node: '>= 0.6'}
3313 -
3314 - micromark-core-commonmark@2.0.1:
3315 - resolution: {integrity: sha512-CUQyKr1e///ZODyD1U3xit6zXwy1a8q2a1S1HKtIlmgvurrEpaw/Y9y6KSIbF8P59cn/NjzHyO+Q2fAyYLQrAA==}
3316 -
3317 - micromark-extension-gfm-autolink-literal@2.1.0:
3318 - resolution: {integrity: sha512-oOg7knzhicgQ3t4QCjCWgTmfNhvQbDDnJeVu9v81r7NltNCVmhPy1fJRX27pISafdjL+SVc4d3l48Gb6pbRypw==}
3319 -
3320 - micromark-extension-gfm-footnote@2.1.0:
3321 - resolution: {integrity: sha512-/yPhxI1ntnDNsiHtzLKYnE3vf9JZ6cAisqVDauhp4CEHxlb4uoOTxOCJ+9s51bIB8U1N1FJ1RXOKTIlD5B/gqw==}
3322 -
3323 - micromark-extension-gfm-strikethrough@2.1.0:
3324 - resolution: {integrity: sha512-ADVjpOOkjz1hhkZLlBiYA9cR2Anf8F4HqZUO6e5eDcPQd0Txw5fxLzzxnEkSkfnD0wziSGiv7sYhk/ktvbf1uw==}
3325 -
3326 - micromark-extension-gfm-table@2.1.0:
3327 - resolution: {integrity: sha512-Ub2ncQv+fwD70/l4ou27b4YzfNaCJOvyX4HxXU15m7mpYY+rjuWzsLIPZHJL253Z643RpbcP1oeIJlQ/SKW67g==}
3328 -
3329 - micromark-extension-gfm-tagfilter@2.0.0:
3330 - resolution: {integrity: sha512-xHlTOmuCSotIA8TW1mDIM6X2O1SiX5P9IuDtqGonFhEK0qgRI4yeC6vMxEV2dgyr2TiD+2PQ10o+cOhdVAcwfg==}
3331 -
3332 - micromark-extension-gfm-task-list-item@2.1.0:
3333 - resolution: {integrity: sha512-qIBZhqxqI6fjLDYFTBIa4eivDMnP+OZqsNwmQ3xNLE4Cxwc+zfQEfbs6tzAo2Hjq+bh6q5F+Z8/cksrLFYWQQw==}
3334 -
3335 - micromark-extension-gfm@3.0.0:
3336 - resolution: {integrity: sha512-vsKArQsicm7t0z2GugkCKtZehqUm31oeGBV/KVSorWSy8ZlNAv7ytjFhvaryUiCUJYqs+NoE6AFhpQvBTM6Q4w==}
3337 -
3338 - micromark-factory-destination@2.0.0:
3339 - resolution: {integrity: sha512-j9DGrQLm/Uhl2tCzcbLhy5kXsgkHUrjJHg4fFAeoMRwJmJerT9aw4FEhIbZStWN8A3qMwOp1uzHr4UL8AInxtA==}
3340 -
3341 - micromark-factory-label@2.0.0:
3342 - resolution: {integrity: sha512-RR3i96ohZGde//4WSe/dJsxOX6vxIg9TimLAS3i4EhBAFx8Sm5SmqVfR8E87DPSR31nEAjZfbt91OMZWcNgdZw==}
3343 -
3344 - micromark-factory-space@2.0.0:
3345 - resolution: {integrity: sha512-TKr+LIDX2pkBJXFLzpyPyljzYK3MtmllMUMODTQJIUfDGncESaqB90db9IAUcz4AZAJFdd8U9zOp9ty1458rxg==}
3346 -
3347 - micromark-factory-title@2.0.0:
3348 - resolution: {integrity: sha512-jY8CSxmpWLOxS+t8W+FG3Xigc0RDQA9bKMY/EwILvsesiRniiVMejYTE4wumNc2f4UbAa4WsHqe3J1QS1sli+A==}
3349 -
3350 - micromark-factory-whitespace@2.0.0:
3351 - resolution: {integrity: sha512-28kbwaBjc5yAI1XadbdPYHX/eDnqaUFVikLwrO7FDnKG7lpgxnvk/XGRhX/PN0mOZ+dBSZ+LgunHS+6tYQAzhA==}
3352 -
3353 - micromark-util-character@2.1.0:
3354 - resolution: {integrity: sha512-KvOVV+X1yLBfs9dCBSopq/+G1PcgT3lAK07mC4BzXi5E7ahzMAF8oIupDDJ6mievI6F+lAATkbQQlQixJfT3aQ==}
3355 -
3356 - micromark-util-chunked@2.0.0:
3357 - resolution: {integrity: sha512-anK8SWmNphkXdaKgz5hJvGa7l00qmcaUQoMYsBwDlSKFKjc6gjGXPDw3FNL3Nbwq5L8gE+RCbGqTw49FK5Qyvg==}
3358 -
3359 - micromark-util-classify-character@2.0.0:
3360 - resolution: {integrity: sha512-S0ze2R9GH+fu41FA7pbSqNWObo/kzwf8rN/+IGlW/4tC6oACOs8B++bh+i9bVyNnwCcuksbFwsBme5OCKXCwIw==}
3361 -
3362 - micromark-util-combine-extensions@2.0.0:
3363 - resolution: {integrity: sha512-vZZio48k7ON0fVS3CUgFatWHoKbbLTK/rT7pzpJ4Bjp5JjkZeasRfrS9wsBdDJK2cJLHMckXZdzPSSr1B8a4oQ==}
3364 -
3365 - micromark-util-decode-numeric-character-reference@2.0.1:
3366 - resolution: {integrity: sha512-bmkNc7z8Wn6kgjZmVHOX3SowGmVdhYS7yBpMnuMnPzDq/6xwVA604DuOXMZTO1lvq01g+Adfa0pE2UKGlxL1XQ==}
3367 -
3368 - micromark-util-decode-string@2.0.0:
3369 - resolution: {integrity: sha512-r4Sc6leeUTn3P6gk20aFMj2ntPwn6qpDZqWvYmAG6NgvFTIlj4WtrAudLi65qYoaGdXYViXYw2pkmn7QnIFasA==}
3370 -
3371 - micromark-util-encode@2.0.0:
3372 - resolution: {integrity: sha512-pS+ROfCXAGLWCOc8egcBvT0kf27GoWMqtdarNfDcjb6YLuV5cM3ioG45Ys2qOVqeqSbjaKg72vU+Wby3eddPsA==}
3373 -
3374 - micromark-util-html-tag-name@2.0.0:
3375 - resolution: {integrity: sha512-xNn4Pqkj2puRhKdKTm8t1YHC/BAjx6CEwRFXntTaRf/x16aqka6ouVoutm+QdkISTlT7e2zU7U4ZdlDLJd2Mcw==}
3376 -
3377 - micromark-util-normalize-identifier@2.0.0:
3378 - resolution: {integrity: sha512-2xhYT0sfo85FMrUPtHcPo2rrp1lwbDEEzpx7jiH2xXJLqBuy4H0GgXk5ToU8IEwoROtXuL8ND0ttVa4rNqYK3w==}
3379 -
3380 - micromark-util-resolve-all@2.0.0:
3381 - resolution: {integrity: sha512-6KU6qO7DZ7GJkaCgwBNtplXCvGkJToU86ybBAUdavvgsCiG8lSSvYxr9MhwmQ+udpzywHsl4RpGJsYWG1pDOcA==}
3382 -
3383 - micromark-util-sanitize-uri@2.0.0:
3384 - resolution: {integrity: sha512-WhYv5UEcZrbAtlsnPuChHUAsu/iBPOVaEVsntLBIdpibO0ddy8OzavZz3iL2xVvBZOpolujSliP65Kq0/7KIYw==}
3385 -
3386 - micromark-util-subtokenize@2.0.1:
3387 - resolution: {integrity: sha512-jZNtiFl/1aY73yS3UGQkutD0UbhTt68qnRpw2Pifmz5wV9h8gOVsN70v+Lq/f1rKaU/W8pxRe8y8Q9FX1AOe1Q==}
3388 -
3389 - micromark-util-symbol@2.0.0:
3390 - resolution: {integrity: sha512-8JZt9ElZ5kyTnO94muPxIGS8oyElRJaiJO8EzV6ZSyGQ1Is8xwl4Q45qU5UOg+bGH4AikWziz0iN4sFLWs8PGw==}
3391 -
3392 - micromark-util-types@2.0.0:
3393 - resolution: {integrity: sha512-oNh6S2WMHWRZrmutsRmDDfkzKtxF+bc2VxLC9dvtrDIRFln627VsFP6fLMgTryGDljgLPjkrzQSDcPrjPyDJ5w==}
3394 -
3395 - micromark@4.0.0:
3396 - resolution: {integrity: sha512-o/sd0nMof8kYff+TqcDx3VSrgBTcZpSvYcAHIfHhv5VAuNmisCxjhx6YmxS8PFEpb9z5WKWKPdzf0jM23ro3RQ==}
3397 -
3398 - micromatch@4.0.8:
3399 - resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==}
3400 - engines: {node: '>=8.6'}
3401 -
3402 - mime-db@1.52.0:
3403 - resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==}
3404 - engines: {node: '>= 0.6'}
3405 -
3406 - mime-types@2.1.35:
3407 - resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==}
3408 - engines: {node: '>= 0.6'}
3409 -
3410 - mimic-fn@2.1.0:
3411 - resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==}
3412 - engines: {node: '>=6'}
3413 -
3414 - mimic-fn@4.0.0:
3415 - resolution: {integrity: sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==}
3416 - engines: {node: '>=12'}
3417 -
3418 - min-indent@1.0.1:
3419 - resolution: {integrity: sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==}
3420 - engines: {node: '>=4'}
3421 -
3422 - minimatch@10.0.1:
3423 - resolution: {integrity: sha512-ethXTt3SGGR+95gudmqJ1eNhRO7eGEGIgYA9vnPatK4/etz2MEVDno5GMCibdMTuBMyElzIlgxMna3K94XDIDQ==}
3424 - engines: {node: 20 || >=22}
3425 -
3426 - minimatch@3.1.2:
3427 - resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==}
3428 -
3429 - minimatch@7.4.6:
3430 - resolution: {integrity: sha512-sBz8G/YjVniEz6lKPNpKxXwazJe4c19fEfV2GDMX6AjFz+MX9uDWIZW8XreVhkFW3fkIdTv/gxWr/Kks5FFAVw==}
3431 - engines: {node: '>=10'}
3432 -
3433 - minimatch@9.0.1:
3434 - resolution: {integrity: sha512-0jWhJpD/MdhPXwPuiRkCbfYfSKp2qnn2eOc279qI7f+osl/l+prKSrvhg157zSYvx/1nmgn2NqdT6k2Z7zSH9w==}
3435 - engines: {node: '>=16 || 14 >=14.17'}
3436 -
3437 - minimatch@9.0.3:
3438 - resolution: {integrity: sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==}
3439 - engines: {node: '>=16 || 14 >=14.17'}
3440 -
3441 - minimatch@9.0.5:
3442 - resolution: {integrity: sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==}
3443 - engines: {node: '>=16 || 14 >=14.17'}
3444 -
3445 - minimist@1.2.8:
3446 - resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==}
3447 -
3448 - minipass@3.3.6:
3449 - resolution: {integrity: sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==}
3450 - engines: {node: '>=8'}
3451 -
3452 - minipass@5.0.0:
3453 - resolution: {integrity: sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==}
3454 - engines: {node: '>=8'}
3455 -
3456 - minipass@7.1.2:
3457 - resolution: {integrity: sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==}
3458 - engines: {node: '>=16 || 14 >=14.17'}
3459 -
3460 - minizlib@2.1.2:
3461 - resolution: {integrity: sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==}
3462 - engines: {node: '>= 8'}
3463 -
3464 - mitt@3.0.1:
3465 - resolution: {integrity: sha512-vKivATfr97l2/QBCYAkXYDbrIWPM2IIKEl7YPhjCvKlG3kE2gm+uBo6nEXK3M5/Ffh/FLpKExzOQ3JJoJGFKBw==}
3466 -
3467 - mkdirp@0.5.6:
3468 - resolution: {integrity: sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==}
3469 - hasBin: true
3470 -
3471 - mkdirp@1.0.4:
3472 - resolution: {integrity: sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==}
3473 - engines: {node: '>=10'}
3474 - hasBin: true
3475 -
3476 - mlly@1.7.2:
3477 - resolution: {integrity: sha512-tN3dvVHYVz4DhSXinXIk7u9syPYaJvio118uomkovAtWBT+RdbP6Lfh/5Lvo519YMmwBafwlh20IPTXIStscpA==}
3478 -
3479 - mri@1.2.0:
3480 - resolution: {integrity: sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==}
3481 - engines: {node: '>=4'}
3482 -
3483 - mrmime@2.0.0:
3484 - resolution: {integrity: sha512-eu38+hdgojoyq63s+yTpN4XMBdt5l8HhMhc4VKLO9KM5caLIBvUm4thi7fFaxyTmCKeNnXZ5pAlBwCUnhA09uw==}
3485 - engines: {node: '>=10'}
3486 -
3487 - ms@2.1.3:
3488 - resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==}
3489 -
3490 - muggle-string@0.4.1:
3491 - resolution: {integrity: sha512-VNTrAak/KhO2i8dqqnqnAHOa3cYBwXEZe9h+D5h/1ZqFSTEFHdM65lR7RoIqq3tBBYavsOXV84NoHXZ0AkPyqQ==}
3492 -
3493 - multimatch@5.0.0:
3494 - resolution: {integrity: sha512-ypMKuglUrZUD99Tk2bUQ+xNQj43lPEfAeX2o9cTteAmShXy2VHDJpuwu1o0xqoKCt9jLVAvwyFKdLTPXKAfJyA==}
3495 - engines: {node: '>=10'}
3496 -
3497 - mz@2.7.0:
3498 - resolution: {integrity: sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==}
3499 -
3500 - naive-ui@2.40.1:
3501 - resolution: {integrity: sha512-3NkL+vLRQZKQxCHXa+7xiD6oM74OrQELaehDkGYRYpr6kjT+JJB+Z7h+5LC70gn8VkbgCAETv0+uRWF+6MLlgQ==}
3502 - peerDependencies:
3503 - vue: ^3.0.0
3504 -
3505 - nanoid@3.3.7:
3506 - resolution: {integrity: sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==}
3507 - engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1}
3508 - hasBin: true
3509 -
3510 - nanoid@5.0.7:
3511 - resolution: {integrity: sha512-oLxFY2gd2IqnjcYyOXD8XGCftpGtZP2AbHbOkthDkvRywH5ayNtPVy9YlOPcHckXzbLTCHpkb7FB+yuxKV13pQ==}
3512 - engines: {node: ^18 || >=20}
3513 - hasBin: true
3514 -
3515 - natural-compare-lite@1.4.0:
3516 - resolution: {integrity: sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==}
3517 -
3518 - natural-compare@1.4.0:
3519 - resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==}
3520 -
3521 - negotiator@0.6.3:
3522 - resolution: {integrity: sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==}
3523 - engines: {node: '>= 0.6'}
3524 -
3525 - node-addon-api@7.1.1:
3526 - resolution: {integrity: sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==}
3527 -
3528 - node-fetch-native@1.6.4:
3529 - resolution: {integrity: sha512-IhOigYzAKHd244OC0JIMIUrjzctirCmPkaIfhDeGcEETWof5zKYUW7e7MYvChGWh/4CJeXEgsRyGzuF334rOOQ==}
3530 -
3531 - node-releases@2.0.18:
3532 - resolution: {integrity: sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==}
3533 -
3534 - nopt@7.2.1:
3535 - resolution: {integrity: sha512-taM24ViiimT/XntxbPyJQzCG+p4EKOpgD3mxFwW38mGjVUrfERQOeY4EDHjdnptttfHuHQXFx+lTP08Q+mLa/w==}
3536 - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0}
3537 - hasBin: true
3538 -
3539 - normalize-package-data@2.5.0:
3540 - resolution: {integrity: sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==}
3541 -
3542 - normalize-path@3.0.0:
3543 - resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==}
3544 - engines: {node: '>=0.10.0'}
3545 -
3546 - normalize-range@0.1.2:
3547 - resolution: {integrity: sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==}
3548 - engines: {node: '>=0.10.0'}
3549 -
3550 - npm-normalize-package-bin@4.0.0:
3551 - resolution: {integrity: sha512-TZKxPvItzai9kN9H/TkmCtx/ZN/hvr3vUycjlfmH0ootY9yFBzNOpiXAdIn1Iteqsvk4lQn6B5PTrt+n6h8k/w==}
3552 - engines: {node: ^18.17.0 || >=20.5.0}
3553 -
3554 - npm-run-all2@7.0.0:
3555 - resolution: {integrity: sha512-hXQT0BFU0G37H516ZJgISho4FslbdqMj7U8A7xoj81mhYSyxnwfF6dsraWAA1xL7ak/8yUVvAN4Lx4PpTc5Ohg==}
3556 - engines: {node: ^20.5.0 || >=22.0.0, npm: '>= 9'}
3557 - hasBin: true
3558 -
3559 - npm-run-path@4.0.1:
3560 - resolution: {integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==}
3561 - engines: {node: '>=8'}
3562 -
3563 - npm-run-path@5.3.0:
3564 - resolution: {integrity: sha512-ppwTtiJZq0O/ai0z7yfudtBpWIoxM8yE6nHi1X47eFR2EWORqfbu6CnPlNsjeN683eT0qG6H/Pyf9fCcvjnnnQ==}
3565 - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
3566 -
3567 - nth-check@2.1.1:
3568 - resolution: {integrity: sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==}
3569 -
3570 - nwsapi@2.2.13:
3571 - resolution: {integrity: sha512-cTGB9ptp9dY9A5VbMSe7fQBcl/tt22Vcqdq8+eN93rblOuE0aCFu4aZ2vMwct/2t+lFnosm8RkQW1I0Omb1UtQ==}
3572 -
3573 - nypm@0.3.12:
3574 - resolution: {integrity: sha512-D3pzNDWIvgA+7IORhD/IuWzEk4uXv6GsgOxiid4UU3h9oq5IqV1KtPDi63n4sZJ/xcWlr88c0QM2RgN5VbOhFA==}
3575 - engines: {node: ^14.16.0 || >=16.10.0}
3576 - hasBin: true
3577 -
3578 - object-assign@4.1.1:
3579 - resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==}
3580 - engines: {node: '>=0.10.0'}
3581 -
3582 - object-hash@3.0.0:
3583 - resolution: {integrity: sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==}
3584 - engines: {node: '>= 6'}
3585 -
3586 - object-inspect@1.13.2:
3587 - resolution: {integrity: sha512-IRZSRuzJiynemAXPYtPe5BoI/RESNYR7TYm50MC5Mqbd3Jmw5y790sErYw3V6SryFJD64b74qQQs9wn5Bg/k3g==}
3588 - engines: {node: '>= 0.4'}
3589 -
3590 - ofetch@1.4.1:
3591 - resolution: {integrity: sha512-QZj2DfGplQAr2oj9KzceK9Hwz6Whxazmn85yYeVuS3u9XTMOGMRx0kO95MQ+vLsj/S/NwBDMMLU5hpxvI6Tklw==}
3592 -
3593 - ohash@1.1.4:
3594 - resolution: {integrity: sha512-FlDryZAahJmEF3VR3w1KogSEdWX3WhA5GPakFx4J81kEAiHyLMpdLLElS8n8dfNadMgAne/MywcvmogzscVt4g==}
3595 -
3596 - on-finished@2.4.1:
3597 - resolution: {integrity: sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==}
3598 - engines: {node: '>= 0.8'}
3599 -
3600 - once@1.4.0:
3601 - resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==}
3602 -
3603 - onetime@5.1.2:
3604 - resolution: {integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==}
3605 - engines: {node: '>=6'}
3606 -
3607 - onetime@6.0.0:
3608 - resolution: {integrity: sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==}
3609 - engines: {node: '>=12'}
3610 -
3611 - oniguruma-to-js@0.4.3:
3612 - resolution: {integrity: sha512-X0jWUcAlxORhOqqBREgPMgnshB7ZGYszBNspP+tS9hPD3l13CdaXcHbgImoHUHlrvGx/7AvFEkTRhAGYh+jzjQ==}
3613 -
3614 - only@0.0.2:
3615 - resolution: {integrity: sha512-Fvw+Jemq5fjjyWz6CpKx6w9s7xxqo3+JCyM0WXWeCSOboZ8ABkyvP8ID4CZuChA/wxSx+XSJmdOm8rGVyJ1hdQ==}
3616 -
3617 - open@10.1.0:
3618 - resolution: {integrity: sha512-mnkeQ1qP5Ue2wd+aivTD3NHd/lZ96Lu0jgf0pwktLPtx6cTZiH7tyeGRRHs0zX0rbrahXPnXlUnbeXyaBBuIaw==}
3619 - engines: {node: '>=18'}
3620 -
3621 - open@7.4.2:
3622 - resolution: {integrity: sha512-MVHddDVweXZF3awtlAS+6pgKLlm/JgxZ90+/NBurBoQctVOOB/zDdVjcyPzQ+0laDGbsWgrRkflI65sQeOgT9Q==}
3623 - engines: {node: '>=8'}
3624 -
3625 - open@8.4.2:
3626 - resolution: {integrity: sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==}
3627 - engines: {node: '>=12'}
3628 -
3629 - optionator@0.9.4:
3630 - resolution: {integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==}
3631 - engines: {node: '>= 0.8.0'}
3632 -
3633 - ospath@1.2.2:
3634 - resolution: {integrity: sha512-o6E5qJV5zkAbIDNhGSIlyOhScKXgQrSRMilfph0clDfM0nEnBOlKlH4sWDmG95BW/CvwNz0vmm7dJVtU2KlMiA==}
3635 -
3636 - p-limit@2.3.0:
3637 - resolution: {integrity: sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==}
3638 - engines: {node: '>=6'}
3639 -
3640 - p-limit@3.1.0:
3641 - resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==}
3642 - engines: {node: '>=10'}
3643 -
3644 - p-locate@4.1.0:
3645 - resolution: {integrity: sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==}
3646 - engines: {node: '>=8'}
3647 -
3648 - p-locate@5.0.0:
3649 - resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==}
3650 - engines: {node: '>=10'}
3651 -
3652 - p-map@4.0.0:
3653 - resolution: {integrity: sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==}
3654 - engines: {node: '>=10'}
3655 -
3656 - p-try@2.2.0:
3657 - resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==}
3658 - engines: {node: '>=6'}
3659 -
3660 - package-json-from-dist@1.0.1:
3661 - resolution: {integrity: sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==}
3662 -
3663 - package-manager-detector@0.2.2:
3664 - resolution: {integrity: sha512-VgXbyrSNsml4eHWIvxxG/nTL4wgybMTXCV2Un/+yEc3aDKKU6nQBZjbeP3Pl3qm9Qg92X/1ng4ffvCeD/zwHgg==}
3665 -
3666 - parent-module@1.0.1:
3667 - resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==}
3668 - engines: {node: '>=6'}
3669 -
3670 - parse-gitignore@2.0.0:
3671 - resolution: {integrity: sha512-RmVuCHWsfu0QPNW+mraxh/xjQVw/lhUCUru8Zni3Ctq3AoMhpDTq0OVdKS6iesd6Kqb7viCV3isAL43dciOSog==}
3672 - engines: {node: '>=14'}
3673 -
3674 - parse-imports@2.2.1:
3675 - resolution: {integrity: sha512-OL/zLggRp8mFhKL0rNORUTR4yBYujK/uU+xZL+/0Rgm2QE4nLO9v8PzEweSJEbMGKmDRjJE4R3IMJlL2di4JeQ==}
3676 - engines: {node: '>= 18'}
3677 -
3678 - parse-json@5.2.0:
3679 - resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==}
3680 - engines: {node: '>=8'}
3681 -
3682 - parse-passwd@1.0.0:
3683 - resolution: {integrity: sha512-1Y1A//QUXEZK7YKz+rD9WydcE1+EuPr6ZBgKecAB8tmoW6UFv0NREVJe1p+jRxtThkcbbKkfwIbWJe/IeE6m2Q==}
3684 - engines: {node: '>=0.10.0'}
3685 -
3686 - parse5@7.2.0:
3687 - resolution: {integrity: sha512-ZkDsAOcxsUMZ4Lz5fVciOehNcJ+Gb8gTzcA4yl3wnc273BAybYWrQ+Ks/OjCjSEpjvQkDSeZbybK9qj2VHHdGA==}
3688 -
3689 - parseurl@1.3.3:
3690 - resolution: {integrity: sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==}
3691 - engines: {node: '>= 0.8'}
3692 -
3693 - password-validator@5.3.0:
3694 - resolution: {integrity: sha512-Q+bSEM5pjokZqzWGoQaoylkeWeH4+9uMYlVImiPD0EOJClQ2RPBhrJ5h0OjhMKtwOmu5rRcLaTZo5Gk9RBl0ig==}
3695 - engines: {node: '>=8.10.0'}
3696 -
3697 - path-browserify@1.0.1:
3698 - resolution: {integrity: sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==}
3699 -
3700 - path-exists@4.0.0:
3701 - resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==}
3702 - engines: {node: '>=8'}
3703 -
3704 - path-is-absolute@1.0.1:
3705 - resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==}
3706 - engines: {node: '>=0.10.0'}
3707 -
3708 - path-key@3.1.1:
3709 - resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==}
3710 - engines: {node: '>=8'}
3711 -
3712 - path-key@4.0.0:
3713 - resolution: {integrity: sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==}
3714 - engines: {node: '>=12'}
3715 -
3716 - path-parse@1.0.7:
3717 - resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==}
3718 -
3719 - path-scurry@1.11.1:
3720 - resolution: {integrity: sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==}
3721 - engines: {node: '>=16 || 14 >=14.18'}
3722 -
3723 - path-to-regexp@6.3.0:
3724 - resolution: {integrity: sha512-Yhpw4T9C6hPpgPeA28us07OJeqZ5EzQTkbfwuhsUg0c237RomFoETJgmp2sa3F/41gfLE6G5cqcYwznmeEeOlQ==}
3725 -
3726 - path-type@4.0.0:
3727 - resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==}
3728 - engines: {node: '>=8'}
3729 -
3730 - path-type@5.0.0:
3731 - resolution: {integrity: sha512-5HviZNaZcfqP95rwpv+1HDgUamezbqdSYTyzjTvwtJSnIH+3vnbmWsItli8OFEndS984VT55M3jduxZbX351gg==}
3732 - engines: {node: '>=12'}
3733 -
3734 - pathe@1.1.2:
3735 - resolution: {integrity: sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==}
3736 -
3737 - pathval@2.0.0:
3738 - resolution: {integrity: sha512-vE7JKRyES09KiunauX7nd2Q9/L7lhok4smP9RZTDeD4MVs72Dp2qNFVz39Nz5a0FVEW0BJR6C0DYrq6unoziZA==}
3739 - engines: {node: '>= 14.16'}
3740 -
3741 - pause-stream@0.0.11:
3742 - resolution: {integrity: sha512-e3FBlXLmN/D1S+zHzanP4E/4Z60oFAa3O051qt1pxa7DEJWKAyil6upYVXCWadEnuoqa4Pkc9oUx9zsxYeRv8A==}
3743 -
3744 - pend@1.2.0:
3745 - resolution: {integrity: sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg==}
3746 -
3747 - perfect-debounce@1.0.0:
3748 - resolution: {integrity: sha512-xCy9V055GLEqoFaHoC1SoLIaLmWctgCUaBaWxDZ7/Zx4CTyX7cJQLJOok/orfjZAh9kEYpjJa4d0KcJmCbctZA==}
3749 -
3750 - performance-now@2.1.0:
3751 - resolution: {integrity: sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==}
3752 -
3753 - picocolors@1.1.1:
3754 - resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==}
3755 -
3756 - picomatch@2.3.1:
3757 - resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==}
3758 - engines: {node: '>=8.6'}
3759 -
3760 - picomatch@4.0.2:
3761 - resolution: {integrity: sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==}
3762 - engines: {node: '>=12'}
3763 -
3764 - pidtree@0.6.0:
3765 - resolution: {integrity: sha512-eG2dWTVw5bzqGRztnHExczNxt5VGsE6OwTeCG3fdUf9KBsZzO3R5OIIIzWR+iZA0NtZ+RDVdaoE2dK1cn6jH4g==}
3766 - engines: {node: '>=0.10'}
3767 - hasBin: true
3768 -
3769 - pify@2.3.0:
3770 - resolution: {integrity: sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==}
3771 - engines: {node: '>=0.10.0'}
3772 -
3773 - pinia-plugin-persistedstate@4.1.1:
3774 - resolution: {integrity: sha512-fUiUsbfBetGUZzX28z+ImAZw7FDXzwRrk+fN+ljF5OhQMhsSYfYeUzI9FLLtpjekYbfFHWvJiECkLI60RIuiPA==}
3775 - peerDependencies:
3776 - '@pinia/nuxt': '>=0.5.0'
3777 - pinia: '>=2.0.0'
3778 - peerDependenciesMeta:
3779 - '@pinia/nuxt':
3780 - optional: true
3781 - pinia:
3782 - optional: true
3783 -
3784 - pinia@2.2.4:
3785 - resolution: {integrity: sha512-K7ZhpMY9iJ9ShTC0cR2+PnxdQRuwVIsXDO/WIEV/RnMC/vmSoKDTKW/exNQYPI+4ij10UjXqdNiEHwn47McANQ==}
3786 - peerDependencies:
3787 - '@vue/composition-api': ^1.4.0
3788 - typescript: '>=4.4.4'
3789 - vue: ^2.6.14 || ^3.3.0
3790 - peerDependenciesMeta:
3791 - '@vue/composition-api':
3792 - optional: true
3793 - typescript:
3794 - optional: true
3795 -
3796 - pirates@4.0.6:
3797 - resolution: {integrity: sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==}
3798 - engines: {node: '>= 6'}
3799 -
3800 - pkg-types@1.2.1:
3801 - resolution: {integrity: sha512-sQoqa8alT3nHjGuTjuKgOnvjo4cljkufdtLMnO2LBP/wRwuDlo1tkaEdMxCRhyGRPacv/ztlZgDPm2b7FAmEvw==}
3802 -
3803 - please-upgrade-node@3.2.0:
3804 - resolution: {integrity: sha512-gQR3WpIgNIKwBMVLkpMUeR3e1/E1y42bqDQZfql+kDeXd8COYfM8PQA4X6y7a8u9Ua9FHmsrrmirW2vHs45hWg==}
3805 -
3806 - pluralize@8.0.0:
3807 - resolution: {integrity: sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==}
3808 - engines: {node: '>=4'}
3809 -
3810 - portfinder@1.0.32:
3811 - resolution: {integrity: sha512-on2ZJVVDXRADWE6jnQaX0ioEylzgBpQk8r55NE4wjXW1ZxO+BgDlY6DXwj20i0V8eB4SenDQ00WEaxfiIQPcxg==}
3812 - engines: {node: '>= 0.12.0'}
3813 -
3814 - postcss-import@15.1.0:
3815 - resolution: {integrity: sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew==}
3816 - engines: {node: '>=14.0.0'}
3817 - peerDependencies:
3818 - postcss: ^8.0.0
3819 -
3820 - postcss-js@4.0.1:
3821 - resolution: {integrity: sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==}
3822 - engines: {node: ^12 || ^14 || >= 16}
3823 - peerDependencies:
3824 - postcss: ^8.4.21
3825 -
3826 - postcss-load-config@4.0.2:
3827 - resolution: {integrity: sha512-bSVhyJGL00wMVoPUzAVAnbEoWyqRxkjv64tUl427SKnPrENtq6hJwUojroMz2VB+Q1edmi4IfrAPpami5VVgMQ==}
3828 - engines: {node: '>= 14'}
3829 - peerDependencies:
3830 - postcss: '>=8.0.9'
3831 - ts-node: '>=9.0.0'
3832 - peerDependenciesMeta:
3833 - postcss:
3834 - optional: true
3835 - ts-node:
3836 - optional: true
3837 -
3838 - postcss-nested@6.2.0:
3839 - resolution: {integrity: sha512-HQbt28KulC5AJzG+cZtj9kvKB93CFCdLvog1WFLf1D+xmMvPGlBstkpTEZfK5+AN9hfJocyBFCNiqyS48bpgzQ==}
3840 - engines: {node: '>=12.0'}
3841 - peerDependencies:
3842 - postcss: ^8.2.14
3843 -
3844 - postcss-selector-parser@6.1.2:
3845 - resolution: {integrity: sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==}
3846 - engines: {node: '>=4'}
3847 -
3848 - postcss-value-parser@4.2.0:
3849 - resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==}
3850 -
3851 - postcss@8.4.47:
3852 - resolution: {integrity: sha512-56rxCq7G/XfB4EkXq9Egn5GCqugWvDFjafDOThIdMBsI15iqPqR5r15TfSr1YPYeEI19YeaXMCbY6u88Y76GLQ==}
3853 - engines: {node: ^10 || ^12 || >=14}
3854 -
3855 - prelude-ls@1.2.1:
3856 - resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==}
3857 - engines: {node: '>= 0.8.0'}
3858 -
3859 - prettier-linter-helpers@1.0.0:
3860 - resolution: {integrity: sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==}
3861 - engines: {node: '>=6.0.0'}
3862 -
3863 - prettier-plugin-tailwindcss@0.6.8:
3864 - resolution: {integrity: sha512-dGu3kdm7SXPkiW4nzeWKCl3uoImdd5CTZEJGxyypEPL37Wj0HT2pLqjrvSei1nTeuQfO4PUfjeW5cTUNRLZ4sA==}
3865 - engines: {node: '>=14.21.3'}
3866 - peerDependencies:
3867 - '@ianvs/prettier-plugin-sort-imports': '*'
3868 - '@prettier/plugin-pug': '*'
3869 - '@shopify/prettier-plugin-liquid': '*'
3870 - '@trivago/prettier-plugin-sort-imports': '*'
3871 - '@zackad/prettier-plugin-twig-melody': '*'
3872 - prettier: ^3.0
3873 - prettier-plugin-astro: '*'
3874 - prettier-plugin-css-order: '*'
3875 - prettier-plugin-import-sort: '*'
3876 - prettier-plugin-jsdoc: '*'
3877 - prettier-plugin-marko: '*'
3878 - prettier-plugin-multiline-arrays: '*'
3879 - prettier-plugin-organize-attributes: '*'
3880 - prettier-plugin-organize-imports: '*'
3881 - prettier-plugin-sort-imports: '*'
3882 - prettier-plugin-style-order: '*'
3883 - prettier-plugin-svelte: '*'
3884 - peerDependenciesMeta:
3885 - '@ianvs/prettier-plugin-sort-imports':
3886 - optional: true
3887 - '@prettier/plugin-pug':
3888 - optional: true
3889 - '@shopify/prettier-plugin-liquid':
3890 - optional: true
3891 - '@trivago/prettier-plugin-sort-imports':
3892 - optional: true
3893 - '@zackad/prettier-plugin-twig-melody':
3894 - optional: true
3895 - prettier-plugin-astro:
3896 - optional: true
3897 - prettier-plugin-css-order:
3898 - optional: true
3899 - prettier-plugin-import-sort:
3900 - optional: true
3901 - prettier-plugin-jsdoc:
3902 - optional: true
3903 - prettier-plugin-marko:
3904 - optional: true
3905 - prettier-plugin-multiline-arrays:
3906 - optional: true
3907 - prettier-plugin-organize-attributes:
3908 - optional: true
3909 - prettier-plugin-organize-imports:
3910 - optional: true
3911 - prettier-plugin-sort-imports:
3912 - optional: true
3913 - prettier-plugin-style-order:
3914 - optional: true
3915 - prettier-plugin-svelte:
3916 - optional: true
3917 -
3918 - prettier@3.3.3:
3919 - resolution: {integrity: sha512-i2tDNA0O5IrMO757lfrdQZCc2jPNDVntV0m/+4whiDfWaTKfMNgR7Qz0NAeGz/nRqF4m5/6CLzbP4/liHt12Ew==}
3920 - engines: {node: '>=14'}
3921 - hasBin: true
3922 -
3923 - pretty-bytes@5.6.0:
3924 - resolution: {integrity: sha512-FFw039TmrBqFK8ma/7OL3sDz/VytdtJr044/QUJtH0wK9lb9jLq9tJyIxUwtQJHwar2BqtiA4iCWSwo9JLkzFg==}
3925 - engines: {node: '>=6'}
3926 -
3927 - process@0.11.10:
3928 - resolution: {integrity: sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==}
3929 - engines: {node: '>= 0.6.0'}
3930 -
3931 - property-information@6.5.0:
3932 - resolution: {integrity: sha512-PgTgs/BlvHxOu8QuEN7wi5A0OmXaBcHpmCSTehcs6Uuu9IkDIEo13Hy7n898RHfrQ49vKCoGeWZSaAK01nwVig==}
3933 -
3934 - proto-list@1.2.4:
3935 - resolution: {integrity: sha512-vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA==}
3936 -
3937 - proxy-from-env@1.0.0:
3938 - resolution: {integrity: sha512-F2JHgJQ1iqwnHDcQjVBsq3n/uoaFL+iPW/eAeL7kVxy/2RrWaN4WroKjjvbsoRtv0ftelNyC01bjRhn/bhcf4A==}
3939 -
3940 - proxy-from-env@1.1.0:
3941 - resolution: {integrity: sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==}
3942 -
3943 - ps-tree@1.2.0:
3944 - resolution: {integrity: sha512-0VnamPPYHl4uaU/nSFeZZpR21QAWRz+sRv4iW9+v/GS/J5U5iZB5BNN6J0RMoOvdx2gWM2+ZFMIm58q24e4UYA==}
3945 - engines: {node: '>= 0.10'}
3946 - hasBin: true
3947 -
3948 - psl@1.9.0:
3949 - resolution: {integrity: sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==}
3950 -
3951 - pump@3.0.2:
3952 - resolution: {integrity: sha512-tUPXtzlGM8FE3P0ZL6DVs/3P58k9nk8/jZeQCurTJylQA8qFYzHFfhBJkuqyE0FifOsQ0uKWekiZ5g8wtr28cw==}
3953 -
3954 - punycode.js@2.3.1:
3955 - resolution: {integrity: sha512-uxFIHU0YlHYhDQtV4R9J6a52SLx28BCjT+4ieh7IGbgwVJWO+km431c4yRlREUAsAmt/uMjQUyQHNEPf0M39CA==}
3956 - engines: {node: '>=6'}
3957 -
3958 - punycode@2.3.1:
3959 - resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==}
3960 - engines: {node: '>=6'}
3961 -
3962 - qs@6.13.0:
3963 - resolution: {integrity: sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==}
3964 - engines: {node: '>=0.6'}
3965 -
3966 - querystringify@2.2.0:
3967 - resolution: {integrity: sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==}
3968 -
3969 - queue-microtask@1.2.3:
3970 - resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==}
3971 -
3972 - rc9@2.1.2:
3973 - resolution: {integrity: sha512-btXCnMmRIBINM2LDZoEmOogIZU7Qe7zn4BpomSKZ/ykbLObuBdvG+mFq11DL6fjH1DRwHhrlgtYWG96bJiC7Cg==}
3974 -
3975 - read-cache@1.0.0:
3976 - resolution: {integrity: sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==}
3977 -
3978 - read-package-json-fast@4.0.0:
3979 - resolution: {integrity: sha512-qpt8EwugBWDw2cgE2W+/3oxC+KTez2uSVR8JU9Q36TXPAGCaozfQUs59v4j4GFpWTaw0i6hAZSvOmu1J0uOEUg==}
3980 - engines: {node: ^18.17.0 || >=20.5.0}
3981 -
3982 - read-pkg-up@7.0.1:
3983 - resolution: {integrity: sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==}
3984 - engines: {node: '>=8'}
3985 -
3986 - read-pkg@5.2.0:
3987 - resolution: {integrity: sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==}
3988 - engines: {node: '>=8'}
3989 -
3990 - readdirp@3.6.0:
3991 - resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==}
3992 - engines: {node: '>=8.10.0'}
3993 -
3994 - readdirp@4.0.2:
3995 - resolution: {integrity: sha512-yDMz9g+VaZkqBYS/ozoBJwaBhTbZo3UNYQHNRw1D3UFQB8oHB4uS/tAODO+ZLjGWmUbKnIlOWO+aaIiAxrUWHA==}
3996 - engines: {node: '>= 14.16.0'}
3997 -
3998 - refa@0.12.1:
3999 - resolution: {integrity: sha512-J8rn6v4DBb2nnFqkqwy6/NnTYMcgLA+sLr0iIO41qpv0n+ngb7ksag2tMRl0inb1bbO/esUwzW1vbJi7K0sI0g==}
4000 - engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0}
4001 -
4002 - regex@4.3.3:
4003 - resolution: {integrity: sha512-r/AadFO7owAq1QJVeZ/nq9jNS1vyZt+6t1p/E59B56Rn2GCya+gr1KSyOzNL/er+r+B7phv5jG2xU2Nz1YkmJg==}
4004 -
4005 - regexp-ast-analysis@0.7.1:
4006 - resolution: {integrity: sha512-sZuz1dYW/ZsfG17WSAG7eS85r5a0dDsvg+7BiiYR5o6lKCAtUrEwdmRmaGF6rwVj3LcmAeYkOWKEPlbPzN3Y3A==}
4007 - engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0}
4008 -
4009 - regexp-tree@0.1.27:
4010 - resolution: {integrity: sha512-iETxpjK6YoRWJG5o6hXLwvjYAoW+FEZn9os0PD/b6AP6xQwsa/Y7lCVgIixBbUPMfhu+i2LtdeAqVTgGlQarfA==}
4011 - hasBin: true
4012 -
4013 - regjsparser@0.10.0:
4014 - resolution: {integrity: sha512-qx+xQGZVsy55CH0a1hiVwHmqjLryfh7wQyF5HO07XJ9f7dQMY/gPQHhlyDkIzJKC+x2fUCpCcUODUUUFrm7SHA==}
4015 - hasBin: true
4016 -
4017 - replace-in-file@6.3.5:
4018 - resolution: {integrity: sha512-arB9d3ENdKva2fxRnSjwBEXfK1npgyci7ZZuwysgAp7ORjHSyxz6oqIjTEv8R0Ydl4Ll7uOAZXL4vbkhGIizCg==}
4019 - engines: {node: '>=10'}
4020 - hasBin: true
4021 -
4022 - request-progress@3.0.0:
4023 - resolution: {integrity: sha512-MnWzEHHaxHO2iWiQuHrUPBi/1WeBf5PkxQqNyNvLl9VAYSdXkP8tQ3pBSeCPD+yw0v0Aq1zosWLz0BdeXpWwZg==}
4024 -
4025 - require-directory@2.1.1:
4026 - resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==}
4027 - engines: {node: '>=0.10.0'}
4028 -
4029 - require-package-name@2.0.1:
4030 - resolution: {integrity: sha512-uuoJ1hU/k6M0779t3VMVIYpb2VMJk05cehCaABFhXaibcbvfgR8wKiozLjVFSzJPmQMRqIcO0HMyTFqfV09V6Q==}
4031 -
4032 - requires-port@1.0.0:
4033 - resolution: {integrity: sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==}
4034 -
4035 - resolve-dir@1.0.1:
4036 - resolution: {integrity: sha512-R7uiTjECzvOsWSfdM0QKFNBVFcK27aHOUwdvK53BcW8zqnGdYp0Fbj82cy54+2A4P2tFM22J5kRfe1R+lM/1yg==}
4037 - engines: {node: '>=0.10.0'}
4038 -
4039 - resolve-from@4.0.0:
4040 - resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==}
4041 - engines: {node: '>=4'}
4042 -
4043 - resolve-from@5.0.0:
4044 - resolution: {integrity: sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==}
4045 - engines: {node: '>=8'}
4046 -
4047 - resolve-path@1.4.0:
4048 - resolution: {integrity: sha512-i1xevIst/Qa+nA9olDxLWnLk8YZbi8R/7JPbCMcgyWaFR6bKWaexgJgEB5oc2PKMjYdrHynyz0NY+if+H98t1w==}
4049 - engines: {node: '>= 0.8'}
4050 -
4051 - resolve-pkg-maps@1.0.0:
4052 - resolution: {integrity: sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==}
4053 -
4054 - resolve@1.22.8:
4055 - resolution: {integrity: sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==}
4056 - hasBin: true
4057 -
4058 - restore-cursor@3.1.0:
4059 - resolution: {integrity: sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==}
4060 - engines: {node: '>=8'}
4061 -
4062 - reusify@1.0.4:
4063 - resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==}
4064 - engines: {iojs: '>=1.0.0', node: '>=0.10.0'}
4065 -
4066 - rfdc@1.4.1:
4067 - resolution: {integrity: sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==}
4068 -
4069 - rollup-plugin-visualizer@5.12.0:
4070 - resolution: {integrity: sha512-8/NU9jXcHRs7Nnj07PF2o4gjxmm9lXIrZ8r175bT9dK8qoLlvKTwRMArRCMgpMGlq8CTLugRvEmyMeMXIU2pNQ==}
4071 - engines: {node: '>=14'}
4072 - hasBin: true
4073 - peerDependencies:
4074 - rollup: 2.x || 3.x || 4.x
4075 - peerDependenciesMeta:
4076 - rollup:
4077 - optional: true
4078 -
4079 - rollup@4.24.0:
4080 - resolution: {integrity: sha512-DOmrlGSXNk1DM0ljiQA+i+o0rSLhtii1je5wgk60j49d1jHT5YYttBv1iWOnYSTG+fZZESUOSNiAl89SIet+Cg==}
4081 - engines: {node: '>=18.0.0', npm: '>=8.0.0'}
4082 - hasBin: true
4083 -
4084 - rrweb-cssom@0.7.1:
4085 - resolution: {integrity: sha512-TrEMa7JGdVm0UThDJSx7ddw5nVm3UJS9o9CCIZ72B1vSyEZoziDqBYP3XIoi/12lKrJR8rE3jeFHMok2F/Mnsg==}
4086 -
4087 - run-applescript@7.0.0:
4088 - resolution: {integrity: sha512-9by4Ij99JUr/MCFBUkDKLWK3G9HVXmabKz9U5MlIAIuvuzkiOicRYs8XJLxX+xahD+mLiiCYDqF9dKAgtzKP1A==}
4089 - engines: {node: '>=18'}
4090 -
4091 - run-parallel@1.2.0:
4092 - resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==}
4093 -
4094 - rxjs@7.8.1:
4095 - resolution: {integrity: sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==}
4096 -
4097 - safe-buffer@5.2.1:
4098 - resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==}
4099 -
4100 - safer-buffer@2.1.2:
4101 - resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==}
4102 -
4103 - sass@1.80.3:
4104 - resolution: {integrity: sha512-ptDWyVmDMVielpz/oWy3YP3nfs7LpJTHIJZboMVs8GEC9eUmtZTZhMHlTW98wY4aEorDfjN38+Wr/XjskFWcfA==}
4105 - engines: {node: '>=14.0.0'}
4106 - hasBin: true
4107 -
4108 - saxes@6.0.0:
4109 - resolution: {integrity: sha512-xAg7SOnEhrm5zI3puOOKyy1OMcMlIJZYNJY7xLBwSze0UjhPLnWfj2GF2EpT0jmzaJKIWKHLsaSSajf35bcYnA==}
4110 - engines: {node: '>=v12.22.7'}
4111 -
4112 - scslre@0.3.0:
4113 - resolution: {integrity: sha512-3A6sD0WYP7+QrjbfNA2FN3FsOaGGFoekCVgTyypy53gPxhbkCIjtO6YWgdrfM+n/8sI8JeXZOIxsHjMTNxQ4nQ==}
4114 - engines: {node: ^14.0.0 || >=16.0.0}
4115 -
4116 - scule@1.3.0:
4117 - resolution: {integrity: sha512-6FtHJEvt+pVMIB9IBY+IcCJ6Z5f1iQnytgyfKMhDKgmzYG+TeH/wx1y3l27rshSbLiSanrR9ffZDrEsmjlQF2g==}
4118 -
4119 - secure-ls@2.0.0:
4120 - resolution: {integrity: sha512-Wgtnw0QSm0v7gVKv11nOoeyGS65EThGXnBB7jfd4IhZd2eq3B4AMPcXAL5qJ1h55+Qolun7TONTwX7H5m6e2pQ==}
4121 - engines: {node: '>=8.0'}
4122 -
4123 - seemly@0.3.9:
4124 - resolution: {integrity: sha512-bMLcaEqhIViiPbaumjLN8t1y+JpD/N8SiyYOyp0i0W6RgdyLWboIsUWAbZojF//JyerxPZR5Tgda+x3Pdne75A==}
4125 -
4126 - semver-compare@1.0.0:
4127 - resolution: {integrity: sha512-YM3/ITh2MJ5MtzaM429anh+x2jiLVjqILF4m4oyQB18W7Ggea7BfqdH/wGMK7dDiMghv/6WG7znWMwUDzJiXow==}
4128 -
4129 - semver@5.7.2:
4130 - resolution: {integrity: sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==}
4131 - hasBin: true
4132 -
4133 - semver@6.3.1:
4134 - resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==}
4135 - hasBin: true
4136 -
4137 - semver@7.6.3:
4138 - resolution: {integrity: sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==}
4139 - engines: {node: '>=10'}
4140 - hasBin: true
4141 -
4142 - set-function-length@1.2.2:
4143 - resolution: {integrity: sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==}
4144 - engines: {node: '>= 0.4'}
4145 -
4146 - setprototypeof@1.1.0:
4147 - resolution: {integrity: sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==}
4148 -
4149 - setprototypeof@1.2.0:
4150 - resolution: {integrity: sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==}
4151 -
4152 - shebang-command@2.0.0:
4153 - resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==}
4154 - engines: {node: '>=8'}
4155 -
4156 - shebang-regex@3.0.0:
4157 - resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==}
4158 - engines: {node: '>=8'}
4159 -
4160 - shell-quote@1.8.1:
4161 - resolution: {integrity: sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA==}
4162 -
4163 - shiki@1.22.0:
4164 - resolution: {integrity: sha512-/t5LlhNs+UOKQCYBtl5ZsH/Vclz73GIqT2yQsCBygr8L/ppTdmpL4w3kPLoZJbMKVWtoG77Ue1feOjZfDxvMkw==}
4165 -
4166 - side-channel@1.0.6:
4167 - resolution: {integrity: sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==}
4168 - engines: {node: '>= 0.4'}
4169 -
4170 - siginfo@2.0.0:
4171 - resolution: {integrity: sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g==}
4172 -
4173 - signal-exit@3.0.7:
4174 - resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==}
4175 -
4176 - signal-exit@4.1.0:
4177 - resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==}
4178 - engines: {node: '>=14'}
4179 -
4180 - sirv@2.0.4:
4181 - resolution: {integrity: sha512-94Bdh3cC2PKrbgSOUqTiGPWVZeSiXfKOVZNJniWoqrWrRkB1CJzBU3NEbiTsPcYy1lDsANA/THzS+9WBiy5nfQ==}
4182 - engines: {node: '>= 10'}
4183 -
4184 - sisteransi@1.0.5:
4185 - resolution: {integrity: sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==}
4186 -
4187 - slash@3.0.0:
4188 - resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==}
4189 - engines: {node: '>=8'}
4190 -
4191 - slash@5.1.0:
4192 - resolution: {integrity: sha512-ZA6oR3T/pEyuqwMgAKT0/hAv8oAXckzbkmR0UkUosQ+Mc4RxGoJkRmwHgHufaenlyAgE1Mxgpdcrf75y6XcnDg==}
4193 - engines: {node: '>=14.16'}
4194 -
4195 - slashes@3.0.12:
4196 - resolution: {integrity: sha512-Q9VME8WyGkc7pJf6QEkj3wE+2CnvZMI+XJhwdTPR8Z/kWQRXi7boAWLDibRPyHRTUTPx5FaU7MsyrjI3yLB4HA==}
4197 -
4198 - slice-ansi@3.0.0:
4199 - resolution: {integrity: sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==}
4200 - engines: {node: '>=8'}
4201 -
4202 - slice-ansi@4.0.0:
4203 - resolution: {integrity: sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==}
4204 - engines: {node: '>=10'}
4205 -
4206 - sortablejs@1.14.0:
4207 - resolution: {integrity: sha512-pBXvQCs5/33fdN1/39pPL0NZF20LeRbLQ5jtnheIPN9JQAaufGjKdWduZn4U7wCtVuzKhmRkI0DFYHYRbB2H1w==}
4208 -
4209 - source-map-js@1.2.1:
4210 - resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==}
4211 - engines: {node: '>=0.10.0'}
4212 -
4213 - source-map@0.7.4:
4214 - resolution: {integrity: sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==}
4215 - engines: {node: '>= 8'}
4216 -
4217 - space-separated-tokens@2.0.2:
4218 - resolution: {integrity: sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q==}
4219 -
4220 - spdx-correct@3.2.0:
4221 - resolution: {integrity: sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==}
4222 -
4223 - spdx-exceptions@2.5.0:
4224 - resolution: {integrity: sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w==}
4225 -
4226 - spdx-expression-parse@3.0.1:
4227 - resolution: {integrity: sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==}
4228 -
4229 - spdx-expression-parse@4.0.0:
4230 - resolution: {integrity: sha512-Clya5JIij/7C6bRR22+tnGXbc4VKlibKSVj2iHvVeX5iMW7s1SIQlqu699JkODJJIhh/pUu8L0/VLh8xflD+LQ==}
4231 -
4232 - spdx-license-ids@3.0.20:
4233 - resolution: {integrity: sha512-jg25NiDV/1fLtSgEgyvVyDunvaNHbuwF9lfNV17gSmPFAlYzdfNBlLtLzXTevwkPj7DhGbmN9VnmJIgLnhvaBw==}
4234 -
4235 - speakingurl@14.0.1:
4236 - resolution: {integrity: sha512-1POYv7uv2gXoyGFpBCmpDVSNV74IfsWlDW216UPjbWufNf+bSU6GdbDsxdcxtfwb4xlI3yxzOTKClUosxARYrQ==}
4237 - engines: {node: '>=0.10.0'}
4238 -
4239 - split@0.3.3:
4240 - resolution: {integrity: sha512-wD2AeVmxXRBoX44wAycgjVpMhvbwdI2aZjCkvfNcH1YqHQvJVa1duWc73OyVGJUc05fhFaTZeQ/PYsrmyH0JVA==}
4241 -
4242 - sprintf-js@1.0.3:
4243 - resolution: {integrity: sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==}
4244 -
4245 - sshpk@1.18.0:
4246 - resolution: {integrity: sha512-2p2KJZTSqQ/I3+HX42EpYOa2l3f8Erv8MWKsy2I9uf4wA7yFIkXRffYdsx86y6z4vHtV8u7g+pPlr8/4ouAxsQ==}
4247 - engines: {node: '>=0.10.0'}
4248 - hasBin: true
4249 -
4250 - stable-hash@0.0.4:
4251 - resolution: {integrity: sha512-LjdcbuBeLcdETCrPn9i8AYAZ1eCtu4ECAWtP7UleOiZ9LzVxRzzUZEoZ8zB24nhkQnDWyET0I+3sWokSDS3E7g==}
4252 -
4253 - stackback@0.0.2:
4254 - resolution: {integrity: sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==}
4255 -
4256 - start-server-and-test@2.0.8:
4257 - resolution: {integrity: sha512-v2fV6NV2F7tL1ocwfI4Wpait+IKjRbT5l3ZZ+ZikXdMLmxYsS8ynGAsCQAUVXkVyGyS+UibsRnvgHkMvJIvCsw==}
4258 - engines: {node: '>=16'}
4259 - hasBin: true
4260 -
4261 - statuses@1.5.0:
4262 - resolution: {integrity: sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==}
4263 - engines: {node: '>= 0.6'}
4264 -
4265 - statuses@2.0.1:
4266 - resolution: {integrity: sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==}
4267 - engines: {node: '>= 0.8'}
4268 -
4269 - std-env@3.7.0:
4270 - resolution: {integrity: sha512-JPbdCEQLj1w5GilpiHAx3qJvFndqybBysA3qUOnznweH4QbNYUsW/ea8QzSrnh0vNsezMMw5bcVool8lM0gwzg==}
4271 -
4272 - stream-combiner@0.0.4:
4273 - resolution: {integrity: sha512-rT00SPnTVyRsaSz5zgSPma/aHSOic5U1prhYdRy5HS2kTZviFpmDgzilbtsJsxiroqACmayynDN/9VzIbX5DOw==}
4274 -
4275 - string-width@4.2.3:
4276 - resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==}
4277 - engines: {node: '>=8'}
4278 -
4279 - string-width@5.1.2:
4280 - resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==}
4281 - engines: {node: '>=12'}
4282 -
4283 - stringify-entities@4.0.4:
4284 - resolution: {integrity: sha512-IwfBptatlO+QCJUo19AqvrPNqlVMpW9YEL2LIVY+Rpv2qsjCGxaDLNRgeGsQWJhfItebuJhsGSLjaBbNSQ+ieg==}
4285 -
4286 - strip-ansi@6.0.1:
4287 - resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==}
4288 - engines: {node: '>=8'}
4289 -
4290 - strip-ansi@7.1.0:
4291 - resolution: {integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==}
4292 - engines: {node: '>=12'}
4293 -
4294 - strip-final-newline@2.0.0:
4295 - resolution: {integrity: sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==}
4296 - engines: {node: '>=6'}
4297 -
4298 - strip-final-newline@3.0.0:
4299 - resolution: {integrity: sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==}
4300 - engines: {node: '>=12'}
4301 -
4302 - strip-indent@3.0.0:
4303 - resolution: {integrity: sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==}
4304 - engines: {node: '>=8'}
4305 -
4306 - strip-json-comments@3.1.1:
4307 - resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==}
4308 - engines: {node: '>=8'}
4309 -
4310 - strip-literal@2.1.0:
4311 - resolution: {integrity: sha512-Op+UycaUt/8FbN/Z2TWPBLge3jWrP3xj10f3fnYxf052bKuS3EKs1ZQcVGjnEMdsNVAM+plXRdmjrZ/KgG3Skw==}
4312 -
4313 - sucrase@3.35.0:
4314 - resolution: {integrity: sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA==}
4315 - engines: {node: '>=16 || 14 >=14.17'}
4316 - hasBin: true
4317 -
4318 - superjson@2.2.1:
4319 - resolution: {integrity: sha512-8iGv75BYOa0xRJHK5vRLEjE2H/i4lulTjzpUXic3Eg8akftYjkmQDa8JARQ42rlczXyFR3IeRoeFCc7RxHsYZA==}
4320 - engines: {node: '>=16'}
4321 -
4322 - supports-color@5.5.0:
4323 - resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==}
4324 - engines: {node: '>=4'}
4325 -
4326 - supports-color@7.2.0:
4327 - resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==}
4328 - engines: {node: '>=8'}
4329 -
4330 - supports-color@8.1.1:
4331 - resolution: {integrity: sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==}
4332 - engines: {node: '>=10'}
4333 -
4334 - supports-preserve-symlinks-flag@1.0.0:
4335 - resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==}
4336 - engines: {node: '>= 0.4'}
4337 -
4338 - svg-tags@1.0.0:
4339 - resolution: {integrity: sha512-ovssysQTa+luh7A5Weu3Rta6FJlFBBbInjOh722LIt6klpU2/HtdUbszju/G4devcvk8PGt7FCLv5wftu3THUA==}
4340 -
4341 - svg.draggable.js@2.2.2:
4342 - resolution: {integrity: sha512-JzNHBc2fLQMzYCZ90KZHN2ohXL0BQJGQimK1kGk6AvSeibuKcIdDX9Kr0dT9+UJ5O8nYA0RB839Lhvk4CY4MZw==}
4343 - engines: {node: '>= 0.8.0'}
4344 -
4345 - svg.easing.js@2.0.0:
4346 - resolution: {integrity: sha512-//ctPdJMGy22YoYGV+3HEfHbm6/69LJUTAqI2/5qBvaNHZ9uUFVC82B0Pl299HzgH13rKrBgi4+XyXXyVWWthA==}
4347 - engines: {node: '>= 0.8.0'}
4348 -
4349 - svg.filter.js@2.0.2:
4350 - resolution: {integrity: sha512-xkGBwU+dKBzqg5PtilaTb0EYPqPfJ9Q6saVldX+5vCRy31P6TlRCP3U9NxH3HEufkKkpNgdTLBJnmhDHeTqAkw==}
4351 - engines: {node: '>= 0.8.0'}
4352 -
4353 - svg.js@2.7.1:
4354 - resolution: {integrity: sha512-ycbxpizEQktk3FYvn/8BH+6/EuWXg7ZpQREJvgacqn46gIddG24tNNe4Son6omdXCnSOaApnpZw6MPCBA1dODA==}
4355 -
4356 - svg.pathmorphing.js@0.1.3:
4357 - resolution: {integrity: sha512-49HWI9X4XQR/JG1qXkSDV8xViuTLIWm/B/7YuQELV5KMOPtXjiwH4XPJvr/ghEDibmLQ9Oc22dpWpG0vUDDNww==}
4358 - engines: {node: '>= 0.8.0'}
4359 -
4360 - svg.resize.js@1.4.3:
4361 - resolution: {integrity: sha512-9k5sXJuPKp+mVzXNvxz7U0uC9oVMQrrf7cFsETznzUDDm0x8+77dtZkWdMfRlmbkEEYvUn9btKuZ3n41oNA+uw==}
4362 - engines: {node: '>= 0.8.0'}
4363 -
4364 - svg.select.js@2.1.2:
4365 - resolution: {integrity: sha512-tH6ABEyJsAOVAhwcCjF8mw4crjXSI1aa7j2VQR8ZuJ37H2MBUbyeqYr5nEO7sSN3cy9AR9DUwNg0t/962HlDbQ==}
4366 - engines: {node: '>= 0.8.0'}
4367 -
4368 - svg.select.js@3.0.1:
4369 - resolution: {integrity: sha512-h5IS/hKkuVCbKSieR9uQCj9w+zLHoPh+ce19bBYyqF53g6mnPB8sAtIbe1s9dh2S2fCmYX2xel1Ln3PJBbK4kw==}
4370 - engines: {node: '>= 0.8.0'}
4371 -
4372 - svgo@3.3.2:
4373 - resolution: {integrity: sha512-OoohrmuUlBs8B8o6MB2Aevn+pRIH9zDALSR+6hhqVfa6fRwG/Qw9VUMSMW9VNg2CFc/MTIfabtdOVl9ODIJjpw==}
4374 - engines: {node: '>=14.0.0'}
4375 - hasBin: true
4376 -
4377 - symbol-tree@3.2.4:
4378 - resolution: {integrity: sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==}
4379 -
4380 - synckit@0.6.2:
4381 - resolution: {integrity: sha512-Vhf+bUa//YSTYKseDiiEuQmhGCoIF3CVBhunm3r/DQnYiGT4JssmnKQc44BIyOZRK2pKjXXAgbhfmbeoC9CJpA==}
4382 - engines: {node: '>=12.20'}
4383 -
4384 - synckit@0.8.8:
4385 - resolution: {integrity: sha512-HwOKAP7Wc5aRGYdKH+dw0PRRpbO841v2DENBtjnR5HFWoiNByAl7vrx3p0G/rCyYXQsrxqtX48TImFtPcIHSpQ==}
4386 - engines: {node: ^14.18.0 || >=16.0.0}
4387 -
4388 - synckit@0.9.2:
4389 - resolution: {integrity: sha512-vrozgXDQwYO72vHjUb/HnFbQx1exDjoKzqx23aXEg2a9VIg2TSFZ8FmeZpTjUCFMYw7mpX4BE2SFu8wI7asYsw==}
4390 - engines: {node: ^14.18.0 || >=16.0.0}
4391 -
4392 - tailwind-config-viewer@2.0.4:
4393 - resolution: {integrity: sha512-icvcmdMmt9dphvas8wL40qttrHwAnW3QEN4ExJ2zICjwRsPj7gowd1cOceaWG3IfTuM/cTNGQcx+bsjMtmV+cw==}
4394 - engines: {node: '>=13'}
4395 - hasBin: true
4396 - peerDependencies:
4397 - tailwindcss: 1 || 2 || 2.0.1-compat || 3
4398 -
4399 - tailwindcss@3.4.14:
4400 - resolution: {integrity: sha512-IcSvOcTRcUtQQ7ILQL5quRDg7Xs93PdJEk1ZLbhhvJc7uj/OAhYOnruEiwnGgBvUtaUAJ8/mhSw1o8L2jCiENA==}
4401 - engines: {node: '>=14.0.0'}
4402 - hasBin: true
4403 -
4404 - tapable@2.2.1:
4405 - resolution: {integrity: sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==}
4406 - engines: {node: '>=6'}
4407 -
4408 - tar@6.2.1:
4409 - resolution: {integrity: sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A==}
4410 - engines: {node: '>=10'}
4411 -
4412 - taze@0.17.2:
4413 - resolution: {integrity: sha512-VZvB2PfuIXVQdgEnjqg1NLAnxzEv28ypxTLpbtSs8rO0gdZbFRwRj3ES9QXneo112rdIwx1SM2QcIL83EfNBdg==}
4414 - hasBin: true
4415 -
4416 - text-table@0.2.0:
4417 - resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==}
4418 -
4419 - thenify-all@1.6.0:
4420 - resolution: {integrity: sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==}
4421 - engines: {node: '>=0.8'}
4422 -
4423 - thenify@3.3.1:
4424 - resolution: {integrity: sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==}
4425 -
4426 - throttleit@1.0.1:
4427 - resolution: {integrity: sha512-vDZpf9Chs9mAdfY046mcPt8fg5QSZr37hEH4TXYBnDF+izxgrbRGUAAaBvIk/fJm9aOFCGFd1EsNg5AZCbnQCQ==}
4428 -
4429 - through@2.3.8:
4430 - resolution: {integrity: sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==}
4431 -
4432 - tinybench@2.9.0:
4433 - resolution: {integrity: sha512-0+DUvqWMValLmha6lr4kD8iAMK1HzV0/aKnCtWb9v9641TnP/MFb7Pc2bxoxQjTXAErryXVgUOfv2YqNllqGeg==}
4434 -
4435 - tinyexec@0.3.1:
4436 - resolution: {integrity: sha512-WiCJLEECkO18gwqIp6+hJg0//p23HXp4S+gGtAKu3mI2F2/sXC4FvHvXvB0zJVVaTPhx1/tOwdbRsa1sOBIKqQ==}
4437 -
4438 - tinypool@1.0.1:
4439 - resolution: {integrity: sha512-URZYihUbRPcGv95En+sz6MfghfIc2OJ1sv/RmhWZLouPY0/8Vo80viwPvg3dlaS9fuq7fQMEfgRRK7BBZThBEA==}
4440 - engines: {node: ^18.0.0 || >=20.0.0}
4441 -
4442 - tinyrainbow@1.2.0:
4443 - resolution: {integrity: sha512-weEDEq7Z5eTHPDh4xjX789+fHfF+P8boiFB+0vbWzpbnbsEr/GRaohi/uMKxg8RZMXnl1ItAi/IUHWMsjDV7kQ==}
4444 - engines: {node: '>=14.0.0'}
4445 -
4446 - tinyspy@3.0.2:
4447 - resolution: {integrity: sha512-n1cw8k1k0x4pgA2+9XrOkFydTerNcJ1zWCO5Nn9scWHTD+5tp8dghT2x1uduQePZTZgd3Tupf+x9BxJjeJi77Q==}
4448 - engines: {node: '>=14.0.0'}
4449 -
4450 - tldts-core@6.1.53:
4451 - resolution: {integrity: sha512-IleS872aGdTB/UtocD2dSZBnQi/nqMIZxxezVgfcKKjw6+G2hJGzFw9buIDJO2MVJyEJe3rCAdyMTl2yvGMMrQ==}
4452 -
4453 - tldts@6.1.53:
4454 - resolution: {integrity: sha512-4uCStuOjPFaY2/LUjTSwdnJTC82W/gvSFL6FoTC9ehNOHboA9cyO3wX1erh2yGofVls37OdXr5sQLEfL5hS1TA==}
4455 - hasBin: true
4456 -
4457 - tmp@0.2.3:
4458 - resolution: {integrity: sha512-nZD7m9iCPC5g0pYmcaxogYKggSfLsdxl8of3Q/oIbqCqLLIO9IAF0GWjX1z9NZRHPiXv8Wex4yDCaZsgEw0Y8w==}
4459 - engines: {node: '>=14.14'}
4460 -
4461 - to-fast-properties@2.0.0:
4462 - resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==}
4463 - engines: {node: '>=4'}
4464 -
4465 - to-regex-range@5.0.1:
4466 - resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==}
4467 - engines: {node: '>=8.0'}
4468 -
4469 - toidentifier@1.0.1:
4470 - resolution: {integrity: sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==}
4471 - engines: {node: '>=0.6'}
4472 -
4473 - toml-eslint-parser@0.10.0:
4474 - resolution: {integrity: sha512-khrZo4buq4qVmsGzS5yQjKe/WsFvV8fGfOjDQN0q4iy9FjRfPWRgTFrU8u1R2iu/SfWLhY9WnCi4Jhdrcbtg+g==}
4475 - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
4476 -
4477 - totalist@3.0.1:
4478 - resolution: {integrity: sha512-sf4i37nQ2LBx4m3wB74y+ubopq6W/dIzXg0FDGjsYnZHVa1Da8FH853wlL2gtUhg+xJXjfk3kUZS3BRoQeoQBQ==}
4479 - engines: {node: '>=6'}
4480 -
4481 - tough-cookie@4.1.4:
4482 - resolution: {integrity: sha512-Loo5UUvLD9ScZ6jh8beX1T6sO1w2/MpCRpEP7V280GKMVUQ0Jzar2U3UJPsrdbziLEMMhu3Ujnq//rhiFuIeag==}
4483 - engines: {node: '>=6'}
4484 -
4485 - tough-cookie@5.0.0:
4486 - resolution: {integrity: sha512-FRKsF7cz96xIIeMZ82ehjC3xW2E+O2+v11udrDYewUbszngYhsGa8z6YUMMzO9QJZzzyd0nGGXnML/TReX6W8Q==}
4487 - engines: {node: '>=16'}
4488 -
4489 - tr46@5.0.0:
4490 - resolution: {integrity: sha512-tk2G5R2KRwBd+ZN0zaEXpmzdKyOYksXwywulIX95MBODjSzMIuQnQ3m8JxgbhnL1LeVo7lqQKsYa1O3Htl7K5g==}
4491 - engines: {node: '>=18'}
4492 -
4493 - treemate@0.3.11:
4494 - resolution: {integrity: sha512-M8RGFoKtZ8dF+iwJfAJTOH/SM4KluKOKRJpjCMhI8bG3qB74zrFoArKZ62ll0Fr3mqkMJiQOmWYkdYgDeITYQg==}
4495 -
4496 - trim-lines@3.0.1:
4497 - resolution: {integrity: sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg==}
4498 -
4499 - ts-api-utils@1.3.0:
4500 - resolution: {integrity: sha512-UQMIo7pb8WRomKR1/+MFVLTroIvDVtMX3K6OUir8ynLyzB8Jeriont2bTAtmNPa1ekAgN7YPDyf6V+ygrdU+eQ==}
4501 - engines: {node: '>=16'}
4502 - peerDependencies:
4503 - typescript: '>=4.2.0'
4504 -
4505 - ts-interface-checker@0.1.13:
4506 - resolution: {integrity: sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==}
4507 -
4508 - tslib@2.3.0:
4509 - resolution: {integrity: sha512-N82ooyxVNm6h1riLCoyS9e3fuJ3AMG2zIZs2Gd1ATcSFjSA23Q0fzjjZeh0jbJvWVDZ0cJT8yaNNaaXHzueNjg==}
4510 -
4511 - tslib@2.8.0:
4512 - resolution: {integrity: sha512-jWVzBLplnCmoaTr13V9dYbiQ99wvZRd0vNWaDRg+aVYRcjDF3nDksxFDE/+fkXnKhpnUUkmx5pK/v8mCtLVqZA==}
4513 -
4514 - tsscmp@1.0.6:
4515 - resolution: {integrity: sha512-LxhtAkPDTkVCMQjt2h6eBVY28KCjikZqZfMcC15YBeNjkgUpdCfBu5HoiOTDu86v6smE8yOjyEktJ8hlbANHQA==}
4516 - engines: {node: '>=0.6.x'}
4517 -
4518 - tsx@4.19.1:
4519 - resolution: {integrity: sha512-0flMz1lh74BR4wOvBjuh9olbnwqCPc35OOlfyzHba0Dc+QNUeWX/Gq2YTbnwcWPO3BMd8fkzRVrHcsR+a7z7rA==}
4520 - engines: {node: '>=18.0.0'}
4521 - hasBin: true
4522 -
4523 - tunnel-agent@0.6.0:
4524 - resolution: {integrity: sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==}
4525 -
4526 - tweetnacl@0.14.5:
4527 - resolution: {integrity: sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA==}
4528 -
4529 - type-check@0.4.0:
4530 - resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==}
4531 - engines: {node: '>= 0.8.0'}
4532 -
4533 - type-fest@0.20.2:
4534 - resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==}
4535 - engines: {node: '>=10'}
4536 -
4537 - type-fest@0.21.3:
4538 - resolution: {integrity: sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==}
4539 - engines: {node: '>=10'}
4540 -
4541 - type-fest@0.6.0:
4542 - resolution: {integrity: sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==}
4543 - engines: {node: '>=8'}
4544 -
4545 - type-fest@0.8.1:
4546 - resolution: {integrity: sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==}
4547 - engines: {node: '>=8'}
4548 -
4549 - type-fest@4.26.1:
4550 - resolution: {integrity: sha512-yOGpmOAL7CkKe/91I5O3gPICmJNLJ1G4zFYVAsRHg7M64biSnPtRj0WNQt++bRkjYOqjWXrhnUw1utzmVErAdg==}
4551 - engines: {node: '>=16'}
4552 -
4553 - type-is@1.6.18:
4554 - resolution: {integrity: sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==}
4555 - engines: {node: '>= 0.6'}
4556 -
4557 - typescript@5.6.3:
4558 - resolution: {integrity: sha512-hjcS1mhfuyi4WW8IWtjP7brDrG2cuDZukyrYrSauoXGNgx0S7zceP07adYkJycEr56BOUTNPzbInooiN3fn1qw==}
4559 - engines: {node: '>=14.17'}
4560 - hasBin: true
4561 -
4562 - uc.micro@2.1.0:
4563 - resolution: {integrity: sha512-ARDJmphmdvUk6Glw7y9DQ2bFkKBHwQHLi2lsaH6PPmz/Ka9sFOBsBluozhDltWmnv9u/cF6Rt87znRTPV+yp/A==}
4564 -
4565 - ufo@1.5.4:
4566 - resolution: {integrity: sha512-UsUk3byDzKd04EyoZ7U4DOlxQaD14JUKQl6/P7wiX4FNvUfm3XL246n9W5AmqwW5RSFJ27NAuM0iLscAOYUiGQ==}
4567 -
4568 - unconfig@0.3.13:
4569 - resolution: {integrity: sha512-N9Ph5NC4+sqtcOjPfHrRcHekBCadCXWTBzp2VYYbySOHW0PfD9XLCeXshTXjkPYwLrBr9AtSeU0CZmkYECJhng==}
4570 -
4571 - unconfig@0.6.0:
4572 - resolution: {integrity: sha512-4C67J0nIF2QwSXty2kW3zZx1pMZ3iXabylvJWWgHybWVUcMf9pxwsngoQt0gC+AVstRywFqrRBp3qOXJayhpOw==}
4573 -
4574 - uncrypto@0.1.3:
4575 - resolution: {integrity: sha512-Ql87qFHB3s/De2ClA9e0gsnS6zXG27SkTiSJwjCc9MebbfapQfuPzumMIUMi38ezPZVNFcHI9sUIepeQfw8J8Q==}
4576 -
4577 - unctx@2.3.1:
4578 - resolution: {integrity: sha512-PhKke8ZYauiqh3FEMVNm7ljvzQiph0Mt3GBRve03IJm7ukfaON2OBK795tLwhbyfzknuRRkW0+Ze+CQUmzOZ+A==}
4579 -
4580 - undici-types@6.19.8:
4581 - resolution: {integrity: sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==}
4582 -
4583 - unicorn-magic@0.1.0:
4584 - resolution: {integrity: sha512-lRfVq8fE8gz6QMBuDM6a+LO3IAzTi05H6gCVaUpir2E1Rwpo4ZUog45KpNXKC/Mn3Yb9UDuHumeFTo9iV/D9FQ==}
4585 - engines: {node: '>=18'}
4586 -
4587 - unimport@3.13.1:
4588 - resolution: {integrity: sha512-nNrVzcs93yrZQOW77qnyOVHtb68LegvhYFwxFMfuuWScmwQmyVCG/NBuN8tYsaGzgQUVYv34E/af+Cc9u4og4A==}
4589 -
4590 - unist-util-is@6.0.0:
4591 - resolution: {integrity: sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==}
4592 -
4593 - unist-util-position@5.0.0:
4594 - resolution: {integrity: sha512-fucsC7HjXvkB5R3kTCO7kUjRdrS0BJt3M/FPxmHMBOm8JQi2BsHAHFsy27E0EolP8rp0NzXsJ+jNPyDWvOJZPA==}
4595 -
4596 - unist-util-stringify-position@4.0.0:
4597 - resolution: {integrity: sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==}
4598 -
4599 - unist-util-visit-parents@6.0.1:
4600 - resolution: {integrity: sha512-L/PqWzfTP9lzzEa6CKs0k2nARxTdZduw3zyh8d2NVBnsyvHjSX4TWse388YrrQKbvI8w20fGjGlhgT96WwKykw==}
4601 -
4602 - unist-util-visit@5.0.0:
4603 - resolution: {integrity: sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg==}
4604 -
4605 - universalify@0.2.0:
4606 - resolution: {integrity: sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==}
4607 - engines: {node: '>= 4.0.0'}
4608 -
4609 - universalify@2.0.1:
4610 - resolution: {integrity: sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==}
4611 - engines: {node: '>= 10.0.0'}
4612 -
4613 - unplugin-vue-components@0.27.4:
4614 - resolution: {integrity: sha512-1XVl5iXG7P1UrOMnaj2ogYa5YTq8aoh5jwDPQhemwO/OrXW+lPQKDXd1hMz15qxQPxgb/XXlbgo3HQ2rLEbmXQ==}
4615 - engines: {node: '>=14'}
4616 - peerDependencies:
4617 - '@babel/parser': ^7.15.8
4618 - '@nuxt/kit': ^3.2.2
4619 - vue: 2 || 3
4620 - peerDependenciesMeta:
4621 - '@babel/parser':
4622 - optional: true
4623 - '@nuxt/kit':
4624 - optional: true
4625 -
4626 - unplugin@1.14.1:
4627 - resolution: {integrity: sha512-lBlHbfSFPToDYp9pjXlUEFVxYLaue9f9T1HC+4OHlmj+HnMDdz9oZY+erXfoCe/5V/7gKUSY2jpXPb9S7f0f/w==}
4628 - engines: {node: '>=14.0.0'}
4629 - peerDependencies:
4630 - webpack-sources: ^3
4631 - peerDependenciesMeta:
4632 - webpack-sources:
4633 - optional: true
4634 -
4635 - untildify@4.0.0:
4636 - resolution: {integrity: sha512-KK8xQ1mkzZeg9inewmFVDNkg3l5LUhoq9kN6iWYB/CC9YMG8HA+c1Q8HwDe6dEX7kErrEVNVBO3fWsVq5iDgtw==}
4637 - engines: {node: '>=8'}
4638 -
4639 - untyped@1.5.1:
4640 - resolution: {integrity: sha512-reBOnkJBFfBZ8pCKaeHgfZLcehXtM6UTxc+vqs1JvCps0c4amLNp3fhdGBZwYp+VLyoY9n3X5KOP7lCyWBUX9A==}
4641 - hasBin: true
4642 -
4643 - update-browserslist-db@1.1.1:
4644 - resolution: {integrity: sha512-R8UzCaa9Az+38REPiJ1tXlImTJXlVfgHZsglwBD/k6nj76ctsH1E3q4doGrukiLQd3sGQYu56r5+lo5r94l29A==}
4645 - hasBin: true
4646 - peerDependencies:
4647 - browserslist: '>= 4.21.0'
4648 -
4649 - uri-js@4.4.1:
4650 - resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==}
4651 -
4652 - url-parse@1.5.10:
4653 - resolution: {integrity: sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==}
4654 -
4655 - util-deprecate@1.0.2:
4656 - resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==}
4657 -
4658 - uuid@8.3.2:
4659 - resolution: {integrity: sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==}
4660 - hasBin: true
4661 -
4662 - validate-npm-package-license@3.0.4:
4663 - resolution: {integrity: sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==}
4664 -
4665 - validator@13.12.0:
4666 - resolution: {integrity: sha512-c1Q0mCiPlgdTVVVIJIrBuxNicYE+t/7oKeI9MWLj3fh/uq2Pxh/3eeWbVZ4OcGW1TUf53At0njHw5SMdA3tmMg==}
4667 - engines: {node: '>= 0.10'}
4668 -
4669 - vary@1.1.2:
4670 - resolution: {integrity: sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==}
4671 - engines: {node: '>= 0.8'}
4672 -
4673 - vdirs@0.1.8:
4674 - resolution: {integrity: sha512-H9V1zGRLQZg9b+GdMk8MXDN2Lva0zx72MPahDKc30v+DtwKjfyOSXWRIX4t2mhDubM1H09gPhWeth/BJWPHGUw==}
4675 - peerDependencies:
4676 - vue: ^3.0.11
4677 -
4678 - verror@1.10.0:
4679 - resolution: {integrity: sha512-ZZKSmDAEFOijERBLkmYfJ+vmk3w+7hOLYDNkRCuRuMJGEmqYNCNLyBBFwWKVMhfwaEF3WOd0Zlw86U/WC/+nYw==}
4680 - engines: {'0': node >=0.6.0}
4681 -
4682 - vfile-message@4.0.2:
4683 - resolution: {integrity: sha512-jRDZ1IMLttGj41KcZvlrYAaI3CfqpLpfpf+Mfig13viT6NKvRzWZ+lXz0Y5D60w6uJIBAOGq9mSHf0gktF0duw==}
4684 -
4685 - vfile@6.0.3:
4686 - resolution: {integrity: sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q==}
4687 -
4688 - vite-bundle-visualizer@1.2.1:
4689 - resolution: {integrity: sha512-cwz/Pg6+95YbgIDp+RPwEToc4TKxfsFWSG/tsl2DSZd9YZicUag1tQXjJ5xcL7ydvEoaC2FOZeaXOU60t9BRXw==}
4690 - engines: {node: ^18.19.0 || >=20.6.0}
4691 - hasBin: true
4692 -
4693 - vite-hot-client@0.2.3:
4694 - resolution: {integrity: sha512-rOGAV7rUlUHX89fP2p2v0A2WWvV3QMX2UYq0fRqsWSvFvev4atHWqjwGoKaZT1VTKyLGk533ecu3eyd0o59CAg==}
4695 - peerDependencies:
4696 - vite: ^2.6.0 || ^3.0.0 || ^4.0.0 || ^5.0.0-0
4697 -
4698 - vite-node@2.1.3:
4699 - resolution: {integrity: sha512-I1JadzO+xYX887S39Do+paRePCKoiDrWRRjp9kkG5he0t7RXNvPAJPCQSJqbGN4uCrFFeS3Kj3sLqY8NMYBEdA==}
4700 - engines: {node: ^18.0.0 || >=20.0.0}
4701 - hasBin: true
4702 -
4703 - vite-plugin-inspect@0.8.7:
4704 - resolution: {integrity: sha512-/XXou3MVc13A5O9/2Nd6xczjrUwt7ZyI9h8pTnUMkr5SshLcb0PJUOVq2V+XVkdeU4njsqAtmK87THZuO2coGA==}
4705 - engines: {node: '>=14'}
4706 - peerDependencies:
4707 - '@nuxt/kit': '*'
4708 - vite: ^3.1.0 || ^4.0.0 || ^5.0.0-0
4709 - peerDependenciesMeta:
4710 - '@nuxt/kit':
4711 - optional: true
4712 -
4713 - vite-plugin-vue-devtools@7.5.2:
4714 - resolution: {integrity: sha512-+lQOKW0kZAvLxy9KcsmtOk5Hsu0ibVAot9odFwCCASE4jukb0zaWGIyZwFLk4IsWNDT3iISvajIr704UYcZL6g==}
4715 - engines: {node: '>=v14.21.3'}
4716 - peerDependencies:
4717 - vite: ^3.1.0 || ^4.0.0-0 || ^5.0.0-0
4718 -
4719 - vite-plugin-vue-inspector@5.2.0:
4720 - resolution: {integrity: sha512-wWxyb9XAtaIvV/Lr7cqB1HIzmHZFVUJsTNm3yAxkS87dgh/Ky4qr2wDEWNxF23fdhVa3jQ8MZREpr4XyiuaRqA==}
4721 - peerDependencies:
4722 - vite: ^3.0.0-0 || ^4.0.0-0 || ^5.0.0-0
4723 -
4724 - vite-svg-loader@5.1.0:
4725 - resolution: {integrity: sha512-M/wqwtOEjgb956/+m5ZrYT/Iq6Hax0OakWbokj8+9PXOnB7b/4AxESHieEtnNEy7ZpjsjYW1/5nK8fATQMmRxw==}
4726 - peerDependencies:
4727 - vue: '>=3.2.13'
4728 -
4729 - vite@5.4.9:
4730 - resolution: {integrity: sha512-20OVpJHh0PAM0oSOELa5GaZNWeDjcAvQjGXy2Uyr+Tp+/D2/Hdz6NLgpJLsarPTA2QJ6v8mX2P1ZfbsSKvdMkg==}
4731 - engines: {node: ^18.0.0 || >=20.0.0}
4732 - hasBin: true
4733 - peerDependencies:
4734 - '@types/node': ^18.0.0 || >=20.0.0
4735 - less: '*'
4736 - lightningcss: ^1.21.0
4737 - sass: '*'
4738 - sass-embedded: '*'
4739 - stylus: '*'
4740 - sugarss: '*'
4741 - terser: ^5.4.0
4742 - peerDependenciesMeta:
4743 - '@types/node':
4744 - optional: true
4745 - less:
4746 - optional: true
4747 - lightningcss:
4748 - optional: true
4749 - sass:
4750 - optional: true
4751 - sass-embedded:
4752 - optional: true
4753 - stylus:
4754 - optional: true
4755 - sugarss:
4756 - optional: true
4757 - terser:
4758 - optional: true
4759 -
4760 - vitest@2.1.3:
4761 - resolution: {integrity: sha512-Zrxbg/WiIvUP2uEzelDNTXmEMJXuzJ1kCpbDvaKByFA9MNeO95V+7r/3ti0qzJzrxdyuUw5VduN7k+D3VmVOSA==}
4762 - engines: {node: ^18.0.0 || >=20.0.0}
4763 - hasBin: true
4764 - peerDependencies:
4765 - '@edge-runtime/vm': '*'
4766 - '@types/node': ^18.0.0 || >=20.0.0
4767 - '@vitest/browser': 2.1.3
4768 - '@vitest/ui': 2.1.3
4769 - happy-dom: '*'
4770 - jsdom: '*'
4771 - peerDependenciesMeta:
4772 - '@edge-runtime/vm':
4773 - optional: true
4774 - '@types/node':
4775 - optional: true
4776 - '@vitest/browser':
4777 - optional: true
4778 - '@vitest/ui':
4779 - optional: true
4780 - happy-dom:
4781 - optional: true
4782 - jsdom:
4783 - optional: true
4784 -
4785 - vooks@0.2.12:
4786 - resolution: {integrity: sha512-iox0I3RZzxtKlcgYaStQYKEzWWGAduMmq+jS7OrNdQo1FgGfPMubGL3uGHOU9n97NIvfFDBGnpSvkWyb/NSn/Q==}
4787 - peerDependencies:
4788 - vue: ^3.0.0
4789 -
4790 - vscode-uri@3.0.8:
4791 - resolution: {integrity: sha512-AyFQ0EVmsOZOlAnxoFOGOq1SQDWAB7C6aqMGS23svWAllfOaxbuFvcT8D1i8z3Gyn8fraVeZNNmN6e9bxxXkKw==}
4792 -
4793 - vue-advanced-cropper@2.8.9:
4794 - resolution: {integrity: sha512-1jc5gO674kVGpJKekoaol6ZlwaF5VYDLSBwBOUpViW0IOrrRsyLw6XNszjEqgbavvqinlKNS6Kqlom3B5M72Tw==}
4795 - engines: {node: '>=8', npm: '>=5'}
4796 - peerDependencies:
4797 - vue: ^3.0.0
4798 -
4799 - vue-component-type-helpers@2.1.6:
4800 - resolution: {integrity: sha512-ng11B8B/ZADUMMOsRbqv0arc442q7lifSubD0v8oDXIFoMg/mXwAPUunrroIDkY+mcD0dHKccdaznSVp8EoX3w==}
4801 -
4802 - vue-demi@0.14.10:
4803 - resolution: {integrity: sha512-nMZBOwuzabUO0nLgIcc6rycZEebF6eeUfaiQx9+WSk8e29IbLvPU9feI6tqW4kTo3hvoYAJkMh8n8D0fuISphg==}
4804 - engines: {node: '>=12'}
4805 - hasBin: true
4806 - peerDependencies:
4807 - '@vue/composition-api': ^1.0.0-rc.1
4808 - vue: ^3.0.0-0 || ^2.6.0
4809 - peerDependenciesMeta:
4810 - '@vue/composition-api':
4811 - optional: true
4812 -
4813 - vue-eslint-parser@9.4.3:
4814 - resolution: {integrity: sha512-2rYRLWlIpaiN8xbPiDyXZXRgLGOtWxERV7ND5fFAv5qo1D2N9Fu9MNajBNc6o13lZ+24DAWCkQCvj4klgmcITg==}
4815 - engines: {node: ^14.17.0 || >=16.0.0}
4816 - peerDependencies:
4817 - eslint: ^9.13.0
4818 -
4819 - vue-highlight-words@3.0.1:
4820 - resolution: {integrity: sha512-t6L0+KRaMzX5RVubWl6Sog+Aa+U0kHsbUlDIrln1VfajR2SEg+zQYfXov8UmX3MLNOfd6cv7MCM6LclqNlW4ww==}
4821 - peerDependencies:
4822 - vue: ^3.0.0
4823 -
4824 - vue-i18n@10.0.4:
4825 - resolution: {integrity: sha512-1xkzVxqBLk2ZFOmeI+B5r1J7aD/WtNJ4j9k2mcFcQo5BnOmHBmD7z4/oZohh96AAaRZ4Q7mNQvxc9h+aT+Md3w==}
4826 - engines: {node: '>= 16'}
4827 - peerDependencies:
4828 - vue: ^3.0.0
4829 -
4830 - vue-router@4.4.5:
4831 - resolution: {integrity: sha512-4fKZygS8cH1yCyuabAXGUAsyi1b2/o/OKgu/RUb+znIYOxPRxdkytJEx+0wGcpBE1pX6vUgh5jwWOKRGvuA/7Q==}
4832 - peerDependencies:
4833 - vue: ^3.2.0
4834 -
4835 - vue-sjv@0.0.6:
4836 - resolution: {integrity: sha512-mk0D/OjzTS/sAqMuEWllVbopzKIoluNdgXIe3OIfqSyl53xX71DmZbe/EAUuaxgilQ9OZiQa3Hq5LYr2+CMW/w==}
4837 - peerDependencies:
4838 - vue: ^3.3.4
4839 -
4840 - vue-tsc@2.1.6:
4841 - resolution: {integrity: sha512-f98dyZp5FOukcYmbFpuSCJ4Z0vHSOSmxGttZJCsFeX0M4w/Rsq0s4uKXjcSRsZqsRgQa6z7SfuO+y0HVICE57Q==}
4842 - hasBin: true
4843 - peerDependencies:
4844 - typescript: '>=5.0.0'
4845 -
4846 - vue3-apexcharts@1.7.0:
4847 - resolution: {integrity: sha512-BmWoS8+x5XLCtk2ml7rLVO+QU+fjgQUUCjUXSFW9cNQpCMa5Z0eRPvZjvYLt5aDKNREtuZoidlG9WRjZ/Af7lA==}
4848 - peerDependencies:
4849 - apexcharts: '> 3.0.0'
4850 - vue: '> 3.0.0'
4851 -
4852 - vue3-marquee@4.2.2:
4853 - resolution: {integrity: sha512-FeFvGUVInKfFilXFcnl8sDRBJBZCZSNLlQDquJErB9db6W2xICRVqbRV/jtdzsEP0rftarLQhx9MeEAU0+TPuQ==}
4854 - engines: {node: '>=12'}
4855 - peerDependencies:
4856 - vue: ^3.2
4857 -
4858 - vue@3.5.12:
4859 - resolution: {integrity: sha512-CLVZtXtn2ItBIi/zHZ0Sg1Xkb7+PU32bJJ8Bmy7ts3jxXTcbfsEfBivFYYWz1Hur+lalqGAh65Coin0r+HRUfg==}
4860 - peerDependencies:
4861 - typescript: '*'
4862 - peerDependenciesMeta:
4863 - typescript:
4864 - optional: true
4865 -
4866 - vuedraggable@4.1.0:
4867 - resolution: {integrity: sha512-FU5HCWBmsf20GpP3eudURW3WdWTKIbEIQxh9/8GE806hydR9qZqRRxRE3RjqX7PkuLuMQG/A7n3cfj9rCEchww==}
4868 - peerDependencies:
4869 - vue: ^3.0.1
4870 -
4871 - vueuc@0.4.64:
4872 - resolution: {integrity: sha512-wlJQj7fIwKK2pOEoOq4Aro8JdPOGpX8aWQhV8YkTW9OgWD2uj2O8ANzvSsIGjx7LTOc7QbS7sXdxHi6XvRnHPA==}
4873 - peerDependencies:
4874 - vue: ^3.0.11
4875 -
4876 - w3c-xmlserializer@5.0.0:
4877 - resolution: {integrity: sha512-o8qghlI8NZHU1lLPrpi2+Uq7abh4GGPpYANlalzWxyWteJOCsr/P+oPBA49TOLu5FTZO4d3F9MnWJfiMo4BkmA==}
4878 - engines: {node: '>=18'}
4879 -
4880 - wait-on@8.0.1:
4881 - resolution: {integrity: sha512-1wWQOyR2LVVtaqrcIL2+OM+x7bkpmzVROa0Nf6FryXkS+er5Sa1kzFGjzZRqLnHa3n1rACFLeTwUqE1ETL9Mig==}
4882 - engines: {node: '>=12.0.0'}
4883 - hasBin: true
4884 -
4885 - webidl-conversions@7.0.0:
4886 - resolution: {integrity: sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==}
4887 - engines: {node: '>=12'}
4888 -
4889 - webpack-virtual-modules@0.6.2:
4890 - resolution: {integrity: sha512-66/V2i5hQanC51vBQKPH4aI8NMAcBW59FVBs+rC7eGHupMyfn34q7rZIE+ETlJ+XTevqfUhVVBgSUNSW2flEUQ==}
4891 -
4892 - whatwg-encoding@3.1.1:
4893 - resolution: {integrity: sha512-6qN4hJdMwfYBtE3YBTTHhoeuUrDBPZmbQaxWAqSALV/MeEnR5z1xd8UKud2RAkFoPkmB+hli1TZSnyi84xz1vQ==}
4894 - engines: {node: '>=18'}
4895 -
4896 - whatwg-mimetype@4.0.0:
4897 - resolution: {integrity: sha512-QaKxh0eNIi2mE9p2vEdzfagOKHCcj1pJ56EEHGQOVxp8r9/iszLUUV7v89x9O1p/T+NlTM5W7jW6+cz4Fq1YVg==}
4898 - engines: {node: '>=18'}
4899 -
4900 - whatwg-url@14.0.0:
4901 - resolution: {integrity: sha512-1lfMEm2IEr7RIV+f4lUNPOqfFL+pO+Xw3fJSqmjX9AbXcXcYOkCe1P6+9VBZB6n94af16NfZf+sSk0JCBZC9aw==}
4902 - engines: {node: '>=18'}
4903 -
4904 - which@1.3.1:
4905 - resolution: {integrity: sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==}
4906 - hasBin: true
4907 -
4908 - which@2.0.2:
4909 - resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==}
4910 - engines: {node: '>= 8'}
4911 - hasBin: true
4912 -
4913 - which@5.0.0:
4914 - resolution: {integrity: sha512-JEdGzHwwkrbWoGOlIHqQ5gtprKGOenpDHpxE9zVR1bWbOtYRyPPHMe9FaP6x61CmNaTThSkb0DAJte5jD+DmzQ==}
4915 - engines: {node: ^18.17.0 || >=20.5.0}
4916 - hasBin: true
4917 -
4918 - why-is-node-running@2.3.0:
4919 - resolution: {integrity: sha512-hUrmaWBdVDcxvYqnyh09zunKzROWjbZTiNy8dBEjkS7ehEDQibXJ7XvlmtbwuTclUiIyN+CyXQD4Vmko8fNm8w==}
4920 - engines: {node: '>=8'}
4921 - hasBin: true
4922 -
4923 - word-wrap@1.2.5:
4924 - resolution: {integrity: sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==}
4925 - engines: {node: '>=0.10.0'}
4926 -
4927 - wrap-ansi@6.2.0:
4928 - resolution: {integrity: sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==}
4929 - engines: {node: '>=8'}
4930 -
4931 - wrap-ansi@7.0.0:
4932 - resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==}
4933 - engines: {node: '>=10'}
4934 -
4935 - wrap-ansi@8.1.0:
4936 - resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==}
4937 - engines: {node: '>=12'}
4938 -
4939 - wrappy@1.0.2:
4940 - resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==}
4941 -
4942 - ws@8.18.0:
4943 - resolution: {integrity: sha512-8VbfWfHLbbwu3+N6OKsOMpBdT4kXPDDB9cJk2bJ6mh9ucxdlnNvH1e+roYkKmN9Nxw2yjz7VzeO9oOz2zJ04Pw==}
4944 - engines: {node: '>=10.0.0'}
4945 - peerDependencies:
4946 - bufferutil: ^4.0.1
4947 - utf-8-validate: '>=5.0.2'
4948 - peerDependenciesMeta:
4949 - bufferutil:
4950 - optional: true
4951 - utf-8-validate:
4952 - optional: true
4953 -
4954 - xml-name-validator@4.0.0:
4955 - resolution: {integrity: sha512-ICP2e+jsHvAj2E2lIHxa5tjXRlKDJo4IdvPvCXbXQGdzSfmSpNVyIKMvoZHjDY9DP0zV17iI85o90vRFXNccRw==}
4956 - engines: {node: '>=12'}
4957 -
4958 - xml-name-validator@5.0.0:
4959 - resolution: {integrity: sha512-EvGK8EJ3DhaHfbRlETOWAS5pO9MZITeauHKJyb8wyajUfQUenkIg2MvLDTZ4T/TgIcm3HU0TFBgWWboAZ30UHg==}
4960 - engines: {node: '>=18'}
4961 -
4962 - xmlchars@2.2.0:
4963 - resolution: {integrity: sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==}
4964 -
4965 - y18n@5.0.8:
4966 - resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==}
4967 - engines: {node: '>=10'}
4968 -
4969 - yallist@3.1.1:
4970 - resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==}
4971 -
4972 - yallist@4.0.0:
4973 - resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==}
4974 -
4975 - yaml-eslint-parser@1.2.3:
4976 - resolution: {integrity: sha512-4wZWvE398hCP7O8n3nXKu/vdq1HcH01ixYlCREaJL5NUMwQ0g3MaGFUBNSlmBtKmhbtVG/Cm6lyYmSVTEVil8A==}
4977 - engines: {node: ^14.17.0 || >=16.0.0}
4978 -
4979 - yaml@1.10.2:
4980 - resolution: {integrity: sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==}
4981 - engines: {node: '>= 6'}
4982 -
4983 - yaml@2.6.0:
4984 - resolution: {integrity: sha512-a6ae//JvKDEra2kdi1qzCyrJW/WZCgFi8ydDV+eXExl95t+5R+ijnqHJbz9tmMh8FUjx3iv2fCQ4dclAQlO2UQ==}
4985 - engines: {node: '>= 14'}
4986 - hasBin: true
4987 -
4988 - yargs-parser@20.2.9:
4989 - resolution: {integrity: sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==}
4990 - engines: {node: '>=10'}
4991 -
4992 - yargs-parser@21.1.1:
4993 - resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==}
4994 - engines: {node: '>=12'}
4995 -
4996 - yargs@16.2.0:
4997 - resolution: {integrity: sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==}
4998 - engines: {node: '>=10'}
4999 -

This file is too large to show in full.

frontend/src/api/endpoints/incidentManagement.ts
+1 -1
@@ -19,7 +19,7 @@ import type {
19 import type { IncidentNotification, IncidentNotificationPayload } from "@/types/incidentManagement/notifications.d"
20 import type { SourceConfiguration, SourceName } from "@/types/incidentManagement/sources.d"
21 import type { KeysOfUnion, UnionToIntersection } from "type-fest"
22 -import _castArray from "lodash/castArray"
22 +import _castArray from "lodash-es/castArray"
23 import { HttpClient } from "../httpClient"
24
25 export type AlertsListFilterValue = string | string[] | AlertStatus | null
frontend/src/api/endpoints/portainer.ts new
+34
@@ -0,0 +1,34 @@
1 +import type { FlaskBaseResponse } from "@/types/flask.d"
2 +import type { PortainerStack } from "@/types/portainer.d"
3 +import { HttpClient } from "../httpClient"
4 +
5 +export default {
6 + getCustomerStackId(customerName: string) {
7 + return HttpClient.get<FlaskBaseResponse & { stack_id: number }>(`/portainer/get-customer-stack-id`, {
8 + params: { customer_name: customerName }
9 + })
10 + },
11 + getStackDetails(stackId: number) {
12 + return HttpClient.get<FlaskBaseResponse & { data: PortainerStack }>(`/portainer/stack-details`, {
13 + params: { stack_id: stackId }
14 + })
15 + },
16 + startWazuhCustomerStack(stackId: number) {
17 + return HttpClient.post<FlaskBaseResponse & { data: PortainerStack }>(
18 + `/portainer/start-wazuh-customer-stack`,
19 + undefined,
20 + {
21 + params: { stack_id: stackId }
22 + }
23 + )
24 + },
25 + stopWazuhCustomerStack(stackId: number) {
26 + return HttpClient.post<FlaskBaseResponse & { data: PortainerStack }>(
27 + `/portainer/stop-wazuh-customer-stack`,
28 + undefined,
29 + {
30 + params: { stack_id: stackId }
31 + }
32 + )
33 + }
34 +}
frontend/src/api/index.ts
+3 -1
@@ -17,6 +17,7 @@ import license from "./endpoints/license"
17 import logs from "./endpoints/logs"
18 import monitoringAlerts from "./endpoints/monitoringAlerts"
19 import networkConnectors from "./endpoints/networkConnectors"
20 +import portainer from "./endpoints/portainer"
21 import reporting from "./endpoints/reporting"
22 import scheduler from "./endpoints/scheduler"
23 import sigma from "./endpoints/sigma"
@@ -53,5 +54,6 @@ export default {
54 webVulnerabilityAssessment,
55 incidentManagement,
56 sigma,
56 - users
57 + users,
58 + portainer
59 }
frontend/src/app-layouts/common/Navbar/Navbar.vue
+1 -1
@@ -25,7 +25,7 @@ import type { MenuInst } from "naive-ui"
25 import type { MenuMixedOption } from "naive-ui/es/menu/src/interface"
26 import type { RouteRecordNormalized } from "vue-router"
27 import { useThemeStore } from "@/stores/theme"
28 -import _uniq from "lodash/uniq"
28 +import _uniq from "lodash-es/uniq"
29 import { NMenu } from "naive-ui"
30 import { computed, onBeforeMount, ref } from "vue"
31 import { useRoute, useRouter } from "vue-router"
frontend/src/app-layouts/common/Toolbar/Breadcrumb.vue
+4 -4
@@ -19,10 +19,10 @@
19 <script lang="ts" setup>
20 import type { RouteLocationNormalizedLoaded } from "vue-router"
21 import Icon from "@/components/common/Icon.vue"
22 -import _capitalize from "lodash/capitalize"
23 -import _compact from "lodash/compact"
24 -import _isEqual from "lodash/isEqual"
25 -import _split from "lodash/split"
22 +import _capitalize from "lodash-es/capitalize"
23 +import _compact from "lodash-es/compact"
24 +import _isEqual from "lodash-es/isEqual"
25 +import _split from "lodash-es/split"
26 import { NBreadcrumb, NBreadcrumbItem } from "naive-ui"
27 import { onBeforeMount, ref } from "vue"
28 import { useRoute, useRouter } from "vue-router"
frontend/src/app-layouts/common/Toolbar/PinnedPages.vue
+3 -3
@@ -63,9 +63,9 @@ import type { ComputedRef } from "vue"
63 import type { RouteLocationNormalized, RouteRecordName } from "vue-router"
64 import Icon from "@/components/common/Icon.vue"
65 import { useStorage } from "@vueuse/core"
66 -import _split from "lodash/split"
67 -import _takeRight from "lodash/takeRight"
68 -import _uniqBy from "lodash/uniqBy"
66 +import _split from "lodash-es/split"
67 +import _takeRight from "lodash-es/takeRight"
68 +import _uniqBy from "lodash-es/uniqBy"
69 import { NBadge, NButton, NPopover, NTag } from "naive-ui"
70 import { computed } from "vue"
71 import { useRouter } from "vue-router"
frontend/src/components/activeResponse/ActiveResponseInvokeForm.vue
+1 -1
@@ -91,7 +91,7 @@ const rules: FormRules = {
91 }
92 }
93
94 -function validateIp(rule: FormItemRule, value: string) {
94 +function validateIp(_rule: FormItemRule, value: string) {
95 if (!value || !isIP(value)) {
96 return new Error("Please input a valid IP Address")
97 }
frontend/src/components/agents/OverviewSection.vue
+18 -20
@@ -1,26 +1,24 @@
1 <template>
2 - <div class="overview-section">
3 - <div class="property-group grid-auto-fit-250 grid gap-2">
4 - <CardKV v-for="item of propsSanitized" :key="item.key">
5 - <template #key>
6 - {{ item.key }}
2 + <div class="grid-auto-fit-250 grid gap-2">
3 + <CardKV v-for="item of propsSanitized" :key="item.key">
4 + <template #key>
5 + {{ item.key }}
6 + </template>
7 + <template #value>
8 + <template v-if="item.key === 'customer_code' && item.val !== '-'">
9 + <code class="text-primary cursor-pointer" @click="gotoCustomer({ code: item.val })">
10 + {{ item.val }}
11 + <Icon :name="LinkIcon" :size="13" class="relative top-0.5" />
12 + </code>
13 </template>
8 - <template #value>
9 - <template v-if="item.key === 'customer_code' && item.val !== '-'">
10 - <code class="text-primary cursor-pointer" @click="gotoCustomer({ code: item.val })">
11 - {{ item.val }}
12 - <Icon :name="LinkIcon" :size="13" class="relative top-0.5" />
13 - </code>
14 - </template>
15 - <template v-else-if="item.key === 'velociraptor_id'">
16 - <AgentVelociraptorIdForm v-model:velociraptor-id="item.val" :agent @updated="emit('updated')" />
17 - </template>
18 - <template v-else>
19 - {{ item.val ?? "-" }}
20 - </template>
14 + <template v-else-if="item.key === 'velociraptor_id'">
15 + <AgentVelociraptorIdForm v-model:velociraptor-id="item.val" :agent @updated="emit('updated')" />
16 </template>
22 - </CardKV>
23 - </div>
17 + <template v-else>
18 + {{ item.val ?? "-" }}
19 + </template>
20 + </template>
21 + </CardKV>
22 </div>
23 </template>
24
frontend/src/components/agents/agentFlow/AgentFlowItem.vue
+2 -2
@@ -83,7 +83,7 @@
83 <n-tabs type="line" animated :tabs-padding="24">
84 <n-tab-pane name="Info" tab="Info" display-directive="show">
85 <div v-if="properties" class="grid-auto-fit-200 grid gap-2 p-7 pt-4">
86 - <CardKV v-for="(value, key) of properties" :key="key">
86 + <CardKV v-for="(value, key) of properties" :key>
87 <template #key>
88 {{ key }}
89 </template>
@@ -177,7 +177,7 @@ import Icon from "@/components/common/Icon.vue"
177 import { useSettingsStore } from "@/stores/settings"
178 import { formatDate } from "@/utils"
179 import dayjs from "@/utils/dayjs"
180 -import _pick from "lodash/pick"
180 +import _pick from "lodash-es/pick"
181 import { NEmpty, NInput, NModal, NPopover, NScrollbar, NTabPane, NTabs } from "naive-ui"
182 import { computed, defineAsyncComponent, ref } from "vue"
183 import { SimpleJsonViewer } from "vue-sjv"
frontend/src/components/agents/agentFlow/AgentFlowQueryStat.vue
+1 -1
@@ -92,7 +92,7 @@ import CardKV from "@/components/common/cards/CardKV.vue"
92 import { useSettingsStore } from "@/stores/settings"
93 import { formatDate } from "@/utils"
94 import dayjs from "@/utils/dayjs"
95 -import _pick from "lodash/pick"
95 +import _pick from "lodash-es/pick"
96 import { NInput, NModal, NTabPane, NTabs } from "naive-ui"
97 import { computed, ref } from "vue"
98
frontend/src/components/agents/sca/ScaItem.vue
+1 -1
@@ -84,7 +84,7 @@ import CardKV from "@/components/common/cards/CardKV.vue"
84 import Icon from "@/components/common/Icon.vue"
85 import { useSettingsStore } from "@/stores/settings"
86 import { formatDate } from "@/utils"
87 -import _pick from "lodash/pick"
87 +import _pick from "lodash-es/pick"
88 import { NCard, NInput, NStatistic, NTabPane, NTabs } from "naive-ui"
89 import { computed, defineAsyncComponent } from "vue"
90
frontend/src/components/agents/sca/ScaResultItemDetails.vue
+1 -1
@@ -146,7 +146,7 @@
146 import type { ScaPolicyResult } from "@/types/agents.d"
147 import CardKV from "@/components/common/cards/CardKV.vue"
148 import vShiki from "@/directives/v-shiki"
149 -import _pick from "lodash/pick"
149 +import _pick from "lodash-es/pick"
150 import { NCard, NInput, NStatistic, NTabPane, NTabs } from "naive-ui"
151 import { computed } from "vue"
152
frontend/src/components/agents/sca/ScaTable.vue
+1 -1
@@ -104,7 +104,7 @@ import Icon from "@/components/common/Icon.vue"
104 import { useSettingsStore } from "@/stores/settings"
105 import { formatDate } from "@/utils"
106 import { saveAs } from "file-saver"
107 -import _truncate from "lodash/truncate"
107 +import _truncate from "lodash-es/truncate"
108 import { NButton, NEmpty, NModal, NPopover, NScrollbar, NSpin, NTable, NTooltip, useMessage } from "naive-ui"
109 import { onBeforeMount, ref, toRefs } from "vue"
110 import ScaItem from "./ScaItem.vue"
frontend/src/components/agents/vulnerabilities/VulnerabilityCard.vue
+2 -2
@@ -109,8 +109,8 @@ import Icon from "@/components/common/Icon.vue"
109 import { useSettingsStore } from "@/stores/settings"
110 import dayjs from "@/utils/dayjs"
111 import { cloneDeep } from "lodash"
112 -import _split from "lodash/split"
113 -import _truncate from "lodash/truncate"
112 +import _split from "lodash-es/split"
113 +import _truncate from "lodash-es/truncate"
114 import { NModal, NTabPane, NTabs, NTooltip } from "naive-ui"
115 import { computed, defineAsyncComponent, ref, toRefs } from "vue"
116
frontend/src/components/alerts/Alert.vue
+1 -1
@@ -218,7 +218,7 @@ import Icon from "@/components/common/Icon.vue"
218 import { useGoto } from "@/composables/useGoto"
219 import { useSettingsStore } from "@/stores/settings"
220 import { formatDate } from "@/utils"
221 -import _pick from "lodash/pick"
221 +import _pick from "lodash-es/pick"
222 import { NInput, NModal, NPopover, NTabPane, NTabs } from "naive-ui"
223 import { computed, defineAsyncComponent, inject, ref, toRefs } from "vue"
224
frontend/src/components/alerts/AlertActions.vue
+1 -1
@@ -111,7 +111,7 @@ const emit = defineEmits<{
111
112 const DangerIcon = "majesticons:exclamation-line"
113 const AskIcon = "majesticons:question-mark-circle-line"
114 -const ViewIcon = "iconoir:eye-alt"
114 +const ViewIcon = "iconoir:eye-solid"
115 const RulesIcon = "carbon:rule-cancelled"
116
117 const router = useRouter()
frontend/src/components/alerts/AlertsFilters.vue
+1 -1
@@ -61,7 +61,7 @@ import type { SelectOption } from "naive-ui"
61 import type { VNodeChild } from "vue"
62 import Icon from "@/components/common/Icon.vue"
63 import { useStorage } from "@vueuse/core"
64 -import _uniqBy from "lodash/uniqBy"
64 +import _uniqBy from "lodash-es/uniqBy"
65 import { NButton, NEmpty, NFormItem, NInput, NInputGroup, NSelect } from "naive-ui"
66 import { h, onBeforeMount, toRefs, watch } from "vue"
67
frontend/src/components/artifacts/ArtifactRecommendation.vue
+1 -1
@@ -76,7 +76,7 @@ import type { OsTypesFull } from "@/types/common.d"
76 import type { Size } from "naive-ui/es/button/src/interface"
77 import Api from "@/api"
78 import Icon from "@/components/common/Icon.vue"
79 -import _uniqBy from "lodash/uniqBy"
79 +import _uniqBy from "lodash-es/uniqBy"
80 import { NButton, NCard, NDivider, NEmpty, NModal, NSelect, NSpin, useMessage } from "naive-ui"
81 import { computed, ref } from "vue"
82
frontend/src/components/artifacts/ArtifactsList.vue
+1 -1
@@ -131,7 +131,7 @@ import type { Artifact } from "@/types/artifacts.d"
131 import Api from "@/api"
132 import Icon from "@/components/common/Icon.vue"
133 import { useResizeObserver } from "@vueuse/core"
134 -import _cloneDeep from "lodash/cloneDeep"
134 +import _cloneDeep from "lodash-es/cloneDeep"
135 import { NBadge, NButton, NEmpty, NInputGroup, NPagination, NPopover, NSelect, NSpin, useMessage } from "naive-ui"
136 import { computed, nextTick, onBeforeMount, ref, toRefs, watch } from "vue"
137 import ArtifactItem from "./ArtifactItem.vue"
frontend/src/components/artifacts/CollectItem.vue
+2 -2
@@ -37,8 +37,8 @@ import CardKV from "@/components/common/cards/CardKV.vue"
37 import { useSettingsStore } from "@/stores/settings"
38 import { formatDate } from "@/utils"
39 import dayjs from "@/utils/dayjs"
40 -import _isNumber from "lodash/isNumber"
41 -import _isString from "lodash/isString"
40 +import _isNumber from "lodash-es/isNumber"
41 +import _isString from "lodash-es/isString"
42 import { NModal } from "naive-ui"
43 import { onBeforeMount, ref } from "vue"
44 import { SimpleJsonViewer } from "vue-sjv"
frontend/src/components/auth/ForgotPassword.vue
+1 -1
@@ -42,7 +42,7 @@ const rules: FormRules = {
42 message: "The email is mandatory"
43 },
44 {
45 - validator: (rule: FormItemRule, value: string): boolean => {
45 + validator: (_rule: FormItemRule, value: string): boolean => {
46 return isEmail(value)
47 },
48 message: "The email is not formatted correctly",
frontend/src/components/auth/SignIn.vue
+2 -2
@@ -4,8 +4,8 @@
4 <n-input
5 v-model:value="model.username"
6 placeholder="Insert your Username"
7 + :input-props="{ autocomplete: 'username' }"
8 size="large"
8 - autocomplete="on"
9 @keydown.enter="signIn"
10 />
11 </n-form-item>
@@ -15,7 +15,7 @@
15 type="password"
16 show-password-on="click"
17 placeholder="Insert your password"
18 - autocomplete="on"
18 + :input-props="{ autocomplete: 'password' }"
19 size="large"
20 @keydown.enter="signIn"
21 />
frontend/src/components/auth/SignUp.vue
+6 -6
@@ -150,7 +150,7 @@ import type { RegisterPayload } from "@/types/auth.d"
150 import type { FormInst, FormItemRule, FormRules, FormValidationError } from "naive-ui"
151 import Api from "@/api"
152 import Icon from "@/components/common/Icon.vue"
153 -import _trim from "lodash/trim"
153 +import _trim from "lodash-es/trim"
154 import { NButton, NForm, NFormItem, NInput, NSpin, NStep, NSteps, useMessage } from "naive-ui"
155 import PasswordValidator from "password-validator"
156 import isEmail from "validator/es/lib/isEmail"
@@ -224,14 +224,14 @@ const rules: FormRules = {
224 message: "Email is required"
225 },
226 {
227 - validator: (rule: FormItemRule, value: string): boolean => {
227 + validator: (_rule: FormItemRule, value: string): boolean => {
228 return isEmail(value)
229 },
230 message: "The email is not formatted correctly",
231 trigger: ["blur", "input"]
232 },
233 {
234 - validator: (rule: FormItemRule, value: string): boolean => {
234 + validator: (_rule: FormItemRule, value: string): boolean => {
235 return !unavailableEmailList?.length || !unavailableEmailList.includes(value)
236 },
237 message: "The Email is already used",
@@ -245,7 +245,7 @@ const rules: FormRules = {
245 message: "Password is required"
246 },
247 {
248 - validator: (rule: FormItemRule, value: string): boolean => {
248 + validator: (_rule: FormItemRule, value: string): boolean => {
249 return !!passwordSchema.validate(value, { details: false })
250 },
251 message:
@@ -260,7 +260,7 @@ const rules: FormRules = {
260 message: "Confirm Password is required"
261 },
262 {
263 - validator: (rule: FormItemRule, value: string): boolean => {
263 + validator: (_rule: FormItemRule, value: string): boolean => {
264 return value === model.value.password
265 },
266 message: "Password is not same as re-entered password",
@@ -274,7 +274,7 @@ const rules: FormRules = {
274 message: "Username is required"
275 },
276 {
277 - validator: (rule: FormItemRule, value: string): boolean => {
277 + validator: (_rule: FormItemRule, value: string): boolean => {
278 return !unavailableUsernameList?.length || !unavailableUsernameList.includes(value)
279 },
280 message: "The Username is already used",
frontend/src/components/common/ExpandableText.vue
+1 -1
@@ -23,7 +23,7 @@
23
24 <script setup lang="ts">
25 import vShiki from "@/directives/v-shiki"
26 -import _truncate from "lodash/truncate"
26 +import _truncate from "lodash-es/truncate"
27 import { NPopover } from "naive-ui"
28 import { toRefs } from "vue"
29
frontend/src/components/common/Notifications/List.vue
+1 -1
@@ -44,7 +44,7 @@
44 <script lang="ts" setup>
45 import Icon from "@/components/common/Icon.vue"
46 import { useNotifications } from "@/composables/useNotifications"
47 -import _take from "lodash/take"
47 +import _take from "lodash-es/take"
48 import { NEmpty, NScrollbar, NTooltip } from "naive-ui"
49 import { computed } from "vue"
50
frontend/src/components/common/cards/CardStatsBars.vue
+1 -1
@@ -47,7 +47,7 @@
47
48 <script setup lang="ts">
49 import Icon from "@/components/common/Icon.vue"
50 -import _round from "lodash/round"
50 +import _round from "lodash-es/round"
51 import { NCard } from "naive-ui"
52 import { computed } from "vue"
53
frontend/src/components/connectors/ConfigForm/ConfigForm.vue
+1 -1
@@ -76,7 +76,7 @@ import type {
76 import type { FormInst, FormRules, FormValidationError } from "naive-ui"
77 import Api from "@/api"
78 import { ConnectorFormType } from "@/types/connectors.d"
79 -import _pick from "lodash/pick"
79 +import _pick from "lodash-es/pick"
80 import { NAvatar, NButton, NForm, NFormItem, NInput, NSpin, useMessage } from "naive-ui"
81 import { computed, onMounted, ref, toRefs, watch } from "vue"
82 import CredentialsType from "./FormTypes/CredentialsType.vue"
frontend/src/components/connectors/ConfigForm/FormTypes/CredentialsType.vue
+1 -1
@@ -42,7 +42,7 @@ const { form } = toRefs(props)
42
43 const formRef = ref<FormInst>()
44
45 -function validateUrl(rule: FormItemRule, value: string) {
45 +function validateUrl(_rule: FormItemRule, value: string) {
46 if (!value) {
47 return new Error("Please input a valid URL")
48 }
frontend/src/components/connectors/ConfigForm/FormTypes/FileType.vue
+1 -1
@@ -54,7 +54,7 @@ function handleChange({ file }: { file: UploadFileInfo }) {
54 formRef.value?.validate()
55 }
56
57 -function validateFile(rule: FormItemRule, value: File) {
57 +function validateFile(_rule: FormItemRule, value: File) {
58 if (!value) {
59 return new Error("Please input a valid File")
60 }
frontend/src/components/connectors/ConfigForm/FormTypes/HostType.vue
+1 -1
@@ -28,7 +28,7 @@ const { form } = toRefs(props)
28
29 const formRef = ref<FormInst>()
30
31 -function validateUrl(rule: FormItemRule, value: string) {
31 +function validateUrl(_rule: FormItemRule, value: string) {
32 if (!value) {
33 return new Error("Please input a valid URL")
34 }
frontend/src/components/connectors/ConfigForm/FormTypes/TokenType.vue
+1 -1
@@ -32,7 +32,7 @@ const { form } = toRefs(props)
32
33 const formRef = ref<FormInst>()
34
35 -function validateUrl(rule: FormItemRule, value: string) {
35 +function validateUrl(_rule: FormItemRule, value: string) {
36 if (!value) {
37 return new Error("Please input a valid URL")
38 }
frontend/src/components/customers/CustomerForm.vue
+4 -4
@@ -33,10 +33,10 @@
33
34 <script setup lang="ts">
35 import type { Customer } from "@/types/customers.d"
36 -import type { FormInst, FormRules, FormValidationError } from "naive-ui"
36 +import type { FormInst, FormItemRule, FormRules, FormValidationError } from "naive-ui"
37 import Api from "@/api"
38 -import _get from "lodash/get"
39 -import _trim from "lodash/trim"
38 +import _get from "lodash-es/get"
39 +import _trim from "lodash-es/trim"
40 import { NButton, NForm, NFormItem, NInput, NSpin, useMessage } from "naive-ui"
41 import { computed, onBeforeMount, onMounted, ref, toRefs, watch } from "vue"
42
@@ -70,7 +70,7 @@ const rules: FormRules = {
70 required: true,
71 message: "Please input code. Code must be all lowercase and contain no spaces or special characters.",
72 trigger: ["input", "blur"],
73 - validator: (rule, value) => {
73 + validator: (_rule: FormItemRule, value: string) => {
74 if (value !== value.toLowerCase()) {
75 return new Error("Code must be all lowercase")
76 } else if (!/^[a-z]+$/.test(value)) {
frontend/src/components/customers/CustomerItem.vue
+46 -4
@@ -117,7 +117,7 @@
117 v-model:show="showDetails"
118 preset="card"
119 content-class="!p-0"
120 - :style="{ maxWidth: 'min(900px, 90vw)', minHeight: 'min(600px, 90vh)', overflow: 'hidden' }"
120 + :style="{ maxWidth: 'min(1100px, 90vw)', minHeight: 'min(600px, 90vh)', overflow: 'hidden' }"
121 :title="customerInfo?.customer_name"
122 :bordered="false"
123 segmented
@@ -165,8 +165,19 @@
165 >
166 <CustomerNotificationsWorkflows :customer-code="customer.customer_code" />
167 </n-tab-pane>
168 +
169 <template #suffix>
169 - <div class="hover:text-primary cursor-pointer pr-8" @click="selectedTabsGroup = 'agents'">
170 + <div
171 + v-if="customerPortainerStackId !== null"
172 + class="hover:text-primary cursor-pointer pr-8 text-sm"
173 + @click="selectedTabsGroup = 'wazuh_worker'"
174 + >
175 + Wazuh Worker
176 + </div>
177 + <div
178 + class="hover:text-primary cursor-pointer pr-8 text-sm"
179 + @click="selectedTabsGroup = 'agents'"
180 + >
181 Agents
182 </div>
183 </template>
@@ -209,6 +220,21 @@
220 </n-scrollbar>
221 </n-tab-pane>
222 </n-tabs>
223 + <n-tabs v-else-if="selectedTabsGroup === 'wazuh_worker'" type="line" animated :tabs-padding="24">
224 + <template #prefix>
225 + <div
226 + class="hover:text-primary relative top-1 cursor-pointer pl-6"
227 + @click="selectedTabsGroup = 'customer'"
228 + >
229 + <Icon :name="ArrowIcon" :size="20"></Icon>
230 + </div>
231 + </template>
232 + <n-tab-pane name="Wazuh Worker" tab="Wazuh Worker" display-directive="show:lazy">
233 + <div class="px-7 py-4">
234 + <CustomerWazuhWorker v-if="customerPortainerStackId" :stack-id="customerPortainerStackId" />
235 + </div>
236 + </n-tab-pane>
237 + </n-tabs>
238 </Transition>
239 </n-modal>
240 </div>
@@ -221,7 +247,7 @@ import Badge from "@/components/common/Badge.vue"
247 import CardEntity from "@/components/common/cards/CardEntity.vue"
248 import Icon from "@/components/common/Icon.vue"
249 import { hashMD5 } from "@/utils"
224 -import _toSafeInteger from "lodash/toSafeInteger"
250 +import _toSafeInteger from "lodash-es/toSafeInteger"
251 import { NAvatar, NButton, NModal, NPopover, NScrollbar, NTabPane, NTabs, useMessage } from "naive-ui"
252 import { computed, defineAsyncComponent, onBeforeMount, ref, toRefs, watch } from "vue"
253
@@ -244,6 +270,7 @@ const CustomerNetworkConnectors = defineAsyncComponent(
270 const CustomerNotificationsWorkflows = defineAsyncComponent(
271 () => import("./notifications/CustomerNotificationsWorkflows.vue")
272 )
273 +const CustomerWazuhWorker = defineAsyncComponent(() => import("./CustomerWazuhWorker.vue"))
274
275 const { customer, highlight, hideCardActions } = toRefs(props)
276
@@ -256,12 +283,13 @@ const LocationIcon = "carbon:location"
283 const PhoneIcon = "carbon:phone"
284
285 const showDetails = ref(false)
259 -const selectedTabsGroup = ref<"customer" | "agents">("customer")
286 +const selectedTabsGroup = ref<"customer" | "agents" | "wazuh_worker">("customer")
287 const loadingFull = ref(false)
288 const loadingDelete = ref(false)
289 const message = useMessage()
290 const customerInfo = ref<Customer | null>(null)
291 const customerMeta = ref<CustomerMeta | null>(null)
292 +const customerPortainerStackId = ref<number | null>(null)
293
294 const loading = computed(() => loadingFull.value || loadingDelete.value)
295 const fallbackAvatar = computed(() => {
@@ -303,6 +331,16 @@ function getFull() {
331 })
332 }
333
334 +function getPortainerStackId() {
335 + Api.portainer.getCustomerStackId(customer.value.customer_name).then(res => {
336 + if (res.data.success) {
337 + customerPortainerStackId.value = res.data.stack_id || null
338 + } else {
339 + message.warning(res.data?.message || "An error occurred. Please try again later.")
340 + }
341 + })
342 +}
343 +
344 function deletedItem() {
345 showDetails.value = false
346 emit("delete")
@@ -318,6 +356,10 @@ watch(showDetails, val => {
356 ) {
357 getFull()
358 }
359 +
360 + if (!customerPortainerStackId.value) {
361 + getPortainerStackId()
362 + }
363 }
364 })
365
frontend/src/components/customers/CustomerMetaForm.vue
+3 -3
@@ -34,9 +34,9 @@
34 import type { CustomerMeta } from "@/types/customers.d"
35 import type { FormInst, FormRules, FormValidationError } from "naive-ui"
36 import Api from "@/api"
37 -import _get from "lodash/get"
38 -import _toSafeInteger from "lodash/toSafeInteger"
39 -import _trim from "lodash/trim"
37 +import _get from "lodash-es/get"
38 +import _toSafeInteger from "lodash-es/toSafeInteger"
39 +import _trim from "lodash-es/trim"
40 import { NButton, NForm, NFormItem, NInput, NSpin, useMessage } from "naive-ui"
41 import { computed, onBeforeMount, onMounted, ref, toRefs, watch } from "vue"
42
frontend/src/components/customers/CustomerWazuhWorker.vue new
+266
@@ -0,0 +1,266 @@
1 +<template>
2 + <div>
3 + <n-spin :show="loadingList">
4 + <div v-if="portainerStack" class="flex flex-col gap-2">
5 + <CardEntity embedded>
6 + <template #headerMain>
7 + <div class="flex items-center gap-2">
8 + <span>#{{ portainerStack.Id }}</span>
9 + <span>- {{ portainerStackType }}</span>
10 + </div>
11 + </template>
12 + <template #headerExtra>
13 + <div class="flex items-center gap-2 font-sans">
14 + <Icon
15 + v-if="portainerStack.Status === PortainerStackStatus.Offline"
16 + :name="OfflineIcon"
17 + :size="16"
18 + class="text-warning"
19 + />
20 + <Icon v-else :name="OnlineIcon" :size="16" class="text-success" />
21 +
22 + {{ portainerStack.Status === PortainerStackStatus.Online ? "Online" : "Offline" }}
23 + </div>
24 + </template>
25 + <template #default>
26 + {{ portainerStack.Name }}
27 + </template>
28 + <template #footerMain>
29 + <div class="flex flex-wrap items-center gap-3">
30 + <Badge type="splitted" color="primary">
31 + <template #iconLeft>
32 + <Icon :name="UserIcon" :size="14"></Icon>
33 + </template>
34 + <template #value>{{ portainerStack.CreatedBy }}</template>
35 + </Badge>
36 + <Badge type="splitted" color="primary">
37 + <template #iconLeft>
38 + <Icon :name="DateIcon" :size="14"></Icon>
39 + </template>
40 + <template #value>
41 + {{ formatDate(portainerStack.CreationDate, dFormats.datetimesec) }}
42 + </template>
43 + </Badge>
44 + </div>
45 + </template>
46 + <template #footerExtra>
47 + <div class="flex flex-wrap items-center justify-end gap-3">
48 + <n-button secondary size="small" @click.stop="showResourceControl = true">
49 + <template #icon>
50 + <Icon :name="ViewIcon"></Icon>
51 + </template>
52 + ResourceControl
53 + </n-button>
54 + <n-button
55 + v-if="portainerStack.Status === PortainerStackStatus.Online"
56 + :loading="loadingAction"
57 + type="warning"
58 + secondary
59 + size="small"
60 + @click.stop="stop()"
61 + >
62 + <template #icon>
63 + <Icon :name="StopIcon"></Icon>
64 + </template>
65 + Stop Worker
66 + </n-button>
67 + <n-button
68 + v-if="portainerStack.Status === PortainerStackStatus.Offline"
69 + :loading="loadingAction"
70 + type="success"
71 + secondary
72 + size="small"
73 + @click.stop="start()"
74 + >
75 + <template #icon>
76 + <Icon :name="StartIcon"></Icon>
77 + </template>
78 + Start Worker
79 + </n-button>
80 + </div>
81 + </template>
82 + </CardEntity>
83 +
84 + <div class="grid-auto-fit-250 grid gap-2">
85 + <CardKV v-for="(value, key) of properties" :key>
86 + <template #key>
87 + {{ key }}
88 + </template>
89 + <template #value>
90 + {{ value ?? "-" }}
91 + </template>
92 + </CardKV>
93 + </div>
94 + </div>
95 +
96 + <div v-else class="min-h-96">
97 + <n-empty v-if="!loadingList" description="No Portainer Stack found" class="h-48 justify-center" />
98 + </div>
99 +
100 + <n-modal
101 + v-model:show="showResourceControl"
102 + preset="card"
103 + content-class="@container"
104 + :style="{ maxWidth: 'min(800px, 90vw)', overflow: 'hidden' }"
105 + :bordered="false"
106 + title="Resource Control"
107 + >
108 + <div class="@2xl:!flex-row flex flex-col gap-4">
109 + <SimpleJsonViewer
110 + v-if="portainerStack"
111 + class="vuesjv-override grow"
112 + :model-value="portainerStack?.ResourceControl"
113 + :initial-expanded-depth="2"
114 + />
115 +
116 + <div class="min-w-40">
117 + <CardKV>
118 + <template #key>Type legend</template>
119 + <template #value>
120 + <ul class="list-none p-0">
121 + <li>1 = Container</li>
122 + <li>2 = Service</li>
123 + <li>3 = Volume</li>
124 + <li>4 = Network</li>
125 + <li>5 = Secret</li>
126 + <li>6 = Stack</li>
127 + <li>7 = Config</li>
128 + </ul>
129 + </template>
130 + </CardKV>
131 + </div>
132 + </div>
133 + </n-modal>
134 + </n-spin>
135 + </div>
136 +</template>
137 +
138 +<script setup lang="ts">
139 +import type { PortainerStack } from "@/types/portainer.d"
140 +import Api from "@/api"
141 +import Badge from "@/components/common/Badge.vue"
142 +import CardEntity from "@/components/common/cards/CardEntity.vue"
143 +import CardKV from "@/components/common/cards/CardKV.vue"
144 +import Icon from "@/components/common/Icon.vue"
145 +import { useSettingsStore } from "@/stores/settings"
146 +import { PortainerStackStatus } from "@/types/portainer.d"
147 +import { formatDate } from "@/utils"
148 +import _castArray from "lodash-es/castArray"
149 +import _pick from "lodash-es/pick"
150 +import { NButton, NEmpty, NModal, NSpin, useMessage } from "naive-ui"
151 +import { computed, onBeforeMount, ref } from "vue"
152 +import { SimpleJsonViewer } from "vue-sjv"
153 +import "@/assets/scss/overrides/vuesjv-override.scss"
154 +
155 +const { stackId } = defineProps<{ stackId: number }>()
156 +
157 +const OfflineIcon = "carbon:error-filled"
158 +const OnlineIcon = "carbon:checkmark-filled"
159 +const UserIcon = "carbon:group-security"
160 +const DateIcon = "carbon:time"
161 +const ViewIcon = "iconoir:eye-solid"
162 +const StopIcon = "carbon:stop"
163 +const StartIcon = "carbon:play"
164 +
165 +const message = useMessage()
166 +const showResourceControl = ref(false)
167 +const loadingList = ref(false)
168 +const loadingAction = ref(false)
169 +const dFormats = useSettingsStore().dateFormat
170 +const portainerStack = ref<PortainerStack | null>(null)
171 +const portainerStackType = computed(
172 + () => ["", "Docker Swarm stack", "Standalone Docker stack", "Kubernetes stack"][portainerStack.value?.Type || 0]
173 +)
174 +
175 +const properties = computed(() => {
176 + const props: Partial<{ [key in keyof PortainerStack]: any }> = _pick(portainerStack.value || {}, [
177 + "EndpointId",
178 + "SwarmId",
179 + "EntryPoint",
180 + "Env",
181 + "ProjectPath",
182 + "UpdateDate",
183 + "UpdatedBy",
184 + "AdditionalFiles",
185 + "AutoUpdate",
186 + "Option",
187 + "GitConfig",
188 + "FromAppTemplate",
189 + "Namespace",
190 + "IsComposeFormat"
191 + ])
192 +
193 + props.Env = _castArray(props.Env).join(", ") || null
194 + props.UpdateDate = props.UpdateDate ? formatDate(props.UpdateDate, dFormats.datetimesec) : null
195 + props.UpdatedBy = props.UpdatedBy || null
196 + props.Namespace = props.Namespace || null
197 +
198 + return props
199 +})
200 +
201 +function getPortainerStack() {
202 + loadingList.value = true
203 +
204 + Api.portainer
205 + .getStackDetails(stackId)
206 + .then(res => {
207 + if (res.data.success) {
208 + portainerStack.value = res.data.data
209 + } else {
210 + message.warning(res.data?.message || "An error occurred. Please try again later.")
211 + }
212 + })
213 + .catch(err => {
214 + message.error(err.response?.data?.message || "An error occurred. Please try again later.")
215 + })
216 + .finally(() => {
217 + loadingList.value = false
218 + })
219 +}
220 +
221 +function stop() {
222 + loadingAction.value = true
223 +
224 + Api.portainer
225 + .stopWazuhCustomerStack(stackId)
226 + .then(res => {
227 + if (res.data.success) {
228 + portainerStack.value = res.data.data
229 + message.success(`Wazuh Worker stopped${res.data?.message ? `: ${res.data.message}` : ""}`)
230 + } else {
231 + message.warning(res.data?.message || "An error occurred. Please try again later.")
232 + }
233 + })
234 + .catch(err => {
235 + message.error(err.response?.data?.message || "An error occurred. Please try again later.")
236 + })
237 + .finally(() => {
238 + loadingAction.value = false
239 + })
240 +}
241 +
242 +function start() {
243 + loadingAction.value = true
244 +
245 + Api.portainer
246 + .startWazuhCustomerStack(stackId)
247 + .then(res => {
248 + if (res.data.success) {
249 + portainerStack.value = res.data.data
250 + message.success(`Wazuh Worker started${res.data?.message ? `: ${res.data.message}` : ""}`)
251 + } else {
252 + message.warning(res.data?.message || "An error occurred. Please try again later.")
253 + }
254 + })
255 + .catch(err => {
256 + message.error(err.response?.data?.message || "An error occurred. Please try again later.")
257 + })
258 + .finally(() => {
259 + loadingAction.value = false
260 + })
261 +}
262 +
263 +onBeforeMount(() => {
264 + getPortainerStack()
265 +})
266 +</script>
frontend/src/components/customers/healthcheck/CustomerHealthcheckList.vue
+1 -1
@@ -58,7 +58,7 @@ import type { CustomerAgentHealth, CustomerHealthcheckSource } from "@/types/cus
58 import Api from "@/api"
59 import Icon from "@/components/common/Icon.vue"
60 import { watchDebounced } from "@vueuse/core"
61 -import _get from "lodash/get"
61 +import _get from "lodash-es/get"
62 import { NEmpty, NInputGroup, NInputNumber, NSelect, NSpin, useMessage } from "naive-ui"
63 import { onBeforeMount, ref, watch } from "vue"
64 import CustomerHealthcheckItem from "./CustomerHealthcheckItem.vue"
frontend/src/components/customers/integrations/CustomerIntegrationDetails.vue
+1 -1
@@ -75,7 +75,7 @@ import type { FormInst, FormRules, FormValidationError } from "naive-ui"
75 import Api from "@/api"
76 import CardKV from "@/components/common/cards/CardKV.vue"
77 import Icon from "@/components/common/Icon.vue"
78 -import _uniqBy from "lodash/uniqBy"
78 +import _uniqBy from "lodash-es/uniqBy"
79 import { NButton, NCollapseTransition, NForm, NFormItem, NInput, NSpin, useDialog, useMessage } from "naive-ui"
80 import { computed, ref } from "vue"
81 import { handleDeleteIntegration } from "./utils"
frontend/src/components/customers/networkConnectors/CustomerNetworkConnectorItem.vue
+1 -1
@@ -63,7 +63,7 @@ import Badge from "@/components/common/Badge.vue"
63 import CardEntity from "@/components/common/cards/CardEntity.vue"
64 import CardKV from "@/components/common/cards/CardKV.vue"
65 import Icon from "@/components/common/Icon.vue"
66 -import _uniqBy from "lodash/uniqBy"
66 +import _uniqBy from "lodash-es/uniqBy"
67 import { NButton, NModal } from "naive-ui"
68 import { computed, ref, toRefs } from "vue"
69 import CustomerNetworkConnectorActions from "./CustomerNetworkConnectorActions.vue"
frontend/src/components/customers/networkConnectors/provisions/FortinetForm.vue
+2 -2
@@ -53,14 +53,14 @@ const rules: FormRules = {
53 hot_data_retention: {
54 message: "Field required",
55 trigger: ["input", "blur"],
56 - validator: (rule: FormItemRule, value: string): boolean => {
56 + validator: (_rule: FormItemRule, value: string): boolean => {
57 return value !== null
58 }
59 },
60 index_replicas: {
61 message: "Field required",
62 trigger: ["input", "blur"],
63 - validator: (rule: FormItemRule, value: string): boolean => {
63 + validator: (_rule: FormItemRule, value: string): boolean => {
64 return value !== null
65 }
66 }
frontend/src/components/customers/provision/CustomerDefaultSettingsForm.vue
+4 -4
@@ -38,8 +38,8 @@
38 import type { CustomerProvisioningDefaultSettings } from "@/types/customers.d"
39 import type { FormInst, FormItemRule, FormRules, FormValidationError } from "naive-ui"
40 import Api from "@/api"
41 -import _get from "lodash/get"
42 -import _trim from "lodash/trim"
41 +import _get from "lodash-es/get"
42 +import _trim from "lodash-es/trim"
43 import { NButton, NForm, NFormItem, NInput, NSpin, useMessage } from "naive-ui"
44 import isIP from "validator/es/lib/isIP"
45 import isURL from "validator/es/lib/isURL"
@@ -193,7 +193,7 @@ function setForm(settings?: CustomerProvisioningDefaultSettings) {
193 form.value = getClearForm(settings)
194 }
195
196 -function validateIp(rule: FormItemRule, value: string) {
196 +function validateIp(_rule: FormItemRule, value: string) {
197 if (value && !isIP(value)) {
198 return new Error("Please input a valid IP Address")
199 }
@@ -201,7 +201,7 @@ function validateIp(rule: FormItemRule, value: string) {
201 return true
202 }
203
204 -function validateUrl(rule: FormItemRule, value: string) {
204 +function validateUrl(_rule: FormItemRule, value: string) {
205 if (value && !isURL(value, { require_tld: false })) {
206 return new Error("Please input a valid URL")
207 }
frontend/src/components/customers/provision/CustomerProvisionWizard.vue
+5 -5
@@ -272,7 +272,7 @@ import type { CustomerMeta, CustomerProvision, CustomerProvisioningDefaultSettin
272 import type { FormInst, FormItemRule, FormRules, FormValidationError, StepsProps } from "naive-ui"
273 import Api from "@/api"
274 import Icon from "@/components/common/Icon.vue"
275 -import _uniqBy from "lodash/uniqBy"
275 +import _uniqBy from "lodash-es/uniqBy"
276 import {
277 NButton,
278 NCard,
@@ -427,7 +427,7 @@ const rules: FormRules = {
427 }
428 }
429
430 -function validateUrl(rule: FormItemRule, value: string) {
430 +function validateUrl(_rule: FormItemRule, value: string) {
431 if (!value || !isURL(value, { require_tld: false })) {
432 return new Error("Please input a valid URL")
433 }
@@ -435,7 +435,7 @@ function validateUrl(rule: FormItemRule, value: string) {
435 return true
436 }
437
438 -function validatePort(rule: FormItemRule, value: string) {
438 +function validatePort(_rule: FormItemRule, value: string) {
439 if (!value || !isPort(value)) {
440 return new Error("Please input a valid Port number")
441 }
@@ -451,7 +451,7 @@ function validatePort(rule: FormItemRule, value: string) {
451 return true
452 }
453
454 -function validateIp(rule: FormItemRule, value: string) {
454 +function validateIp(_rule: FormItemRule, value: string) {
455 if (!value || !isIP(value)) {
456 return new Error("Please input a valid IP Address")
457 }
@@ -459,7 +459,7 @@ function validateIp(rule: FormItemRule, value: string) {
459 return true
460 }
461
462 -function validateAtLeastOne(rule: FormItemRule, value: string[]) {
462 +function validateAtLeastOne(_rule: FormItemRule, value: string[]) {
463 if (!value || !value.length) {
464 return new Error("Please select at least one option")
465 }
frontend/src/components/graylog/Metrics/List.vue
+3 -3
@@ -33,9 +33,9 @@
33
34 <script setup lang="ts">
35 import type { ThroughputMetric } from "@/types/graylog/metrics.d"
36 -import _groupBy from "lodash/groupBy"
37 -import _map from "lodash/map"
38 -import _trim from "lodash/trim"
36 +import _groupBy from "lodash-es/groupBy"
37 +import _map from "lodash-es/map"
38 +import _trim from "lodash-es/trim"
39 import { NCard, NProgress } from "naive-ui"
40 import { computed, toRefs } from "vue"
41
frontend/src/components/graylog/MonitoringAlerts/CustomAlertForm.vue
+6 -6
@@ -148,9 +148,9 @@ import type { FormInst, FormItemRule, FormRules, FormValidationError, MessageRea
148 import Api from "@/api"
149 import Icon from "@/components/common/Icon.vue"
150 import { CustomProvisionPriority } from "@/types/monitoringAlerts.d"
151 -import _get from "lodash/get"
152 -import _toSafeInteger from "lodash/toSafeInteger"
153 -import _trim from "lodash/trim"
151 +import _get from "lodash-es/get"
152 +import _toSafeInteger from "lodash-es/toSafeInteger"
153 +import _trim from "lodash-es/trim"
154 import { NButton, NCard, NForm, NFormItem, NInput, NInputNumber, NSelect, NSpin, useMessage } from "naive-ui"
155 import { computed, onMounted, ref, watch } from "vue"
156
@@ -250,8 +250,8 @@ const rules: FormRules = {
250 },
251 custom_fields: {
252 required: false,
253 - // eslint-disable-next-line unused-imports/no-unused-vars
254 - validator(rule: FormItemRule, value: string) {
253 +
254 + validator(_rule: FormItemRule, _value: string) {
255 if (!areAllCustomerFieldsFilled.value) {
256 return new Error(`Please fill all customer fields`)
257 }
@@ -303,7 +303,7 @@ const isValid = computed(() => {
303 })
304
305 function validatorNumber(fieldName: string, defaultMessage?: string) {
306 - return (rule: FormItemRule, value: string) => {
306 + return (_rule: FormItemRule, value: string) => {
307 if (!value) {
308 return new Error(defaultMessage || `${fieldName} is required`)
309 } else if (!/^\d*$/.test(value)) {
frontend/src/components/graylog/Pipelines/RulesSmallList.vue
+1 -1
@@ -32,7 +32,7 @@ const emit = defineEmits<{
32
33 const { rules } = toRefs(props)
34
35 -const ViewIcon = "iconoir:eye-alt"
35 +const ViewIcon = "iconoir:eye-solid"
36 </script>
37
38 <style lang="scss" scoped>
frontend/src/components/healthcheck/HealthcheckList.vue
+1 -1
@@ -67,7 +67,7 @@ import Api from "@/api"
67 import Icon from "@/components/common/Icon.vue"
68 import { InfluxDBAlertLevel } from "@/types/healthchecks.d"
69 import { useResizeObserver } from "@vueuse/core"
70 -import _orderBy from "lodash/orderBy"
70 +import _orderBy from "lodash-es/orderBy"
71 import { NButton, NEmpty, NPagination, NPopover, NSpin, useMessage } from "naive-ui"
72 import { computed, onBeforeMount, ref } from "vue"
73 import HealthcheckItem from "./HealthcheckItem.vue"
frontend/src/components/incidentManagement/alerts/AlertAsset.vue
+2 -2
@@ -163,7 +163,7 @@ import Badge from "@/components/common/Badge.vue"
163 import CardEntity from "@/components/common/cards/CardEntity.vue"
164 import Icon from "@/components/common/Icon.vue"
165 import { useGoto } from "@/composables/useGoto"
166 -import _truncate from "lodash/truncate"
166 +import _truncate from "lodash-es/truncate"
167 import { NCard, NDivider, NModal, NSpin, NTabPane, NTabs, useMessage } from "naive-ui"
168 import { computed, defineAsyncComponent, ref, watch } from "vue"
169
@@ -186,7 +186,7 @@ const ArtifactsCollect = defineAsyncComponent(() => import("@/components/artifac
186 const CodeSource = defineAsyncComponent(() => import("@/components/common/CodeSource.vue"))
187 const LicenseFeatureCheck = defineAsyncComponent(() => import("@/components/license/LicenseFeatureCheck.vue"))
188
189 -const ViewIcon = "iconoir:eye-alt"
189 +const ViewIcon = "iconoir:eye-solid"
190 const LinkIcon = "carbon:launch"
191 const { gotoAgent, gotoIndex } = useGoto()
192 const message = useMessage()
frontend/src/components/incidentManagement/alerts/AlertAssetInfo.vue
+2 -2
@@ -87,7 +87,7 @@ import Api from "@/api"
87 import CardKV from "@/components/common/cards/CardKV.vue"
88 import Icon from "@/components/common/Icon.vue"
89 import { useGoto } from "@/composables/useGoto"
90 -import _omit from "lodash/omit"
90 +import _omit from "lodash-es/omit"
91 import { NModal, NSpin, NTabPane, NTabs, useMessage } from "naive-ui"
92 import { computed, defineAsyncComponent, ref, toRefs, watch } from "vue"
93
@@ -98,7 +98,7 @@ const CodeSource = defineAsyncComponent(() => import("@/components/common/CodeSo
98 const { asset } = toRefs(props)
99
100 const LinkIcon = "carbon:launch"
101 -const ViewIcon = "iconoir:eye-alt"
101 +const ViewIcon = "iconoir:eye-solid"
102 const { gotoAgent, gotoIndex, gotoCustomer } = useGoto()
103 const message = useMessage()
104 const loading = ref(false)
frontend/src/components/incidentManagement/alerts/AlertCommentsList.vue
+1 -1
@@ -50,7 +50,7 @@ import type { AlertComment } from "@/types/incidentManagement/alerts.d"
50 import Api from "@/api"
51 import Icon from "@/components/common/Icon.vue"
52 import { useAuthStore } from "@/stores/auth"
53 -import _trim from "lodash/trim"
53 +import _trim from "lodash-es/trim"
54 import { NButton, NEmpty, NInput, NSpin, useMessage } from "naive-ui"
55 import { computed, ref, toRefs } from "vue"
56 import AlertCommentItem from "./AlertComment.vue"
frontend/src/components/incidentManagement/alerts/AlertDetailTimelineItem.vue
+1 -1
@@ -53,7 +53,7 @@ import CardEntity from "@/components/common/cards/CardEntity.vue"
53 import CardKV from "@/components/common/cards/CardKV.vue"
54 import Icon from "@/components/common/Icon.vue"
55 import { useGoto } from "@/composables/useGoto"
56 -import _omit from "lodash/omit"
56 +import _omit from "lodash-es/omit"
57 import { NModal, NTabPane, NTabs } from "naive-ui"
58 import { computed, defineAsyncComponent, ref, toRefs } from "vue"
59
frontend/src/components/incidentManagement/alerts/AlertDetails.vue
+1 -1
@@ -44,7 +44,7 @@
44 <script setup lang="ts">
45 import type { Alert, AlertComment, AlertIOC } from "@/types/incidentManagement/alerts.d"
46 import Api from "@/api"
47 -import _clone from "lodash/cloneDeep"
47 +import _clone from "lodash-es/cloneDeep"
48 import { NSpin, NTabPane, NTabs, useMessage } from "naive-ui"
49 import { defineAsyncComponent, onBeforeMount, ref, toRefs } from "vue"
50
frontend/src/components/incidentManagement/alerts/AlertIoCsForm.vue
+3 -3
@@ -59,8 +59,8 @@ import type { DeepNullable } from "@/types/common"
59 import type { AlertIOC } from "@/types/incidentManagement/alerts.d"
60 import type { FormInst, FormItemRule, FormRules, FormValidationError } from "naive-ui"
61 import Api from "@/api"
62 -import _get from "lodash/get"
63 -import _trim from "lodash/trim"
62 +import _get from "lodash-es/get"
63 +import _trim from "lodash-es/trim"
64 import { NButton, NForm, NFormItem, NInput, NSelect, NSpin, useMessage } from "naive-ui"
65 import isIP from "validator/es/lib/isIP"
66 import isURL from "validator/es/lib/isURL"
@@ -123,7 +123,7 @@ const isValid = computed(() => {
123 return valid
124 })
125
126 -function validateValue(rule: FormItemRule, value: string) {
126 +function validateValue(_rule: FormItemRule, value: string) {
127 if (!value) {
128 return new Error("Please input a valid Value")
129 }
frontend/src/components/incidentManagement/alerts/AlertItem.vue
+2 -2
@@ -278,8 +278,8 @@ import Icon from "@/components/common/Icon.vue"
278 import { useGoto } from "@/composables/useGoto"
279 import { useSettingsStore } from "@/stores/settings"
280 import { formatDate } from "@/utils"
281 -import _clone from "lodash/cloneDeep"
282 -import _truncate from "lodash/truncate"
281 +import _clone from "lodash-es/cloneDeep"
282 +import _truncate from "lodash-es/truncate"
283 import { NButton, NCard, NCheckbox, NModal, NPopover, NSpin, NTooltip, useDialog, useMessage } from "naive-ui"
284 import { computed, defineAsyncComponent, onMounted, ref, toRefs, watch } from "vue"
285 import AssigneeIcon from "../common/AssigneeIcon.vue"
frontend/src/components/incidentManagement/alerts/AlertMergeCaseButton.vue
+1 -1
@@ -60,7 +60,7 @@ import type { Size } from "naive-ui/es/button/src/interface"
60 import type { Ref } from "vue"
61 import Api from "@/api"
62 import Icon from "@/components/common/Icon.vue"
63 -import _orderBy from "lodash/orderBy"
63 +import _orderBy from "lodash-es/orderBy"
64 import { NButton, NEmpty, NModal, NScrollbar, NSpin, useMessage } from "naive-ui"
65 import { inject, ref, watch } from "vue"
66 import CaseItem from "../cases/CaseItem.vue"
frontend/src/components/incidentManagement/alerts/AlertTags.vue
+1 -1
@@ -28,7 +28,7 @@
28 import type { Alert } from "@/types/incidentManagement/alerts.d"
29 import Api from "@/api"
30 import Icon from "@/components/common/Icon.vue"
31 -import _trim from "lodash/trim"
31 +import _trim from "lodash-es/trim"
32 import { NButton, NDynamicTags, NSpin, NTag, useMessage } from "naive-ui"
33 import { ref, toRefs } from "vue"
34
frontend/src/components/incidentManagement/alerts/AlertsFilters.vue
+2 -2
@@ -161,8 +161,8 @@ import type { Ref } from "vue"
161 import type { AlertsListFilter } from "./types.d"
162 import Api from "@/api"
163 import Icon from "@/components/common/Icon.vue"
164 -import _cloneDeep from "lodash/cloneDeep"
165 -import _isEqual from "lodash/isEqual"
164 +import _cloneDeep from "lodash-es/cloneDeep"
165 +import _isEqual from "lodash-es/isEqual"
166 import { NButton, NDropdown, NInput, NInputGroup, NInputGroupLabel, NSelect, useMessage } from "naive-ui"
167 import { computed, inject, onBeforeMount, onMounted, ref } from "vue"
168 import { useRoute, useRouter } from "vue-router"
frontend/src/components/incidentManagement/alerts/AlertsList.vue
+1 -1
@@ -229,7 +229,7 @@ import CollapseKeepAlive from "@/components/common/CollapseKeepAlive.vue"
229 import Icon from "@/components/common/Icon.vue"
230 import { useResizeObserver, useStorage } from "@vueuse/core"
231 import axios from "axios"
232 -import _orderBy from "lodash/orderBy"
232 +import _orderBy from "lodash-es/orderBy"
233 import {
234 NBadge,
235 NButton,
frontend/src/components/incidentManagement/cases/CaseCreationForm.vue
+2 -2
@@ -75,8 +75,8 @@ import type { Case, CasePayload, CaseStatus } from "@/types/incidentManagement/c
75 import type { FormInst, FormRules, FormValidationError } from "naive-ui"
76 import type { Ref } from "vue"
77 import Api from "@/api"
78 -import _get from "lodash/get"
79 -import _trim from "lodash/trim"
78 +import _get from "lodash-es/get"
79 +import _trim from "lodash-es/trim"
80 import { NButton, NForm, NFormItem, NInput, NSelect, NSpin, useMessage } from "naive-ui"
81 import { computed, inject, onBeforeMount, onMounted, ref, watch } from "vue"
82
frontend/src/components/incidentManagement/cases/CaseDetails.vue
+1 -1
@@ -42,7 +42,7 @@
42 <script setup lang="ts">
43 import type { Case } from "@/types/incidentManagement/cases.d"
44 import Api from "@/api"
45 -import _clone from "lodash/cloneDeep"
45 +import _clone from "lodash-es/cloneDeep"
46 import { NEmpty, NSpin, NTabPane, NTabs, useMessage } from "naive-ui"
47 import { defineAsyncComponent, onBeforeMount, ref, toRefs } from "vue"
48
frontend/src/components/incidentManagement/cases/CaseItem.vue
+2 -2
@@ -231,8 +231,8 @@ import Icon from "@/components/common/Icon.vue"
231 import { useGoto } from "@/composables/useGoto"
232 import { useSettingsStore } from "@/stores/settings"
233 import { formatDate } from "@/utils"
234 -import _clone from "lodash/cloneDeep"
235 -import _truncate from "lodash/truncate"
234 +import _clone from "lodash-es/cloneDeep"
235 +import _truncate from "lodash-es/truncate"
236 import { NButton, NCard, NCollapse, NCollapseItem, NEmpty, NModal, NSpin, useDialog, useMessage } from "naive-ui"
237 import { computed, onBeforeMount, onMounted, ref, toRefs } from "vue"
238 import AlertItem from "../alerts/AlertItem.vue"
frontend/src/components/incidentManagement/cases/CasesList.vue
+2 -2
@@ -185,8 +185,8 @@ import type { Case, CaseStatus } from "@/types/incidentManagement/cases.d"
185 import Api from "@/api"
186 import Icon from "@/components/common/Icon.vue"
187 import { useResizeObserver } from "@vueuse/core"
188 -import _cloneDeep from "lodash/cloneDeep"
189 -import _orderBy from "lodash/orderBy"
188 +import _cloneDeep from "lodash-es/cloneDeep"
189 +import _orderBy from "lodash-es/orderBy"
190 import {
191 NBadge,
192 NButton,
frontend/src/components/incidentManagement/sources/SourceConfigurationForm.vue
+2 -2
@@ -142,7 +142,7 @@
142 import type { SourceConfiguration, SourceConfigurationModel, SourceName } from "@/types/incidentManagement/sources.d"
143 import type { FormInst, FormItemRule, FormRules, FormValidationError, MessageReactive } from "naive-ui"
144 import Api from "@/api"
145 -import _intersection from "lodash/intersection"
145 +import _intersection from "lodash-es/intersection"
146 import { NAlert, NButton, NForm, NFormItem, NInput, NSelect, NSpin, useMessage } from "naive-ui"
147 import { computed, onBeforeMount, onMounted, ref, toRefs, watch } from "vue"
148
@@ -264,7 +264,7 @@ function resetIndexAvailable() {
264 }
265 }
266
267 -function validateAtLeastOne(rule: FormItemRule, value: string[]) {
267 +function validateAtLeastOne(_rule: FormItemRule, value: string[]) {
268 if (!value || !value.length) {
269 return new Error("Please select at least one option")
270 }
frontend/src/components/license/LicenseCheckoutWizard.vue
+1 -1
@@ -138,7 +138,7 @@ const rules: FormRules = {
138 customer_email: {
139 required: true,
140 trigger: ["input", "blur"],
141 - validator: (rule: FormItemRule, value: string) => {
141 + validator: (_rule: FormItemRule, value: string) => {
142 if (!value) {
143 return new Error("Email is required")
144 }
frontend/src/components/license/LicenseDetails.vue
+1 -1
@@ -101,7 +101,7 @@ import CardKV from "@/components/common/cards/CardKV.vue"
101 import Icon from "@/components/common/Icon.vue"
102 import { useSettingsStore } from "@/stores/settings"
103 import { formatDate } from "@/utils"
104 -import _startCase from "lodash/startCase"
104 +import _startCase from "lodash-es/startCase"
105 import { NSpin, useMessage } from "naive-ui"
106 import { computed, defineAsyncComponent, onBeforeMount, onMounted, ref, toRefs } from "vue"
107
frontend/src/components/license/deprecated/LicenseEditor.vue
+1 -1
@@ -171,7 +171,7 @@ const rules: FormRules = {
171 email: {
172 required: true,
173 trigger: ["input", "blur"],
174 - validator: (rule: FormItemRule, value: string) => {
174 + validator: (_rule: FormItemRule, value: string) => {
175 if (!value) {
176 return new Error("Email is required")
177 }
frontend/src/components/logs/LogsFilters.vue
+2 -2
@@ -60,8 +60,8 @@ import type { LogsQueryEventType, LogsQueryTimeRange, LogsQueryTypes, LogsQueryV
60 import type { User } from "@/types/user.d"
61 import Api from "@/api"
62 import { LogEventType } from "@/types/logs.d"
63 -import _cloneDeep from "lodash/cloneDeep"
64 -import _toSafeInteger from "lodash/toSafeInteger"
63 +import _cloneDeep from "lodash-es/cloneDeep"
64 +import _toSafeInteger from "lodash-es/toSafeInteger"
65 import { NButton, NInput, NInputGroup, NInputNumber, NSelect } from "naive-ui"
66 import { computed, onBeforeMount, ref, toRefs, watch } from "vue"
67
frontend/src/components/logs/LogsList.vue
+1 -1
@@ -122,7 +122,7 @@ import Api from "@/api"
122 import Icon from "@/components/common/Icon.vue"
123 import { LogEventType } from "@/types/logs.d"
124 import { useResizeObserver } from "@vueuse/core"
125 -import _orderBy from "lodash/orderBy"
125 +import _orderBy from "lodash-es/orderBy"
126 import { NBadge, NButton, NEmpty, NModal, NPagination, NPopover, NSelect, NSpin, useMessage } from "naive-ui"
127 import { nanoid } from "nanoid"
128 import { computed, onBeforeMount, ref, toRefs } from "vue"
frontend/src/components/reportCreation/Panels.vue
+1 -1
@@ -205,7 +205,7 @@ import { useSettingsStore } from "@/stores/settings"
205 import { formatDate } from "@/utils"
206 import { useStorage } from "@vueuse/core"
207 import { saveAs } from "file-saver"
208 -import _kebabCase from "lodash/kebabCase"
208 +import _kebabCase from "lodash-es/kebabCase"
209 import { NButton, NDrawer, NDrawerContent, NPopover, NScrollbar, NSpin, NSwitch, NTooltip, useMessage } from "naive-ui"
210 import { computed, onMounted, ref, toRefs, watch } from "vue"
211 import draggable from "vuedraggable"
frontend/src/components/scheduler/JobForm.vue
+3 -3
@@ -33,8 +33,8 @@ import type { UpdateJobPayload } from "@/api/endpoints/scheduler"
33 import type { Job } from "@/types/scheduler.d"
34 import type { FormInst, FormItemRule, FormRules, FormValidationError, MessageReactive } from "naive-ui"
35 import Api from "@/api"
36 -import _get from "lodash/get"
37 -import _trim from "lodash/trim"
36 +import _get from "lodash-es/get"
37 +import _trim from "lodash-es/trim"
38 import { NButton, NForm, NFormItem, NInputNumber, NSpin, useMessage } from "naive-ui"
39 import { computed, ref, toRefs } from "vue"
40
@@ -74,7 +74,7 @@ const isValid = computed(() => {
74 })
75
76 function validatorNumber(fieldName: string, defaultMessage?: string) {
77 - return (rule: FormItemRule, value: string) => {
77 + return (_rule: FormItemRule, value: string) => {
78 if (!value) {
79 return new Error(defaultMessage || `${fieldName} is required`)
80 } else if (!/^\d*$/.test(value)) {
frontend/src/components/sigma/QueriesList.vue
+2 -2
@@ -132,8 +132,8 @@ import Api from "@/api"
132 import CollapseKeepAlive from "@/components/common/CollapseKeepAlive.vue"
133 import Icon from "@/components/common/Icon.vue"
134 import { useResizeObserver, useStorage } from "@vueuse/core"
135 -import _cloneDeep from "lodash/cloneDeep"
136 -import _orderBy from "lodash/orderBy"
135 +import _cloneDeep from "lodash-es/cloneDeep"
136 +import _orderBy from "lodash-es/orderBy"
137 import { NBadge, NButton, NEmpty, NPagination, NPopover, NSelect, NSpin, useMessage } from "naive-ui"
138 import { computed, onBeforeMount, ref, watch } from "vue"
139 import QueriesActions from "./QueriesActions.vue"
frontend/src/components/soc/SocAlerts/SocAlertAssets/SocAlertAssetsItem.vue
+1 -1
@@ -150,7 +150,7 @@ import { useGoto } from "@/composables/useGoto"
150 import { useSettingsStore } from "@/stores/settings"
151 import { isUrlLike } from "@/utils"
152 import dayjs from "@/utils/dayjs"
153 -import _omit from "lodash/omit"
153 +import _omit from "lodash-es/omit"
154 import { NModal, NTabPane, NTabs } from "naive-ui"
155 import { computed, defineAsyncComponent, ref } from "vue"
156
frontend/src/components/soc/SocAlerts/SocAlertItem/SocAlertItemActions.vue
+1 -1
@@ -80,7 +80,7 @@ const emit = defineEmits<{
80
81 const DeleteIcon = "ph:trash"
82 const DangerIcon = "majesticons:exclamation-line"
83 -const ViewIcon = "iconoir:eye-alt"
83 +const ViewIcon = "iconoir:eye-solid"
84
85 const dialog = useDialog()
86 const message = useMessage()
frontend/src/components/soc/SocAlerts/SocAlertItem/SocAlertItemContext.vue
+3 -3
@@ -37,9 +37,9 @@
37 import type { SocAlert } from "@/types/soc/alert.d"
38 import CardKV from "@/components/common/cards/CardKV.vue"
39 import Icon from "@/components/common/Icon.vue"
40 -import _compact from "lodash/compact"
41 -import _split from "lodash/split"
42 -import _uniq from "lodash/uniq"
40 +import _compact from "lodash-es/compact"
41 +import _split from "lodash-es/split"
42 +import _uniq from "lodash-es/uniq"
43 import { NInput } from "naive-ui"
44 import { computed, defineAsyncComponent, ref } from "vue"
45
frontend/src/components/soc/SocAlerts/SocAlertItem/SocAlertItemTimeline.vue
+1 -1
@@ -15,7 +15,7 @@
15 import type { SocAlert } from "@/types/soc/alert.d"
16 import { useSettingsStore } from "@/stores/settings"
17 import dayjs from "@/utils/dayjs"
18 -import _toNumber from "lodash/toSafeInteger"
18 +import _toNumber from "lodash-es/toSafeInteger"
19 import { NTimeline, NTimelineItem } from "naive-ui"
20 import { onBeforeMount, ref } from "vue"
21
frontend/src/components/soc/SocCases/SocCaseAssetsItem.vue
+3 -3
@@ -118,9 +118,9 @@ import CardEntity from "@/components/common/cards/CardEntity.vue"
118 import CardKV from "@/components/common/cards/CardKV.vue"
119 import Icon from "@/components/common/Icon.vue"
120 import { isUrlLike } from "@/utils"
121 -import _omit from "lodash/omit"
122 -import _split from "lodash/split"
123 -import _upperFirst from "lodash/upperFirst"
121 +import _omit from "lodash-es/omit"
122 +import _split from "lodash-es/split"
123 +import _upperFirst from "lodash-es/upperFirst"
124 import { NEmpty, NModal, NTabPane, NTabs } from "naive-ui"
125 import { computed, defineAsyncComponent, ref } from "vue"
126
frontend/src/components/soc/SocCases/SocCaseItem.vue
+2 -2
@@ -242,8 +242,8 @@ import { useGoto } from "@/composables/useGoto"
242 import { useSettingsStore } from "@/stores/settings"
243 import { StateName } from "@/types/soc/case.d"
244 import dayjs from "@/utils/dayjs"
245 -import _omit from "lodash/omit"
246 -import _split from "lodash/split"
245 +import _omit from "lodash-es/omit"
246 +import _split from "lodash-es/split"
247 import {
248 NCollapse,
249 NCollapseItem,
frontend/src/components/soc/SocCases/SocCaseNote.vue
+1 -1
@@ -101,7 +101,7 @@ import CardKV from "@/components/common/cards/CardKV.vue"
101 import Icon from "@/components/common/Icon.vue"
102 import { useSettingsStore } from "@/stores/settings"
103 import dayjs from "@/utils/dayjs"
104 -import _omit from "lodash/omit"
104 +import _omit from "lodash-es/omit"
105 import { NInput, NModal, NPopover, NTabPane, NTabs } from "naive-ui"
106 import { computed, defineAsyncComponent, ref } from "vue"
107
frontend/src/components/soc/SocCases/SocCaseTimeline.vue
+1 -1
@@ -15,7 +15,7 @@
15 import type { SocCaseExt } from "@/types/soc/case.d"
16 import { useSettingsStore } from "@/stores/settings"
17 import dayjs from "@/utils/dayjs"
18 -import _toNumber from "lodash/toSafeInteger"
18 +import _toNumber from "lodash-es/toSafeInteger"
19 import { NTimeline, NTimelineItem } from "naive-ui"
20 import { onBeforeMount, ref } from "vue"
21
frontend/src/components/soc/SocCases/SocCasesList.vue
+2 -2
@@ -118,8 +118,8 @@ import Api from "@/api"
118 import Icon from "@/components/common/Icon.vue"
119 import dayjs from "@/utils/dayjs"
120 import { useResizeObserver } from "@vueuse/core"
121 -import _cloneDeep from "lodash/cloneDeep"
122 -import _orderBy from "lodash/orderBy"
121 +import _cloneDeep from "lodash-es/cloneDeep"
122 +import _orderBy from "lodash-es/orderBy"
123 import {
124 NBadge,
125 NButton,
frontend/src/components/threatIntel/ThreatIntelForm.vue
+1 -1
@@ -78,7 +78,7 @@ import type { ThreatIntelResponse } from "@/types/threatIntel.d"
78 import Api from "@/api"
79 import { useSettingsStore } from "@/stores/settings"
80 import { formatDate } from "@/utils"
81 -import _trim from "lodash/trim"
81 +import _trim from "lodash-es/trim"
82 import { NButton, NInput, NSpin, useMessage } from "naive-ui"
83 import { computed, onMounted, ref } from "vue"
84
frontend/src/components/threatIntel/ThreatIntelProcessEvaluationProvider.vue
+1 -1
@@ -88,7 +88,7 @@
88 <script setup lang="ts">
89 import type { EvaluationData } from "@/types/threatIntel.d"
90 import Api from "@/api"
91 -import _toSafeInteger from "lodash/toSafeInteger"
91 +import _toSafeInteger from "lodash-es/toSafeInteger"
92 import { NCard, NEmpty, NInput, NModal, NSpin, NStatistic, NTabPane, NTabs, useMessage } from "naive-ui"
93 import { computed, defineAsyncComponent, ref } from "vue"
94
frontend/src/components/threatIntel/VirusTotalEnrichmentButton.vue
+1 -1
@@ -539,7 +539,7 @@ import Api from "@/api"
539 import Icon from "@/components/common/Icon.vue"
540 import { useSettingsStore } from "@/stores/settings"
541 import { formatDate } from "@/utils"
542 -import _pick from "lodash/pick"
542 +import _pick from "lodash-es/pick"
543 import { NButton, NEmpty, NInput, NModal, NStatistic, NTable, NTabPane, NTabs, useMessage } from "naive-ui"
544 import { computed, defineAsyncComponent, ref } from "vue"
545
frontend/src/components/users/ChangePassword.vue
+2 -2
@@ -114,7 +114,7 @@ const rules: FormRules = {
114 message: "Password is required"
115 },
116 {
117 - validator: (rule: FormItemRule, value: string): boolean => {
117 + validator: (_rule: FormItemRule, value: string): boolean => {
118 return !!passwordSchema.validate(value, { details: false })
119 },
120 message:
@@ -129,7 +129,7 @@ const rules: FormRules = {
129 message: "Confirm Password is required"
130 },
131 {
132 - validator: (rule: FormItemRule, value: string): boolean => {
132 + validator: (_rule: FormItemRule, value: string): boolean => {
133 return value === model.value.password
134 },
135 message: "Password is not same as re-entered password",
frontend/src/components/webVulnerabilityAssessment/ScanHostForm.vue
+1 -1
@@ -50,7 +50,7 @@ const message = useMessage()
50 const form = ref<FormPayload>(getClearForm())
51 const formRef = ref<FormInst | null>(null)
52
53 -function validateUrl(rule: FormItemRule, value: string) {
53 +function validateUrl(_rule: FormItemRule, value: string) {
54 if (!value) {
55 return new Error("Please input a valid Host")
56 }
frontend/src/composables/useHealthchecksNotify.ts
+1 -1
@@ -1,7 +1,7 @@
1 import type { Notification } from "./useNotifications"
2 import { usHealthcheckStore } from "@/stores/healthcheck"
3 import { IndexHealth } from "@/types/indices.d"
4 -import _capitalize from "lodash/capitalize"
4 +import _capitalize from "lodash-es/capitalize"
5 import { computed, watch } from "vue"
6 import { useGoto } from "./useGoto"
7 import { useNotifications } from "./useNotifications"
frontend/src/composables/useNotifications.ts
+1 -1
@@ -2,7 +2,7 @@ import type { NotificationObject } from "./useGlobalActions"
2 import { useSettingsStore } from "@/stores/settings"
3 import dayjs from "@/utils/dayjs"
4 import { useStorage } from "@vueuse/core"
5 -import _uniqBy from "lodash/uniqBy"
5 +import _uniqBy from "lodash-es/uniqBy"
6 import { NButton } from "naive-ui"
7 import { computed, h } from "vue"
8 import { useGlobalActions } from "./useGlobalActions"
frontend/src/stores/auth.ts
+3 -3
@@ -5,9 +5,9 @@ import { AuthUserRole, RouteRole } from "@/types/auth.d"
5 import { getAvatar, getNameInitials } from "@/utils"
6 import { jwtRoleToUserRole } from "@/utils/auth"
7 import * as jose from "jose"
8 -import _castArray from "lodash/castArray"
9 -import _toLower from "lodash/toLower"
10 -import _toNumber from "lodash/toNumber"
8 +import _castArray from "lodash-es/castArray"
9 +import _toLower from "lodash-es/toLower"
10 +import _toNumber from "lodash-es/toNumber"
11 import { acceptHMRUpdate, defineStore } from "pinia"
12 import SecureLS from "secure-ls"
13
frontend/src/stores/healthcheck.ts
+1 -1
@@ -2,7 +2,7 @@ import type { InfluxDBAlert } from "@/types/healthchecks.d"
2 import Api from "@/api"
3 import { InfluxDBAlertLevel } from "@/types/healthchecks.d"
4 import { IndexHealth } from "@/types/indices.d"
5 -import _toNumber from "lodash/toNumber"
5 +import _toNumber from "lodash-es/toNumber"
6 import { acceptHMRUpdate, defineStore } from "pinia"
7
8 export const usHealthcheckStore = defineStore("healthcheck", {
frontend/src/stores/theme.ts
+2 -2
@@ -4,8 +4,8 @@ import type { BuiltInGlobalTheme } from "naive-ui/es/themes/interface"
4 import { getCssVars, getDefaultState, getThemeOverrides } from "@/theme"
5 import { ThemeNameEnum } from "@/types/theme.d"
6 import { useWindowSize } from "@vueuse/core"
7 -import _get from "lodash/get"
8 -import _set from "lodash/set"
7 +import _get from "lodash-es/get"
8 +import _set from "lodash-es/set"
9 import { darkTheme, lightTheme } from "naive-ui"
10 import { acceptHMRUpdate, defineStore } from "pinia"
11 import { watch } from "vue"
frontend/src/types/libs/vue-sjv.d.ts new
+3
@@ -0,0 +1,3 @@
1 +declare module "vue-sjv" {
2 + export * as SimpleJsonViewer from "node_modules/vue-sjv/dist/SimpleJsonViewer.vue.d"
3 +}
frontend/src/types/portainer.d.ts new
+59
@@ -0,0 +1,59 @@
1 +export interface PortainerStack {
2 + Id: number
3 + Name: string
4 + /** This indicates the kind of stack that Portainer is managing */
5 + Type: PortainerStackType
6 + EndpointId: number
7 + SwarmId: string
8 + EntryPoint: string
9 + Env: string[]
10 + ResourceControl: PortainerStackResourceControl | null
11 + Status: PortainerStackStatus
12 + ProjectPath: string
13 + CreationDate: number
14 + CreatedBy: string
15 + UpdateDate: number
16 + UpdatedBy: string
17 + AdditionalFiles: string | null
18 + AutoUpdate: string | null
19 + Option: string | null
20 + GitConfig: string | null
21 + FromAppTemplate: boolean
22 + Namespace: string
23 + IsComposeFormat: boolean
24 +}
25 +
26 +export enum PortainerStackStatus {
27 + Online = 1,
28 + Offline = 2
29 +}
30 +
31 +export enum PortainerStackType {
32 + DockerSwarmStack = 1,
33 + /** using docker-compose */
34 + StandaloneDockerStack = 2,
35 + KubernetesStack = 3
36 +}
37 +
38 +export interface PortainerStackResourceControl {
39 + Id: number
40 + ResourceId: string
41 + SubResourceIds: string[]
42 + /** This is an integer that tells Portainer which type of resource the ResourceControl object is protecting. ResourceControl can be applied to containers, stacks, secrets, configs, and so forth. */
43 + Type: PortainerStackResourceControlType
44 + UserAccesses: string[]
45 + TeamAccesses: string[]
46 + Public: boolean
47 + AdministratorsOnly: boolean
48 + System: boolean
49 +}
50 +
51 +export enum PortainerStackResourceControlType {
52 + Container = 1,
53 + Service = 2,
54 + Volume = 3,
55 + Network = 4,
56 + Secret = 5,
57 + Stack = 6,
58 + Config = 7
59 +}
frontend/src/utils/auth.ts
+2 -2
@@ -3,8 +3,8 @@ import type { RouteLocationNormalized } from "vue-router"
3 import { useAuthStore } from "@/stores/auth"
4 import { AuthUserRole } from "@/types/auth.d"
5 import { decodeJwt } from "jose"
6 -import _castArray from "lodash/castArray"
7 -import _toNumber from "lodash/toNumber"
6 +import _castArray from "lodash-es/castArray"
7 +import _toNumber from "lodash-es/toNumber"
8
9 export function isDebounceTimeOver(lastCheck: Date | null) {
10 const debounceTime = useAuthStore().tokenDebounceTime
frontend/src/utils/index.ts
+1 -1
@@ -5,7 +5,7 @@ import Icon from "@/components/common/Icon.vue"
5 import dayjs from "@/utils/dayjs"
6 import { isMobile as detectMobile } from "detect-touch-device"
7 import { md5 } from "js-md5"
8 -import _trim from "lodash/trim"
8 +import _trim from "lodash-es/trim"
9 import { h } from "vue"
10
11 // Transform File Instance in base64 string
frontend/src/utils/theme.ts
+1 -1
@@ -1,6 +1,6 @@
1 import type { ColorAction, ColorKey, ThemeColor } from "@/types/theme.d"
2 import { colord } from "colord"
3 -import _get from "lodash/get"
3 +import _get from "lodash-es/get"
4
5 export const COLOR_SHADES = ["005", "010", "015", "020", "030", "040", "050", "060", "070", "080", "090"] as const
6
frontend/src/views/agents/Agents.vue
+2 -2
@@ -61,8 +61,8 @@ import AgentCard from "@/components/agents/AgentCard.vue"
61 import AgentToolbar from "@/components/agents/AgentToolbar.vue"
62 import { useGoto } from "@/composables/useGoto"
63 import { AgentStatus } from "@/types/agents.d"
64 -import _debounce from "lodash/debounce"
65 -import _split from "lodash/split"
64 +import _debounce from "lodash-es/debounce"
65 +import _split from "lodash-es/split"
66 import { NEmpty, NPagination, NScrollbar, NSpin, useMessage } from "naive-ui"
67 import { computed, onBeforeMount, ref, watch } from "vue"
68
frontend/tsconfig.app.json
+8 -10
@@ -1,20 +1,18 @@
1 {
2 "extends": "@vue/tsconfig/tsconfig.dom.json",
3 "compilerOptions": {
4 - "composite": true,
4 "tsBuildInfoFile": "./node_modules/.tmp/tsconfig.app.tsbuildinfo",
6 - "jsx": "preserve",
7 - "jsxImportSource": "vue",
8 - "baseUrl": ".",
9 - "moduleResolution": "node",
5 "paths": {
6 "@/*": ["./src/*"]
7 },
13 - "types": ["node", "naive-ui/volar"],
8 + "typeRoots": ["./node_modules/@types", "./node_modules/vue-sjv/dist"],
9 "allowJs": true,
15 - "noEmit": true,
16 - "isolatedModules": true
10 +
11 + "strict": true,
12 + "noFallthroughCasesInSwitch": true,
13 + "noUnusedLocals": true,
14 + "noUnusedParameters": true,
15 + "noUncheckedSideEffectImports": true
16 },
18 - "include": ["src/**/*.d.ts", "src/**/*.ts", "src/**/*.tsx", "src/**/*.vue", "src/**/*.json", "src/**/*.js"],
19 - "exclude": ["src/**/__tests__/*"]
17 + "include": ["src/**/*.ts", "src/**/*.tsx", "src/**/*.vue"]
18 }
frontend/tsconfig.json
-3
@@ -1,7 +1,4 @@
1 {
2 - "compilerOptions": {
3 - "module": "NodeNext"
4 - },
2 "references": [
3 {
4 "path": "./tsconfig.node.json"
frontend/tsconfig.node.json
+16 -6
@@ -1,12 +1,22 @@
1 {
2 - "extends": "@tsconfig/node20/tsconfig.json",
2 "compilerOptions": {
4 - "composite": true,
3 "tsBuildInfoFile": "./node_modules/.tmp/tsconfig.node.tsbuildinfo",
4 + "target": "ES2022",
5 + "lib": ["ES2023"],
6 + "moduleDetection": "force",
7 "module": "ESNext",
7 - "moduleResolution": "Bundler",
8 - "types": ["node"],
9 - "noEmit": true
8 +
9 + "moduleResolution": "bundler",
10 + "allowImportingTsExtensions": true,
11 +
12 + "strict": true,
13 + "noFallthroughCasesInSwitch": true,
14 + "noUnusedLocals": true,
15 + "noUnusedParameters": true,
16 + "noEmit": true,
17 + "isolatedModules": true,
18 + "skipLibCheck": true,
19 + "noUncheckedSideEffectImports": true
20 },
11 - "include": ["vite.config.*", "vitest.config.*", "cypress.config.*", "nightwatch.conf.*", "playwright.config.*"]
21 + "include": ["vite.config.ts"]
22 }