From 2b01a42c2badb69db170f3530a6eeb74cf209c5f Mon Sep 17 00:00:00 2001 From: guerler Date: Mon, 8 Jun 2026 20:02:49 +0300 Subject: [PATCH 01/31] History graph, trim job state summary, drop tr_nodes no-op guard --- lib/galaxy/managers/history_graph.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/lib/galaxy/managers/history_graph.py b/lib/galaxy/managers/history_graph.py index af8e5179ef2..0106af82373 100644 --- a/lib/galaxy/managers/history_graph.py +++ b/lib/galaxy/managers/history_graph.py @@ -73,7 +73,9 @@ SYNTHETIC_TOOL_IDS: tuple[str, ...] = ("__DATA_FETCH__",) def _summary_dict(summary) -> Optional[dict[str, int]]: """Lift JobStateSummary (a NamedTuple) to a dict, or None.""" - return None if summary is None else summary._asdict() + if summary is None or summary.all_jobs == 0: + return None + return summary._asdict() class HistoryGraphManager: @@ -601,8 +603,6 @@ class HistoryGraphBuilder: ] def _tr_nodes(self, tr_map: dict[int, Optional[str]]) -> list[GraphNode]: - if not tr_map: - return [] return [self._node("tool_request", tr_id, tool_id=tool_id) for tr_id, tool_id in tr_map.items()] def _resolve_tool_names(self, nodes: list[GraphNode]) -> None: From ecd6bc0549c4678c796f3aa9873628bce588bd21 Mon Sep 17 00:00:00 2001 From: PlushZ Date: Tue, 28 Apr 2026 15:18:19 +1000 Subject: [PATCH 02/31] add filesource for mavedb based on mavedb-fsspec --- lib/galaxy/files/sources/mavedb.py | 114 ++++++++++++++++++ .../templates/examples/production_mavedb.yml | 19 +++ lib/galaxy/files/templates/models.py | 20 +++ 3 files changed, 153 insertions(+) create mode 100644 lib/galaxy/files/sources/mavedb.py create mode 100644 lib/galaxy/files/templates/examples/production_mavedb.yml diff --git a/lib/galaxy/files/sources/mavedb.py b/lib/galaxy/files/sources/mavedb.py new file mode 100644 index 00000000000..f3b28e7a402 --- /dev/null +++ b/lib/galaxy/files/sources/mavedb.py @@ -0,0 +1,114 @@ +from typing import ( + Optional, + Union, +) + +from fsspec import AbstractFileSystem + +from galaxy.exceptions import AuthenticationRequired, MessageException +from galaxy.files.models import AnyRemoteEntry, FilesSourceRuntimeContext +from galaxy.files.sources._defaults import DEFAULT_SCHEME +from galaxy.files.sources._fsspec import ( + CacheOptionsDictType, + FsspecBaseFileSourceConfiguration, + FsspecBaseFileSourceTemplateConfiguration, + FsspecFilesSource, +) +from galaxy.util.config_templates import TemplateExpansion + +try: + from mavedb_fsspec import MaveDBFileSystem + from mavedb_fsspec.client import DEFAULT_BASE_URL +except ImportError: + MaveDBFileSystem = None # type: ignore[misc, assignment] + DEFAULT_BASE_URL = "https://api.mavedb.org/api/v1" + + +class MaveDBFileSourceTemplateConfiguration(FsspecBaseFileSourceTemplateConfiguration): + base_url: Union[str, TemplateExpansion] = DEFAULT_BASE_URL + api_key: Union[str, TemplateExpansion, None] = None + timeout: Union[float, TemplateExpansion] = 30.0 + + +class MaveDBFileSourceConfiguration(FsspecBaseFileSourceConfiguration): + base_url: str = DEFAULT_BASE_URL + api_key: Optional[str] = None + timeout: float = 30.0 + + +class MaveDBFilesSource(FsspecFilesSource[MaveDBFileSourceTemplateConfiguration, MaveDBFileSourceConfiguration]): + plugin_type = "mavedb" + required_module = MaveDBFileSystem + required_package = "mavedb-fsspec" + + template_config_class = MaveDBFileSourceTemplateConfiguration + resolved_config_class = MaveDBFileSourceConfiguration + + def _open_fs( + self, + context: FilesSourceRuntimeContext[MaveDBFileSourceConfiguration], + cache_options: CacheOptionsDictType, + ) -> AbstractFileSystem: + if MaveDBFileSystem is None: + raise self.required_package_exception + + config = context.config + return MaveDBFileSystem( + base_url=config.base_url, + api_key=config.api_key, + timeout=config.timeout, + **cache_options, + ) + + def _list( + self, + context: FilesSourceRuntimeContext[MaveDBFileSourceConfiguration], + path="/", + recursive=False, + write_intent: bool = False, + limit: Optional[int] = None, + offset: Optional[int] = None, + query: Optional[str] = None, + sort_by: Optional[str] = None, + ) -> tuple[list[AnyRemoteEntry], int]: + collection = path.strip("/") + if recursive or collection not in {"score-sets", "my-score-sets"}: + return super()._list(context, path, recursive, write_intent, limit, offset, query, sort_by) + + try: + cache_options = self._get_cache_options(context.config) + fs = self._open_fs(context, cache_options) + entries, total_count = fs.list_score_sets( # type: ignore[attr-defined] + collection=collection, + limit=limit, + offset=offset, + query=query, + ) + return [self._info_to_entry(entry, context.config) for entry in entries], total_count + except PermissionError as e: + raise AuthenticationRequired( + f"Permission Denied. Reason: {e}. Please check your credentials in your preferences for {self.label}." + ) + except Exception as e: + raise MessageException(f"Problem listing file source path {path}. Reason: {e}") from e + + def _info_to_entry(self, info: dict, config: MaveDBFileSourceConfiguration) -> AnyRemoteEntry: + entry = super()._info_to_entry(info, config) + display_name = info.get("display_name") + if display_name: + entry.name = display_name + return entry + + def _write_from( + self, + _target_path: str, + _native_path: str, + _context: FilesSourceRuntimeContext[MaveDBFileSourceConfiguration], + ): + raise MessageException("MaveDB file sources are read-only and do not support exporting files.") + + def get_scheme(self) -> str: + return self.scheme if self.scheme and self.scheme != DEFAULT_SCHEME else "mavedb" + + +__all__ = ("MaveDBFilesSource",) diff --git a/lib/galaxy/files/templates/examples/production_mavedb.yml b/lib/galaxy/files/templates/examples/production_mavedb.yml new file mode 100644 index 00000000000..d51e00a17fa --- /dev/null +++ b/lib/galaxy/files/templates/examples/production_mavedb.yml @@ -0,0 +1,19 @@ +- id: mavedb + version: 0 + name: MaveDB + description: | + [MaveDB](https://www.mavedb.org) provides Multiplexed Assays of Variant Effect datasets. + This file source exposes read-only score set files through the public MaveDB API. + secrets: + api_key: + label: MaveDB API key + optional: true + help: | + Optional MaveDB API key. Public score set files do not require an API key. + A user API key can be generated in the MaveDB settings page for your account + and is needed to access private datasets. + configuration: + type: mavedb + base_url: https://api.mavedb.org/api/v1 + api_key: "{{ secrets.api_key }}" + timeout: 30 diff --git a/lib/galaxy/files/templates/models.py b/lib/galaxy/files/templates/models.py index e1e36e80a24..f104e1f24cf 100644 --- a/lib/galaxy/files/templates/models.py +++ b/lib/galaxy/files/templates/models.py @@ -51,6 +51,7 @@ FileSourceTemplateType = Literal[ "dataverse", "huggingface", "iiif", + "mavedb", "omero", "ssh", ] @@ -440,6 +441,22 @@ class IIIFFileSourceConfiguration(StrictModel): manifest_url: str +class MaveDBFileSourceTemplateConfiguration(StrictModel): + type: Literal["mavedb"] + base_url: Union[str, TemplateExpansion] = "https://api.mavedb.org/api/v1" + api_key: Union[str, TemplateExpansion, None] = None + timeout: Union[float, TemplateExpansion] = 30.0 + template_start: Optional[str] = None + template_end: Optional[str] = None + + +class MaveDBFileSourceConfiguration(StrictModel): + type: Literal["mavedb"] + base_url: str = "https://api.mavedb.org/api/v1" + api_key: Optional[str] = None + timeout: float = 30.0 + + class OmeroFileSourceTemplateConfiguration(StrictModel): type: Literal["omero"] username: Union[str, TemplateExpansion] @@ -480,6 +497,7 @@ FileSourceTemplateConfiguration = Annotated[ DataverseFileSourceTemplateConfiguration, HuggingFaceFileSourceTemplateConfiguration, IIIFFileSourceTemplateConfiguration, + MaveDBFileSourceTemplateConfiguration, OmeroFileSourceTemplateConfiguration, SshFileSourceTemplateConfiguration, ], @@ -506,6 +524,7 @@ FileSourceConfiguration = Annotated[ DataverseFileSourceConfiguration, HuggingFaceFileSourceConfiguration, IIIFFileSourceConfiguration, + MaveDBFileSourceConfiguration, OmeroFileSourceConfiguration, SshFileSourceConfiguration, ], @@ -590,6 +609,7 @@ TypesToConfigurationClasses: dict[FileSourceTemplateType, type[FileSourceConfigu "dataverse": DataverseFileSourceConfiguration, "huggingface": HuggingFaceFileSourceConfiguration, "iiif": IIIFFileSourceConfiguration, + "mavedb": MaveDBFileSourceConfiguration, "omero": OmeroFileSourceConfiguration, "ssh": SshFileSourceConfiguration, } From 50f3e387a9a8c043433607a0be848528fbeef6cf Mon Sep 17 00:00:00 2001 From: PlushZ Date: Wed, 29 Apr 2026 12:36:49 +1000 Subject: [PATCH 03/31] fix formatting --- lib/galaxy/files/sources/mavedb.py | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/lib/galaxy/files/sources/mavedb.py b/lib/galaxy/files/sources/mavedb.py index f3b28e7a402..a5f4dc0aff2 100644 --- a/lib/galaxy/files/sources/mavedb.py +++ b/lib/galaxy/files/sources/mavedb.py @@ -5,8 +5,14 @@ from typing import ( from fsspec import AbstractFileSystem -from galaxy.exceptions import AuthenticationRequired, MessageException -from galaxy.files.models import AnyRemoteEntry, FilesSourceRuntimeContext +from galaxy.exceptions import ( + AuthenticationRequired, + MessageException, +) +from galaxy.files.models import ( + AnyRemoteEntry, + FilesSourceRuntimeContext, +) from galaxy.files.sources._defaults import DEFAULT_SCHEME from galaxy.files.sources._fsspec import ( CacheOptionsDictType, @@ -20,7 +26,7 @@ try: from mavedb_fsspec import MaveDBFileSystem from mavedb_fsspec.client import DEFAULT_BASE_URL except ImportError: - MaveDBFileSystem = None # type: ignore[misc, assignment] + MaveDBFileSystem = None DEFAULT_BASE_URL = "https://api.mavedb.org/api/v1" @@ -78,7 +84,7 @@ class MaveDBFilesSource(FsspecFilesSource[MaveDBFileSourceTemplateConfiguration, try: cache_options = self._get_cache_options(context.config) fs = self._open_fs(context, cache_options) - entries, total_count = fs.list_score_sets( # type: ignore[attr-defined] + entries, total_count = fs.list_score_sets( collection=collection, limit=limit, offset=offset, From 01fe68789bb071cfd78427155c78a79ddf831496 Mon Sep 17 00:00:00 2001 From: PlushZ Date: Wed, 29 Apr 2026 12:54:48 +1000 Subject: [PATCH 04/31] schema changes after make update-client-api-schema --- client/packages/api-client/src/schema/schema.ts | 2 ++ 1 file changed, 2 insertions(+) diff --git a/client/packages/api-client/src/schema/schema.ts b/client/packages/api-client/src/schema/schema.ts index a65bbc4cdb5..54a8ff970c0 100644 --- a/client/packages/api-client/src/schema/schema.ts +++ b/client/packages/api-client/src/schema/schema.ts @@ -13092,6 +13092,7 @@ export interface components { | "dataverse" | "huggingface" | "iiif" + | "mavedb" | "omero" | "ssh"; /** Variables */ @@ -25381,6 +25382,7 @@ export interface components { | "dataverse" | "huggingface" | "iiif" + | "mavedb" | "omero" | "ssh"; /** Uri Root */ From 3d2b15ca65fcec24825bcb666ccf846b9eccc10d Mon Sep 17 00:00:00 2001 From: PlushZ Date: Wed, 29 Apr 2026 14:07:54 +1000 Subject: [PATCH 05/31] add mavedb key to templateTypes --- client/src/api/fileSources.ts | 4 ++++ lib/galaxy/files/templates/examples/production_mavedb.yml | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/client/src/api/fileSources.ts b/client/src/api/fileSources.ts index 008775f999b..ff8320d92a8 100644 --- a/client/src/api/fileSources.ts +++ b/client/src/api/fileSources.ts @@ -32,6 +32,10 @@ export const templateTypes: FileSourceTypesDetail = { icon: faGoogleDrive, message: "This is a repository plugin that connects with the commercial Google Drive service.", }, + mavedb: { + icon: faNetworkWired, + message: "This is a repository plugin that connects with MaveDB score set files.", + }, onedrive: { icon: faCloud, message: "This is a repository plugin that connects with Microsoft OneDrive.", diff --git a/lib/galaxy/files/templates/examples/production_mavedb.yml b/lib/galaxy/files/templates/examples/production_mavedb.yml index d51e00a17fa..b7b99fdbb7a 100644 --- a/lib/galaxy/files/templates/examples/production_mavedb.yml +++ b/lib/galaxy/files/templates/examples/production_mavedb.yml @@ -3,7 +3,7 @@ name: MaveDB description: | [MaveDB](https://www.mavedb.org) provides Multiplexed Assays of Variant Effect datasets. - This file source exposes read-only score set files through the public MaveDB API. + This file source exposes score set files through the public MaveDB API. secrets: api_key: label: MaveDB API key From f2e4608a763871edbea33f99c185251546784a47 Mon Sep 17 00:00:00 2001 From: PlushZ Date: Thu, 21 May 2026 19:16:12 +1000 Subject: [PATCH 06/31] adapt to changes after mavedb-fsspec review --- lib/galaxy/files/sources/mavedb.py | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/lib/galaxy/files/sources/mavedb.py b/lib/galaxy/files/sources/mavedb.py index a5f4dc0aff2..3557c1a03b4 100644 --- a/lib/galaxy/files/sources/mavedb.py +++ b/lib/galaxy/files/sources/mavedb.py @@ -63,6 +63,7 @@ class MaveDBFilesSource(FsspecFilesSource[MaveDBFileSourceTemplateConfiguration, base_url=config.base_url, api_key=config.api_key, timeout=config.timeout, + skip_instance_cache=True, **cache_options, ) @@ -84,12 +85,17 @@ class MaveDBFilesSource(FsspecFilesSource[MaveDBFileSourceTemplateConfiguration, try: cache_options = self._get_cache_options(context.config) fs = self._open_fs(context, cache_options) - entries, total_count = fs.list_score_sets( - collection=collection, - limit=limit, - offset=offset, - query=query, - ) + try: + entries, total_count = fs.list_score_sets( + collection=collection, + limit=limit, + offset=offset, + query=query, + ) + finally: + close = getattr(fs, "close", None) + if close is not None: + close() return [self._info_to_entry(entry, context.config) for entry in entries], total_count except PermissionError as e: raise AuthenticationRequired( From 64077508ec49b45e4260089cadb7f15ab190a93a Mon Sep 17 00:00:00 2001 From: PlushZ Date: Wed, 10 Jun 2026 20:50:00 +0200 Subject: [PATCH 07/31] Install mavedb-fsspec for MaveDB file source --- lib/galaxy/dependencies/__init__.py | 3 +++ lib/galaxy/dependencies/conditional-requirements.txt | 1 + 2 files changed, 4 insertions(+) diff --git a/lib/galaxy/dependencies/__init__.py b/lib/galaxy/dependencies/__init__.py index 0cb34fb839f..f1aff439037 100644 --- a/lib/galaxy/dependencies/__init__.py +++ b/lib/galaxy/dependencies/__init__.py @@ -363,6 +363,9 @@ class ConditionalDependencies: def check_iiif_fsspec(self): return "iiif" in self.file_sources + def check_mavedb_fsspec(self): + return "mavedb" in self.file_sources + def strip_comment(line): # lifted from https://github.com/tox-dev/tox/commit/3c6b4f204e89852c4b7536b246a66d20be6d39ec diff --git a/lib/galaxy/dependencies/conditional-requirements.txt b/lib/galaxy/dependencies/conditional-requirements.txt index 2c45fb5ba80..0e6f82529d7 100644 --- a/lib/galaxy/dependencies/conditional-requirements.txt +++ b/lib/galaxy/dependencies/conditional-requirements.txt @@ -36,6 +36,7 @@ huggingface_hub omero-py #type: omero iiif-fsspec # type: iiif fs-irods # type: irods, depends on python-irodsclient +mavedb-fsspec>=0.1.0 # type: mavedb # Vault backend hvac From d6264e13cbeb97ba58a964dcc83c0647eecb4b09 Mon Sep 17 00:00:00 2001 From: PlushZ Date: Thu, 11 Jun 2026 16:20:51 +0200 Subject: [PATCH 08/31] Clarify MaveDB-specific filesystem listing --- lib/galaxy/files/sources/mavedb.py | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/lib/galaxy/files/sources/mavedb.py b/lib/galaxy/files/sources/mavedb.py index 3557c1a03b4..cd70ad1ff63 100644 --- a/lib/galaxy/files/sources/mavedb.py +++ b/lib/galaxy/files/sources/mavedb.py @@ -3,8 +3,6 @@ from typing import ( Union, ) -from fsspec import AbstractFileSystem - from galaxy.exceptions import ( AuthenticationRequired, MessageException, @@ -54,7 +52,7 @@ class MaveDBFilesSource(FsspecFilesSource[MaveDBFileSourceTemplateConfiguration, self, context: FilesSourceRuntimeContext[MaveDBFileSourceConfiguration], cache_options: CacheOptionsDictType, - ) -> AbstractFileSystem: + ) -> "MaveDBFileSystem": if MaveDBFileSystem is None: raise self.required_package_exception @@ -86,6 +84,7 @@ class MaveDBFilesSource(FsspecFilesSource[MaveDBFileSourceTemplateConfiguration, cache_options = self._get_cache_options(context.config) fs = self._open_fs(context, cache_options) try: + # Use the MaveDB-specific API for server-side pagination and the total result count. entries, total_count = fs.list_score_sets( collection=collection, limit=limit, From 0f0324ca88c6a5fbb7d21d092b9a513c8f4da2f7 Mon Sep 17 00:00:00 2001 From: Dannon Baker Date: Thu, 11 Jun 2026 17:04:15 -0400 Subject: [PATCH 09/31] Refresh in-range transitive deps in the client lockfile. This picks up what dependabot has been asking for in #22755 (qs 6.14.2 -> 6.15.2), #22775 (tmp 0.2.5 -> 0.2.7, a bit past the 0.2.6 it proposed), and the in-range part of #22717 (brace-expansion 1.1.14 -> 1.1.15), plus the usual riders those PRs all carried (anymatch, binary-extensions, body-parser, chokidar, engine.io, fflate, hasown, side-channel, socket.io-adapter, tinyglobby, undici-types, ws, @types/node). The brace-expansion@1.1.11 instance under minimatch@3.1.2 doesn't move with in-range updates -- it's held by old karma/rimraf/rxjs-spy chains and is dev-only. --- client/pnpm-lock.yaml | 221 +++++++++++++++++++++++------------------- 1 file changed, 123 insertions(+), 98 deletions(-) diff --git a/client/pnpm-lock.yaml b/client/pnpm-lock.yaml index 75878e7bd03..69f1b3916fa 100644 --- a/client/pnpm-lock.yaml +++ b/client/pnpm-lock.yaml @@ -227,7 +227,7 @@ importers: version: 1.16.1 postcss: specifier: ^8.4.6 - version: 8.5.8 + version: 8.5.15 pretty-bytes: specifier: ^6.1.1 version: 6.1.1 @@ -336,7 +336,7 @@ importers: devDependencies: '@modyfi/vite-plugin-yaml': specifier: ^1.1.1 - version: 1.1.1(rollup@4.60.1)(vite@8.0.13(@types/node@25.6.0)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)) + version: 1.1.1(rollup@4.60.1)(vite@8.0.13(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)) '@pinia/testing': specifier: 0.1.5 version: 0.1.5(pinia@2.3.1(typescript@5.8.3)(vue@2.7.16))(vue@2.7.16) @@ -378,7 +378,7 @@ importers: version: 6.8.0(eslint@8.52.0)(typescript@5.8.3) '@vitejs/plugin-vue2': specifier: ^2.3.4 - version: 2.3.4(vite@8.0.13(@types/node@25.6.0)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1))(vue@2.7.16) + version: 2.3.4(vite@8.0.13(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1))(vue@2.7.16) '@vitest/coverage-v8': specifier: ^4.1.5 version: 4.1.7(vitest@4.1.7) @@ -396,7 +396,7 @@ importers: version: 0.4.0 autoprefixer: specifier: 10.4.16 - version: 10.4.16(postcss@8.5.8) + version: 10.4.16(postcss@8.5.15) buffer: specifier: ^6.0.3 version: 6.0.3 @@ -459,13 +459,13 @@ importers: version: 5.8.3 vite: specifier: ^8.0.11 - version: 8.0.13(@types/node@25.6.0)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1) + version: 8.0.13(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1) vitest: specifier: ^4.1.5 - version: 4.1.7(@types/node@25.6.0)(@vitest/coverage-v8@4.1.7)(@vitest/ui@4.1.7)(happy-dom@20.0.10)(jsdom@28.1.0)(msw@2.3.4(typescript@5.8.3))(vite@8.0.13(@types/node@25.6.0)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)) + version: 4.1.7(@types/node@25.9.3)(@vitest/coverage-v8@4.1.7)(@vitest/ui@4.1.7)(happy-dom@20.0.10)(jsdom@28.1.0)(msw@2.3.4(typescript@5.8.3))(vite@8.0.13(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)) vitest-fail-on-console: specifier: ^0.10.1 - version: 0.10.1(@vitest/utils@4.1.7)(vite@8.0.13(@types/node@25.6.0)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1))(vitest@4.1.7) + version: 0.10.1(@vitest/utils@4.1.7)(vite@8.0.13(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1))(vitest@4.1.7) vitest-location-mock: specifier: ^1.0.4 version: 1.0.4 @@ -499,7 +499,7 @@ importers: version: 6.1.3 ts-node: specifier: ^10.9.2 - version: 10.9.2(@types/node@25.6.0)(typescript@5.8.3) + version: 10.9.2(@types/node@25.9.3)(typescript@5.8.3) tsup: specifier: ^8.4.0 version: 8.5.1(postcss@8.5.15)(typescript@5.8.3)(yaml@2.6.1) @@ -508,7 +508,7 @@ importers: version: 5.8.3 vitest: specifier: ^4.0.14 - version: 4.0.14(@types/node@25.6.0)(@vitest/ui@4.0.14)(happy-dom@20.0.10)(jsdom@28.1.0)(lightningcss@1.32.0)(msw@2.3.4(typescript@5.8.3))(sass@1.94.2)(yaml@2.6.1) + version: 4.0.14(@types/node@25.9.3)(@vitest/ui@4.0.14)(happy-dom@20.0.10)(jsdom@28.1.0)(lightningcss@1.32.0)(msw@2.3.4(typescript@5.8.3))(sass@1.94.2)(yaml@2.6.1) packages: @@ -1624,8 +1624,8 @@ packages: '@types/node@22.0.0': resolution: {integrity: sha512-VT7KSYudcPOzP5Q0wfbowyNLaVR8QWUdw+088uFWwfvpY6uCWaXpqV6ieLAu9WBcnTa7H4Z5RLK8I5t2FuOcqw==} - '@types/node@25.6.0': - resolution: {integrity: sha512-+qIYRKdNYJwY3vRCZMdJbPLJAtGjQBudzZzdzwQYkEPQd+PJGixUL5QfvCLDaULoLv+RhT3LDkwEfKaAkgSmNQ==} + '@types/node@25.9.3': + resolution: {integrity: sha512-603BddQMv3pUcr4U2dhujk83N2tTDVr/34wII2B6bJy6g+8WD6yUb11jszNs0gdi4PesVWl7ABt8nYMVpnLUcg==} '@types/semver@7.5.3': resolution: {integrity: sha512-OxepLK9EuNEIPxWNME+C6WwbRAOOI2o2BaQEGzz5Lu2e4Z5eDnEo+/aVEDMIXywoJitJ7xWd641wrGLZdtwRyw==} @@ -1717,6 +1717,7 @@ packages: '@ungap/structured-clone@1.2.0': resolution: {integrity: sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==} + deprecated: Potential CWE-502 - Update to 1.3.1 or higher '@vitejs/plugin-vue2@2.3.4': resolution: {integrity: sha512-LgqtRRedJb1KdmgcllwGX0gtlPvOvtR6pITXmqxGwQhBZaAysg0Hd7wvj3sjCsj4+PENWsqS7O+ceYSOgJ+H9g==} @@ -1938,8 +1939,8 @@ packages: any-promise@1.3.0: resolution: {integrity: sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==} - anymatch@3.1.2: - resolution: {integrity: sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==} + anymatch@3.1.3: + resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==} engines: {node: '>= 8'} arg@4.1.3: @@ -2035,12 +2036,12 @@ packages: bignumber.js@8.1.1: resolution: {integrity: sha512-QD46ppGintwPGuL1KqmwhR0O+N2cZUg8JG/VzwI2e28sM9TqHjQB10lI4QAaMHVbLzwVLLAwEglpKPViWX+5NQ==} - binary-extensions@2.2.0: - resolution: {integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==} + binary-extensions@2.3.0: + resolution: {integrity: sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==} engines: {node: '>=8'} - body-parser@1.20.4: - resolution: {integrity: sha512-ZTgYYLMOXY9qKU/57FAo8F+HA2dGX7bqGc71txDRC1rS4frdFI5R7NhluHxH6M0YItAP0sHB4uqAOcYKxO6uGA==} + body-parser@1.20.5: + resolution: {integrity: sha512-3grm+/2tUOvu2cjJkvsIxrv/wVpfXQW4PsQHYm7yk4vfpu7Ekl6nEsYBoJUL6qDwZUx8wUhQ8tR2qz+ad9c9OA==} engines: {node: '>= 0.8', npm: 1.2.8000 || >= 1.4.16} boolbase@1.0.0: @@ -2059,8 +2060,8 @@ packages: brace-expansion@1.1.11: resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} - brace-expansion@1.1.14: - resolution: {integrity: sha512-MWPGfDxnyzKU7rNOW9SP/c50vi3xrmrua/+6hfPbCS2ABNWfx24vPidzvC7krjU/RTo235sV776ymlsMtGKj8g==} + brace-expansion@1.1.15: + resolution: {integrity: sha512-EwOCDEex4quD37XhqM3omwtMoJjr//isUZz1JopUNWms+4Z2ViyM/k1YIRePpoVNnQhENnxtFjLaxNHrT7xIUg==} brace-expansion@2.0.2: resolution: {integrity: sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==} @@ -2156,8 +2157,8 @@ packages: change-case@5.4.4: resolution: {integrity: sha512-HRQyTk2/YPEkt9TnUPbOpr64Uw3KOicFWPVBb+xiHvd6eBx/qPr9xqfBFDT8P2vWsvvz4jbEkfDe71W3VyNu2w==} - chokidar@3.5.3: - resolution: {integrity: sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==} + chokidar@3.6.0: + resolution: {integrity: sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==} engines: {node: '>= 8.10.0'} chokidar@4.0.3: @@ -2627,8 +2628,8 @@ packages: resolution: {integrity: sha512-HqD3yTBfnBxIrbnM1DoD6Pcq8NECnh8d4As1Qgh0z5Gg3jRRIqijury0CL3ghu/edArpUYiYqQiDUQBIs4np3Q==} engines: {node: '>=10.0.0'} - engine.io@6.6.6: - resolution: {integrity: sha512-U2SN0w3OpjFRVlrc17E6TMDmH58Xl9rai1MblNjAdwWp07Kk+llmzX0hjDpQdrDGzwmvOtgM5yI+meYX6iZ2xA==} + engine.io@6.6.8: + resolution: {integrity: sha512-2agL3ueZhqxoVrfmntO8yuVj+uNSlIOnhykYHk3Cq0ShYPdUjjUiSJrQvXjq01I9jAuI0Zl2YO8Evv5Mqytm5g==} engines: {node: '>=10.2.0'} ent@2.2.2: @@ -2876,6 +2877,9 @@ packages: fflate@0.8.2: resolution: {integrity: sha512-cPJU47OaAoCbg0pBvzsgpTPhmhqI5eJjh/JIu8tPj5q+T7iLvW/JAYUqmE7KOB4R1ZyEhzBaIQpQpardBF5z8A==} + fflate@0.8.3: + resolution: {integrity: sha512-tbZNuJrLwGUp3zshBtdy4W+ORxZuIh8a5ilyIEQDC5rY1f3U20JMry0Ll3WBzU58EZKsEuJFXhb5gwv8CsPvgA==} + file-entry-cache@6.0.1: resolution: {integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==} engines: {node: ^10.12.0 || >=12.0.0} @@ -3086,6 +3090,10 @@ packages: resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==} engines: {node: '>= 0.4'} + hasown@2.0.4: + resolution: {integrity: sha512-T2UbfbBEF32wiepXIsMlTW9+dDYC6wMh/t/vYA4tuOMKqWz/n3vr1NFSxQiyP+zk2mXsoMA/i/7qV6LKut1t1A==} + engines: {node: '>= 0.4'} + he@1.2.0: resolution: {integrity: sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==} hasBin: true @@ -4134,8 +4142,8 @@ packages: resolution: {integrity: sha512-8YOJEHtxpySA3fFDyCRxA+UUV+fA+rTWnuWvylOK/NCjhY+b4ocCtmu8TtsWb+mYeU+GCHf/S66KZF/AsteKHg==} engines: {node: '>=0.9'} - qs@6.14.2: - resolution: {integrity: sha512-V/yCWTTF7VJ9hIh18Ugr2zhJMP01MY7c5kh4J870L7imm6/DIzBsNLTXzMwUA3yZ5b/KBqLx8Kp3uRvd7xSe3Q==} + qs@6.15.2: + resolution: {integrity: sha512-Rzq0KEyX/w/tEybncDgdkZrJgVUsUMk3xjh3t5bv3S1HTAtg+uOYt72+ZfwiQwKdysThkTBdL/rTi6HDmX9Ddw==} engines: {node: '>=0.6'} querystring-es3@0.2.1: @@ -4362,8 +4370,8 @@ packages: side-channel@1.0.4: resolution: {integrity: sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==} - side-channel@1.1.0: - resolution: {integrity: sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==} + side-channel@1.1.1: + resolution: {integrity: sha512-6x6dK6zJdpTzF4sQeNYxwtvBzf6Eg4GtlesS94HOvTudUeyK2WXAaIfmDgsyslYrRBeFIlsi54AYsFGUuhmvrQ==} engines: {node: '>= 0.4'} siginfo@2.0.0: @@ -4401,8 +4409,8 @@ packages: resolution: {integrity: sha512-h+z7HKHYXj6wJU+AnS/+IH8Uh9fdcX1Lrhg1/VMdf9PwoBQXFcXiAdsy2tSK0P6gKwJLXp02r90ahUCqHk9rrw==} engines: {node: '>=8.0.0'} - socket.io-adapter@2.5.6: - resolution: {integrity: sha512-DkkO/dz7MGln0dHn5bmN3pPy+JmywNICWrJqVWiVOyvXjWQFIv9c2h24JrQLLFJ2aQVQf/Cvl1vblnd4r2apLQ==} + socket.io-adapter@2.5.7: + resolution: {integrity: sha512-e0LyK91f3cUxTmv95/KzoLg47+zF+s/sbxRGDNsyG4dmIP8ZSX8ax6byOxfJXeNNtS/8AZlfD+uP7gBeR7DLlg==} socket.io-parser@4.2.6: resolution: {integrity: sha512-asJqbVBDsBCJx0pTqw3WfesSY0iRX+2xzWEWzrpcH7L6fLzrhyF8WPI8UaeM4YCuDfpwA/cgsdugMsmtz8EJeg==} @@ -4569,6 +4577,10 @@ packages: resolution: {integrity: sha512-pn99VhoACYR8nFHhxqix+uvsbXineAasWm5ojXoN8xEwK5Kd3/TrhNn1wByuD52UxWRLy8pu+kRMniEi6Eq9Zg==} engines: {node: '>=12.0.0'} + tinyglobby@0.2.17: + resolution: {integrity: sha512-wXR/dYpcqKmfWpEdZjiKJOwCNFndD0DMnrW/cYjVGttEkBfVgcLFHoNrlj47mjOVic9yyNu65alsgF4NQyTa2g==} + engines: {node: '>=12.0.0'} + tinyrainbow@3.0.3: resolution: {integrity: sha512-PSkbLUoxOFRzJYjjxHJt9xro7D+iilgMX/C9lawzVuYiIdcihh9DXmVibBe8lmcFrRi/VzlPjBxbN7rH24q8/Q==} engines: {node: '>=14.0.0'} @@ -4584,8 +4596,8 @@ packages: resolution: {integrity: sha512-+Zg3vWhRUv8B1maGSTFdev9mjoo8Etn2Ayfs4cnjlD3CsGkxXX4QyW3j2WJ0wdjYcYmy7Lx2RDsZMhgCWafKIw==} hasBin: true - tmp@0.2.5: - resolution: {integrity: sha512-voyz6MApa1rQGUxT3E+BK7/ROe8itEx7vD8/HEvt4xwXucvQ5G5oeEiHkmHZJuBO21RpOf+YYm9MOivj709jow==} + tmp@0.2.7: + resolution: {integrity: sha512-e0votIpp4Uo2AJYSzVHV6xCcawuiez3DzqDAbrTc3YxBkplN6e+dM13ZeIcZnDg/QpSuU2zfZ3rzwY8ukEnaXw==} engines: {node: '>=14.14'} to-regex-range@5.0.1: @@ -4749,8 +4761,8 @@ packages: undici-types@6.21.0: resolution: {integrity: sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==} - undici-types@7.19.2: - resolution: {integrity: sha512-qYVnV5OEm2AW8cJMCpdV20CDyaN3g0AjDlOGf1OW4iaDEx8MwdtChUp4zu4H0VP3nDRF/8RKWH+IPp9uW0YGZg==} + undici-types@7.24.6: + resolution: {integrity: sha512-WRNW+sJgj5OBN4/0JpHFqtqzhpbnV0GuB+OozA9gCL7a993SmU+1JBZCzLNxYsbMfIeDL+lTsphD5jN5N+n0zg==} undici@7.25.0: resolution: {integrity: sha512-xXnp4kTyor2Zq+J1FfPI6Eq3ew5h6Vl0F/8d9XU5zZQf1tX9s2Su1/3PiMmUANFULpmksxkClamIZcaUqryHsQ==} @@ -5269,8 +5281,8 @@ packages: wrappy@1.0.2: resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} - ws@8.18.3: - resolution: {integrity: sha512-PEIGCY5tSlUt50cqyMXfCzX+oOPqN0vuGqWzbcJ2xvnkzkq46oOpz7dQaTDBdfICb4N14+GARUDw2XV2N4tvzg==} + ws@8.20.1: + resolution: {integrity: sha512-It4dO0K5v//JtTXuPkfEOaI3uUN87iYPnqo/ZzqCoG3g8uhA66QUMs/SrM0YK7/NAu+r4LMh/9dq2A7k+rHs+w==} engines: {node: '>=10.0.0'} peerDependencies: bufferutil: ^4.0.1 @@ -5781,12 +5793,12 @@ snapshots: '@mdn/browser-compat-data@5.3.23': {} - '@modyfi/vite-plugin-yaml@1.1.1(rollup@4.60.1)(vite@8.0.13(@types/node@25.6.0)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1))': + '@modyfi/vite-plugin-yaml@1.1.1(rollup@4.60.1)(vite@8.0.13(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1))': dependencies: '@rollup/pluginutils': 5.1.0(rollup@4.60.1) js-yaml: 4.1.0 tosource: 2.0.0-alpha.3 - vite: 8.0.13(@types/node@25.6.0)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1) + vite: 8.0.13(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1) transitivePeerDependencies: - rollup @@ -6164,7 +6176,7 @@ snapshots: '@types/cors@2.8.19': dependencies: - '@types/node': 25.6.0 + '@types/node': 25.9.3 '@types/d3-array@3.0.4': {} @@ -6330,9 +6342,9 @@ snapshots: dependencies: undici-types: 6.11.1 - '@types/node@25.6.0': + '@types/node@25.9.3': dependencies: - undici-types: 7.19.2 + undici-types: 7.24.6 '@types/semver@7.5.3': {} @@ -6354,7 +6366,7 @@ snapshots: '@types/ws@8.18.1': dependencies: - '@types/node': 25.6.0 + '@types/node': 25.9.3 '@typescript-eslint/eslint-plugin@6.8.0(@typescript-eslint/parser@6.8.0(eslint@8.52.0)(typescript@5.8.3))(eslint@8.52.0)(typescript@5.8.3)': dependencies: @@ -6443,9 +6455,9 @@ snapshots: '@ungap/structured-clone@1.2.0': {} - '@vitejs/plugin-vue2@2.3.4(vite@8.0.13(@types/node@25.6.0)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1))(vue@2.7.16)': + '@vitejs/plugin-vue2@2.3.4(vite@8.0.13(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1))(vue@2.7.16)': dependencies: - vite: 8.0.13(@types/node@25.6.0)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1) + vite: 8.0.13(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1) vue: 2.7.16 '@vitest/coverage-v8@4.1.7(vitest@4.1.7)': @@ -6460,7 +6472,7 @@ snapshots: obug: 2.1.1 std-env: 4.1.0 tinyrainbow: 3.1.0 - vitest: 4.1.7(@types/node@25.6.0)(@vitest/coverage-v8@4.1.7)(@vitest/ui@4.1.7)(happy-dom@20.0.10)(jsdom@28.1.0)(msw@2.3.4(typescript@5.8.3))(vite@8.0.13(@types/node@25.6.0)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)) + vitest: 4.1.7(@types/node@25.9.3)(@vitest/coverage-v8@4.1.7)(@vitest/ui@4.1.7)(happy-dom@20.0.10)(jsdom@28.1.0)(msw@2.3.4(typescript@5.8.3))(vite@8.0.13(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)) '@vitest/expect@4.0.14': dependencies: @@ -6480,23 +6492,23 @@ snapshots: chai: 6.2.2 tinyrainbow: 3.1.0 - '@vitest/mocker@4.0.14(msw@2.3.4(typescript@5.8.3))(vite@7.3.2(@types/node@25.6.0)(lightningcss@1.32.0)(sass@1.94.2)(yaml@2.6.1))': + '@vitest/mocker@4.0.14(msw@2.3.4(typescript@5.8.3))(vite@7.3.2(@types/node@25.9.3)(lightningcss@1.32.0)(sass@1.94.2)(yaml@2.6.1))': dependencies: '@vitest/spy': 4.0.14 estree-walker: 3.0.3 magic-string: 0.30.21 optionalDependencies: msw: 2.3.4(typescript@5.8.3) - vite: 7.3.2(@types/node@25.6.0)(lightningcss@1.32.0)(sass@1.94.2)(yaml@2.6.1) + vite: 7.3.2(@types/node@25.9.3)(lightningcss@1.32.0)(sass@1.94.2)(yaml@2.6.1) - '@vitest/mocker@4.1.7(msw@2.3.4(typescript@5.8.3))(vite@8.0.13(@types/node@25.6.0)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1))': + '@vitest/mocker@4.1.7(msw@2.3.4(typescript@5.8.3))(vite@8.0.13(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1))': dependencies: '@vitest/spy': 4.1.7 estree-walker: 3.0.3 magic-string: 0.30.21 optionalDependencies: msw: 2.3.4(typescript@5.8.3) - vite: 8.0.13(@types/node@25.6.0)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1) + vite: 8.0.13(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1) '@vitest/pretty-format@4.0.14': dependencies: @@ -6536,13 +6548,13 @@ snapshots: '@vitest/ui@4.0.14(vitest@4.0.14)': dependencies: '@vitest/utils': 4.0.14 - fflate: 0.8.2 + fflate: 0.8.3 flatted: 3.4.2 pathe: 2.0.3 sirv: 3.0.2 - tinyglobby: 0.2.15 - tinyrainbow: 3.0.3 - vitest: 4.0.14(@types/node@25.6.0)(@vitest/ui@4.0.14)(happy-dom@20.0.10)(jsdom@28.1.0)(lightningcss@1.32.0)(msw@2.3.4(typescript@5.8.3))(sass@1.94.2)(yaml@2.6.1) + tinyglobby: 0.2.17 + tinyrainbow: 3.1.0 + vitest: 4.0.14(@types/node@25.9.3)(@vitest/ui@4.0.14)(happy-dom@20.0.10)(jsdom@28.1.0)(lightningcss@1.32.0)(msw@2.3.4(typescript@5.8.3))(sass@1.94.2)(yaml@2.6.1) optional: true '@vitest/ui@4.1.7(vitest@4.1.7)': @@ -6554,7 +6566,7 @@ snapshots: sirv: 3.0.2 tinyglobby: 0.2.15 tinyrainbow: 3.1.0 - vitest: 4.1.7(@types/node@25.6.0)(@vitest/coverage-v8@4.1.7)(@vitest/ui@4.1.7)(happy-dom@20.0.10)(jsdom@28.1.0)(msw@2.3.4(typescript@5.8.3))(vite@8.0.13(@types/node@25.6.0)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)) + vitest: 4.1.7(@types/node@25.9.3)(@vitest/coverage-v8@4.1.7)(@vitest/ui@4.1.7)(happy-dom@20.0.10)(jsdom@28.1.0)(msw@2.3.4(typescript@5.8.3))(vite@8.0.13(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)) '@vitest/utils@4.0.14': dependencies: @@ -6731,7 +6743,7 @@ snapshots: any-promise@1.3.0: {} - anymatch@3.1.2: + anymatch@3.1.3: dependencies: normalize-path: 3.0.0 picomatch: 2.3.2 @@ -6815,14 +6827,14 @@ snapshots: asynckit@0.4.0: {} - autoprefixer@10.4.16(postcss@8.5.8): + autoprefixer@10.4.16(postcss@8.5.15): dependencies: browserslist: 4.22.1 caniuse-lite: 1.0.30001757 fraction.js: 4.3.7 normalize-range: 0.1.2 picocolors: 1.1.1 - postcss: 8.5.8 + postcss: 8.5.15 postcss-value-parser: 4.2.0 available-typed-arrays@1.0.5: {} @@ -6857,9 +6869,9 @@ snapshots: bignumber.js@8.1.1: {} - binary-extensions@2.2.0: {} + binary-extensions@2.3.0: {} - body-parser@1.20.4: + body-parser@1.20.5: dependencies: bytes: 3.1.2 content-type: 1.0.5 @@ -6869,7 +6881,7 @@ snapshots: http-errors: 2.0.1 iconv-lite: 0.4.24 on-finished: 2.4.1 - qs: 6.14.2 + qs: 6.15.2 raw-body: 2.5.3 type-is: 1.6.18 unpipe: 1.0.0 @@ -6900,7 +6912,7 @@ snapshots: balanced-match: 1.0.2 concat-map: 0.0.1 - brace-expansion@1.1.14: + brace-expansion@1.1.15: dependencies: balanced-match: 1.0.2 concat-map: 0.0.1 @@ -6994,9 +7006,9 @@ snapshots: change-case@5.4.4: {} - chokidar@3.5.3: + chokidar@3.6.0: dependencies: - anymatch: 3.1.2 + anymatch: 3.1.3 braces: 3.0.3 glob-parent: 5.1.2 is-binary-path: 2.1.0 @@ -7469,10 +7481,10 @@ snapshots: engine.io-parser@5.2.3: {} - engine.io@6.6.6: + engine.io@6.6.8: dependencies: '@types/cors': 2.8.19 - '@types/node': 25.6.0 + '@types/node': 25.9.3 '@types/ws': 8.18.1 accepts: 1.3.8 base64id: 2.0.0 @@ -7480,7 +7492,7 @@ snapshots: cors: 2.8.6 debug: 4.4.3(supports-color@10.2.2) engine.io-parser: 5.2.3 - ws: 8.18.3 + ws: 8.20.1 transitivePeerDependencies: - bufferutil - supports-color @@ -7832,6 +7844,9 @@ snapshots: fflate@0.8.2: {} + fflate@0.8.3: + optional: true + file-entry-cache@6.0.1: dependencies: flat-cache: 3.0.4 @@ -8065,6 +8080,10 @@ snapshots: dependencies: function-bind: 1.1.2 + hasown@2.0.4: + dependencies: + function-bind: 1.1.2 + he@1.2.0: {} headers-polyfill@4.0.3: {} @@ -8176,7 +8195,7 @@ snapshots: is-binary-path@2.1.0: dependencies: - binary-extensions: 2.2.0 + binary-extensions: 2.3.0 is-boolean-object@1.1.2: dependencies: @@ -8238,7 +8257,7 @@ snapshots: call-bound: 1.0.4 gopd: 1.2.0 has-tostringtag: 1.0.2 - hasown: 2.0.2 + hasown: 2.0.4 is-shared-array-buffer@1.0.2: dependencies: @@ -8391,9 +8410,9 @@ snapshots: karma@6.4.4: dependencies: '@colors/colors': 1.5.0 - body-parser: 1.20.4 + body-parser: 1.20.5 braces: 3.0.3 - chokidar: 3.5.3 + chokidar: 3.6.0 connect: 3.7.0 di: 0.0.1 dom-serialize: 2.2.1 @@ -8411,7 +8430,7 @@ snapshots: rimraf: 3.0.2 socket.io: 4.8.3 source-map: 0.6.1 - tmp: 0.2.5 + tmp: 0.2.7 ua-parser-js: 0.7.41 yargs: 16.2.0 transitivePeerDependencies: @@ -8631,7 +8650,7 @@ snapshots: minimatch@3.1.5: dependencies: - brace-expansion: 1.1.14 + brace-expansion: 1.1.15 minimatch@5.1.6: dependencies: @@ -9050,9 +9069,9 @@ snapshots: qjobs@1.2.0: {} - qs@6.14.2: + qs@6.15.2: dependencies: - side-channel: 1.1.0 + side-channel: 1.1.1 querystring-es3@0.2.1: {} @@ -9357,7 +9376,7 @@ snapshots: get-intrinsic: 1.3.0 object-inspect: 1.13.0 - side-channel@1.1.0: + side-channel@1.1.1: dependencies: es-errors: 1.3.0 object-inspect: 1.13.4 @@ -9389,10 +9408,10 @@ snapshots: slugify@1.6.6: {} - socket.io-adapter@2.5.6: + socket.io-adapter@2.5.7: dependencies: debug: 4.4.3(supports-color@10.2.2) - ws: 8.18.3 + ws: 8.20.1 transitivePeerDependencies: - bufferutil - supports-color @@ -9411,8 +9430,8 @@ snapshots: base64id: 2.0.0 cors: 2.8.6 debug: 4.4.3(supports-color@10.2.2) - engine.io: 6.6.6 - socket.io-adapter: 2.5.6 + engine.io: 6.6.8 + socket.io-adapter: 2.5.7 socket.io-parser: 4.2.6 transitivePeerDependencies: - bufferutil @@ -9570,6 +9589,12 @@ snapshots: fdir: 6.5.0(picomatch@4.0.4) picomatch: 4.0.4 + tinyglobby@0.2.17: + dependencies: + fdir: 6.5.0(picomatch@4.0.4) + picomatch: 4.0.4 + optional: true + tinyrainbow@3.0.3: {} tinyrainbow@3.1.0: {} @@ -9580,7 +9605,7 @@ snapshots: dependencies: tldts-core: 7.0.28 - tmp@0.2.5: {} + tmp@0.2.7: {} to-regex-range@5.0.1: dependencies: @@ -9625,14 +9650,14 @@ snapshots: ts-interface-checker@0.1.13: {} - ts-node@10.9.2(@types/node@25.6.0)(typescript@5.8.3): + ts-node@10.9.2(@types/node@25.9.3)(typescript@5.8.3): dependencies: '@cspotcode/source-map-support': 0.8.1 '@tsconfig/node10': 1.0.12 '@tsconfig/node12': 1.0.11 '@tsconfig/node14': 1.0.3 '@tsconfig/node16': 1.0.4 - '@types/node': 25.6.0 + '@types/node': 25.9.3 acorn: 8.15.0 acorn-walk: 8.3.5 arg: 4.1.3 @@ -9757,7 +9782,7 @@ snapshots: undici-types@6.21.0: {} - undici-types@7.19.2: {} + undici-types@7.24.6: {} undici@7.25.0: {} @@ -10103,7 +10128,7 @@ snapshots: transitivePeerDependencies: - encoding - vite@7.3.2(@types/node@25.6.0)(lightningcss@1.32.0)(sass@1.94.2)(yaml@2.6.1): + vite@7.3.2(@types/node@25.9.3)(lightningcss@1.32.0)(sass@1.94.2)(yaml@2.6.1): dependencies: esbuild: 0.27.7 fdir: 6.5.0(picomatch@4.0.4) @@ -10112,13 +10137,13 @@ snapshots: rollup: 4.60.1 tinyglobby: 0.2.15 optionalDependencies: - '@types/node': 25.6.0 + '@types/node': 25.9.3 fsevents: 2.3.3 lightningcss: 1.32.0 sass: 1.94.2 yaml: 2.6.1 - vite@8.0.13(@types/node@25.6.0)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1): + vite@8.0.13(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1): dependencies: lightningcss: 1.32.0 picomatch: 4.0.4 @@ -10126,27 +10151,27 @@ snapshots: rolldown: 1.0.1 tinyglobby: 0.2.16 optionalDependencies: - '@types/node': 25.6.0 + '@types/node': 25.9.3 esbuild: 0.27.7 fsevents: 2.3.3 sass: 1.94.2 yaml: 2.6.1 - vitest-fail-on-console@0.10.1(@vitest/utils@4.1.7)(vite@8.0.13(@types/node@25.6.0)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1))(vitest@4.1.7): + vitest-fail-on-console@0.10.1(@vitest/utils@4.1.7)(vite@8.0.13(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1))(vitest@4.1.7): dependencies: '@vitest/utils': 4.1.7 chalk: 5.6.2 - vite: 8.0.13(@types/node@25.6.0)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1) - vitest: 4.1.7(@types/node@25.6.0)(@vitest/coverage-v8@4.1.7)(@vitest/ui@4.1.7)(happy-dom@20.0.10)(jsdom@28.1.0)(msw@2.3.4(typescript@5.8.3))(vite@8.0.13(@types/node@25.6.0)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)) + vite: 8.0.13(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1) + vitest: 4.1.7(@types/node@25.9.3)(@vitest/coverage-v8@4.1.7)(@vitest/ui@4.1.7)(happy-dom@20.0.10)(jsdom@28.1.0)(msw@2.3.4(typescript@5.8.3))(vite@8.0.13(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)) vitest-location-mock@1.0.4: dependencies: '@jedmao/location': 3.0.0 - vitest@4.0.14(@types/node@25.6.0)(@vitest/ui@4.0.14)(happy-dom@20.0.10)(jsdom@28.1.0)(lightningcss@1.32.0)(msw@2.3.4(typescript@5.8.3))(sass@1.94.2)(yaml@2.6.1): + vitest@4.0.14(@types/node@25.9.3)(@vitest/ui@4.0.14)(happy-dom@20.0.10)(jsdom@28.1.0)(lightningcss@1.32.0)(msw@2.3.4(typescript@5.8.3))(sass@1.94.2)(yaml@2.6.1): dependencies: '@vitest/expect': 4.0.14 - '@vitest/mocker': 4.0.14(msw@2.3.4(typescript@5.8.3))(vite@7.3.2(@types/node@25.6.0)(lightningcss@1.32.0)(sass@1.94.2)(yaml@2.6.1)) + '@vitest/mocker': 4.0.14(msw@2.3.4(typescript@5.8.3))(vite@7.3.2(@types/node@25.9.3)(lightningcss@1.32.0)(sass@1.94.2)(yaml@2.6.1)) '@vitest/pretty-format': 4.0.14 '@vitest/runner': 4.0.14 '@vitest/snapshot': 4.0.14 @@ -10163,10 +10188,10 @@ snapshots: tinyexec: 0.3.2 tinyglobby: 0.2.15 tinyrainbow: 3.0.3 - vite: 7.3.2(@types/node@25.6.0)(lightningcss@1.32.0)(sass@1.94.2)(yaml@2.6.1) + vite: 7.3.2(@types/node@25.9.3)(lightningcss@1.32.0)(sass@1.94.2)(yaml@2.6.1) why-is-node-running: 2.3.0 optionalDependencies: - '@types/node': 25.6.0 + '@types/node': 25.9.3 '@vitest/ui': 4.0.14(vitest@4.0.14) happy-dom: 20.0.10 jsdom: 28.1.0 @@ -10183,10 +10208,10 @@ snapshots: - tsx - yaml - vitest@4.1.7(@types/node@25.6.0)(@vitest/coverage-v8@4.1.7)(@vitest/ui@4.1.7)(happy-dom@20.0.10)(jsdom@28.1.0)(msw@2.3.4(typescript@5.8.3))(vite@8.0.13(@types/node@25.6.0)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)): + vitest@4.1.7(@types/node@25.9.3)(@vitest/coverage-v8@4.1.7)(@vitest/ui@4.1.7)(happy-dom@20.0.10)(jsdom@28.1.0)(msw@2.3.4(typescript@5.8.3))(vite@8.0.13(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)): dependencies: '@vitest/expect': 4.1.7 - '@vitest/mocker': 4.1.7(msw@2.3.4(typescript@5.8.3))(vite@8.0.13(@types/node@25.6.0)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)) + '@vitest/mocker': 4.1.7(msw@2.3.4(typescript@5.8.3))(vite@8.0.13(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)) '@vitest/pretty-format': 4.1.7 '@vitest/runner': 4.1.7 '@vitest/snapshot': 4.1.7 @@ -10203,10 +10228,10 @@ snapshots: tinyexec: 1.1.2 tinyglobby: 0.2.15 tinyrainbow: 3.1.0 - vite: 8.0.13(@types/node@25.6.0)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1) + vite: 8.0.13(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1) why-is-node-running: 2.3.0 optionalDependencies: - '@types/node': 25.6.0 + '@types/node': 25.9.3 '@vitest/coverage-v8': 4.1.7(vitest@4.1.7) '@vitest/ui': 4.1.7(vitest@4.1.7) happy-dom: 20.0.10 @@ -10385,7 +10410,7 @@ snapshots: wrappy@1.0.2: {} - ws@8.18.3: {} + ws@8.20.1: {} xml-beautifier@0.5.0: dependencies: From 3c50ee4d297c4e1361d675103bbf7e601e3c685f Mon Sep 17 00:00:00 2001 From: Dannon Baker Date: Thu, 11 Jun 2026 17:04:50 -0400 Subject: [PATCH 10/31] Bump axios from 1.15.0 to 1.17.0 in the client lockfile (dependabot asked for 1.16.0 in #22796; 1.17.0 is current latest in the existing ^1.6.2 range). Worth noting axios dropped follow-redirects as of 1.16 and now pulls agent-base/https-proxy-agent instead, so redirect and proxy handling is the thing to keep an eye on when testing. --- client/pnpm-lock.yaml | 46 +++++++++++++++++++++++++++---------------- 1 file changed, 29 insertions(+), 17 deletions(-) diff --git a/client/pnpm-lock.yaml b/client/pnpm-lock.yaml index 69f1b3916fa..152c0b7523c 100644 --- a/client/pnpm-lock.yaml +++ b/client/pnpm-lock.yaml @@ -92,7 +92,7 @@ importers: version: 2.1.0 axios: specifier: ^1.6.2 - version: 1.15.0 + version: 1.17.0 bootstrap: specifier: '4.6' version: 4.6.2(jquery@2.2.4)(popper.js@1.16.1) @@ -1906,6 +1906,10 @@ packages: vue: 2.7.16 vue-property-decorator: ^7.2.0 || ^8.0.0 || ^9.1.2 + agent-base@6.0.2: + resolution: {integrity: sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==} + engines: {node: '>= 6.0.0'} + agent-base@7.1.4: resolution: {integrity: sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ==} engines: {node: '>= 14'} @@ -2010,8 +2014,8 @@ packages: resolution: {integrity: sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==} engines: {node: '>= 0.4'} - axios@1.15.0: - resolution: {integrity: sha512-wWyJDlAatxk30ZJer+GeCWS209sA42X+N5jU2jy6oHTp7ufw8uzUTVFBX9+wTfAlhiJXGS0Bq7X6efruWjuK9Q==} + axios@1.17.0: + resolution: {integrity: sha512-J8SwNxprqqpbfenehxWYXE7CW+wM1BB4w3+N+g+/Wx40xM4rsLrfPmHHxSWIxJLYDgSY/HqlFPIYb2/S3rxafw==} balanced-match@1.0.2: resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} @@ -2919,15 +2923,6 @@ packages: flush-promises@1.0.2: resolution: {integrity: sha512-G0sYfLQERwKz4+4iOZYQEZVpOt9zQrlItIxQAAYAWpfby3gbHrx0osCHz5RLl/XoXevXk0xoN4hDFky/VV9TrA==} - follow-redirects@1.15.11: - resolution: {integrity: sha512-deG2P0JfjrTxl50XGCDyfI97ZGVCxIpfKYmfyrQ54n5FO/0gfIES8C/Psl6kWVDolizcaaxZJnTS0QSMxvnsBQ==} - engines: {node: '>=4.0'} - peerDependencies: - debug: '*' - peerDependenciesMeta: - debug: - optional: true - follow-redirects@1.16.0: resolution: {integrity: sha512-y5rN/uOsadFT/JfYwhxRS5R7Qce+g3zG97+JrtFZlC9klX/W5hD7iiLzScI4nZqUS7DNUdhPgw4xI8W2LuXlUw==} engines: {node: '>=4.0'} @@ -3123,6 +3118,10 @@ packages: resolution: {integrity: sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==} engines: {node: '>=8.0.0'} + https-proxy-agent@5.0.1: + resolution: {integrity: sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==} + engines: {node: '>= 6'} + https-proxy-agent@7.0.6: resolution: {integrity: sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==} engines: {node: '>= 14'} @@ -6713,6 +6712,12 @@ snapshots: vue: 2.7.16 vue-property-decorator: 9.1.2(vue-class-component@7.2.6(vue@2.7.16))(vue@2.7.16) + agent-base@6.0.2: + dependencies: + debug: 4.4.3(supports-color@10.2.2) + transitivePeerDependencies: + - supports-color + agent-base@7.1.4: {} aggregate-error@4.0.1: @@ -6839,13 +6844,15 @@ snapshots: available-typed-arrays@1.0.5: {} - axios@1.15.0: + axios@1.17.0: dependencies: - follow-redirects: 1.15.11 + follow-redirects: 1.16.0 form-data: 4.0.5 + https-proxy-agent: 5.0.1 proxy-from-env: 2.1.0 transitivePeerDependencies: - debug + - supports-color balanced-match@1.0.2: {} @@ -7895,8 +7902,6 @@ snapshots: flush-promises@1.0.2: {} - follow-redirects@1.15.11: {} - follow-redirects@1.16.0: {} for-each@0.3.3: @@ -7913,7 +7918,7 @@ snapshots: asynckit: 0.4.0 combined-stream: 1.0.8 es-set-tostringtag: 2.1.0 - hasown: 2.0.2 + hasown: 2.0.4 mime-types: 2.1.35 fraction.js@4.3.7: {} @@ -8121,6 +8126,13 @@ snapshots: transitivePeerDependencies: - debug + https-proxy-agent@5.0.1: + dependencies: + agent-base: 6.0.2 + debug: 4.4.3(supports-color@10.2.2) + transitivePeerDependencies: + - supports-color + https-proxy-agent@7.0.6(supports-color@10.2.2): dependencies: agent-base: 7.1.4 From c6db2c35daa1eb436cecc64f82fda98bff9d2689 Mon Sep 17 00:00:00 2001 From: Dannon Baker Date: Thu, 11 Jun 2026 17:06:00 -0400 Subject: [PATCH 11/31] Bump vitest and the @vitest/* packages to 4.1.8 across the workspace. This covers dependabot #22806, which wanted api-client's vitest 4.0.14 -> 4.1.0 -- both importers now resolve 4.1.8, which also lets api-client share the main client's vite 8.0.13 instead of dragging in its own vite 7.3.2. Lockfile-only; the ^4.1.5 and ^4.0.14 specifiers are unchanged. The unmet-peer warning about msw ^2.4.9 vs our 2.3.4 predates this (same range on @vitest/mocker 4.1.7) and msw marks it optional. --- client/pnpm-lock.yaml | 406 ++++++++---------------------------------- 1 file changed, 71 insertions(+), 335 deletions(-) diff --git a/client/pnpm-lock.yaml b/client/pnpm-lock.yaml index 152c0b7523c..4ccbeaba459 100644 --- a/client/pnpm-lock.yaml +++ b/client/pnpm-lock.yaml @@ -381,13 +381,13 @@ importers: version: 2.3.4(vite@8.0.13(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1))(vue@2.7.16) '@vitest/coverage-v8': specifier: ^4.1.5 - version: 4.1.7(vitest@4.1.7) + version: 4.1.8(vitest@4.1.8) '@vitest/spy': specifier: ^4.1.5 - version: 4.1.7 + version: 4.1.8 '@vitest/ui': specifier: ^4.1.5 - version: 4.1.7(vitest@4.1.7) + version: 4.1.8(vitest@4.1.8) '@vue/test-utils': specifier: ^1.3.6 version: 1.3.6(vue-template-compiler@2.7.16)(vue@2.7.16) @@ -462,10 +462,10 @@ importers: version: 8.0.13(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1) vitest: specifier: ^4.1.5 - version: 4.1.7(@types/node@25.9.3)(@vitest/coverage-v8@4.1.7)(@vitest/ui@4.1.7)(happy-dom@20.0.10)(jsdom@28.1.0)(msw@2.3.4(typescript@5.8.3))(vite@8.0.13(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)) + version: 4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.0.10)(jsdom@28.1.0)(msw@2.3.4(typescript@5.8.3))(vite@8.0.13(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)) vitest-fail-on-console: specifier: ^0.10.1 - version: 0.10.1(@vitest/utils@4.1.7)(vite@8.0.13(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1))(vitest@4.1.7) + version: 0.10.1(@vitest/utils@4.1.8)(vite@8.0.13(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1))(vitest@4.1.8) vitest-location-mock: specifier: ^1.0.4 version: 1.0.4 @@ -508,7 +508,7 @@ importers: version: 5.8.3 vitest: specifier: ^4.0.14 - version: 4.0.14(@types/node@25.9.3)(@vitest/ui@4.0.14)(happy-dom@20.0.10)(jsdom@28.1.0)(lightningcss@1.32.0)(msw@2.3.4(typescript@5.8.3))(sass@1.94.2)(yaml@2.6.1) + version: 4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.0.10)(jsdom@28.1.0)(msw@2.3.4(typescript@5.8.3))(vite@8.0.13(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)) packages: @@ -1446,9 +1446,6 @@ packages: '@socket.io/component-emitter@3.1.2': resolution: {integrity: sha512-9BCxFwvbGg/RsZK9tjXd8s4UcwR0MWeFQ1XEKIQVVvAGJyINdrqKMcTRyLoK8Rse1GjzLV9cwjWV1olXRWEXVA==} - '@standard-schema/spec@1.0.0': - resolution: {integrity: sha512-m2bOd0f2RT9k8QJx1JN85cZYyH1RqFBdlwtkSlf4tBDYLCiiZnv1fIIwacK6cqwXavOydf0NPToMQgpKq+dVlA==} - '@standard-schema/spec@1.1.0': resolution: {integrity: sha512-l2aFy5jALhniG5HgqrD6jXLi/rUWrKvqN/qJx6yoJsgKhblVd+iqqU4RCXavm/jPityDo5TCvKMnpjKnOriy0w==} @@ -1726,34 +1723,20 @@ packages: vite: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 vue: 2.7.16 - '@vitest/coverage-v8@4.1.7': - resolution: {integrity: sha512-qsYPeXc5Q9dFLd1i8Ap+Bx8sQgcp+rFVQo4R0dDsWNBzl26ldVF1qOO+RL24K7FDrR6pA+50XedRLSoSG24bVQ==} + '@vitest/coverage-v8@4.1.8': + resolution: {integrity: sha512-lt3kovsyHwYe00wq4D1ti0Z974fWj4NLp6siqiyEufUpyFwK9Yhi7rBhac9JL5aA0zoMrJqc4vYPZRUnI7l7nw==} peerDependencies: - '@vitest/browser': 4.1.7 - vitest: 4.1.7 + '@vitest/browser': 4.1.8 + vitest: 4.1.8 peerDependenciesMeta: '@vitest/browser': optional: true - '@vitest/expect@4.0.14': - resolution: {integrity: sha512-RHk63V3zvRiYOWAV0rGEBRO820ce17hz7cI2kDmEdfQsBjT2luEKB5tCOc91u1oSQoUOZkSv3ZyzkdkSLD7lKw==} + '@vitest/expect@4.1.8': + resolution: {integrity: sha512-h3nDO677RDLEGlBxyQ5CW8RlMThSKSRLUePLOx09gNIWRL40edgA1GCZSZgf1W55MFAG6/Sw14KeaAnqv0NKdQ==} - '@vitest/expect@4.1.7': - resolution: {integrity: sha512-1R+tw0ortHEbZDGMymm+pN7/AFQ/RkFFdtd7EN+VBpynKmLbP8A3rpEXdshBJ7+8hQ9zBJh/i1s0yKNtxAnU7w==} - - '@vitest/mocker@4.0.14': - resolution: {integrity: sha512-RzS5NujlCzeRPF1MK7MXLiEFpkIXeMdQ+rN3Kk3tDI9j0mtbr7Nmuq67tpkOJQpgyClbOltCXMjLZicJHsH5Cg==} - peerDependencies: - msw: ^2.4.9 - vite: ^6.0.0 || ^7.0.0-0 - peerDependenciesMeta: - msw: - optional: true - vite: - optional: true - - '@vitest/mocker@4.1.7': - resolution: {integrity: sha512-vY7nuamKgfvpA1Koa3oYIw/k7D6kZnpGyNMZW8loow2bsBYla1TFdqTaXncWdRn4pgwNs+90RhnXhJScDwQeJA==} + '@vitest/mocker@4.1.8': + resolution: {integrity: sha512-LEiN/xe4OSIbKe9HQIp5OC24agGD9J5CnmMgsLohVVoOPWL9a2sBoR6VBx43jQZb7Kr1l4RCuyCJzcAa0+dojw==} peerDependencies: msw: ^2.4.9 vite: ^6.0.0 || ^7.0.0 || ^8.0.0 @@ -1763,45 +1746,25 @@ packages: vite: optional: true - '@vitest/pretty-format@4.0.14': - resolution: {integrity: sha512-SOYPgujB6TITcJxgd3wmsLl+wZv+fy3av2PpiPpsWPZ6J1ySUYfScfpIt2Yv56ShJXR2MOA6q2KjKHN4EpdyRQ==} + '@vitest/pretty-format@4.1.8': + resolution: {integrity: sha512-9GasEBxpZ1VYIpqHf/0+YGg121uSNwCKOJqIrTwWP/TB7DmFCiaBpNl3aPZzoLWfWkuqhbH8vJIVobZkvdo2cA==} - '@vitest/pretty-format@4.1.7': - resolution: {integrity: sha512-umgCarTOYQWIaDMvGDRZij+6b9oVeLIyJzfN+AS88e0ZOU3QTgNNSTtjQOpcvWr3np1N0j4WgZj+sb3oYBDscw==} + '@vitest/runner@4.1.8': + resolution: {integrity: sha512-EmVxeBAfMJvycdjd6Hm+RbFBbA9fKvo0Kx37hNpBYoYeavH3RNsBXWDooR1mgD52dCrxIIuP7UotpfiwOikvcg==} - '@vitest/runner@4.0.14': - resolution: {integrity: sha512-BsAIk3FAqxICqREbX8SetIteT8PiaUL/tgJjmhxJhCsigmzzH8xeadtp7LRnTpCVzvf0ib9BgAfKJHuhNllKLw==} + '@vitest/snapshot@4.1.8': + resolution: {integrity: sha512-acfZboRmAIf05DEKcBQy33VXojFJjtUdLyo7oOmV9kebb2xdU01UknNiPuPZoJZQyO7DF0gZdTGTpeAzET9QPQ==} - '@vitest/runner@4.1.7': - resolution: {integrity: sha512-BapjmAQ2aI78WdMEfeUWivnfVzB+VPGwWRQcJE0OUq7qEeEcBsCSf+0T5iREBNE5nBb4wA5Ya0W6IA+sghdEFw==} + '@vitest/spy@4.1.8': + resolution: {integrity: sha512-6EevtBp6OZOPF7bmz36HrGMeP3txgVSrgebWxHOafDXGkhIzfXK14f8KF6MuFfgXXUeHxmpD3BQxkV00/3s5mA==} - '@vitest/snapshot@4.0.14': - resolution: {integrity: sha512-aQVBfT1PMzDSA16Y3Fp45a0q8nKexx6N5Amw3MX55BeTeZpoC08fGqEZqVmPcqN0ueZsuUQ9rriPMhZ3Mu19Ag==} - - '@vitest/snapshot@4.1.7': - resolution: {integrity: sha512-ZacLzja+TmJeZ1h14xW2FB/WpeimUD3haBXQPyJqxvo8jQTmfeA8zv58mtjN2C7EHXZDYVcVYdYmAxjkWVvKCw==} - - '@vitest/spy@4.0.14': - resolution: {integrity: sha512-JmAZT1UtZooO0tpY3GRyiC/8W7dCs05UOq9rfsUUgEZEdq+DuHLmWhPsrTt0TiW7WYeL/hXpaE07AZ2RCk44hg==} - - '@vitest/spy@4.1.7': - resolution: {integrity: sha512-kbkI5LMWakyuTIvs6fUJ5qdIVb1XVKsYJAT4OJ938cHMROYMSfmoQdZy0aaAnjbbc8F61vkoTqz/Az+/HiIu5Q==} - - '@vitest/ui@4.0.14': - resolution: {integrity: sha512-fvDz8o7SQpFLoSBo6Cudv+fE85/fPCkwTnLAN85M+Jv7k59w2mSIjT9Q5px7XwGrmYqqKBEYxh/09IBGd1E7AQ==} + '@vitest/ui@4.1.8': + resolution: {integrity: sha512-RUS2ZU2TsduVrI+9c12uTNaKrNUTsm6yFt3fueEUB9iKvyC2UP83F+sqIz00HQIah4UOL1TMoDAki8K0NjGvsA==} peerDependencies: - vitest: 4.0.14 + vitest: 4.1.8 - '@vitest/ui@4.1.7': - resolution: {integrity: sha512-TP6utB2yX6rsJNVRo2qAlsi48i1YwFTrLV2tnTtWqJaYX7m4lRCCLirZBjU6xC5m0RsPHr+L2+N+eIPhgEzFfw==} - peerDependencies: - vitest: 4.1.7 - - '@vitest/utils@4.0.14': - resolution: {integrity: sha512-hLqXZKAWNg8pI+SQXyXxWCTOpA3MvsqcbVeNgSi8x/CSN2wi26dSzn1wrOhmCmFjEvN9p8/kLFRHa6PI8jHazw==} - - '@vitest/utils@4.1.7': - resolution: {integrity: sha512-T532WBu791cBxJlCl6SO+J14l81DQx6uQHm1bQbmCDY7nqlEIgkza/UFnSBNaUtSf41unldDFjdOBYEQC4b5Hw==} + '@vitest/utils@4.1.8': + resolution: {integrity: sha512-uOJamYALNhfJ6iolExyQM40yIQwDqYnkKtQ5VCiSe17E33H0aQ/u+1GlRuz4LZBk6Mm3sg90G9hEbmEt37C1Zg==} '@volar/language-core@2.4.15': resolution: {integrity: sha512-3VHw+QZU0ZG9IuQmzT68IyN4hZNd9GchGPhbD9+pa8CVv7rnoOZwo7T8weIbrRmihqy3ATpdfXFnqRrfPVK6CA==} @@ -2138,10 +2101,6 @@ packages: caseless@0.12.0: resolution: {integrity: sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==} - chai@6.2.1: - resolution: {integrity: sha512-p4Z49OGG5W/WBCPSS/dH3jQ73kD6tiMmUM+bckNK6Jr5JHMG3k9bg/BvKR8lKmtVBKmOiuVaV2ws8s9oSbwysg==} - engines: {node: '>=18'} - chai@6.2.2: resolution: {integrity: sha512-NUPRluOfOiTKBKvWPtSD4PhFvWCqOi0BGStNWs57X9js7XGTprSmFoz5F0tWhR4WPjNeR9jXqdC7/UpSJTnlRg==} engines: {node: '>=18'} @@ -2663,9 +2622,6 @@ packages: resolution: {integrity: sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==} engines: {node: '>= 0.4'} - es-module-lexer@1.7.0: - resolution: {integrity: sha512-jEQoCwk8hyb2AZziIOLhDqpm5+2ww5uIE6lkO/6jcOCusfk6LhMHpXXfBLXTZ7Ydyt0j4VoUQv6uGNYbdW+kBA==} - es-module-lexer@2.1.0: resolution: {integrity: sha512-n27zTYMjYu1aj4MjCWzSP7G9r75utsaoc8m61weK+W8JMBGGQybd43GstCXZ3WNmSFtGT9wi59qQTW6mhTR5LQ==} @@ -2828,10 +2784,6 @@ packages: resolution: {integrity: sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==} engines: {node: '>=0.8.x'} - expect-type@1.2.2: - resolution: {integrity: sha512-JhFGDVJ7tmDJItKhYgJCGLOWjuK9vPxiXoUFLwLDc99NlmklilbiQJwoctZtt13+xMw91MCk/REan6MWHqDjyA==} - engines: {node: '>=12.0.0'} - expect-type@1.3.0: resolution: {integrity: sha512-knvyeauYhqjOYvQ66MznSMs83wmHrCycNEN6Ao+2AeYEfxUIkuiVxdEa1qlGEPK+We3n0THiDciYSsCcgW/DoA==} engines: {node: '>=12.0.0'} @@ -2881,9 +2833,6 @@ packages: fflate@0.8.2: resolution: {integrity: sha512-cPJU47OaAoCbg0pBvzsgpTPhmhqI5eJjh/JIu8tPj5q+T7iLvW/JAYUqmE7KOB4R1ZyEhzBaIQpQpardBF5z8A==} - fflate@0.8.3: - resolution: {integrity: sha512-tbZNuJrLwGUp3zshBtdy4W+ORxZuIh8a5ilyIEQDC5rY1f3U20JMry0Ll3WBzU58EZKsEuJFXhb5gwv8CsPvgA==} - file-entry-cache@6.0.1: resolution: {integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==} engines: {node: ^10.12.0 || >=12.0.0} @@ -4462,9 +4411,6 @@ packages: resolution: {integrity: sha512-DvEy55V3DB7uknRo+4iOGT5fP1slR8wQohVdknigZPMpMstaKJQWhwiYBACJE3Ul2pTnATihhBYnRhZQHGBiRw==} engines: {node: '>= 0.8'} - std-env@3.10.0: - resolution: {integrity: sha512-5GS12FdOZNliM5mAOxFRg7Ir0pWz8MdpYm6AY6VPkGpbA7ZzmbzNcBJQ0GPvvyWgcY7QAhCgf9Uy89I03faLkg==} - std-env@4.1.0: resolution: {integrity: sha512-Rq7ybcX2RuC55r9oaPVEW7/xu3tj8u4GeBYHBWCychFtzMIr86A7e3PPEBPT37sHStKX3+TiX/Fr/ACmJLVlLQ==} @@ -4576,14 +4522,6 @@ packages: resolution: {integrity: sha512-pn99VhoACYR8nFHhxqix+uvsbXineAasWm5ojXoN8xEwK5Kd3/TrhNn1wByuD52UxWRLy8pu+kRMniEi6Eq9Zg==} engines: {node: '>=12.0.0'} - tinyglobby@0.2.17: - resolution: {integrity: sha512-wXR/dYpcqKmfWpEdZjiKJOwCNFndD0DMnrW/cYjVGttEkBfVgcLFHoNrlj47mjOVic9yyNu65alsgF4NQyTa2g==} - engines: {node: '>=12.0.0'} - - tinyrainbow@3.0.3: - resolution: {integrity: sha512-PSkbLUoxOFRzJYjjxHJt9xro7D+iilgMX/C9lawzVuYiIdcihh9DXmVibBe8lmcFrRi/VzlPjBxbN7rH24q8/Q==} - engines: {node: '>=14.0.0'} - tinyrainbow@3.1.0: resolution: {integrity: sha512-Bf+ILmBgretUrdJxzXM0SgXLZ3XfiaUuOj/IKQHuTXip+05Xn+uyEYdVg0kYDipTBcLrCVyUzAPz7QmArb0mmw==} engines: {node: '>=14.0.0'} @@ -4933,46 +4871,6 @@ packages: vega@5.30.0: resolution: {integrity: sha512-ZGoC8LdfEUV0LlXIuz7hup9jxuQYhSaWek2M7r9dEHAPbPrzSQvKXZ0BbsJbrarM100TGRpTVN/l1AFxCwDkWw==} - vite@7.3.2: - resolution: {integrity: sha512-Bby3NOsna2jsjfLVOHKes8sGwgl4TT0E6vvpYgnAYDIF/tie7MRaFthmKuHx1NSXjiTueXH3do80FMQgvEktRg==} - engines: {node: ^20.19.0 || >=22.12.0} - hasBin: true - peerDependencies: - '@types/node': ^20.19.0 || >=22.12.0 - jiti: '>=1.21.0' - less: ^4.0.0 - lightningcss: ^1.21.0 - sass: ^1.70.0 - sass-embedded: ^1.70.0 - stylus: '>=0.54.8' - sugarss: ^5.0.0 - terser: ^5.16.0 - tsx: ^4.8.1 - yaml: ^2.4.2 - peerDependenciesMeta: - '@types/node': - optional: true - jiti: - optional: true - less: - optional: true - lightningcss: - optional: true - sass: - optional: true - sass-embedded: - optional: true - stylus: - optional: true - sugarss: - optional: true - terser: - optional: true - tsx: - optional: true - yaml: - optional: true - vite@8.0.13: resolution: {integrity: sha512-MFtjBYgzmSxmgA4RAfjIyXWpGe1oALnjgUTzzV7QLx/TKxCzjtMH6Fd9/eVK+5Fg1qNoz5VAwsmMs/NofrmJvw==} engines: {node: ^20.19.0 || >=22.12.0} @@ -5027,54 +4925,20 @@ packages: resolution: {integrity: sha512-8iR9Fkpy+/MTaVOHzt1x9qMuetI1/nbEyG7VQqF5DdxStziRPX2Y1gaJD52z8QRiY4lfVbN0ajIF6BZ0zDttUA==} engines: {node: '>=18.0.0'} - vitest@4.0.14: - resolution: {integrity: sha512-d9B2J9Cm9dN9+6nxMnnNJKJCtcyKfnHj15N6YNJfaFHRLua/d3sRKU9RuKmO9mB0XdFtUizlxfz/VPbd3OxGhw==} + vitest@4.1.8: + resolution: {integrity: sha512-flY6ScbCIt9HThs+C5HS7jvGOB560DJtk/Z15IQROTA6zEy49Nh8T/dofWTQL+n3vswqn87sbJNiuqw1SDp5Ig==} engines: {node: ^20.0.0 || ^22.0.0 || >=24.0.0} hasBin: true peerDependencies: '@edge-runtime/vm': '*' '@opentelemetry/api': ^1.9.0 '@types/node': ^20.0.0 || ^22.0.0 || >=24.0.0 - '@vitest/browser-playwright': 4.0.14 - '@vitest/browser-preview': 4.0.14 - '@vitest/browser-webdriverio': 4.0.14 - '@vitest/ui': 4.0.14 - happy-dom: '*' - jsdom: '*' - peerDependenciesMeta: - '@edge-runtime/vm': - optional: true - '@opentelemetry/api': - optional: true - '@types/node': - optional: true - '@vitest/browser-playwright': - optional: true - '@vitest/browser-preview': - optional: true - '@vitest/browser-webdriverio': - optional: true - '@vitest/ui': - optional: true - happy-dom: - optional: true - jsdom: - optional: true - - vitest@4.1.7: - resolution: {integrity: sha512-flYyaFd2CgoCoU+0UKt3pxksgC+S02iTDN0n3LtqaMeXsI9SBcdNujc2k0DeFLzUn/0k538yNjOSdwgCqcrwJA==} - engines: {node: ^20.0.0 || ^22.0.0 || >=24.0.0} - hasBin: true - peerDependencies: - '@edge-runtime/vm': '*' - '@opentelemetry/api': ^1.9.0 - '@types/node': ^20.0.0 || ^22.0.0 || >=24.0.0 - '@vitest/browser-playwright': 4.1.7 - '@vitest/browser-preview': 4.1.7 - '@vitest/browser-webdriverio': 4.1.7 - '@vitest/coverage-istanbul': 4.1.7 - '@vitest/coverage-v8': 4.1.7 - '@vitest/ui': 4.1.7 + '@vitest/browser-playwright': 4.1.8 + '@vitest/browser-preview': 4.1.8 + '@vitest/browser-webdriverio': 4.1.8 + '@vitest/coverage-istanbul': 4.1.8 + '@vitest/coverage-v8': 4.1.8 + '@vitest/ui': 4.1.8 happy-dom: '*' jsdom: '*' vite: ^6.0.0 || ^7.0.0 || ^8.0.0 @@ -6136,8 +6000,6 @@ snapshots: '@socket.io/component-emitter@3.1.2': {} - '@standard-schema/spec@1.0.0': {} - '@standard-schema/spec@1.1.0': {} '@testing-library/jest-dom@6.4.8': @@ -6459,10 +6321,10 @@ snapshots: vite: 8.0.13(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1) vue: 2.7.16 - '@vitest/coverage-v8@4.1.7(vitest@4.1.7)': + '@vitest/coverage-v8@4.1.8(vitest@4.1.8)': dependencies: '@bcoe/v8-coverage': 1.0.2 - '@vitest/utils': 4.1.7 + '@vitest/utils': 4.1.8 ast-v8-to-istanbul: 1.0.0 istanbul-lib-coverage: 3.2.2 istanbul-lib-report: 3.0.1 @@ -6471,110 +6333,58 @@ snapshots: obug: 2.1.1 std-env: 4.1.0 tinyrainbow: 3.1.0 - vitest: 4.1.7(@types/node@25.9.3)(@vitest/coverage-v8@4.1.7)(@vitest/ui@4.1.7)(happy-dom@20.0.10)(jsdom@28.1.0)(msw@2.3.4(typescript@5.8.3))(vite@8.0.13(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)) + vitest: 4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.0.10)(jsdom@28.1.0)(msw@2.3.4(typescript@5.8.3))(vite@8.0.13(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)) - '@vitest/expect@4.0.14': - dependencies: - '@standard-schema/spec': 1.0.0 - '@types/chai': 5.2.3 - '@vitest/spy': 4.0.14 - '@vitest/utils': 4.0.14 - chai: 6.2.1 - tinyrainbow: 3.0.3 - - '@vitest/expect@4.1.7': + '@vitest/expect@4.1.8': dependencies: '@standard-schema/spec': 1.1.0 '@types/chai': 5.2.3 - '@vitest/spy': 4.1.7 - '@vitest/utils': 4.1.7 + '@vitest/spy': 4.1.8 + '@vitest/utils': 4.1.8 chai: 6.2.2 tinyrainbow: 3.1.0 - '@vitest/mocker@4.0.14(msw@2.3.4(typescript@5.8.3))(vite@7.3.2(@types/node@25.9.3)(lightningcss@1.32.0)(sass@1.94.2)(yaml@2.6.1))': + '@vitest/mocker@4.1.8(msw@2.3.4(typescript@5.8.3))(vite@8.0.13(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1))': dependencies: - '@vitest/spy': 4.0.14 - estree-walker: 3.0.3 - magic-string: 0.30.21 - optionalDependencies: - msw: 2.3.4(typescript@5.8.3) - vite: 7.3.2(@types/node@25.9.3)(lightningcss@1.32.0)(sass@1.94.2)(yaml@2.6.1) - - '@vitest/mocker@4.1.7(msw@2.3.4(typescript@5.8.3))(vite@8.0.13(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1))': - dependencies: - '@vitest/spy': 4.1.7 + '@vitest/spy': 4.1.8 estree-walker: 3.0.3 magic-string: 0.30.21 optionalDependencies: msw: 2.3.4(typescript@5.8.3) vite: 8.0.13(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1) - '@vitest/pretty-format@4.0.14': - dependencies: - tinyrainbow: 3.0.3 - - '@vitest/pretty-format@4.1.7': + '@vitest/pretty-format@4.1.8': dependencies: tinyrainbow: 3.1.0 - '@vitest/runner@4.0.14': + '@vitest/runner@4.1.8': dependencies: - '@vitest/utils': 4.0.14 + '@vitest/utils': 4.1.8 pathe: 2.0.3 - '@vitest/runner@4.1.7': + '@vitest/snapshot@4.1.8': dependencies: - '@vitest/utils': 4.1.7 - pathe: 2.0.3 - - '@vitest/snapshot@4.0.14': - dependencies: - '@vitest/pretty-format': 4.0.14 + '@vitest/pretty-format': 4.1.8 + '@vitest/utils': 4.1.8 magic-string: 0.30.21 pathe: 2.0.3 - '@vitest/snapshot@4.1.7': + '@vitest/spy@4.1.8': {} + + '@vitest/ui@4.1.8(vitest@4.1.8)': dependencies: - '@vitest/pretty-format': 4.1.7 - '@vitest/utils': 4.1.7 - magic-string: 0.30.21 - pathe: 2.0.3 - - '@vitest/spy@4.0.14': {} - - '@vitest/spy@4.1.7': {} - - '@vitest/ui@4.0.14(vitest@4.0.14)': - dependencies: - '@vitest/utils': 4.0.14 - fflate: 0.8.3 - flatted: 3.4.2 - pathe: 2.0.3 - sirv: 3.0.2 - tinyglobby: 0.2.17 - tinyrainbow: 3.1.0 - vitest: 4.0.14(@types/node@25.9.3)(@vitest/ui@4.0.14)(happy-dom@20.0.10)(jsdom@28.1.0)(lightningcss@1.32.0)(msw@2.3.4(typescript@5.8.3))(sass@1.94.2)(yaml@2.6.1) - optional: true - - '@vitest/ui@4.1.7(vitest@4.1.7)': - dependencies: - '@vitest/utils': 4.1.7 + '@vitest/utils': 4.1.8 fflate: 0.8.2 flatted: 3.4.2 pathe: 2.0.3 sirv: 3.0.2 - tinyglobby: 0.2.15 + tinyglobby: 0.2.16 tinyrainbow: 3.1.0 - vitest: 4.1.7(@types/node@25.9.3)(@vitest/coverage-v8@4.1.7)(@vitest/ui@4.1.7)(happy-dom@20.0.10)(jsdom@28.1.0)(msw@2.3.4(typescript@5.8.3))(vite@8.0.13(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)) + vitest: 4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.0.10)(jsdom@28.1.0)(msw@2.3.4(typescript@5.8.3))(vite@8.0.13(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)) - '@vitest/utils@4.0.14': + '@vitest/utils@4.1.8': dependencies: - '@vitest/pretty-format': 4.0.14 - tinyrainbow: 3.0.3 - - '@vitest/utils@4.1.7': - dependencies: - '@vitest/pretty-format': 4.1.7 + '@vitest/pretty-format': 4.1.8 convert-source-map: 2.0.0 tinyrainbow: 3.1.0 @@ -6995,8 +6805,6 @@ snapshots: caseless@0.12.0: {} - chai@6.2.1: {} - chai@6.2.2: {} chalk@3.0.0: @@ -7566,8 +7374,6 @@ snapshots: es-errors@1.3.0: {} - es-module-lexer@1.7.0: {} - es-module-lexer@2.1.0: {} es-object-atoms@1.1.1: @@ -7807,8 +7613,6 @@ snapshots: events@3.3.0: {} - expect-type@1.2.2: {} - expect-type@1.3.0: {} extend-shallow@2.0.1: @@ -7851,9 +7655,6 @@ snapshots: fflate@0.8.2: {} - fflate@0.8.3: - optional: true - file-entry-cache@6.0.1: dependencies: flat-cache: 3.0.4 @@ -9477,8 +9278,6 @@ snapshots: statuses@2.0.2: {} - std-env@3.10.0: {} - std-env@4.1.0: {} store@2.0.12: {} @@ -9601,14 +9400,6 @@ snapshots: fdir: 6.5.0(picomatch@4.0.4) picomatch: 4.0.4 - tinyglobby@0.2.17: - dependencies: - fdir: 6.5.0(picomatch@4.0.4) - picomatch: 4.0.4 - optional: true - - tinyrainbow@3.0.3: {} - tinyrainbow@3.1.0: {} tldts-core@7.0.28: {} @@ -10140,21 +9931,6 @@ snapshots: transitivePeerDependencies: - encoding - vite@7.3.2(@types/node@25.9.3)(lightningcss@1.32.0)(sass@1.94.2)(yaml@2.6.1): - dependencies: - esbuild: 0.27.7 - fdir: 6.5.0(picomatch@4.0.4) - picomatch: 4.0.4 - postcss: 8.5.8 - rollup: 4.60.1 - tinyglobby: 0.2.15 - optionalDependencies: - '@types/node': 25.9.3 - fsevents: 2.3.3 - lightningcss: 1.32.0 - sass: 1.94.2 - yaml: 2.6.1 - vite@8.0.13(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1): dependencies: lightningcss: 1.32.0 @@ -10169,66 +9945,26 @@ snapshots: sass: 1.94.2 yaml: 2.6.1 - vitest-fail-on-console@0.10.1(@vitest/utils@4.1.7)(vite@8.0.13(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1))(vitest@4.1.7): + vitest-fail-on-console@0.10.1(@vitest/utils@4.1.8)(vite@8.0.13(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1))(vitest@4.1.8): dependencies: - '@vitest/utils': 4.1.7 + '@vitest/utils': 4.1.8 chalk: 5.6.2 vite: 8.0.13(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1) - vitest: 4.1.7(@types/node@25.9.3)(@vitest/coverage-v8@4.1.7)(@vitest/ui@4.1.7)(happy-dom@20.0.10)(jsdom@28.1.0)(msw@2.3.4(typescript@5.8.3))(vite@8.0.13(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)) + vitest: 4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.0.10)(jsdom@28.1.0)(msw@2.3.4(typescript@5.8.3))(vite@8.0.13(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)) vitest-location-mock@1.0.4: dependencies: '@jedmao/location': 3.0.0 - vitest@4.0.14(@types/node@25.9.3)(@vitest/ui@4.0.14)(happy-dom@20.0.10)(jsdom@28.1.0)(lightningcss@1.32.0)(msw@2.3.4(typescript@5.8.3))(sass@1.94.2)(yaml@2.6.1): + vitest@4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.0.10)(jsdom@28.1.0)(msw@2.3.4(typescript@5.8.3))(vite@8.0.13(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)): dependencies: - '@vitest/expect': 4.0.14 - '@vitest/mocker': 4.0.14(msw@2.3.4(typescript@5.8.3))(vite@7.3.2(@types/node@25.9.3)(lightningcss@1.32.0)(sass@1.94.2)(yaml@2.6.1)) - '@vitest/pretty-format': 4.0.14 - '@vitest/runner': 4.0.14 - '@vitest/snapshot': 4.0.14 - '@vitest/spy': 4.0.14 - '@vitest/utils': 4.0.14 - es-module-lexer: 1.7.0 - expect-type: 1.2.2 - magic-string: 0.30.21 - obug: 2.1.1 - pathe: 2.0.3 - picomatch: 4.0.3 - std-env: 3.10.0 - tinybench: 2.9.0 - tinyexec: 0.3.2 - tinyglobby: 0.2.15 - tinyrainbow: 3.0.3 - vite: 7.3.2(@types/node@25.9.3)(lightningcss@1.32.0)(sass@1.94.2)(yaml@2.6.1) - why-is-node-running: 2.3.0 - optionalDependencies: - '@types/node': 25.9.3 - '@vitest/ui': 4.0.14(vitest@4.0.14) - happy-dom: 20.0.10 - jsdom: 28.1.0 - transitivePeerDependencies: - - jiti - - less - - lightningcss - - msw - - sass - - sass-embedded - - stylus - - sugarss - - terser - - tsx - - yaml - - vitest@4.1.7(@types/node@25.9.3)(@vitest/coverage-v8@4.1.7)(@vitest/ui@4.1.7)(happy-dom@20.0.10)(jsdom@28.1.0)(msw@2.3.4(typescript@5.8.3))(vite@8.0.13(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)): - dependencies: - '@vitest/expect': 4.1.7 - '@vitest/mocker': 4.1.7(msw@2.3.4(typescript@5.8.3))(vite@8.0.13(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)) - '@vitest/pretty-format': 4.1.7 - '@vitest/runner': 4.1.7 - '@vitest/snapshot': 4.1.7 - '@vitest/spy': 4.1.7 - '@vitest/utils': 4.1.7 + '@vitest/expect': 4.1.8 + '@vitest/mocker': 4.1.8(msw@2.3.4(typescript@5.8.3))(vite@8.0.13(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)) + '@vitest/pretty-format': 4.1.8 + '@vitest/runner': 4.1.8 + '@vitest/snapshot': 4.1.8 + '@vitest/spy': 4.1.8 + '@vitest/utils': 4.1.8 es-module-lexer: 2.1.0 expect-type: 1.3.0 magic-string: 0.30.21 @@ -10238,14 +9974,14 @@ snapshots: std-env: 4.1.0 tinybench: 2.9.0 tinyexec: 1.1.2 - tinyglobby: 0.2.15 + tinyglobby: 0.2.16 tinyrainbow: 3.1.0 vite: 8.0.13(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1) why-is-node-running: 2.3.0 optionalDependencies: '@types/node': 25.9.3 - '@vitest/coverage-v8': 4.1.7(vitest@4.1.7) - '@vitest/ui': 4.1.7(vitest@4.1.7) + '@vitest/coverage-v8': 4.1.8(vitest@4.1.8) + '@vitest/ui': 4.1.8(vitest@4.1.8) happy-dom: 20.0.10 jsdom: 28.1.0 transitivePeerDependencies: From 8510e25de6c933e96e11d652c9268a08f64fc18b Mon Sep 17 00:00:00 2001 From: Dannon Baker Date: Fri, 12 Jun 2026 08:58:21 -0400 Subject: [PATCH 12/31] Patch-level bumps for direct deps, all in-range and lockfile-only: @citation-js/* 0.7.21/22, @floating-ui/dom 1.7.6, @types/d3 7.4.3, @types/lodash.isequal 4.5.8, dompurify 3.4.10, linkifyjs 4.3.3, monaco-languageserver-types 0.4.1, monaco-types 0.1.2, rxjs 7.8.2, slugify 1.6.9, and vite 8.0.16 (which brings rolldown 1.0.3 along). --- client/pnpm-lock.yaml | 366 ++++++++++++++++++++++-------------------- 1 file changed, 190 insertions(+), 176 deletions(-) diff --git a/client/pnpm-lock.yaml b/client/pnpm-lock.yaml index 4ccbeaba459..33e2515d0be 100644 --- a/client/pnpm-lock.yaml +++ b/client/pnpm-lock.yaml @@ -14,16 +14,16 @@ importers: dependencies: '@citation-js/core': specifier: ^0.7.1 - version: 0.7.1 + version: 0.7.21 '@citation-js/plugin-bibtex': specifier: ^0.7.2 - version: 0.7.2(@citation-js/core@0.7.1) + version: 0.7.21(@citation-js/core@0.7.21) '@citation-js/plugin-csl': specifier: ^0.7.2 - version: 0.7.2(@citation-js/core@0.7.1) + version: 0.7.22(@citation-js/core@0.7.21) '@floating-ui/dom': specifier: ^1.7.0 - version: 1.7.0 + version: 1.7.6 '@fontsource/atkinson-hyperlegible': specifier: ^5.0.17 version: 5.0.17 @@ -56,7 +56,7 @@ importers: version: 2.0.0(handsontable@4.0.0) '@hirez_io/observer-spy': specifier: ^2.1.2 - version: 2.2.0(rxjs@7.8.1)(typescript@5.8.3) + version: 2.2.0(rxjs@7.8.2)(typescript@5.8.3) '@johmun/vue-tags-input': specifier: ^2.1.0 version: 2.1.0(vue@2.7.16) @@ -131,7 +131,7 @@ importers: version: 2.6.0 dompurify: specifier: ^3.0.6 - version: 3.4.0 + version: 3.4.10 echarts: specifier: ^5.5.1 version: 5.5.1 @@ -179,10 +179,10 @@ importers: version: 0.16.22 linkify-html: specifier: ^4.1.1 - version: 4.1.1(linkifyjs@4.3.2) + version: 4.1.1(linkifyjs@4.3.3) linkifyjs: specifier: ^4.1.1 - version: 4.3.2 + version: 4.3.3 lodash: specifier: ^4.17.21 version: 4.18.1 @@ -203,10 +203,10 @@ importers: version: 0.52.2 monaco-languageserver-types: specifier: ^0.4.0 - version: 0.4.0 + version: 0.4.1 monaco-types: specifier: ^0.1.0 - version: 0.1.0 + version: 0.1.2 monaco-worker-manager: specifier: ^2.0.1 version: 2.0.1(monaco-editor@0.52.2) @@ -242,10 +242,10 @@ importers: version: 0.4.1 rxjs: specifier: ^7.8.1 - version: 7.8.1 + version: 7.8.2 rxjs-spy: specifier: ^8.0.2 - version: 8.0.2(rxjs@7.8.1) + version: 8.0.2(rxjs@7.8.2) rxjs-spy-devtools-plugin: specifier: ^0.0.4 version: 0.0.4 @@ -257,7 +257,7 @@ importers: version: 1.2.4 slugify: specifier: ^1.6.6 - version: 1.6.6 + version: 1.6.9 stream-browserify: specifier: ^3.0.0 version: 3.0.0 @@ -317,7 +317,7 @@ importers: version: 3.6.5(vue@2.7.16) vue-rx: specifier: ^6.2.0 - version: 6.2.0(rxjs@7.8.1) + version: 6.2.0(rxjs@7.8.2) vue-virtual-scroll-list: specifier: ^2.3.5 version: 2.3.5 @@ -336,7 +336,7 @@ importers: devDependencies: '@modyfi/vite-plugin-yaml': specifier: ^1.1.1 - version: 1.1.1(rollup@4.60.1)(vite@8.0.13(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)) + version: 1.1.1(rollup@4.60.1)(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)) '@pinia/testing': specifier: 0.1.5 version: 0.1.5(pinia@2.3.1(typescript@5.8.3)(vue@2.7.16))(vue@2.7.16) @@ -348,7 +348,7 @@ importers: version: 6.4.8 '@types/d3': specifier: ^7.4.2 - version: 7.4.2 + version: 7.4.3 '@types/d3-selection': specifier: ^3.0.11 version: 3.0.11 @@ -366,7 +366,7 @@ importers: version: 4.14.200 '@types/lodash.isequal': specifier: ^4.5.7 - version: 4.5.7 + version: 4.5.8 '@types/markdown-it': specifier: ^13.0.4 version: 13.0.4 @@ -378,7 +378,7 @@ importers: version: 6.8.0(eslint@8.52.0)(typescript@5.8.3) '@vitejs/plugin-vue2': specifier: ^2.3.4 - version: 2.3.4(vite@8.0.13(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1))(vue@2.7.16) + version: 2.3.4(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1))(vue@2.7.16) '@vitest/coverage-v8': specifier: ^4.1.5 version: 4.1.8(vitest@4.1.8) @@ -459,13 +459,13 @@ importers: version: 5.8.3 vite: specifier: ^8.0.11 - version: 8.0.13(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1) + version: 8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1) vitest: specifier: ^4.1.5 - version: 4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.0.10)(jsdom@28.1.0)(msw@2.3.4(typescript@5.8.3))(vite@8.0.13(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)) + version: 4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.0.10)(jsdom@28.1.0)(msw@2.3.4(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)) vitest-fail-on-console: specifier: ^0.10.1 - version: 0.10.1(@vitest/utils@4.1.8)(vite@8.0.13(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1))(vitest@4.1.8) + version: 0.10.1(@vitest/utils@4.1.8)(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1))(vitest@4.1.8) vitest-location-mock: specifier: ^1.0.4 version: 1.0.4 @@ -508,7 +508,7 @@ importers: version: 5.8.3 vitest: specifier: ^4.0.14 - version: 4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.0.10)(jsdom@28.1.0)(msw@2.3.4(typescript@5.8.3))(vite@8.0.13(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)) + version: 4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.0.10)(jsdom@28.1.0)(msw@2.3.4(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)) packages: @@ -619,8 +619,8 @@ packages: '@bundled-es-modules/tough-cookie@0.1.6': resolution: {integrity: sha512-dvMHbL464C0zI+Yqxbz6kZ5TOEp7GLW+pry/RWndAR8MJQAXZ2rPmIs8tziTZjeIyhSNZgZbCePtfSbdWqStJw==} - '@citation-js/core@0.7.1': - resolution: {integrity: sha512-vt7O/KbWNj6v0/fTKRJfjLE0VU4bV13LR69bG4V4lvWEq8TqXSNR4TVEINJuAwBLCofTk6LRyF82oGpb9AgaPQ==} + '@citation-js/core@0.7.21': + resolution: {integrity: sha512-Vobv2/Yfnn6C6BVO/pvj7madQ7Mfzl83/jAWwixbemGF6ZThhGMz8++FD9hWHyHXDMYuLGa6fK68c2VsolZmTA==} engines: {node: '>=16.0.0'} '@citation-js/date@0.5.1': @@ -631,14 +631,14 @@ packages: resolution: {integrity: sha512-brSPsjs2fOVzSnARLKu0qncn6suWjHVQtrqSUrnqyaRH95r/Ad4wPF5EsoWr+Dx8HzkCGb/ogmoAzfCsqlTwTQ==} engines: {node: '>=6'} - '@citation-js/plugin-bibtex@0.7.2': - resolution: {integrity: sha512-QkgPfYbs1dierenxKWzIlPV7450Jci8bvZbcpjO3HQTfTaj15SV2C2AaeKhUotXZmTjm49AJQWHZtrNh+7YWjg==} + '@citation-js/plugin-bibtex@0.7.21': + resolution: {integrity: sha512-O008pSsJgiYKn4+7gAWrbNpNdUH++aMeYmZaJ2oFQ8X1tcY5jNBxJcr0zZojNtUi5CVOaXXHQ0yIifoUhuF2Vg==} engines: {node: '>=16.0.0'} peerDependencies: '@citation-js/core': ^0.7.0 - '@citation-js/plugin-csl@0.7.2': - resolution: {integrity: sha512-ogNb/gdcZ/EXZq+We+/aw6RkiYxjF+h7myJypyR0PApGJq9GzwcfGHW9ded2JdQIxyz4fO46pCTR4nv6FPUvMA==} + '@citation-js/plugin-csl@0.7.22': + resolution: {integrity: sha512-/rGdtbeP3nS4uZDdEbQUHT8PrUcIs0da2t+sWMKYXoOhXQqfw3oJJ7p4tUD+R8lptyIR5Eq20/DFk/kQDdLpYg==} engines: {node: '>=16.0.0'} peerDependencies: '@citation-js/core': ^0.7.0 @@ -879,14 +879,14 @@ packages: '@noble/hashes': optional: true - '@floating-ui/core@1.7.0': - resolution: {integrity: sha512-FRdBLykrPPA6P76GGGqlex/e7fbe0F1ykgxHYNXQsH/iTEtjMj/f9bpY5oQqbjt5VgZvgz/uKXbGuROijh3VLA==} + '@floating-ui/core@1.7.5': + resolution: {integrity: sha512-1Ih4WTWyw0+lKyFMcBHGbb5U5FtuHJuujoyyr5zTaWS5EYMeT6Jb2AuDeftsCsEuchO+mM2ij5+q9crhydzLhQ==} - '@floating-ui/dom@1.7.0': - resolution: {integrity: sha512-lGTor4VlXcesUMh1cupTUTDoCxMb0V6bm3CnxHzQcw8Eaf1jQbgQX4i02fYgT0vJ82tb5MZ4CZk1LRGkktJCzg==} + '@floating-ui/dom@1.7.6': + resolution: {integrity: sha512-9gZSAI5XM36880PPMm//9dfiEngYoC6Am2izES1FF406YFsjvyBMmeJ2g4SAju3xWwtuynNRFL2s9hgxpLI5SQ==} - '@floating-ui/utils@0.2.9': - resolution: {integrity: sha512-MDWhGtE+eHw5JW7lq4qhc5yRLS11ERl1c7Z6Xd0a58DozHES6EnNNwUWbMiG4J9Cgj053Bhk8zvlhFYKVhULwg==} + '@floating-ui/utils@0.2.11': + resolution: {integrity: sha512-RiB/yIh78pcIxl6lLMG0CgBXAZ2Y0eVHqMPYugu+9U0AeT6YBeiJpf7lbdJNIugFP5SIjwNRgo4DhR1Qxi26Gg==} '@fontsource/atkinson-hyperlegible@5.0.17': resolution: {integrity: sha512-Evhr7GER/hFVxYj93msIC/BxEDpIMU27C42alWeILCyWsQEu3AWKLxQY/IVZyLrpgVT1ktWAXnH52WS1NarPPg==} @@ -1024,8 +1024,8 @@ packages: resolution: {integrity: sha512-3rDakgJZ77+RiQUuSK69t1F0m8BQKA8Vh5DCS5V0DWvNY67zob2JhhQrhCO0AKLGINTRSFd1tBaHcJTkhefoSw==} engines: {node: '>=18'} - '@napi-rs/wasm-runtime@1.1.4': - resolution: {integrity: sha512-3NQNNgA1YSlJb/kMH1ildASP9HW7/7kYnRI2szWJaofaS1hWmbGI4H+d3+22aGzXXN9IJ+n+GiFVcGipJP18ow==} + '@napi-rs/wasm-runtime@1.1.5': + resolution: {integrity: sha512-AWPoBRJ9tsnVhor4sjO7rkni+7p+2IAEFj6cx06UgP10jkQHqay/36uRV/bFkgrh18D9vb4cr8Q0Pthskgzy+Q==} peerDependencies: '@emnapi/core': ^1.7.1 '@emnapi/runtime': ^1.7.1 @@ -1056,8 +1056,8 @@ packages: '@open-draft/until@2.1.0': resolution: {integrity: sha512-U69T3ItWHvLwGg5eJ0n3I62nWuE6ilHlmz7zM0npLBRvPRd7e6NYmg54vvRtP5mZG7kZqZCFVdsTWo7BPtBujg==} - '@oxc-project/types@0.130.0': - resolution: {integrity: sha512-ibD2usx9JRu7f5pu2tMKMI4cpA4NgXJQoYRP4pQ7Pxmn1l6k/53qWtQWZayhYy3X4QZkt90Ot+mJEaeXouio6Q==} + '@oxc-project/types@0.133.0': + resolution: {integrity: sha512-KzkdCd6Uxqnf6l3HOw1xfatAlUURA0g14cvBYFyJ5SaNOQbOUvBr9PKArcPcrNIeRsBdgcUzOGrhKveVpvOIGA==} '@parcel/watcher-android-arm64@2.5.1': resolution: {integrity: sha512-KF8+j9nNbUN8vzOFDpRMsaKBHZ/mcjEjMToVMJOhTozkDonQFFrRcfdLWn6yWKCmJKmdVxSgHiYvTCef4/qcBA==} @@ -1162,91 +1162,91 @@ packages: resolution: {integrity: sha512-0EbE8LRbkogtcCXU7liAyC00n9uNG9hJ+eMyHFdUsy9lB/WGqnEBgwjA9q2cyzAVcdTkQqTBBU1XePNnN3OijA==} engines: {node: '>=18.17.0', npm: '>=9.5.0'} - '@rolldown/binding-android-arm64@1.0.1': - resolution: {integrity: sha512-fJI3I0r3C3Oj/zdBCpaCmBRZYf07xpaq4yCfDDoSFm+beWNzbIl26puW8RraUdugoJw/95zerNOn6jasAhzSmg==} + '@rolldown/binding-android-arm64@1.0.3': + resolution: {integrity: sha512-454rs7jHngixp/NMxd5srYD57OnzSlZ/eFTETjORQHLwJG1lRtmNOJcBerZlfu4GjKqeq8aCCIQrMdHyhI51Hw==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [android] - '@rolldown/binding-darwin-arm64@1.0.1': - resolution: {integrity: sha512-cKnAhWEsV7TPcA/5EAteDp6KcJZBQ2G+BqE7zayMMi7kMvwRsbv7WT9aOnn0WNl4SKEIf43vjS31iUPu80nzXg==} + '@rolldown/binding-darwin-arm64@1.0.3': + resolution: {integrity: sha512-PcAhP+ynjURNyy8SKGl5DQP94aGuB/7JrXJb/t7P+hanXvQVMWzUvRRhBAcg/lNRadBhoUPqSoP4xw5tR/KBEA==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [darwin] - '@rolldown/binding-darwin-x64@1.0.1': - resolution: {integrity: sha512-YKrVwQjIRBPo+5G/u03wGjbdy4q7pyzCe93DK9VJ7zkVmeg8LJ7GbgsiHWdR4xSoe4CAXRD7Bcjgbtr64bkXNg==} + '@rolldown/binding-darwin-x64@1.0.3': + resolution: {integrity: sha512-9YpfeUvSE2RS7wysJ81uOZkXJz7f7Q55H2Gvp3VEw/EsahqDtrphrZ0EwDLK5vvKOzaCrBsjF8JmnMLcUt78Gg==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [darwin] - '@rolldown/binding-freebsd-x64@1.0.1': - resolution: {integrity: sha512-z/oBsREo46SsFqBwYtFe0kpJeBijAT48O/WXLI4suiCLBkr03RTtTJMCzSdDd2znlh8VJizL09XVkQgk8IZonw==} + '@rolldown/binding-freebsd-x64@1.0.3': + resolution: {integrity: sha512-yB1IlAsSNHncV6SCTL27/MVGR5htvQsoGxIv5KMGXALp+Ll1wYsn+x98M9MW7qa+NdSbvrrY7ANI4wLJ0n1e6g==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [freebsd] - '@rolldown/binding-linux-arm-gnueabihf@1.0.1': - resolution: {integrity: sha512-ik8q7GM11zxvYxFc2PeDcT6TBvhCQMaUxfph/M5l9sKuTs/Sjg3L+Byw0F7w0ZVLBZmx30P+gG0ECzzN+MFcmQ==} + '@rolldown/binding-linux-arm-gnueabihf@1.0.3': + resolution: {integrity: sha512-Yi30IVAAfLUCy2MseFjbB1jAMDl1VMCAas5StnYp8da9+CKvMd2H2cbEjWcw5NPaPqzvYkVIaF1nNUG+b7u/sw==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm] os: [linux] - '@rolldown/binding-linux-arm64-gnu@1.0.1': - resolution: {integrity: sha512-QoSx2EkyrrdZ6kcyE8stqZ62t0Yra8Fs5ia9lOxJrh6TMQJK7gQKmscdTHf7pOXKREKrVwOtJcQG3qVSfc866A==} + '@rolldown/binding-linux-arm64-gnu@1.0.3': + resolution: {integrity: sha512-jsO7R8To+AdlYgUmN5sHSCZbfhtMBkO0WUx8iORQnPcMMdgr7qM2DQmMwgabs3GhNztdmoKkMKQFHD6DTMCIQw==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [linux] - '@rolldown/binding-linux-arm64-musl@1.0.1': - resolution: {integrity: sha512-uwNwFpwKeNiZawfAWBgg0VIztPTV3ihhh1vV334h9ivnNLorxnQMU6Fz8wG1Zb4Qh9LC1/MkcyT3YlDXG3Rsgg==} + '@rolldown/binding-linux-arm64-musl@1.0.3': + resolution: {integrity: sha512-VWkUHwWriDciit80wleYwKILoR/KMvxh/IdwS/paX+ZgpuRpCrKLUdadJbc0NpBEiyhpYawsJ73j9aCvOH+f7Q==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [linux] - '@rolldown/binding-linux-ppc64-gnu@1.0.1': - resolution: {integrity: sha512-zY1bul7OWr7DFBiJ++wofXvnr8B45ce3QsQUhKrIhXsygAh7bTkwyeM1bi1a2g5C/yC/N8TZyGDEoMfm/l9mpg==} + '@rolldown/binding-linux-ppc64-gnu@1.0.3': + resolution: {integrity: sha512-5f1laC0SlIR0yDbFCd8acUhvJIag6N3zC5P7oUPN6wX0aOma+uKJ0wBDH5aq7I1PVI2ttTlhJwzwRIBnLiSGEg==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [ppc64] os: [linux] - '@rolldown/binding-linux-s390x-gnu@1.0.1': - resolution: {integrity: sha512-0frlsT/f4Ft6I7SMESTKnF3cZsdicQn1dCMkF/jT9wDLE+gGoiQfv1nmT9e+s7s/fekvvy6tZM2jHvI2tkbJDQ==} + '@rolldown/binding-linux-s390x-gnu@1.0.3': + resolution: {integrity: sha512-Iq4ko0r4XsgbrF/LunNgHtAGLRRVE2kXonAXQ/MV0mC6jQpMOhW1SvtZja2EhC/kd05++bP78dsqBeIQyYJ6Yg==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [s390x] os: [linux] - '@rolldown/binding-linux-x64-gnu@1.0.1': - resolution: {integrity: sha512-XABVmGp9Tg0WspTVvwduTc4fpqy6JnAUrSQe6OuyqD/03nI7r0O9OWUkMIwFrjKAIqolvqoA4ZrJppgwE0Gxmw==} + '@rolldown/binding-linux-x64-gnu@1.0.3': + resolution: {integrity: sha512-B8m6tD5+/N5FeNQFbKlLA/2yVq9ycQP1SeedyEYYKWBNR3ZQbkvIUcNnDNM03lO1l5F2roiiFJGgvoLLyZXtSg==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [linux] - '@rolldown/binding-linux-x64-musl@1.0.1': - resolution: {integrity: sha512-bV4fzswuzVcKD90o/VM6QqKxnxlDq0g2BISDLNVmxrnhpv1DDbyPhCIjYfvzYLV+MvkKKnQt2Q6AO86SEBULUQ==} + '@rolldown/binding-linux-x64-musl@1.0.3': + resolution: {integrity: sha512-pSdpdUJHkuCxun9LE7jvgUB9qsRgaiyNNCX7m/AvHTcq67AiT/Yhoxvw5zPfhrM8k/BfP8ce/hMOpthKDpEUow==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [linux] - '@rolldown/binding-openharmony-arm64@1.0.1': - resolution: {integrity: sha512-/Mh0Zhq3OP7fVs0kcQHZP6lZEthMGTaSf8UBQYSFEZDWGXXlEC+nJ6EqenaK2t4LBXMe3A+K/G2BVXXdtOr4PQ==} + '@rolldown/binding-openharmony-arm64@1.0.3': + resolution: {integrity: sha512-OXXS3RKJgX2uLwM+gYyuH5omcH8fL1LJs96pZGgtetVCahON57+d4SJHzTgZiOjxgGkSnpXpOsWuPDGAKAigEg==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [openharmony] - '@rolldown/binding-wasm32-wasi@1.0.1': - resolution: {integrity: sha512-+1xc9X45l8ufsBAm6Gjvx2qDRIY9lTVt0cgWNcJ+1gdhXvkbxePA60yRTwSTuXL09CMhyJmjpV7E3NoyxbqFQQ==} + '@rolldown/binding-wasm32-wasi@1.0.3': + resolution: {integrity: sha512-JTtb8BWFynicNSoPrehsCzBtOKjZ6jhMiPFEmOiuXg1Fl8dn2KHQob+GuPSGR0dryQa1PQJbzjF3dqO/whhjLg==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [wasm32] - '@rolldown/binding-win32-arm64-msvc@1.0.1': - resolution: {integrity: sha512-1D+UqZdfnuR+Jy1GgMJwi85bD40H21uNmOPRWQhw4oRSuolZ/B5rixZ45DK2KXOTCvmVCecauWgEhbw8bI7tOw==} + '@rolldown/binding-win32-arm64-msvc@1.0.3': + resolution: {integrity: sha512-gEdFFEN70A/jxb2svrWsN3aDL7OUtmvlOy+6fa2jxG8K0wQ1ZbdeLGnidov6Yu5/733dI5ySfzFlQ/cb0bSz1g==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [win32] - '@rolldown/binding-win32-x64-msvc@1.0.1': - resolution: {integrity: sha512-INAycaWuhlOK3wk4mRHGsdgwYWmd9cChdPdE9bwWmy6rn9VqVNYNFGhOdXrofXUxwHIncSiPNb8tNm8knDVIeQ==} + '@rolldown/binding-win32-x64-msvc@1.0.3': + resolution: {integrity: sha512-eXB7CHuaQdqmJcc3koCNtNPmT/bj2gc999kUFgBxG8Ac0NdgXc4rkCHhqrgrhN3zddvvvrgzj1e90SuSfmyIXA==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [win32] @@ -1570,8 +1570,8 @@ packages: '@types/d3-zoom@3.0.8': resolution: {integrity: sha512-iqMC4/YlFCSlO8+2Ii1GGGliCAY4XdeG748w5vQUbevlbDu0zSjH/+jojorQVBK/se0j6DUFNPBGSqD3YWYnDw==} - '@types/d3@7.4.2': - resolution: {integrity: sha512-Y4g2Yb30ZJmmtqAJTqMRaqXwRawfvpdpVmyEYEcyGNhrQI/Zvkq3k7yE1tdN07aFSmNBfvmegMQ9Fe2qy9ZMhw==} + '@types/d3@7.4.3': + resolution: {integrity: sha512-lZXZ9ckh5R8uiFVt8ogUNf+pIrK4EsWrx2Np75WvF/eTpJ0FMHNhjXk8CKEx/+gpHbNQyJWehbFaTvqmHWB3ww==} '@types/deep-eql@4.0.2': resolution: {integrity: sha512-c9h9dVVMigMPc4bwTvC5dxqtqJZwQPePsWjPlpSOnojbor6pGqdk541lfA7AqFQr5pB1BRdq0juY9db81BwyFw==} @@ -1600,8 +1600,8 @@ packages: '@types/linkify-it@3.0.2': resolution: {integrity: sha512-HZQYqbiFVWufzCwexrvh694SOim8z2d+xJl5UNamcvQFejLY/2YUtzXHYi3cHdI7PMlS8ejH2slRAOJQ32aNbA==} - '@types/lodash.isequal@4.5.7': - resolution: {integrity: sha512-UJQsb7aW8JU/h3fivQXVRDp9EKi98T9iQcVeTXBxcD4jApgGgbrET/0hVS6vH/YoYpqkcToMU5fSNPEiWVZgDg==} + '@types/lodash.isequal@4.5.8': + resolution: {integrity: sha512-uput6pg4E/tj2LGxCZo9+y27JNyB2OZuuI/T5F+ylVDYuqICLG2/ktjxx0v6GvVntAf8TvEzeQLcV0ffRirXuA==} '@types/lodash@4.14.200': resolution: {integrity: sha512-YI/M/4HRImtNf3pJgbF+W6FrXovqj+T+/HpENLTooK9PnkacBsDpeP3IpHab40CClUfhNmdM2WTNP2sa2dni5Q==} @@ -2554,8 +2554,8 @@ packages: dom-to-image@2.6.0: resolution: {integrity: sha512-Dt0QdaHmLpjURjU7Tnu3AgYSF2LuOmksSGsUcE6ItvJoCWTBEmiMXcqBdNSAm9+QbbwD7JMoVsuuKX6ZVQv1qA==} - dompurify@3.4.0: - resolution: {integrity: sha512-nolgK9JcaUXMSmW+j1yaSvaEaoXYHwWyGJlkoCTghc97KgGDDSnpoU/PlEnw63Ah+TGKFOyY+X5LnxaWbCSfXg==} + dompurify@3.4.10: + resolution: {integrity: sha512-0xzNv0e7oYC6yyuOGZIABPM4qtg3QxLFniDNPP4ZP90wR8Yq3zgwpRbrNiT4N3IKqDbbYFEJLV+JWEs19aZ//w==} dunder-proto@1.0.1: resolution: {integrity: sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==} @@ -3481,8 +3481,8 @@ packages: linkify-it@5.0.0: resolution: {integrity: sha512-5aHCbzQRADcdP+ATqnDuhhJ/MRIqDkZX5pyjFHRRysS8vZ5AbqGEoFIb6pYHPZ+L/OC2Lc+xT8uHVVR5CAK/wQ==} - linkifyjs@4.3.2: - resolution: {integrity: sha512-NT1CJtq3hHIreOianA8aSXn6Cw0JzYOuDQbOrSPe7gqFnCpKP++MQe3ODgO3oh2GJFORkAAdqredOa60z63GbA==} + linkifyjs@4.3.3: + resolution: {integrity: sha512-P8aEP5U/D1/IlTY2OeYsErdwh9bGuLE30NcXtKEjgdHcahveQoQwM2yZNsioQHsWFz0P7KKudisbrzCgR0sDHg==} load-tsconfig@0.2.5: resolution: {integrity: sha512-IXO6OCs9yg8tMKzfPZ1YmheJbZCiEsnBdcB03l0OcfK9prKnJb96siuHCr5Fl37/yo9DnKU+TLpxzTUspw9shg==} @@ -3661,14 +3661,14 @@ packages: monaco-editor@0.52.2: resolution: {integrity: sha512-GEQWEZmfkOGLdd3XK8ryrfWz3AIP8YymVXiPHEdewrUq7mh0qrKrfHLNCXcbB6sTnMLnOZ3ztSiKcciFUkIJwQ==} - monaco-languageserver-types@0.4.0: - resolution: {integrity: sha512-QQ3BZiU5LYkJElGncSNb5AKoJ/LCs6YBMCJMAz9EA7v+JaOdn3kx2cXpPTcZfKA5AEsR0vc97sAw+5mdNhVBmw==} + monaco-languageserver-types@0.4.1: + resolution: {integrity: sha512-uLiYM6K6jPqAa1ni9lRBoj8ZJAErOcegBrfEpurIUUO8cBhlhrGYjWbjhl4OPcxUNoj1JvqSETjwCTyhGgwymQ==} monaco-marker-data-provider@1.2.4: resolution: {integrity: sha512-4DsPgsAqpTyUDs3humXRBPUJoihTv+L6v9aupQWD80X2YXaCXUd11mWYeSCYHuPgdUmjFaNWCEOjQ6ewf/QA1Q==} - monaco-types@0.1.0: - resolution: {integrity: sha512-aWK7SN9hAqNYi0WosPoMjenMeXJjwCxDibOqWffyQ/qXdzB/86xshGQobRferfmNz7BSNQ8GB0MD0oby9/5fTQ==} + monaco-types@0.1.2: + resolution: {integrity: sha512-8LwfrlWXsedHwAL41xhXyqzPibS8IqPuIXr9NdORhonS495c2/wky+sI1PRLvMCuiI0nqC2NH1six9hdiRY4Xg==} monaco-worker-manager@2.0.1: resolution: {integrity: sha512-kdPL0yvg5qjhKPNVjJoym331PY/5JC11aPJXtCZNwWRvBr6jhkIamvYAyiY5P1AWFmNOy0aRDRoMdZfa71h8kg==} @@ -4197,8 +4197,8 @@ packages: robust-predicates@3.0.1: resolution: {integrity: sha512-ndEIpszUHiG4HtDsQLeIuMvRsDnn8c8rYStabochtUeCvfuvNptb5TUbVD68LRAILPX7p9nqQGh4xJgn3EHS/g==} - rolldown@1.0.1: - resolution: {integrity: sha512-X0KQHljNnEkWNqqiz9zJrGunh1B0HgOxLXvnFpCOcadzcy5qohZ3tqMEUg00vncoRovXuK3ZqCT9KnnKzoInFQ==} + rolldown@1.0.3: + resolution: {integrity: sha512-i00lAJ2ks1BYr7rjNjKC7BcqAS7nVfiT3QX1SI5aY+AFHblCmaUf9OE9dbdzDvW6dJxbi2ZCZiy9v3CcwOiX3g==} engines: {node: ^20.19.0 || >=22.12.0} hasBin: true @@ -4234,8 +4234,8 @@ packages: resolution: {integrity: sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==} engines: {npm: '>=2.0.0'} - rxjs@7.8.1: - resolution: {integrity: sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==} + rxjs@7.8.2: + resolution: {integrity: sha512-dhKf903U/PQZY6boNNtAGdWbG85WAbjT/1xYoZIC7FAY0yWapOBQVsVrDl58W86//e1VpMNBtRV4MaXfdMySFA==} safe-array-concat@1.0.1: resolution: {integrity: sha512-6XbUAseYE2KtOuGueyeobCySj9L4+66Tn6KQMOPQJrAJEowYKW/YR/MGJZl7FdydUdaFu4LYyDZjxf4/Nmo23Q==} @@ -4353,8 +4353,8 @@ packages: resolution: {integrity: sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==} engines: {node: '>=12'} - slugify@1.6.6: - resolution: {integrity: sha512-h+z7HKHYXj6wJU+AnS/+IH8Uh9fdcX1Lrhg1/VMdf9PwoBQXFcXiAdsy2tSK0P6gKwJLXp02r90ahUCqHk9rrw==} + slugify@1.6.9: + resolution: {integrity: sha512-vZ7rfeehZui7wQs438JXBckYLkIIdfHOXsaVEUMyS5fHo1483l1bMdo0EDSWYclY0yZKFOipDy4KHuKs6ssvdg==} engines: {node: '>=8.0.0'} socket.io-adapter@2.5.7: @@ -4522,6 +4522,10 @@ packages: resolution: {integrity: sha512-pn99VhoACYR8nFHhxqix+uvsbXineAasWm5ojXoN8xEwK5Kd3/TrhNn1wByuD52UxWRLy8pu+kRMniEi6Eq9Zg==} engines: {node: '>=12.0.0'} + tinyglobby@0.2.17: + resolution: {integrity: sha512-wXR/dYpcqKmfWpEdZjiKJOwCNFndD0DMnrW/cYjVGttEkBfVgcLFHoNrlj47mjOVic9yyNu65alsgF4NQyTa2g==} + engines: {node: '>=12.0.0'} + tinyrainbow@3.1.0: resolution: {integrity: sha512-Bf+ILmBgretUrdJxzXM0SgXLZ3XfiaUuOj/IKQHuTXip+05Xn+uyEYdVg0kYDipTBcLrCVyUzAPz7QmArb0mmw==} engines: {node: '>=14.0.0'} @@ -4617,6 +4621,9 @@ packages: tslib@2.8.0: resolution: {integrity: sha512-jWVzBLplnCmoaTr13V9dYbiQ99wvZRd0vNWaDRg+aVYRcjDF3nDksxFDE/+fkXnKhpnUUkmx5pK/v8mCtLVqZA==} + tslib@2.8.1: + resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==} + tsup@8.5.1: resolution: {integrity: sha512-xtgkqwdhpKWr3tKPmCkvYmS9xnQK3m3XgxZHwSUjvfTjp7YfXe5tT3GgWi0F2N+ZSMsOeWeZFh7ZZFg5iPhing==} engines: {node: '>=18'} @@ -4871,8 +4878,8 @@ packages: vega@5.30.0: resolution: {integrity: sha512-ZGoC8LdfEUV0LlXIuz7hup9jxuQYhSaWek2M7r9dEHAPbPrzSQvKXZ0BbsJbrarM100TGRpTVN/l1AFxCwDkWw==} - vite@8.0.13: - resolution: {integrity: sha512-MFtjBYgzmSxmgA4RAfjIyXWpGe1oALnjgUTzzV7QLx/TKxCzjtMH6Fd9/eVK+5Fg1qNoz5VAwsmMs/NofrmJvw==} + vite@8.0.16: + resolution: {integrity: sha512-h9bXPmJichP5fLmVQo3PyaGSDE2n3aPuomeAlVRm0JLmt4rY6zmPKd59HYI4LNW8oTK7tlTsuC7l/m7awx9Jcw==} engines: {node: ^20.19.0 || >=22.12.0} hasBin: true peerDependencies: @@ -5352,7 +5359,7 @@ snapshots: '@types/tough-cookie': 4.0.5 tough-cookie: 4.1.4 - '@citation-js/core@0.7.1': + '@citation-js/core@0.7.21': dependencies: '@citation-js/date': 0.5.1 '@citation-js/name': 0.4.2 @@ -5365,16 +5372,16 @@ snapshots: '@citation-js/name@0.4.2': {} - '@citation-js/plugin-bibtex@0.7.2(@citation-js/core@0.7.1)': + '@citation-js/plugin-bibtex@0.7.21(@citation-js/core@0.7.21)': dependencies: - '@citation-js/core': 0.7.1 + '@citation-js/core': 0.7.21 '@citation-js/date': 0.5.1 '@citation-js/name': 0.4.2 moo: 0.5.1 - '@citation-js/plugin-csl@0.7.2(@citation-js/core@0.7.1)': + '@citation-js/plugin-csl@0.7.22(@citation-js/core@0.7.21)': dependencies: - '@citation-js/core': 0.7.1 + '@citation-js/core': 0.7.21 '@citation-js/date': 0.5.1 citeproc: 2.4.62 @@ -5411,17 +5418,17 @@ snapshots: '@emnapi/core@1.10.0': dependencies: '@emnapi/wasi-threads': 1.2.1 - tslib: 2.8.0 + tslib: 2.8.1 optional: true '@emnapi/runtime@1.10.0': dependencies: - tslib: 2.8.0 + tslib: 2.8.1 optional: true '@emnapi/wasi-threads@1.2.1': dependencies: - tslib: 2.8.0 + tslib: 2.8.1 optional: true '@esbuild/aix-ppc64@0.27.7': @@ -5527,16 +5534,16 @@ snapshots: '@exodus/bytes@1.15.0': {} - '@floating-ui/core@1.7.0': + '@floating-ui/core@1.7.5': dependencies: - '@floating-ui/utils': 0.2.9 + '@floating-ui/utils': 0.2.11 - '@floating-ui/dom@1.7.0': + '@floating-ui/dom@1.7.6': dependencies: - '@floating-ui/core': 1.7.0 - '@floating-ui/utils': 0.2.9 + '@floating-ui/core': 1.7.5 + '@floating-ui/utils': 0.2.11 - '@floating-ui/utils@0.2.9': {} + '@floating-ui/utils@0.2.11': {} '@fontsource/atkinson-hyperlegible@5.0.17': {} @@ -5580,9 +5587,9 @@ snapshots: dependencies: handsontable: 4.0.0 - '@hirez_io/observer-spy@2.2.0(rxjs@7.8.1)(typescript@5.8.3)': + '@hirez_io/observer-spy@2.2.0(rxjs@7.8.2)(typescript@5.8.3)': dependencies: - rxjs: 7.8.1 + rxjs: 7.8.2 typescript: 5.8.3 '@humanwhocodes/config-array@0.11.13': @@ -5656,12 +5663,12 @@ snapshots: '@mdn/browser-compat-data@5.3.23': {} - '@modyfi/vite-plugin-yaml@1.1.1(rollup@4.60.1)(vite@8.0.13(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1))': + '@modyfi/vite-plugin-yaml@1.1.1(rollup@4.60.1)(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1))': dependencies: '@rollup/pluginutils': 5.1.0(rollup@4.60.1) js-yaml: 4.1.0 tosource: 2.0.0-alpha.3 - vite: 8.0.13(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1) + vite: 8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1) transitivePeerDependencies: - rollup @@ -5678,7 +5685,7 @@ snapshots: outvariant: 1.4.3 strict-event-emitter: 0.5.1 - '@napi-rs/wasm-runtime@1.1.4(@emnapi/core@1.10.0)(@emnapi/runtime@1.10.0)': + '@napi-rs/wasm-runtime@1.1.5(@emnapi/core@1.10.0)(@emnapi/runtime@1.10.0)': dependencies: '@emnapi/core': 1.10.0 '@emnapi/runtime': 1.10.0 @@ -5714,7 +5721,7 @@ snapshots: '@open-draft/until@2.1.0': {} - '@oxc-project/types@0.130.0': {} + '@oxc-project/types@0.133.0': {} '@parcel/watcher-android-arm64@2.5.1': optional: true @@ -5812,53 +5819,53 @@ snapshots: transitivePeerDependencies: - supports-color - '@rolldown/binding-android-arm64@1.0.1': + '@rolldown/binding-android-arm64@1.0.3': optional: true - '@rolldown/binding-darwin-arm64@1.0.1': + '@rolldown/binding-darwin-arm64@1.0.3': optional: true - '@rolldown/binding-darwin-x64@1.0.1': + '@rolldown/binding-darwin-x64@1.0.3': optional: true - '@rolldown/binding-freebsd-x64@1.0.1': + '@rolldown/binding-freebsd-x64@1.0.3': optional: true - '@rolldown/binding-linux-arm-gnueabihf@1.0.1': + '@rolldown/binding-linux-arm-gnueabihf@1.0.3': optional: true - '@rolldown/binding-linux-arm64-gnu@1.0.1': + '@rolldown/binding-linux-arm64-gnu@1.0.3': optional: true - '@rolldown/binding-linux-arm64-musl@1.0.1': + '@rolldown/binding-linux-arm64-musl@1.0.3': optional: true - '@rolldown/binding-linux-ppc64-gnu@1.0.1': + '@rolldown/binding-linux-ppc64-gnu@1.0.3': optional: true - '@rolldown/binding-linux-s390x-gnu@1.0.1': + '@rolldown/binding-linux-s390x-gnu@1.0.3': optional: true - '@rolldown/binding-linux-x64-gnu@1.0.1': + '@rolldown/binding-linux-x64-gnu@1.0.3': optional: true - '@rolldown/binding-linux-x64-musl@1.0.1': + '@rolldown/binding-linux-x64-musl@1.0.3': optional: true - '@rolldown/binding-openharmony-arm64@1.0.1': + '@rolldown/binding-openharmony-arm64@1.0.3': optional: true - '@rolldown/binding-wasm32-wasi@1.0.1': + '@rolldown/binding-wasm32-wasi@1.0.3': dependencies: '@emnapi/core': 1.10.0 '@emnapi/runtime': 1.10.0 - '@napi-rs/wasm-runtime': 1.1.4(@emnapi/core@1.10.0)(@emnapi/runtime@1.10.0) + '@napi-rs/wasm-runtime': 1.1.5(@emnapi/core@1.10.0)(@emnapi/runtime@1.10.0) optional: true - '@rolldown/binding-win32-arm64-msvc@1.0.1': + '@rolldown/binding-win32-arm64-msvc@1.0.3': optional: true - '@rolldown/binding-win32-x64-msvc@1.0.1': + '@rolldown/binding-win32-x64-msvc@1.0.3': optional: true '@rolldown/pluginutils@1.0.1': {} @@ -6023,7 +6030,7 @@ snapshots: '@tybys/wasm-util@0.10.2': dependencies: - tslib: 2.8.0 + tslib: 2.8.1 optional: true '@types/chai@5.2.3': @@ -6123,7 +6130,7 @@ snapshots: '@types/d3-interpolate': 3.0.1 '@types/d3-selection': 3.0.11 - '@types/d3@7.4.2': + '@types/d3@7.4.3': dependencies: '@types/d3-array': 3.0.4 '@types/d3-axis': 3.0.2 @@ -6178,7 +6185,7 @@ snapshots: '@types/linkify-it@3.0.2': {} - '@types/lodash.isequal@4.5.7': + '@types/lodash.isequal@4.5.8': dependencies: '@types/lodash': 4.14.200 @@ -6316,9 +6323,9 @@ snapshots: '@ungap/structured-clone@1.2.0': {} - '@vitejs/plugin-vue2@2.3.4(vite@8.0.13(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1))(vue@2.7.16)': + '@vitejs/plugin-vue2@2.3.4(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1))(vue@2.7.16)': dependencies: - vite: 8.0.13(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1) + vite: 8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1) vue: 2.7.16 '@vitest/coverage-v8@4.1.8(vitest@4.1.8)': @@ -6333,7 +6340,7 @@ snapshots: obug: 2.1.1 std-env: 4.1.0 tinyrainbow: 3.1.0 - vitest: 4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.0.10)(jsdom@28.1.0)(msw@2.3.4(typescript@5.8.3))(vite@8.0.13(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)) + vitest: 4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.0.10)(jsdom@28.1.0)(msw@2.3.4(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)) '@vitest/expect@4.1.8': dependencies: @@ -6344,14 +6351,14 @@ snapshots: chai: 6.2.2 tinyrainbow: 3.1.0 - '@vitest/mocker@4.1.8(msw@2.3.4(typescript@5.8.3))(vite@8.0.13(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1))': + '@vitest/mocker@4.1.8(msw@2.3.4(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1))': dependencies: '@vitest/spy': 4.1.8 estree-walker: 3.0.3 magic-string: 0.30.21 optionalDependencies: msw: 2.3.4(typescript@5.8.3) - vite: 8.0.13(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1) + vite: 8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1) '@vitest/pretty-format@4.1.8': dependencies: @@ -6380,7 +6387,7 @@ snapshots: sirv: 3.0.2 tinyglobby: 0.2.16 tinyrainbow: 3.1.0 - vitest: 4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.0.10)(jsdom@28.1.0)(msw@2.3.4(typescript@5.8.3))(vite@8.0.13(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)) + vitest: 4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.0.10)(jsdom@28.1.0)(msw@2.3.4(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)) '@vitest/utils@4.1.8': dependencies: @@ -7260,7 +7267,7 @@ snapshots: dom-to-image@2.6.0: {} - dompurify@3.4.0: + dompurify@3.4.10: optionalDependencies: '@types/trusted-types': 2.0.7 @@ -8324,15 +8331,15 @@ snapshots: lines-and-columns@1.2.4: {} - linkify-html@4.1.1(linkifyjs@4.3.2): + linkify-html@4.1.1(linkifyjs@4.3.3): dependencies: - linkifyjs: 4.3.2 + linkifyjs: 4.3.3 linkify-it@5.0.0: dependencies: uc.micro: 2.1.0 - linkifyjs@4.3.2: {} + linkifyjs@4.3.3: {} load-tsconfig@0.2.5: {} @@ -8499,17 +8506,17 @@ snapshots: monaco-editor@0.52.2: {} - monaco-languageserver-types@0.4.0: + monaco-languageserver-types@0.4.1: dependencies: - monaco-types: 0.1.0 + monaco-types: 0.1.2 vscode-languageserver-protocol: 3.17.5 vscode-uri: 3.1.0 monaco-marker-data-provider@1.2.4: dependencies: - monaco-types: 0.1.0 + monaco-types: 0.1.2 - monaco-types@0.1.0: {} + monaco-types@0.1.2: {} monaco-worker-manager@2.0.1(monaco-editor@0.52.2): dependencies: @@ -8519,9 +8526,9 @@ snapshots: dependencies: jsonc-parser: 3.3.1 monaco-editor: 0.52.2 - monaco-languageserver-types: 0.4.0 + monaco-languageserver-types: 0.4.1 monaco-marker-data-provider: 1.2.4 - monaco-types: 0.1.0 + monaco-types: 0.1.2 monaco-worker-manager: 2.0.1(monaco-editor@0.52.2) path-browserify: 1.0.1 prettier: 3.6.2 @@ -8986,26 +8993,26 @@ snapshots: robust-predicates@3.0.1: {} - rolldown@1.0.1: + rolldown@1.0.3: dependencies: - '@oxc-project/types': 0.130.0 + '@oxc-project/types': 0.133.0 '@rolldown/pluginutils': 1.0.1 optionalDependencies: - '@rolldown/binding-android-arm64': 1.0.1 - '@rolldown/binding-darwin-arm64': 1.0.1 - '@rolldown/binding-darwin-x64': 1.0.1 - '@rolldown/binding-freebsd-x64': 1.0.1 - '@rolldown/binding-linux-arm-gnueabihf': 1.0.1 - '@rolldown/binding-linux-arm64-gnu': 1.0.1 - '@rolldown/binding-linux-arm64-musl': 1.0.1 - '@rolldown/binding-linux-ppc64-gnu': 1.0.1 - '@rolldown/binding-linux-s390x-gnu': 1.0.1 - '@rolldown/binding-linux-x64-gnu': 1.0.1 - '@rolldown/binding-linux-x64-musl': 1.0.1 - '@rolldown/binding-openharmony-arm64': 1.0.1 - '@rolldown/binding-wasm32-wasi': 1.0.1 - '@rolldown/binding-win32-arm64-msvc': 1.0.1 - '@rolldown/binding-win32-x64-msvc': 1.0.1 + '@rolldown/binding-android-arm64': 1.0.3 + '@rolldown/binding-darwin-arm64': 1.0.3 + '@rolldown/binding-darwin-x64': 1.0.3 + '@rolldown/binding-freebsd-x64': 1.0.3 + '@rolldown/binding-linux-arm-gnueabihf': 1.0.3 + '@rolldown/binding-linux-arm64-gnu': 1.0.3 + '@rolldown/binding-linux-arm64-musl': 1.0.3 + '@rolldown/binding-linux-ppc64-gnu': 1.0.3 + '@rolldown/binding-linux-s390x-gnu': 1.0.3 + '@rolldown/binding-linux-x64-gnu': 1.0.3 + '@rolldown/binding-linux-x64-musl': 1.0.3 + '@rolldown/binding-openharmony-arm64': 1.0.3 + '@rolldown/binding-wasm32-wasi': 1.0.3 + '@rolldown/binding-win32-arm64-msvc': 1.0.3 + '@rolldown/binding-win32-x64-msvc': 1.0.3 rollup@4.60.1: dependencies: @@ -9075,13 +9082,13 @@ snapshots: transitivePeerDependencies: - supports-color - rxjs-spy@8.0.2(rxjs@7.8.1): + rxjs-spy@8.0.2(rxjs@7.8.2): dependencies: '@types/circular-json': 0.4.0 '@types/stacktrace-js': 0.0.33 circular-json: 0.5.9 error-stack-parser: 2.1.4 - rxjs: 7.8.1 + rxjs: 7.8.2 rxjs-report-usage: 1.0.6 stacktrace-gps: 3.1.2 transitivePeerDependencies: @@ -9091,9 +9098,9 @@ snapshots: dependencies: tslib: 1.14.1 - rxjs@7.8.1: + rxjs@7.8.2: dependencies: - tslib: 2.8.0 + tslib: 2.8.1 safe-array-concat@1.0.1: dependencies: @@ -9219,7 +9226,7 @@ snapshots: slash@4.0.0: {} - slugify@1.6.6: {} + slugify@1.6.9: {} socket.io-adapter@2.5.7: dependencies: @@ -9400,6 +9407,11 @@ snapshots: fdir: 6.5.0(picomatch@4.0.4) picomatch: 4.0.4 + tinyglobby@0.2.17: + dependencies: + fdir: 6.5.0(picomatch@4.0.4) + picomatch: 4.0.4 + tinyrainbow@3.1.0: {} tldts-core@7.0.28: {} @@ -9486,6 +9498,8 @@ snapshots: tslib@2.8.0: {} + tslib@2.8.1: {} + tsup@8.5.1(postcss@8.5.15)(typescript@5.8.3)(yaml@2.6.1): dependencies: bundle-require: 5.1.0(esbuild@0.27.7) @@ -9931,13 +9945,13 @@ snapshots: transitivePeerDependencies: - encoding - vite@8.0.13(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1): + vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1): dependencies: lightningcss: 1.32.0 picomatch: 4.0.4 postcss: 8.5.15 - rolldown: 1.0.1 - tinyglobby: 0.2.16 + rolldown: 1.0.3 + tinyglobby: 0.2.17 optionalDependencies: '@types/node': 25.9.3 esbuild: 0.27.7 @@ -9945,21 +9959,21 @@ snapshots: sass: 1.94.2 yaml: 2.6.1 - vitest-fail-on-console@0.10.1(@vitest/utils@4.1.8)(vite@8.0.13(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1))(vitest@4.1.8): + vitest-fail-on-console@0.10.1(@vitest/utils@4.1.8)(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1))(vitest@4.1.8): dependencies: '@vitest/utils': 4.1.8 chalk: 5.6.2 - vite: 8.0.13(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1) - vitest: 4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.0.10)(jsdom@28.1.0)(msw@2.3.4(typescript@5.8.3))(vite@8.0.13(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)) + vite: 8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1) + vitest: 4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.0.10)(jsdom@28.1.0)(msw@2.3.4(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)) vitest-location-mock@1.0.4: dependencies: '@jedmao/location': 3.0.0 - vitest@4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.0.10)(jsdom@28.1.0)(msw@2.3.4(typescript@5.8.3))(vite@8.0.13(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)): + vitest@4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.0.10)(jsdom@28.1.0)(msw@2.3.4(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)): dependencies: '@vitest/expect': 4.1.8 - '@vitest/mocker': 4.1.8(msw@2.3.4(typescript@5.8.3))(vite@8.0.13(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)) + '@vitest/mocker': 4.1.8(msw@2.3.4(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)) '@vitest/pretty-format': 4.1.8 '@vitest/runner': 4.1.8 '@vitest/snapshot': 4.1.8 @@ -9976,7 +9990,7 @@ snapshots: tinyexec: 1.1.2 tinyglobby: 0.2.16 tinyrainbow: 3.1.0 - vite: 8.0.13(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1) + vite: 8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1) why-is-node-running: 2.3.0 optionalDependencies: '@types/node': 25.9.3 @@ -10066,9 +10080,9 @@ snapshots: dependencies: vue: 2.7.16 - vue-rx@6.2.0(rxjs@7.8.1): + vue-rx@6.2.0(rxjs@7.8.2): dependencies: - rxjs: 7.8.1 + rxjs: 7.8.2 vue-template-compiler@2.7.16: dependencies: From 34ef6f62803d1cd5123e7090647a2201f171a451 Mon Sep 17 00:00:00 2001 From: Dannon Baker Date: Fri, 12 Jun 2026 09:04:34 -0400 Subject: [PATCH 13/31] Bump msw 2.3.4 -> 2.14.6 (in-range, lockfile-only). All the 2.x minors are additive per the changelog, and this clears the unmet-peer warning from @vitest/mocker, which wants msw ^2.4.9. --- client/pnpm-lock.yaml | 395 +++++++++++++++++++----------------------- 1 file changed, 180 insertions(+), 215 deletions(-) diff --git a/client/pnpm-lock.yaml b/client/pnpm-lock.yaml index 33e2515d0be..8e789b7edad 100644 --- a/client/pnpm-lock.yaml +++ b/client/pnpm-lock.yaml @@ -435,10 +435,10 @@ importers: version: 20.0.10 msw: specifier: ^2.3.4 - version: 2.3.4(typescript@5.8.3) + version: 2.14.6(@types/node@25.9.3)(typescript@5.8.3) openapi-msw: specifier: ^0.7.0 - version: 0.7.0(msw@2.3.4(typescript@5.8.3)) + version: 0.7.0(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3)) openapi-typescript: specifier: ^7.3.0 version: 7.10.1(typescript@5.8.3) @@ -462,7 +462,7 @@ importers: version: 8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1) vitest: specifier: ^4.1.5 - version: 4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.0.10)(jsdom@28.1.0)(msw@2.3.4(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)) + version: 4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.0.10)(jsdom@28.1.0)(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)) vitest-fail-on-console: specifier: ^0.10.1 version: 0.10.1(@vitest/utils@4.1.8)(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1))(vitest@4.1.8) @@ -508,7 +508,7 @@ importers: version: 5.8.3 vitest: specifier: ^4.0.14 - version: 4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.0.10)(jsdom@28.1.0)(msw@2.3.4(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)) + version: 4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.0.10)(jsdom@28.1.0)(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)) packages: @@ -610,15 +610,6 @@ packages: resolution: {integrity: sha512-ctxtJ/eA+t+6q2++vj5j7FYX3nRu311q1wfYH3xjlLOsczhlhxAg2FWNUXhpGvAw3BWo1xBcvOV6/YLc2r5FJw==} hasBin: true - '@bundled-es-modules/cookie@2.0.0': - resolution: {integrity: sha512-Or6YHg/kamKHpxULAdSqhGqnWFneIXu1NKvvfBBzKGwpVsYuFIQ5aBPHDnnoR3ghW1nvSkALd+EF9iMtY7Vjxw==} - - '@bundled-es-modules/statuses@1.0.1': - resolution: {integrity: sha512-yn7BklA5acgcBr+7w064fGV+SGIFySjCKpqjcWgBAIfrAkY+4GQTJJHQMeT3V/sgz23VTEVV8TtOmkvJAhFVfg==} - - '@bundled-es-modules/tough-cookie@0.1.6': - resolution: {integrity: sha512-dvMHbL464C0zI+Yqxbz6kZ5TOEp7GLW+pry/RWndAR8MJQAXZ2rPmIs8tziTZjeIyhSNZgZbCePtfSbdWqStJw==} - '@citation-js/core@0.7.21': resolution: {integrity: sha512-Vobv2/Yfnn6C6BVO/pvj7madQ7Mfzl83/jAWwixbemGF6ZThhGMz8++FD9hWHyHXDMYuLGa6fK68c2VsolZmTA==} engines: {node: '>=16.0.0'} @@ -960,21 +951,40 @@ packages: resolution: {integrity: sha512-dvuCeX5fC9dXgJn9t+X5atfmgQAzUOWqS1254Gh0m6i8wKd10ebXkfNKiRK+1GWi/yTvvLDHpoxLr0xxxeslWw==} deprecated: Use @eslint/object-schema instead - '@inquirer/confirm@3.1.19': - resolution: {integrity: sha512-dcLbnxmhx3a72c4fM6CwhydG8rS8TZCXtCYU7kUraA+qU2Ue8gNCiYOxnlhb0H0wbTKL23lUo68fX0iMP8t2Dw==} - engines: {node: '>=18'} + '@inquirer/ansi@2.0.7': + resolution: {integrity: sha512-3eTuUO1vH2cZm2ZKHeQxnOqlTi9EfZDGgIe3BL3I4u+rJHocr9Fz86M4fjYABPvFnQG/gGK551HqDiIcETwU6Q==} + engines: {node: '>=23.5.0 || ^22.13.0 || ^20.17.0'} - '@inquirer/core@9.0.7': - resolution: {integrity: sha512-wyqnTmlnd9p7cX6tfMlth+/Nx7vV2t/FvtO9VMSi2XjBkNy0MkPr19RSOyP3qrywdlJT+BQbEnXLPqq0wFMw3A==} - engines: {node: '>=18'} + '@inquirer/confirm@6.1.1': + resolution: {integrity: sha512-eb8DBZcz/2qHWQda4rk2JiQk5h9QV/cVHi1yjt0f69WFZMRFn0sJTye3EAP8icut8UDMjQPsaH5KbcOogefrFQ==} + engines: {node: '>=23.5.0 || ^22.13.0 || ^20.17.0'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true - '@inquirer/figures@1.0.5': - resolution: {integrity: sha512-79hP/VWdZ2UVc9bFGJnoQ/lQMpL74mGgzSYX1xUqCVk7/v73vJCMw1VuyWN1jGkZ9B3z7THAbySqGbCNefcjfA==} - engines: {node: '>=18'} + '@inquirer/core@11.2.1': + resolution: {integrity: sha512-Qd6GJT1yVyrZZCfN8W2qKF5ApmqryXRhRKCuip8h01x2w/esJQ2XIYc6f9abMIHgKQdBfFTSOdbHRLAhuM09UA==} + engines: {node: '>=23.5.0 || ^22.13.0 || ^20.17.0'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true - '@inquirer/type@1.5.1': - resolution: {integrity: sha512-m3YgGQlKNS0BM+8AFiJkCsTqHEFCWn6s/Rqye3mYwvqY6LdfUv12eSwbsgNzrYyrLXiy7IrrjDLPysaSBwEfhw==} - engines: {node: '>=18'} + '@inquirer/figures@2.0.7': + resolution: {integrity: sha512-aJ8TBPOGB6f/2qziPfElISTCEd5XOYTFckA2SGjhNmiKzfK/u4ot3v0DUzGVdUnKjN10EqnnEPck36BkyfLnJw==} + engines: {node: '>=23.5.0 || ^22.13.0 || ^20.17.0'} + + '@inquirer/type@4.0.7': + resolution: {integrity: sha512-t28inv14nMQ1PhKpsJPY+kEs/c00qzeCOS2gTNRyTjG5d6qsVA2fItxW4hkvGZ5lvanGLdtCzVIx5dwdRpN1+g==} + engines: {node: '>=23.5.0 || ^22.13.0 || ^20.17.0'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true '@isaacs/cliui@9.0.0': resolution: {integrity: sha512-AokJm4tuBHillT+FpMtxQ60n8ObyXBatq7jD2/JA9dxbDDokKQm8KMht5ibGzLVU9IJDIKK4TPKgMHEYMn3lMg==} @@ -1020,8 +1030,8 @@ packages: '@monaco-editor/loader@1.5.0': resolution: {integrity: sha512-hKoGSM+7aAc7eRTRjpqAZucPmoNOC4UUbknb/VNoTkEIkCPhqV8LfbsgM1webRM7S/z21eHEx9Fkwx8Z/C/+Xw==} - '@mswjs/interceptors@0.29.1': - resolution: {integrity: sha512-3rDakgJZ77+RiQUuSK69t1F0m8BQKA8Vh5DCS5V0DWvNY67zob2JhhQrhCO0AKLGINTRSFd1tBaHcJTkhefoSw==} + '@mswjs/interceptors@0.41.9': + resolution: {integrity: sha512-VVPPgHyQ6ShqnrmDWuxjmUIsO9gWyOZFmuOfLd9LfBGQJwZfy0gvv9pbHSJuoFNIYC7ZDX9aoFwowjcdSC4E8w==} engines: {node: '>=18'} '@napi-rs/wasm-runtime@1.1.5': @@ -1050,6 +1060,9 @@ packages: '@open-draft/deferred-promise@2.2.0': resolution: {integrity: sha512-CecwLWx3rhxVQF6V4bAgPS5t+So2sTbPgAzafKkVizyi7tlwpcFpdFqq+wqF2OwNBmqFuu6tOyouTuxgpMfzmA==} + '@open-draft/deferred-promise@3.0.0': + resolution: {integrity: sha512-XW375UK8/9SqUVNVa6M0yEy8+iTi4QN5VZ7aZuRFQmy76LRwI9wy5F4YIBU6T+eTe2/DNDo8tqu8RHlwLHM6RA==} + '@open-draft/logger@0.3.0': resolution: {integrity: sha512-X2g45fzhxH238HKO4xbSr7+wBS8Fvw6ixhTDuvLd5mqh6bJJCFAPwU9mPDxbcrRtfxv4u5IHCEH77BmxvXmmxQ==} @@ -1474,9 +1487,6 @@ packages: '@types/circular-json@0.4.0': resolution: {integrity: sha512-7+kYB7x5a7nFWW1YPBh3KxhwKfiaI4PbZ1RvzBU91LZy7lWJO822CI+pqzSre/DZ7KsCuMKdHnLHHFu8AyXbQg==} - '@types/cookie@0.6.0': - resolution: {integrity: sha512-4Kh9a6B2bQciAhf7FSuMRRkUWecJgJu9nPnx3yzpsfXX/c50REIqpHY4C82bXP90qrLtXtkDxTZosYO3UpOwlA==} - '@types/cors@2.8.19': resolution: {integrity: sha512-mFNylyeyqN93lfe/9CSxOGREz8cpzAhH+E93xJ4xWQf62V8sQ/24reV2nyzUWM6H6Xji+GGHpkbLe7pVoUEskg==} @@ -1612,32 +1622,26 @@ packages: '@types/mdurl@1.0.2': resolution: {integrity: sha512-eC4U9MlIcu2q0KQmXszyn5Akca/0jrQmwDRgpAMJai7qBWq4amIQhZyNau4VYGtCeALvW1/NtjzJJ567aZxfKA==} - '@types/mute-stream@0.0.4': - resolution: {integrity: sha512-CPM9nzrCPPJHQNA9keH9CVkVI+WR5kMa+7XEs5jcGQ0VoAGnLv242w8lIVgwAEfmE4oufJRaTc9PNLQl0ioAow==} - '@types/node@20.19.25': resolution: {integrity: sha512-ZsJzA5thDQMSQO788d7IocwwQbI8B5OPzmqNvpf3NY/+MHDAS759Wo0gd2WQeXYt5AAAQjzcrTVC6SKCuYgoCQ==} - '@types/node@22.0.0': - resolution: {integrity: sha512-VT7KSYudcPOzP5Q0wfbowyNLaVR8QWUdw+088uFWwfvpY6uCWaXpqV6ieLAu9WBcnTa7H4Z5RLK8I5t2FuOcqw==} - '@types/node@25.9.3': resolution: {integrity: sha512-603BddQMv3pUcr4U2dhujk83N2tTDVr/34wII2B6bJy6g+8WD6yUb11jszNs0gdi4PesVWl7ABt8nYMVpnLUcg==} '@types/semver@7.5.3': resolution: {integrity: sha512-OxepLK9EuNEIPxWNME+C6WwbRAOOI2o2BaQEGzz5Lu2e4Z5eDnEo+/aVEDMIXywoJitJ7xWd641wrGLZdtwRyw==} + '@types/set-cookie-parser@2.4.10': + resolution: {integrity: sha512-GGmQVGpQWUe5qglJozEjZV/5dyxbOOZ0LHe/lqyWssB88Y4svNfst0uqBVscdDeIKl5Jy5+aPSvy7mI9tYRguw==} + '@types/sizzle@2.3.3': resolution: {integrity: sha512-JYM8x9EGF163bEyhdJBpR2QX1R5naCJHC8ucJylJ3w9/CVBaskdQ8WqBf8MmQrd1kRvp/a4TS8HJ+bxzR7ZJYQ==} '@types/stacktrace-js@0.0.33': resolution: {integrity: sha512-aqJ6QM9QThNL4dHBhwl1f9B0oDqiREkYLn9RldghUKsGeFWWGlCsqsRWxbh+hDvvmptMFqc4aIfFIGz9BBu8Qg==} - '@types/statuses@2.0.5': - resolution: {integrity: sha512-jmIUGWrAiwu3dZpxntxieC+1n/5c3mjrImkmOSQ2NC5uP6cYO4aAZDdSmRcI5C1oiTmqlZGHC+/NmJrKogbP5A==} - - '@types/tough-cookie@4.0.5': - resolution: {integrity: sha512-/Ad8+nIOV7Rl++6f1BdKxFSMgmoqEoYbHRpPcx3JEfv8VRsQe9Z4mCXeJBzxs7mbHY/XOZZuXlRNfhpVPbs6ZA==} + '@types/statuses@2.0.6': + resolution: {integrity: sha512-xMAgYwceFhRA2zY+XbEA7mxYbA093wdiW8Vu6gZPGWy9cmOyU9XesH1tNcEWsKFd5Vzrqx5T3D38PWx1FIIXkA==} '@types/trusted-types@2.0.7': resolution: {integrity: sha512-ScaPdn1dQczgbl0QFTeTOmVHFULt394XJgOQNoyVhZ6r2vLnMLJfBPd53SB52T/3G36VI1/g2MZaX0cwDuXsfw==} @@ -1648,9 +1652,6 @@ packages: '@types/whatwg-mimetype@3.0.2': resolution: {integrity: sha512-c2AKvDT8ToxLIOUlN51gTiHXflsfIFisS4pO7pDPoKouJCESkhZnEy623gwP9laCy5lnLDAw1vAzu2vM2YLOrA==} - '@types/wrap-ansi@3.0.0': - resolution: {integrity: sha512-ltIpx+kM7g/MLRZfkbL7EsCEjfzCcScLpkg37eXEtx5kmrAKBkTJwd1GIAjDSL8wTpM6Hzn5YO4pSb91BEwu1g==} - '@types/ws@8.18.1': resolution: {integrity: sha512-ThVF6DCVhA8kUGy+aazFQ4kXQ7E1Ty7A3ypFOe0IcJV8O/M511G99AW24irKrW56Wt44yG9+ij8FaqoBGkuBXg==} @@ -1891,10 +1892,6 @@ packages: resolution: {integrity: sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==} engines: {node: '>=6'} - ansi-escapes@4.3.2: - resolution: {integrity: sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==} - engines: {node: '>=8'} - ansi-regex@5.0.1: resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} engines: {node: '>=8'} @@ -2139,10 +2136,6 @@ packages: resolution: {integrity: sha512-LYv6XPxoyODi36Dp976riBtSY27VmFo+MKqEU9QCCWyTrdEPDog+RWA7xQWHi6Vbp61j5c4cdzzX1NidnwtUWg==} engines: {node: '>=12'} - cli-spinners@2.9.2: - resolution: {integrity: sha512-ywqV+5MmyL4E7ybXgKys4DugZbX0FC6LnwrhjuykIjnK9k8OQacQ7axGKnjDXWNhns0xot3bZI5h55H8yo9cJg==} - engines: {node: '>=6'} - cli-width@4.1.0: resolution: {integrity: sha512-ouuZd4/dm2Sw5Gmqy6bGyNNNe1qt9RpmxveLSO7KcgsTnU7RXfsw+/bukWGo1abgBiMAic068rclZsO4IWmmxQ==} engines: {node: '>= 12'} @@ -2221,14 +2214,14 @@ packages: convert-source-map@2.0.0: resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==} - cookie@0.5.0: - resolution: {integrity: sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==} - engines: {node: '>= 0.6'} - cookie@0.7.2: resolution: {integrity: sha512-yki5XnKuf750l50uGTllt6kKILY4nQ1eNIQatoXEByZ5dWgnKqbnqmTrBE5B4N7lrMJKQ2ytWMiTO2o0v6Ew/w==} engines: {node: '>= 0.6'} + cookie@1.1.1: + resolution: {integrity: sha512-ei8Aos7ja0weRpFzJnEA9UHJ/7XQmqglbRwnf2ATjcB9Wq874VKH9kfjjirM6UhU2/E5fFYadylyhFldcqSidQ==} + engines: {node: '>=18'} + core-js-pure@3.33.0: resolution: {integrity: sha512-FKSIDtJnds/YFIEaZ4HszRX7hkxGpNKM7FC9aJ9WLJbSd3lD4vOltFuVIBLR8asSx9frkTSqL0dw90SKQxgKrg==} @@ -2815,6 +2808,15 @@ packages: fast-levenshtein@2.0.6: resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==} + fast-string-truncated-width@3.0.3: + resolution: {integrity: sha512-0jjjIEL6+0jag3l2XWWizO64/aZVtpiGE3t0Zgqxv0DPuxiMjvB3M24fCyhZUO4KomJQPj3LTSUnDP3GpdwC0g==} + + fast-string-width@3.0.2: + resolution: {integrity: sha512-gX8LrtNEI5hq8DVUfRQMbr5lpaS4nMIWV+7XEbXk2b8kiQIizgnlr12B4dA3ZEx3308ze0O4Q1R+cHts8kyUJg==} + + fast-wrap-ansi@0.2.2: + resolution: {integrity: sha512-7F2Fl+TjRSenLqlU3UjSH0iyqopqoZIu7eZVpEirP2g1GtWa2G/ecEmBdgz31+Mxr+ELclgg6sokpSFIQiZ02Q==} + fastq@1.13.0: resolution: {integrity: sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==} @@ -2993,8 +2995,8 @@ packages: graphemer@1.4.0: resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==} - graphql@16.9.0: - resolution: {integrity: sha512-GGTKBX4SD7Wdb8mqeDLni2oaRGYQWjWHGKPQ24ZMnUtKfcsVoiv4uX8+LJr1K6U5VW2Lu1BwJnj7uiori0YtRw==} + graphql@16.14.2: + resolution: {integrity: sha512-Chq1s4CY7jmh8gO2qvLIJyfCDIN+EHLFW/9iShnp1z8FjBQMoodWP1kDC36VAMXXIvAjj4ARa7ntfAV2BrjsbA==} engines: {node: ^12.22.0 || ^14.16.0 || ^16.0.0 || >=17.0.0} handsontable@4.0.0: @@ -3042,8 +3044,8 @@ packages: resolution: {integrity: sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==} hasBin: true - headers-polyfill@4.0.3: - resolution: {integrity: sha512-IScLbePpkvO846sIwOtOTDjutRMWdXdJmXdMvk6gCBHxFO8d+QKOQedyZSxFTTFYRSmlgSTDtXqqq4pcenBXLQ==} + headers-polyfill@5.0.1: + resolution: {integrity: sha512-1TJ6Fih/b8h5TIcv+1+Hw0PDQWJTKDKzFZzcKOiW1wJza3XoAQlkCuXLbymPYB8+ZQyw8mHvdw560e8zVFIWyA==} hsluv@1.0.1: resolution: {integrity: sha512-zCaFTiDqBLQjCCFBu0qg7z9ASYPd+Bxx2GDCVZJsnehjK80S+jByqhuFz0pCd2Aw3FSKr18AWbRlwnKR0YdizQ==} @@ -3693,12 +3695,12 @@ packages: ms@2.1.3: resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} - msw@2.3.4: - resolution: {integrity: sha512-sHMlwrajgmZSA2l1o7qRSe+azm/I+x9lvVVcOxAzi4vCtH8uVPJk1K5BQYDkzGl+tt0RvM9huEXXdeGrgcc79g==} + msw@2.14.6: + resolution: {integrity: sha512-ALe+N10S72cyx94cMcy3Zs4HhXCj35sgeAL4c+WTvKi0zWnbd8/h0lcFqv0mb2P+aSgAdD7p9HzvA0DiUPxsyg==} engines: {node: '>=18'} hasBin: true peerDependencies: - typescript: '>= 4.7.x' + typescript: '>= 4.8.x' peerDependenciesMeta: typescript: optional: true @@ -3706,9 +3708,9 @@ packages: muggle-string@0.4.1: resolution: {integrity: sha512-VNTrAak/KhO2i8dqqnqnAHOa3cYBwXEZe9h+D5h/1ZqFSTEFHdM65lR7RoIqq3tBBYavsOXV84NoHXZ0AkPyqQ==} - mute-stream@1.0.0: - resolution: {integrity: sha512-avsJQhyd+680gKXyG/sQc0nXaC6rBkPOfyHYcFb9+hdkqQkR9bdnkJ0AMZhke0oesPqIO+mFFJ+IdBc7mst4IA==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + mute-stream@3.0.0: + resolution: {integrity: sha512-dkEJPVvun4FryqBmZ5KhDo0K9iDXAwn08tMLDinNdRBNPcYEDiWYysLcc6k3mjTMlbP9KyylvRpd4wFtwrT9rw==} + engines: {node: ^20.17.0 || >=22.9.0} mz@2.7.0: resolution: {integrity: sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==} @@ -3933,8 +3935,8 @@ packages: resolution: {integrity: sha512-3O/iVVsJAPsOnpwWIeD+d6z/7PmqApyQePUtCndjatj/9I5LylHvt5qluFaBT3I5h3r1ejfR056c+FCv+NnNXg==} engines: {node: 18 || 20 || >=22} - path-to-regexp@6.2.2: - resolution: {integrity: sha512-GQX3SSMokngb36+whdpRXE+3f9V8UzyAorlYvOGx87ufGHehNTn5lCxrKtLyZ4Yl/wEKnNnr98ZzOwwDZV5ogw==} + path-to-regexp@6.3.0: + resolution: {integrity: sha512-Yhpw4T9C6hPpgPeA28us07OJeqZ5EzQTkbfwuhsUg0c237RomFoETJgmp2sa3F/41gfLE6G5cqcYwznmeEeOlQ==} path-type@4.0.0: resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} @@ -4069,9 +4071,6 @@ packages: pseudomap@1.0.2: resolution: {integrity: sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==} - psl@1.9.0: - resolution: {integrity: sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==} - punycode.js@2.3.1: resolution: {integrity: sha512-uxFIHU0YlHYhDQtV4R9J6a52SLx28BCjT+4ieh7IGbgwVJWO+km431c4yRlREUAsAmt/uMjQUyQHNEPf0M39CA==} engines: {node: '>=6'} @@ -4169,6 +4168,9 @@ packages: resolution: {integrity: sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==} engines: {node: '>= 4'} + rettime@0.11.11: + resolution: {integrity: sha512-ILJRqVWBCTlg9r42fFgwVZx1gnFAcQF8mRoMkbgQfIrjEDf9nbBFDFx00oloOa+Q869FUtaYDXZvEfnecQSCoQ==} + reusify@1.0.4: resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==} engines: {iojs: '>=1.0.0', node: '>=0.10.0'} @@ -4285,6 +4287,9 @@ packages: engines: {node: '>=10'} hasBin: true + set-cookie-parser@3.1.0: + resolution: {integrity: sha512-kjnC1DXBHcxaOaOXBHBeRtltsDG2nUiUni+jP92M9gYdW12rsmx92UsfpH7o5tDRs7I1ZZPSQJQGv3UaRfCiuw==} + set-function-name@2.0.1: resolution: {integrity: sha512-tMNCiqYVkXIZgc2Hnoy2IvC/f8ezc5koaRFkCjrpWzGpCd3qbZXPzVy9MAZzK1ch/X0jvSkojys3oqJN0qCmdA==} engines: {node: '>= 0.4'} @@ -4403,10 +4408,6 @@ packages: resolution: {integrity: sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==} engines: {node: '>= 0.6'} - statuses@2.0.1: - resolution: {integrity: sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==} - engines: {node: '>= 0.8'} - statuses@2.0.2: resolution: {integrity: sha512-DvEy55V3DB7uknRo+4iOGT5fP1slR8wQohVdknigZPMpMstaKJQWhwiYBACJE3Ul2pTnATihhBYnRhZQHGBiRw==} engines: {node: '>= 0.8'} @@ -4487,6 +4488,10 @@ packages: resolution: {integrity: sha512-vilDD6yTGwyUjm7/W5WUUOCw1GH1aV591zC21XhbV6MJNZqfZcNMs9DVPHzy1UAmQ2GAg6S03F5TQ3paegKSdg==} engines: {node: '>=14'} + tagged-tag@1.0.0: + resolution: {integrity: sha512-yEFYrVhod+hdNyx7g5Bnkkb0G6si8HJurOoOEgC8B/O0uXLHlaey/65KRv6cuWBNhBgHKAROVpc7QyYqE5gFng==} + engines: {node: '>=20'} + text-table@0.2.0: resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==} @@ -4530,11 +4535,11 @@ packages: resolution: {integrity: sha512-Bf+ILmBgretUrdJxzXM0SgXLZ3XfiaUuOj/IKQHuTXip+05Xn+uyEYdVg0kYDipTBcLrCVyUzAPz7QmArb0mmw==} engines: {node: '>=14.0.0'} - tldts-core@7.0.28: - resolution: {integrity: sha512-7W5Efjhsc3chVdFhqtaU0KtK32J37Zcr9RKtID54nG+tIpcY79CQK/veYPODxtD/LJ4Lue66jvrQzIX2Z2/pUQ==} + tldts-core@7.4.2: + resolution: {integrity: sha512-nwEyF4vl4RSJjwSjBUmOSxc3BFPoIFdlRthJ6e+5v9P3bHNsoD06UjuqMUspqp7vsEZ1beaHi1km+optiE17yA==} - tldts@7.0.28: - resolution: {integrity: sha512-+Zg3vWhRUv8B1maGSTFdev9mjoo8Etn2Ayfs4cnjlD3CsGkxXX4QyW3j2WJ0wdjYcYmy7Lx2RDsZMhgCWafKIw==} + tldts@7.4.2: + resolution: {integrity: sha512-kCwffuaH8ntKtygnWe1b4BJKWiCUH30n5KfoTr6IchcXOwR7chAOFJxFrH3vjANafUYrIA4a7SDL+nn7SiR4Sw==} hasBin: true tmp@0.2.7: @@ -4564,10 +4569,6 @@ packages: resolution: {integrity: sha512-sf4i37nQ2LBx4m3wB74y+ubopq6W/dIzXg0FDGjsYnZHVa1Da8FH853wlL2gtUhg+xJXjfk3kUZS3BRoQeoQBQ==} engines: {node: '>=6'} - tough-cookie@4.1.4: - resolution: {integrity: sha512-Loo5UUvLD9ScZ6jh8beX1T6sO1w2/MpCRpEP7V280GKMVUQ0Jzar2U3UJPsrdbziLEMMhu3Ujnq//rhiFuIeag==} - engines: {node: '>=6'} - tough-cookie@6.0.1: resolution: {integrity: sha512-LktZQb3IeoUWB9lqR5EWTHgW/VTITCXg4D21M+lvybRVdylLrRMnqaIONLVb5mav8vM19m44HIcGq4qASeu2Qw==} engines: {node: '>=16'} @@ -4654,14 +4655,14 @@ packages: resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==} engines: {node: '>=10'} - type-fest@0.21.3: - resolution: {integrity: sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==} - engines: {node: '>=10'} - type-fest@4.41.0: resolution: {integrity: sha512-TeTSQ6H5YHvpqVwBRcnLDCBnDOHWYu7IvGbHT6N8AOymcr9PJGjc1GTtiWZTYg0NCgYwvnYWEkVChQAr9bjfwA==} engines: {node: '>=16'} + type-fest@5.7.0: + resolution: {integrity: sha512-1URUxUqfHFM1c+zfSPsa3gnkO7Aq21qyH75SIduNYz4SzY964rn1X2vCMQaHSHhktiw+0kPa2iyb6PUpXqB6Vg==} + engines: {node: '>=20'} + type-is@1.6.18: resolution: {integrity: sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==} engines: {node: '>= 0.6'} @@ -4699,9 +4700,6 @@ packages: unbox-primitive@1.0.2: resolution: {integrity: sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==} - undici-types@6.11.1: - resolution: {integrity: sha512-mIDEX2ek50x0OlRgxryxsenE5XaQD4on5U2inY7RApK3SOJpofyw7uW2AyfMKkhAxXIceo2DeWGVGwyvng1GNQ==} - undici-types@6.21.0: resolution: {integrity: sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==} @@ -4716,10 +4714,6 @@ packages: resolution: {integrity: sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==} engines: {node: '>= 4.0.0'} - universalify@0.2.0: - resolution: {integrity: sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==} - engines: {node: '>= 4.0.0'} - universalify@2.0.1: resolution: {integrity: sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==} engines: {node: '>= 10.0.0'} @@ -4728,6 +4722,9 @@ packages: resolution: {integrity: sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==} engines: {node: '>= 0.8'} + until-async@3.0.2: + resolution: {integrity: sha512-IiSk4HlzAMqTUseHHe3VhIGyuFmN90zMTpD3Z3y8jeQbzLIq500MVM7Jq2vUAnTKAFPJrqwkzr6PoTcPhGcOiw==} + update-browserslist-db@1.0.13: resolution: {integrity: sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==} hasBin: true @@ -5140,10 +5137,6 @@ packages: engines: {node: '>=8'} hasBin: true - wrap-ansi@6.2.0: - resolution: {integrity: sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==} - engines: {node: '>=8'} - wrap-ansi@7.0.0: resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} engines: {node: '>=10'} @@ -5228,10 +5221,6 @@ packages: resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} engines: {node: '>=10'} - yoctocolors-cjs@2.1.2: - resolution: {integrity: sha512-cYVsTjKl8b+FrnidjibDWskAv7UKOfcwaVZdp/it9n1s9fU3IkgDbhdIRKCW4JDsAlECJY0ytoVPT3sK6kideA==} - engines: {node: '>=18'} - zrender@5.6.0: resolution: {integrity: sha512-uzgraf4njmmHAbEUxMJ8Oxg+P3fT04O+9p7gY+wJRVxo8Ge+KmYv0WJev945EH4wFuc4OY2NLXz46FZrWS9xJg==} @@ -5346,19 +5335,6 @@ snapshots: dependencies: css-tree: 3.2.1 - '@bundled-es-modules/cookie@2.0.0': - dependencies: - cookie: 0.5.0 - - '@bundled-es-modules/statuses@1.0.1': - dependencies: - statuses: 2.0.1 - - '@bundled-es-modules/tough-cookie@0.1.6': - dependencies: - '@types/tough-cookie': 4.0.5 - tough-cookie: 4.1.4 - '@citation-js/core@0.7.21': dependencies: '@citation-js/date': 0.5.1 @@ -5604,32 +5580,32 @@ snapshots: '@humanwhocodes/object-schema@2.0.1': {} - '@inquirer/confirm@3.1.19': - dependencies: - '@inquirer/core': 9.0.7 - '@inquirer/type': 1.5.1 + '@inquirer/ansi@2.0.7': {} - '@inquirer/core@9.0.7': + '@inquirer/confirm@6.1.1(@types/node@25.9.3)': dependencies: - '@inquirer/figures': 1.0.5 - '@inquirer/type': 1.5.1 - '@types/mute-stream': 0.0.4 - '@types/node': 22.0.0 - '@types/wrap-ansi': 3.0.0 - ansi-escapes: 4.3.2 - cli-spinners: 2.9.2 + '@inquirer/core': 11.2.1(@types/node@25.9.3) + '@inquirer/type': 4.0.7(@types/node@25.9.3) + optionalDependencies: + '@types/node': 25.9.3 + + '@inquirer/core@11.2.1(@types/node@25.9.3)': + dependencies: + '@inquirer/ansi': 2.0.7 + '@inquirer/figures': 2.0.7 + '@inquirer/type': 4.0.7(@types/node@25.9.3) cli-width: 4.1.0 - mute-stream: 1.0.0 + fast-wrap-ansi: 0.2.2 + mute-stream: 3.0.0 signal-exit: 4.1.0 - strip-ansi: 6.0.1 - wrap-ansi: 6.2.0 - yoctocolors-cjs: 2.1.2 + optionalDependencies: + '@types/node': 25.9.3 - '@inquirer/figures@1.0.5': {} + '@inquirer/figures@2.0.7': {} - '@inquirer/type@1.5.1': - dependencies: - mute-stream: 1.0.0 + '@inquirer/type@4.0.7(@types/node@25.9.3)': + optionalDependencies: + '@types/node': 25.9.3 '@isaacs/cliui@9.0.0': {} @@ -5676,7 +5652,7 @@ snapshots: dependencies: state-local: 1.0.7 - '@mswjs/interceptors@0.29.1': + '@mswjs/interceptors@0.41.9': dependencies: '@open-draft/deferred-promise': 2.2.0 '@open-draft/logger': 0.3.0 @@ -5714,6 +5690,8 @@ snapshots: '@open-draft/deferred-promise@2.2.0': {} + '@open-draft/deferred-promise@3.0.0': {} + '@open-draft/logger@0.3.0': dependencies: is-node-process: 1.2.0 @@ -6040,8 +6018,6 @@ snapshots: '@types/circular-json@0.4.0': {} - '@types/cookie@0.6.0': {} - '@types/cors@2.8.19': dependencies: '@types/node': 25.9.3 @@ -6198,31 +6174,25 @@ snapshots: '@types/mdurl@1.0.2': {} - '@types/mute-stream@0.0.4': - dependencies: - '@types/node': 22.0.0 - '@types/node@20.19.25': dependencies: undici-types: 6.21.0 - '@types/node@22.0.0': - dependencies: - undici-types: 6.11.1 - '@types/node@25.9.3': dependencies: undici-types: 7.24.6 '@types/semver@7.5.3': {} + '@types/set-cookie-parser@2.4.10': + dependencies: + '@types/node': 25.9.3 + '@types/sizzle@2.3.3': {} '@types/stacktrace-js@0.0.33': {} - '@types/statuses@2.0.5': {} - - '@types/tough-cookie@4.0.5': {} + '@types/statuses@2.0.6': {} '@types/trusted-types@2.0.7': {} @@ -6230,8 +6200,6 @@ snapshots: '@types/whatwg-mimetype@3.0.2': {} - '@types/wrap-ansi@3.0.0': {} - '@types/ws@8.18.1': dependencies: '@types/node': 25.9.3 @@ -6340,7 +6308,7 @@ snapshots: obug: 2.1.1 std-env: 4.1.0 tinyrainbow: 3.1.0 - vitest: 4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.0.10)(jsdom@28.1.0)(msw@2.3.4(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)) + vitest: 4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.0.10)(jsdom@28.1.0)(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)) '@vitest/expect@4.1.8': dependencies: @@ -6351,13 +6319,13 @@ snapshots: chai: 6.2.2 tinyrainbow: 3.1.0 - '@vitest/mocker@4.1.8(msw@2.3.4(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1))': + '@vitest/mocker@4.1.8(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1))': dependencies: '@vitest/spy': 4.1.8 estree-walker: 3.0.3 magic-string: 0.30.21 optionalDependencies: - msw: 2.3.4(typescript@5.8.3) + msw: 2.14.6(@types/node@25.9.3)(typescript@5.8.3) vite: 8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1) '@vitest/pretty-format@4.1.8': @@ -6387,7 +6355,7 @@ snapshots: sirv: 3.0.2 tinyglobby: 0.2.16 tinyrainbow: 3.1.0 - vitest: 4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.0.10)(jsdom@28.1.0)(msw@2.3.4(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)) + vitest: 4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.0.10)(jsdom@28.1.0)(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)) '@vitest/utils@4.1.8': dependencies: @@ -6553,10 +6521,6 @@ snapshots: ansi-colors@4.1.3: {} - ansi-escapes@4.3.2: - dependencies: - type-fest: 0.21.3 - ansi-regex@5.0.1: {} ansi-styles@4.3.0: @@ -6852,8 +6816,6 @@ snapshots: dependencies: escape-string-regexp: 5.0.0 - cli-spinners@2.9.2: {} - cli-width@4.1.0: {} cliui@7.0.4: @@ -6927,10 +6889,10 @@ snapshots: convert-source-map@2.0.0: {} - cookie@0.5.0: {} - cookie@0.7.2: {} + cookie@1.1.1: {} + core-js-pure@3.33.0: {} core-util-is@1.0.3: {} @@ -7646,6 +7608,16 @@ snapshots: fast-levenshtein@2.0.6: {} + fast-string-truncated-width@3.0.3: {} + + fast-string-width@3.0.2: + dependencies: + fast-string-truncated-width: 3.0.3 + + fast-wrap-ansi@0.2.2: + dependencies: + fast-string-width: 3.0.2 + fastq@1.13.0: dependencies: reusify: 1.0.4 @@ -7857,7 +7829,7 @@ snapshots: graphemer@1.4.0: {} - graphql@16.9.0: {} + graphql@16.14.2: {} handsontable@4.0.0: dependencies: @@ -7899,7 +7871,10 @@ snapshots: he@1.2.0: {} - headers-polyfill@4.0.3: {} + headers-polyfill@5.0.1: + dependencies: + '@types/set-cookie-parser': 2.4.10 + set-cookie-parser: 3.1.0 hsluv@1.0.1: {} @@ -8545,31 +8520,34 @@ snapshots: ms@2.1.3: {} - msw@2.3.4(typescript@5.8.3): + msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3): dependencies: - '@bundled-es-modules/cookie': 2.0.0 - '@bundled-es-modules/statuses': 1.0.1 - '@bundled-es-modules/tough-cookie': 0.1.6 - '@inquirer/confirm': 3.1.19 - '@mswjs/interceptors': 0.29.1 - '@open-draft/until': 2.1.0 - '@types/cookie': 0.6.0 - '@types/statuses': 2.0.5 - chalk: 4.1.2 - graphql: 16.9.0 - headers-polyfill: 4.0.3 + '@inquirer/confirm': 6.1.1(@types/node@25.9.3) + '@mswjs/interceptors': 0.41.9 + '@open-draft/deferred-promise': 3.0.0 + '@types/statuses': 2.0.6 + cookie: 1.1.1 + graphql: 16.14.2 + headers-polyfill: 5.0.1 is-node-process: 1.2.0 outvariant: 1.4.3 - path-to-regexp: 6.2.2 + path-to-regexp: 6.3.0 + picocolors: 1.1.1 + rettime: 0.11.11 + statuses: 2.0.2 strict-event-emitter: 0.5.1 - type-fest: 4.41.0 + tough-cookie: 6.0.1 + type-fest: 5.7.0 + until-async: 3.0.2 yargs: 17.7.2 optionalDependencies: typescript: 5.8.3 + transitivePeerDependencies: + - '@types/node' muggle-string@0.4.1: {} - mute-stream@1.0.0: {} + mute-stream@3.0.0: {} mz@2.7.0: dependencies: @@ -8675,9 +8653,9 @@ snapshots: dependencies: openapi-typescript-helpers: 0.1.0 - openapi-msw@0.7.0(msw@2.3.4(typescript@5.8.3)): + openapi-msw@0.7.0(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3)): dependencies: - msw: 2.3.4(typescript@5.8.3) + msw: 2.14.6(@types/node@25.9.3)(typescript@5.8.3) openapi-typescript-helpers: 0.0.8 openapi-typescript-helpers@0.0.8: {} @@ -8771,7 +8749,7 @@ snapshots: lru-cache: 11.2.6 minipass: 7.1.3 - path-to-regexp@6.2.2: {} + path-to-regexp@6.3.0: {} path-type@4.0.0: {} @@ -8877,8 +8855,6 @@ snapshots: pseudomap@1.0.2: {} - psl@1.9.0: {} - punycode.js@2.3.1: {} punycode@1.4.1: {} @@ -8963,6 +8939,8 @@ snapshots: retry@0.12.0: {} + rettime@0.11.11: {} + reusify@1.0.4: {} rfdc@1.4.1: {} @@ -9154,6 +9132,8 @@ snapshots: semver@7.6.3: {} + set-cookie-parser@3.1.0: {} + set-function-name@2.0.1: dependencies: define-data-property: 1.1.1 @@ -9281,8 +9261,6 @@ snapshots: statuses@1.5.0: {} - statuses@2.0.1: {} - statuses@2.0.2: {} std-env@4.1.0: {} @@ -9375,6 +9353,8 @@ snapshots: transitivePeerDependencies: - encoding + tagged-tag@1.0.0: {} + text-table@0.2.0: {} thenify-all@1.6.0: @@ -9414,11 +9394,11 @@ snapshots: tinyrainbow@3.1.0: {} - tldts-core@7.0.28: {} + tldts-core@7.4.2: {} - tldts@7.0.28: + tldts@7.4.2: dependencies: - tldts-core: 7.0.28 + tldts-core: 7.4.2 tmp@0.2.7: {} @@ -9440,16 +9420,9 @@ snapshots: totalist@3.0.1: {} - tough-cookie@4.1.4: - dependencies: - psl: 1.9.0 - punycode: 2.3.1 - universalify: 0.2.0 - url-parse: 1.5.10 - tough-cookie@6.0.1: dependencies: - tldts: 7.0.28 + tldts: 7.4.2 tr46@0.0.3: {} @@ -9544,10 +9517,12 @@ snapshots: type-fest@0.20.2: {} - type-fest@0.21.3: {} - type-fest@4.41.0: {} + type-fest@5.7.0: + dependencies: + tagged-tag: 1.0.0 + type-is@1.6.18: dependencies: media-typer: 0.3.0 @@ -9595,8 +9570,6 @@ snapshots: has-symbols: 1.1.0 which-boxed-primitive: 1.0.2 - undici-types@6.11.1: {} - undici-types@6.21.0: {} undici-types@7.24.6: {} @@ -9605,12 +9578,12 @@ snapshots: universalify@0.1.2: {} - universalify@0.2.0: {} - universalify@2.0.1: {} unpipe@1.0.0: {} + until-async@3.0.2: {} + update-browserslist-db@1.0.13(browserslist@4.22.1): dependencies: browserslist: 4.22.1 @@ -9964,16 +9937,16 @@ snapshots: '@vitest/utils': 4.1.8 chalk: 5.6.2 vite: 8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1) - vitest: 4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.0.10)(jsdom@28.1.0)(msw@2.3.4(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)) + vitest: 4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.0.10)(jsdom@28.1.0)(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)) vitest-location-mock@1.0.4: dependencies: '@jedmao/location': 3.0.0 - vitest@4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.0.10)(jsdom@28.1.0)(msw@2.3.4(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)): + vitest@4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.0.10)(jsdom@28.1.0)(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)): dependencies: '@vitest/expect': 4.1.8 - '@vitest/mocker': 4.1.8(msw@2.3.4(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)) + '@vitest/mocker': 4.1.8(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)) '@vitest/pretty-format': 4.1.8 '@vitest/runner': 4.1.8 '@vitest/snapshot': 4.1.8 @@ -10158,12 +10131,6 @@ snapshots: siginfo: 2.0.0 stackback: 0.0.2 - wrap-ansi@6.2.0: - dependencies: - ansi-styles: 4.3.0 - string-width: 4.2.3 - strip-ansi: 6.0.1 - wrap-ansi@7.0.0: dependencies: ansi-styles: 4.3.0 @@ -10231,8 +10198,6 @@ snapshots: yocto-queue@0.1.0: {} - yoctocolors-cjs@2.1.2: {} - zrender@5.6.0: dependencies: tslib: 2.3.0 From 4d041b0b413e34655ad9a2295b4b4159aa0d7475 Mon Sep 17 00:00:00 2001 From: Dannon Baker Date: Fri, 12 Jun 2026 09:05:25 -0400 Subject: [PATCH 14/31] Bump test-environment deps in-range: happy-dom 20.0.10 -> 20.10.2 (includes CVE fixes in 20.8.8/20.8.9; some DOM behavior tightened -- event type validation, implicit p-closing -- so worth a full suite run), fake-indexeddb 6.0.0 -> 6.2.5, @testing-library/jest-dom 6.4.8 -> 6.9.1. Lockfile-only. --- client/pnpm-lock.yaml | 100 +++++++++++++++++++++++------------------- 1 file changed, 56 insertions(+), 44 deletions(-) diff --git a/client/pnpm-lock.yaml b/client/pnpm-lock.yaml index 8e789b7edad..30965079745 100644 --- a/client/pnpm-lock.yaml +++ b/client/pnpm-lock.yaml @@ -345,7 +345,7 @@ importers: version: 5.0.5(rollup@4.60.1) '@testing-library/jest-dom': specifier: ^6.4.8 - version: 6.4.8 + version: 6.9.1 '@types/d3': specifier: ^7.4.2 version: 7.4.3 @@ -426,13 +426,13 @@ importers: version: 2.2.0(eslint@8.52.0) fake-indexeddb: specifier: ^6.0.0 - version: 6.0.0 + version: 6.2.5 fs-extra: specifier: ^11.2.0 version: 11.2.0 happy-dom: specifier: ^20.0.10 - version: 20.0.10 + version: 20.10.2 msw: specifier: ^2.3.4 version: 2.14.6(@types/node@25.9.3)(typescript@5.8.3) @@ -462,7 +462,7 @@ importers: version: 8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1) vitest: specifier: ^4.1.5 - version: 4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.0.10)(jsdom@28.1.0)(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)) + version: 4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.10.2)(jsdom@28.1.0)(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)) vitest-fail-on-console: specifier: ^0.10.1 version: 0.10.1(@vitest/utils@4.1.8)(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1))(vitest@4.1.8) @@ -508,7 +508,7 @@ importers: version: 5.8.3 vitest: specifier: ^4.0.14 - version: 4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.0.10)(jsdom@28.1.0)(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)) + version: 4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.10.2)(jsdom@28.1.0)(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)) packages: @@ -1462,8 +1462,8 @@ packages: '@standard-schema/spec@1.1.0': resolution: {integrity: sha512-l2aFy5jALhniG5HgqrD6jXLi/rUWrKvqN/qJx6yoJsgKhblVd+iqqU4RCXavm/jPityDo5TCvKMnpjKnOriy0w==} - '@testing-library/jest-dom@6.4.8': - resolution: {integrity: sha512-JD0G+Zc38f5MBHA4NgxQMR5XtO5Jx9g86jqturNTt2WUfRmLDIY7iKkWHDCCTiDuFMre6nxAD5wHw9W5kI4rGw==} + '@testing-library/jest-dom@6.9.1': + resolution: {integrity: sha512-zIcONa+hVtVSSep9UT3jZ5rizo2BsxgyDYU7WFD5eICBE7no3881HGeb/QkGfsJs6JTkY1aQhT7rIPC7e+0nnA==} engines: {node: '>=14', npm: '>=6', yarn: '>=1'} '@tsconfig/node10@1.0.12': @@ -1622,9 +1622,6 @@ packages: '@types/mdurl@1.0.2': resolution: {integrity: sha512-eC4U9MlIcu2q0KQmXszyn5Akca/0jrQmwDRgpAMJai7qBWq4amIQhZyNau4VYGtCeALvW1/NtjzJJ567aZxfKA==} - '@types/node@20.19.25': - resolution: {integrity: sha512-ZsJzA5thDQMSQO788d7IocwwQbI8B5OPzmqNvpf3NY/+MHDAS759Wo0gd2WQeXYt5AAAQjzcrTVC6SKCuYgoCQ==} - '@types/node@25.9.3': resolution: {integrity: sha512-603BddQMv3pUcr4U2dhujk83N2tTDVr/34wII2B6bJy6g+8WD6yUb11jszNs0gdi4PesVWl7ABt8nYMVpnLUcg==} @@ -2054,6 +2051,10 @@ packages: buffer-from@1.1.2: resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==} + buffer-image-size@0.6.4: + resolution: {integrity: sha512-nEh+kZOPY1w+gcCMobZ6ETUp9WfibndnosbpwB1iJk/8Gt5ZF2bhS6+B6bPYz424KtwsR6Rflc3tCz1/ghX2dQ==} + engines: {node: '>=4.0'} + buffer@5.7.1: resolution: {integrity: sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==} @@ -2102,10 +2103,6 @@ packages: resolution: {integrity: sha512-NUPRluOfOiTKBKvWPtSD4PhFvWCqOi0BGStNWs57X9js7XGTprSmFoz5F0tWhR4WPjNeR9jXqdC7/UpSJTnlRg==} engines: {node: '>=18'} - chalk@3.0.0: - resolution: {integrity: sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==} - engines: {node: '>=8'} - chalk@4.1.2: resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} engines: {node: '>=10'} @@ -2600,6 +2597,10 @@ packages: resolution: {integrity: sha512-aN97NXWF6AWBTahfVOIrB/NShkzi5H7F9r1s9mD3cDj4Ko5f2qhhVoYMibXF7GlLveb/D2ioWay8lxI97Ven3g==} engines: {node: '>=0.12'} + entities@7.0.1: + resolution: {integrity: sha512-TWrgLOFUQTH994YUyl1yT4uyavY5nNB5muff+RtWaqNVCAK408b5ZnnbNAUEWLTCpum9w6arT70i1XdQ4UeOPA==} + engines: {node: '>=0.12'} + error-stack-parser@2.1.4: resolution: {integrity: sha512-Sk5V6wVazPhq5MhpO+AUxJn5x7XSXGl1R93Vn7i+zS15KDVxQijejNCrz8340/2bgLBjR9GtEG8ZVKONDjcqGQ==} @@ -2788,8 +2789,8 @@ packages: extend@3.0.2: resolution: {integrity: sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==} - fake-indexeddb@6.0.0: - resolution: {integrity: sha512-YEboHE5VfopUclOck7LncgIqskAqnv4q0EWbYCaxKKjAvO93c+TJIaBuGy8CBFdbg9nKdpN3AuPRwVBJ4k7NrQ==} + fake-indexeddb@6.2.5: + resolution: {integrity: sha512-CGnyrvbhPlWYMngksqrSSUT1BAVP49dZocrHuK0SvtR0D5TMs5wP0o3j7jexDJW01KSadjBp1M/71o/KR3nD1w==} engines: {node: '>=18'} fast-deep-equal@3.1.3: @@ -3002,8 +3003,8 @@ packages: handsontable@4.0.0: resolution: {integrity: sha512-+i9jkz5D3+Da7bIL4+YjF4hnY/nWjR8ZfcCo9BHuHaYY/ri2CYH75OobVxpMyPTspQlXjyQoWE6v0qhHuesoUw==} - happy-dom@20.0.10: - resolution: {integrity: sha512-6umCCHcjQrhP5oXhrHQQvLB0bwb1UzHAHdsXy+FjtKoYjUhmNZsQL8NivwM1vDvNEChJabVrUYxUnp/ZdYmy2g==} + happy-dom@20.10.2: + resolution: {integrity: sha512-5p9Sxis3eowDJKqx90QCsgbNA02XXqJ59NOHvD4V6cxp+rP4d/xOyVx7uY3hS8hiUbY1VeiFH8lbJ81AyuDVLQ==} engines: {node: '>=20.0.0'} has-bigints@1.0.2: @@ -4700,9 +4701,6 @@ packages: unbox-primitive@1.0.2: resolution: {integrity: sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==} - undici-types@6.21.0: - resolution: {integrity: sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==} - undici-types@7.24.6: resolution: {integrity: sha512-WRNW+sJgj5OBN4/0JpHFqtqzhpbnV0GuB+OozA9gCL7a993SmU+1JBZCzLNxYsbMfIeDL+lTsphD5jN5N+n0zg==} @@ -5156,6 +5154,18 @@ packages: utf-8-validate: optional: true + ws@8.21.0: + resolution: {integrity: sha512-Vsp28b7DRcimFQvrqu2Wek3z1iYxDCWqHYB8Qsnk/S4RfaCQzPGPyBNuVjJV3cd6UiKtUtp6sNM77gWvzcCH+g==} + engines: {node: '>=10.0.0'} + peerDependencies: + bufferutil: ^4.0.1 + utf-8-validate: '>=5.0.2' + peerDependenciesMeta: + bufferutil: + optional: true + utf-8-validate: + optional: true + xml-beautifier@0.5.0: resolution: {integrity: sha512-QG/qiHeolHUd1tAtM+5zHxTzDprb8qvhmIYUYV1E9QK/jTFlrAa1Mz7QQqJPeqc3uuFAGzTOhjvbdx2hOP6bHw==} @@ -5987,15 +5997,13 @@ snapshots: '@standard-schema/spec@1.1.0': {} - '@testing-library/jest-dom@6.4.8': + '@testing-library/jest-dom@6.9.1': dependencies: '@adobe/css-tools': 4.4.0 - '@babel/runtime': 7.28.3 aria-query: 5.3.0 - chalk: 3.0.0 css.escape: 1.5.1 dom-accessibility-api: 0.6.3 - lodash: 4.18.1 + picocolors: 1.1.1 redent: 3.0.0 '@tsconfig/node10@1.0.12': {} @@ -6174,10 +6182,6 @@ snapshots: '@types/mdurl@1.0.2': {} - '@types/node@20.19.25': - dependencies: - undici-types: 6.21.0 - '@types/node@25.9.3': dependencies: undici-types: 7.24.6 @@ -6308,7 +6312,7 @@ snapshots: obug: 2.1.1 std-env: 4.1.0 tinyrainbow: 3.1.0 - vitest: 4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.0.10)(jsdom@28.1.0)(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)) + vitest: 4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.10.2)(jsdom@28.1.0)(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)) '@vitest/expect@4.1.8': dependencies: @@ -6355,7 +6359,7 @@ snapshots: sirv: 3.0.2 tinyglobby: 0.2.16 tinyrainbow: 3.1.0 - vitest: 4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.0.10)(jsdom@28.1.0)(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)) + vitest: 4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.10.2)(jsdom@28.1.0)(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)) '@vitest/utils@4.1.8': dependencies: @@ -6734,6 +6738,10 @@ snapshots: buffer-from@1.1.2: {} + buffer-image-size@0.6.4: + dependencies: + '@types/node': 25.9.3 + buffer@5.7.1: dependencies: base64-js: 1.5.1 @@ -6778,11 +6786,6 @@ snapshots: chai@6.2.2: {} - chalk@3.0.0: - dependencies: - ansi-styles: 4.3.0 - supports-color: 7.2.0 - chalk@4.1.2: dependencies: ansi-styles: 4.3.0 @@ -7293,6 +7296,8 @@ snapshots: entities@6.0.1: {} + entities@7.0.1: {} + error-stack-parser@2.1.4: dependencies: stackframe: 1.3.4 @@ -7590,7 +7595,7 @@ snapshots: extend@3.0.2: {} - fake-indexeddb@6.0.0: {} + fake-indexeddb@6.2.5: {} fast-deep-equal@3.1.3: {} @@ -7837,11 +7842,18 @@ snapshots: numbro: 2.3.6 pikaday: 1.5.1 - happy-dom@20.0.10: + happy-dom@20.10.2: dependencies: - '@types/node': 20.19.25 + '@types/node': 25.9.3 '@types/whatwg-mimetype': 3.0.2 + '@types/ws': 8.18.1 + buffer-image-size: 0.6.4 + entities: 7.0.1 whatwg-mimetype: 3.0.0 + ws: 8.21.0 + transitivePeerDependencies: + - bufferutil + - utf-8-validate has-bigints@1.0.2: {} @@ -9570,8 +9582,6 @@ snapshots: has-symbols: 1.1.0 which-boxed-primitive: 1.0.2 - undici-types@6.21.0: {} - undici-types@7.24.6: {} undici@7.25.0: {} @@ -9937,13 +9947,13 @@ snapshots: '@vitest/utils': 4.1.8 chalk: 5.6.2 vite: 8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1) - vitest: 4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.0.10)(jsdom@28.1.0)(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)) + vitest: 4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.10.2)(jsdom@28.1.0)(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)) vitest-location-mock@1.0.4: dependencies: '@jedmao/location': 3.0.0 - vitest@4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.0.10)(jsdom@28.1.0)(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)): + vitest@4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.10.2)(jsdom@28.1.0)(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)): dependencies: '@vitest/expect': 4.1.8 '@vitest/mocker': 4.1.8(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)) @@ -9969,7 +9979,7 @@ snapshots: '@types/node': 25.9.3 '@vitest/coverage-v8': 4.1.8(vitest@4.1.8) '@vitest/ui': 4.1.8(vitest@4.1.8) - happy-dom: 20.0.10 + happy-dom: 20.10.2 jsdom: 28.1.0 transitivePeerDependencies: - msw @@ -10141,6 +10151,8 @@ snapshots: ws@8.20.1: {} + ws@8.21.0: {} + xml-beautifier@0.5.0: dependencies: repeat-string: 1.6.1 From 205327836e5693b8f74d92c636fcfba9d8bdb6df Mon Sep 17 00:00:00 2001 From: Dannon Baker Date: Fri, 12 Jun 2026 09:05:57 -0400 Subject: [PATCH 15/31] Bump the monaco/ace editor stack in-range: monaco-yaml 5.4.0 -> 5.5.1 (peer range >=0.36 still covers our monaco-editor 0.52.2), ace-builds 1.41.0 -> 1.44.0, @guolao/vue-monaco-editor 1.5.4 -> 1.6.0 (still vue 2.7 compatible via vue-demi), and @monaco-editor/loader 1.5.0 -> 1.7.0, which lets everything dedupe onto one loader instance. One thing to eyeball when testing: ToolSourceDisplay.vue calls loader.init() without loader.config({ monaco }), so when nothing else has configured the loader first it now pulls monaco 0.55.1 from the CDN instead of 0.52.2 -- it's a read-only viewer and 0.55 keeps the APIs it uses, but worth a click. Deliberately NOT bumping monaco-editor itself to 0.55 here; that moves monaco.languages.typescript to a top-level namespace and YamlJs.ts uses the old paths, so it's a real migration for a separate PR. --- client/pnpm-lock.yaml | 48 +++++++++++++++++++++++++++---------------- 1 file changed, 30 insertions(+), 18 deletions(-) diff --git a/client/pnpm-lock.yaml b/client/pnpm-lock.yaml index 30965079745..f5e34405152 100644 --- a/client/pnpm-lock.yaml +++ b/client/pnpm-lock.yaml @@ -50,7 +50,7 @@ importers: version: link:packages/api-client '@guolao/vue-monaco-editor': specifier: ^1.5.4 - version: 1.5.4(monaco-editor@0.52.2)(vue@2.7.16) + version: 1.6.0(monaco-editor@0.52.2)(vue@2.7.16) '@handsontable/vue': specifier: ^2.0.0 version: 2.0.0(handsontable@4.0.0) @@ -62,7 +62,7 @@ importers: version: 2.1.0(vue@2.7.16) '@monaco-editor/loader': specifier: ^1.5.0 - version: 1.5.0 + version: 1.7.0 '@popperjs/core': specifier: ^2.11.8 version: 2.11.8 @@ -80,7 +80,7 @@ importers: version: 10.5.0(vue@2.7.16) ace-builds: specifier: ^1.39.0 - version: 1.41.0 + version: 1.44.0 ag-grid-community: specifier: ^30 version: 30.2.1 @@ -212,7 +212,7 @@ importers: version: 2.0.1(monaco-editor@0.52.2) monaco-yaml: specifier: ^5.4.0 - version: 5.4.0(monaco-editor@0.52.2) + version: 5.5.1(monaco-editor@0.52.2) object-hash: specifier: ^3.0.0 version: 3.0.0 @@ -916,10 +916,10 @@ packages: '@fortawesome/fontawesome-svg-core': ~1 || ~6 vue: 2.7.16 - '@guolao/vue-monaco-editor@1.5.4': - resolution: {integrity: sha512-eyBAqxJeDpV4mZYZSpNvh3xUgKCld5eEe0dBtjJhsy2+L0MB6PYFZ/FbPHNwskgp2RoIpfn1DLrIhXXE3lVbwQ==} + '@guolao/vue-monaco-editor@1.6.0': + resolution: {integrity: sha512-w2IiJ6eJGGeuIgCK6EKZOAfhHTTUB5aZwslzwGbZ5e89Hb4avx6++GkLTW8p84Sng/arFMjLPPxSBI56cFudyQ==} peerDependencies: - '@vue/composition-api': ^1.7.1 + '@vue/composition-api': ^1.7.2 monaco-editor: '>=0.43.0' vue: 2.7.16 peerDependenciesMeta: @@ -1027,8 +1027,8 @@ packages: peerDependencies: vite: '>=3.2.7' - '@monaco-editor/loader@1.5.0': - resolution: {integrity: sha512-hKoGSM+7aAc7eRTRjpqAZucPmoNOC4UUbknb/VNoTkEIkCPhqV8LfbsgM1webRM7S/z21eHEx9Fkwx8Z/C/+Xw==} + '@monaco-editor/loader@1.7.0': + resolution: {integrity: sha512-gIwR1HrJrrx+vfyOhYmCZ0/JcWqG5kbfG7+d3f/C1LXk2EvzAbHSg3MQ5lO2sMlo9izoAZ04shohfKLVT6crVA==} '@mswjs/interceptors@0.41.9': resolution: {integrity: sha512-VVPPgHyQ6ShqnrmDWuxjmUIsO9gWyOZFmuOfLd9LfBGQJwZfy0gvv9pbHSJuoFNIYC7ZDX9aoFwowjcdSC4E8w==} @@ -1773,6 +1773,9 @@ packages: '@volar/typescript@2.4.15': resolution: {integrity: sha512-2aZ8i0cqPGjXb4BhkMsPYDkkuc2ZQ6yOpqwAuNwUoncELqoy5fRgOQtLR9gB0g902iS0NAkvpIzs27geVyVdPg==} + '@vscode/l10n@0.0.18': + resolution: {integrity: sha512-KYSIHVmslkaCDyw013pphY+d7x1qV8IZupYfeIfzNA+nsaWHbn5uPuQRvdRFsa9zFzGeudPuoGoZ1Op4jrJXIQ==} + '@vue/compiler-core@3.5.22': resolution: {integrity: sha512-jQ0pFPmZwTEiRNSb+i9Ow/I/cHv2tXYqsnHKKyCQ08irI2kdF5qmYedmF8si8mA7zepUFmJ2hqzS8CQmNOWOkQ==} @@ -1830,8 +1833,8 @@ packages: resolution: {integrity: sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==} engines: {node: '>= 0.6'} - ace-builds@1.41.0: - resolution: {integrity: sha512-tiEUfw7V/FpHuI4tG7KS+muOTMIuPh6zReBAD2Uqhe9t00tLeyVGxjXu0tSqz5OIPWy7/wvuJBVXAsNWx0rYvQ==} + ace-builds@1.44.0: + resolution: {integrity: sha512-PFNMSYqFdEUkul2Ntud0HvA09AgY+F1ag0UYdpMH60wNI/qOA8cB8tlTgoALMEwIdUPJK2CjrIQ7OnbiSS/ugQ==} acorn-jsx@5.3.2: resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} @@ -3678,8 +3681,8 @@ packages: peerDependencies: monaco-editor: '>=0.30.0' - monaco-yaml@5.4.0: - resolution: {integrity: sha512-tuBVDy1KAPrgO905GHTItu8AaA5bIzF5S4X0JVRAE/D66FpRhkDUk7tKi5bwKMVTTugtpMLsXN4ewh4CgE/FtQ==} + monaco-yaml@5.5.1: + resolution: {integrity: sha512-vLR1EoV7Au0tkuA9T6ZJr2q7CooRP69AvlqzWh9Gui6amuijdTsfCAQHtCFobRMwkhbuly6J1Q16NziTTiWtWQ==} peerDependencies: monaco-editor: '>=0.36' @@ -4065,6 +4068,9 @@ packages: proto-list@1.2.4: resolution: {integrity: sha512-vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA==} + proxy-disposable@1.0.0: + resolution: {integrity: sha512-Y673BKpFqk8XkYuoK9DGZ1RIzldz5SkzxTKc/+DkpaMdrDEbEalWlO/uMRMdJsXvdbTybJI26XDwN0KJpZDN4w==} + proxy-from-env@2.1.0: resolution: {integrity: sha512-cJ+oHTW1VAEa8cJslgmUZrc+sjRKgAKl3Zyse6+PV38hZe/V6Z14TbCuXcan9F9ghlz4QrFr2c92TNF82UkYHA==} engines: {node: '>=10'} @@ -5562,9 +5568,9 @@ snapshots: '@fortawesome/fontawesome-svg-core': 6.2.1 vue: 2.7.16 - '@guolao/vue-monaco-editor@1.5.4(monaco-editor@0.52.2)(vue@2.7.16)': + '@guolao/vue-monaco-editor@1.6.0(monaco-editor@0.52.2)(vue@2.7.16)': dependencies: - '@monaco-editor/loader': 1.5.0 + '@monaco-editor/loader': 1.7.0 monaco-editor: 0.52.2 vue: 2.7.16 vue-demi: 0.14.10(vue@2.7.16) @@ -5658,7 +5664,7 @@ snapshots: transitivePeerDependencies: - rollup - '@monaco-editor/loader@1.5.0': + '@monaco-editor/loader@1.7.0': dependencies: state-local: 1.0.7 @@ -6379,6 +6385,8 @@ snapshots: path-browserify: 1.0.1 vscode-uri: 3.1.0 + '@vscode/l10n@0.0.18': {} + '@vue/compiler-core@3.5.22': dependencies: '@babel/parser': 7.28.5 @@ -6473,7 +6481,7 @@ snapshots: mime-types: 2.1.35 negotiator: 0.6.3 - ace-builds@1.41.0: {} + ace-builds@1.44.0: {} acorn-jsx@5.3.2(acorn@8.10.0): dependencies: @@ -8509,8 +8517,9 @@ snapshots: dependencies: monaco-editor: 0.52.2 - monaco-yaml@5.4.0(monaco-editor@0.52.2): + monaco-yaml@5.5.1(monaco-editor@0.52.2): dependencies: + '@vscode/l10n': 0.0.18 jsonc-parser: 3.3.1 monaco-editor: 0.52.2 monaco-languageserver-types: 0.4.1 @@ -8519,6 +8528,7 @@ snapshots: monaco-worker-manager: 2.0.1(monaco-editor@0.52.2) path-browserify: 1.0.1 prettier: 3.6.2 + proxy-disposable: 1.0.0 vscode-languageserver-textdocument: 1.0.12 vscode-languageserver-types: 3.17.5 vscode-uri: 3.1.0 @@ -8863,6 +8873,8 @@ snapshots: proto-list@1.2.4: {} + proxy-disposable@1.0.0: {} + proxy-from-env@2.1.0: {} pseudomap@1.0.2: {} From b37720baf03f073fa2a323ce262823cd97aae60c Mon Sep 17 00:00:00 2001 From: Dannon Baker Date: Fri, 12 Jun 2026 09:06:47 -0400 Subject: [PATCH 16/31] Bump katex ^0.16.22 -> ^0.17.0. The only breaking change in 0.17.0 is the internal __defineFunction API for custom function definitions, which we don't use -- our markdown-it-katex plugin just calls renderToString. Markdown component tests pass. --- client/package.json | 2 +- client/pnpm-lock.yaml | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/client/package.json b/client/package.json index 2071001ab64..05f66e01eb7 100644 --- a/client/package.json +++ b/client/package.json @@ -91,7 +91,7 @@ "jquery-migrate": "~1.4", "jquery-mousewheel": "^3.1.13", "jquery-ui": "^1.13.2", - "katex": "^0.16.22", + "katex": "^0.17.0", "linkify-html": "^4.1.1", "linkifyjs": "^4.1.1", "lodash": "^4.17.21", diff --git a/client/pnpm-lock.yaml b/client/pnpm-lock.yaml index f5e34405152..20483865b81 100644 --- a/client/pnpm-lock.yaml +++ b/client/pnpm-lock.yaml @@ -175,8 +175,8 @@ importers: specifier: ^1.13.2 version: 1.13.2 katex: - specifier: ^0.16.22 - version: 0.16.22 + specifier: ^0.17.0 + version: 0.17.0 linkify-html: specifier: ^4.1.1 version: 4.1.1(linkifyjs@4.3.3) @@ -3383,8 +3383,8 @@ packages: engines: {node: '>= 10'} hasBin: true - katex@0.16.22: - resolution: {integrity: sha512-XCHRdUw4lf3SKBaJe4EvgqIuWwkPSo9XoeO8GjQW94Bp7TWv9hNhzZjZ+OH9yf1UmLygb7DIT5GSFQiyt16zYg==} + katex@0.17.0: + resolution: {integrity: sha512-Vdw0ATsQ9V+LuegM/BTwQqV/6cTl5lbGcIrU+BCgLxyf6bo38ybOr372tuSIxir3CN720flu1meYR6XzNMwQnw==} hasBin: true kind-of@3.2.2: @@ -8254,7 +8254,7 @@ snapshots: - supports-color - utf-8-validate - katex@0.16.22: + katex@0.17.0: dependencies: commander: 8.3.0 From 5cb72355261934c8712dc665906898bb00d74097 Mon Sep 17 00:00:00 2001 From: Dannon Baker Date: Fri, 12 Jun 2026 09:07:17 -0400 Subject: [PATCH 17/31] Bump elkjs ^0.8.2 -> ^0.11.1. The elkjs API is unchanged across 0.9-0.11 (additions only, plus a security release in 0.11.1), and the upstream ELK option renames in 0.9.0 are all in rectpacking/component-ordering options we don't use -- our layered-algorithm options all survive. The lib/elk.bundled.js import path we use still ships. Workflow editor layout tests and graph tests pass; auto-layout coordinates could shift a little across three ELK minors, so worth an eyeball in the editor. --- client/package.json | 2 +- client/pnpm-lock.yaml | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/client/package.json b/client/package.json index 05f66e01eb7..7983593c437 100644 --- a/client/package.json +++ b/client/package.json @@ -78,7 +78,7 @@ "dom-to-image": "^2.6.0", "dompurify": "^3.0.6", "echarts": "^5.5.1", - "elkjs": "^0.8.2", + "elkjs": "^0.11.1", "events": "^3.3.0", "file-saver": "^2.0.5", "flush-promises": "^1.0.2", diff --git a/client/pnpm-lock.yaml b/client/pnpm-lock.yaml index 20483865b81..64ad43781f3 100644 --- a/client/pnpm-lock.yaml +++ b/client/pnpm-lock.yaml @@ -136,8 +136,8 @@ importers: specifier: ^5.5.1 version: 5.5.1 elkjs: - specifier: ^0.8.2 - version: 0.8.2 + specifier: ^0.11.1 + version: 0.11.1 events: specifier: ^3.3.0 version: 3.3.0 @@ -2567,8 +2567,8 @@ packages: electron-to-chromium@1.4.554: resolution: {integrity: sha512-Q0umzPJjfBrrj8unkONTgbKQXzXRrH7sVV7D9ea2yBV3Oaogz991yhbpfvo2LMNkJItmruXTEzVpP9cp7vaIiQ==} - elkjs@0.8.2: - resolution: {integrity: sha512-L6uRgvZTH+4OF5NE/MBbzQx/WYpru1xCBE9respNj6qznEewGUIfhzmm7horWWxbNO2M0WckQypGctR8lH79xQ==} + elkjs@0.11.1: + resolution: {integrity: sha512-zxxR9k+rx5ktMwT/FwyLdPCrq7xN6e4VGGHH8hA01vVYKjTFik7nHOxBnAYtrgYUB1RpAiLvA1/U2YraWxyKKg==} emoji-regex@10.1.0: resolution: {integrity: sha512-xAEnNCT3w2Tg6MA7ly6QqYJvEoY1tm9iIjJ3yMKK9JPlWuRHAMoe5iETwQnx3M9TVbFMfsrBgWKR+IsmswwNjg==} @@ -7266,7 +7266,7 @@ snapshots: electron-to-chromium@1.4.554: {} - elkjs@0.8.2: {} + elkjs@0.11.1: {} emoji-regex@10.1.0: {} From 0f7218f3fbd96bb1c856e74ed66c9fce4e3473ac Mon Sep 17 00:00:00 2001 From: Dannon Baker Date: Fri, 12 Jun 2026 09:08:54 -0400 Subject: [PATCH 18/31] Bump build tooling: esbuild ^0.27.4 -> ^0.28.1 (vite 8 is rolldown-based and peers on esbuild ^0.27 || ^0.28, so our copy is the one that matters; api-client's tsup keeps its own 0.27), sass 1.94.2 -> 1.101.0 (new if-function deprecation in 1.95 only affects bootstrap internals, which our quietDeps/silenceDeprecations config already mutes), autoprefixer pin 10.4.16 -> 10.5.0 (adds mask-position prefixes and fixes the line-clamp/-webkit-box-orient combo -- prefix output is really frozen by caniuse-lite in the lockfile, not this pin), fs-extra 11.3.5, and openapi-typescript 7.13.0 (all output-affecting changes in range are behind flags we don't pass). --- client/package.json | 4 +- client/pnpm-lock.yaml | 544 ++++++++++++++++++++++++++++++++++++------ 2 files changed, 470 insertions(+), 78 deletions(-) diff --git a/client/package.json b/client/package.json index 7983593c437..43f485a0bcd 100644 --- a/client/package.json +++ b/client/package.json @@ -186,10 +186,10 @@ "@vitest/ui": "^4.1.5", "@vue/test-utils": "^1.3.6", "@vue/tsconfig": "^0.4.0", - "autoprefixer": "10.4.16", + "autoprefixer": "10.5.0", "buffer": "^6.0.3", "cpy-cli": "^5.0.0", - "esbuild": "^0.27.4", + "esbuild": "^0.28.1", "eslint": "^8.52.0", "eslint-plugin-compat": "^4.2.0", "eslint-plugin-import": "^2.28.1", diff --git a/client/pnpm-lock.yaml b/client/pnpm-lock.yaml index 64ad43781f3..430618f3a7f 100644 --- a/client/pnpm-lock.yaml +++ b/client/pnpm-lock.yaml @@ -336,7 +336,7 @@ importers: devDependencies: '@modyfi/vite-plugin-yaml': specifier: ^1.1.1 - version: 1.1.1(rollup@4.60.1)(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)) + version: 1.1.1(rollup@4.60.1)(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.6.1)) '@pinia/testing': specifier: 0.1.5 version: 0.1.5(pinia@2.3.1(typescript@5.8.3)(vue@2.7.16))(vue@2.7.16) @@ -378,7 +378,7 @@ importers: version: 6.8.0(eslint@8.52.0)(typescript@5.8.3) '@vitejs/plugin-vue2': specifier: ^2.3.4 - version: 2.3.4(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1))(vue@2.7.16) + version: 2.3.4(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.6.1))(vue@2.7.16) '@vitest/coverage-v8': specifier: ^4.1.5 version: 4.1.8(vitest@4.1.8) @@ -395,8 +395,8 @@ importers: specifier: ^0.4.0 version: 0.4.0 autoprefixer: - specifier: 10.4.16 - version: 10.4.16(postcss@8.5.15) + specifier: 10.5.0 + version: 10.5.0(postcss@8.5.15) buffer: specifier: ^6.0.3 version: 6.0.3 @@ -404,8 +404,8 @@ importers: specifier: ^5.0.0 version: 5.0.0 esbuild: - specifier: ^0.27.4 - version: 0.27.7 + specifier: ^0.28.1 + version: 0.28.1 eslint: specifier: ^8.52.0 version: 8.52.0 @@ -429,7 +429,7 @@ importers: version: 6.2.5 fs-extra: specifier: ^11.2.0 - version: 11.2.0 + version: 11.3.5 happy-dom: specifier: ^20.0.10 version: 20.10.2 @@ -441,13 +441,13 @@ importers: version: 0.7.0(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3)) openapi-typescript: specifier: ^7.3.0 - version: 7.10.1(typescript@5.8.3) + version: 7.13.0(typescript@5.8.3) prettier: specifier: ^3.6.2 version: 3.6.2 sass: specifier: ^1.94.2 - version: 1.94.2 + version: 1.101.0 store: specifier: ^2.0.12 version: 2.0.12 @@ -459,13 +459,13 @@ importers: version: 5.8.3 vite: specifier: ^8.0.11 - version: 8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1) + version: 8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.6.1) vitest: specifier: ^4.1.5 - version: 4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.10.2)(jsdom@28.1.0)(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)) + version: 4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.10.2)(jsdom@28.1.0)(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.6.1)) vitest-fail-on-console: specifier: ^0.10.1 - version: 0.10.1(@vitest/utils@4.1.8)(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1))(vitest@4.1.8) + version: 0.10.1(@vitest/utils@4.1.8)(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.6.1))(vitest@4.1.8) vitest-location-mock: specifier: ^1.0.4 version: 1.0.4 @@ -508,7 +508,7 @@ importers: version: 5.8.3 vitest: specifier: ^4.0.14 - version: 4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.10.2)(jsdom@28.1.0)(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)) + version: 4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.10.2)(jsdom@28.1.0)(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.101.0)(yaml@2.6.1)) packages: @@ -693,156 +693,312 @@ packages: cpu: [ppc64] os: [aix] + '@esbuild/aix-ppc64@0.28.1': + resolution: {integrity: sha512-Svl7tq8k/08+p6CXPpRjQ1fKX+1odH/BQbb48fV6fj3CWHhsoIOoY87w1oHXm0qEpkIK3ZfVgp0hed3XBXzXMQ==} + engines: {node: '>=18'} + cpu: [ppc64] + os: [aix] + '@esbuild/android-arm64@0.27.7': resolution: {integrity: sha512-62dPZHpIXzvChfvfLJow3q5dDtiNMkwiRzPylSCfriLvZeq0a1bWChrGx/BbUbPwOrsWKMn8idSllklzBy+dgQ==} engines: {node: '>=18'} cpu: [arm64] os: [android] + '@esbuild/android-arm64@0.28.1': + resolution: {integrity: sha512-34EGEbCIAgosYz6goLcopX6Mo7NyGv9tfwEM2/7Ce2VcVRk568iSvniGWcUXIy7wEDR1wzolcxcriFVrWYcwBg==} + engines: {node: '>=18'} + cpu: [arm64] + os: [android] + '@esbuild/android-arm@0.27.7': resolution: {integrity: sha512-jbPXvB4Yj2yBV7HUfE2KHe4GJX51QplCN1pGbYjvsyCZbQmies29EoJbkEc+vYuU5o45AfQn37vZlyXy4YJ8RQ==} engines: {node: '>=18'} cpu: [arm] os: [android] + '@esbuild/android-arm@0.28.1': + resolution: {integrity: sha512-0k2F129Xdio1TdJfzJ8sy1Q47vUD2NnwdhiAf7drUN1EBTfPf4hsFCtmMgu/6m8JSzsBrlmVjudMBQqOfG8usQ==} + engines: {node: '>=18'} + cpu: [arm] + os: [android] + '@esbuild/android-x64@0.27.7': resolution: {integrity: sha512-x5VpMODneVDb70PYV2VQOmIUUiBtY3D3mPBG8NxVk5CogneYhkR7MmM3yR/uMdITLrC1ml/NV1rj4bMJuy9MCg==} engines: {node: '>=18'} cpu: [x64] os: [android] + '@esbuild/android-x64@0.28.1': + resolution: {integrity: sha512-dbwY7ltSMDWsRatcRpCnES4F+im88OCUgGZjy52shC7GqHRE/cYlxNbB4Z4UpJswpcc4Qxd2oE/ufM0p61IKng==} + engines: {node: '>=18'} + cpu: [x64] + os: [android] + '@esbuild/darwin-arm64@0.27.7': resolution: {integrity: sha512-5lckdqeuBPlKUwvoCXIgI2D9/ABmPq3Rdp7IfL70393YgaASt7tbju3Ac+ePVi3KDH6N2RqePfHnXkaDtY9fkw==} engines: {node: '>=18'} cpu: [arm64] os: [darwin] + '@esbuild/darwin-arm64@0.28.1': + resolution: {integrity: sha512-TZbWkQY7kvTAXbXUT7uVACR5cMHsDiSz9z7ZKAX/RTq/WJEk3QyRr0wZpNhBDX+/0CtdqUIJlOiodQcta6tY3Q==} + engines: {node: '>=18'} + cpu: [arm64] + os: [darwin] + '@esbuild/darwin-x64@0.27.7': resolution: {integrity: sha512-rYnXrKcXuT7Z+WL5K980jVFdvVKhCHhUwid+dDYQpH+qu+TefcomiMAJpIiC2EM3Rjtq0sO3StMV/+3w3MyyqQ==} engines: {node: '>=18'} cpu: [x64] os: [darwin] + '@esbuild/darwin-x64@0.28.1': + resolution: {integrity: sha512-zfdzgK9ACBNZLI/CyHTOx81SyNbM6YXn7rxSgX97VjyiPl9W1i4Ka4fgKECEoFCKGpvBj5qArWIGgQjOwkgskQ==} + engines: {node: '>=18'} + cpu: [x64] + os: [darwin] + '@esbuild/freebsd-arm64@0.27.7': resolution: {integrity: sha512-B48PqeCsEgOtzME2GbNM2roU29AMTuOIN91dsMO30t+Ydis3z/3Ngoj5hhnsOSSwNzS+6JppqWsuhTp6E82l2w==} engines: {node: '>=18'} cpu: [arm64] os: [freebsd] + '@esbuild/freebsd-arm64@0.28.1': + resolution: {integrity: sha512-wG2EA8ENdEI0qhkSZMjfqrdY+ziCYCPMmtZjjIwOmXFjmyzEHn+UUxk5of+SYsjtfs3VpnlC7QLzSI5hY/rOAw==} + engines: {node: '>=18'} + cpu: [arm64] + os: [freebsd] + '@esbuild/freebsd-x64@0.27.7': resolution: {integrity: sha512-jOBDK5XEjA4m5IJK3bpAQF9/Lelu/Z9ZcdhTRLf4cajlB+8VEhFFRjWgfy3M1O4rO2GQ/b2dLwCUGpiF/eATNQ==} engines: {node: '>=18'} cpu: [x64] os: [freebsd] + '@esbuild/freebsd-x64@0.28.1': + resolution: {integrity: sha512-i7dZ9vQgnvSCzi/rYCXNgtF/U+eKZNJBzu3eTQbRgHnM7tNSizLOkRFAl3qzVc/Op/u5YkHHa4pf/3DOYHthLQ==} + engines: {node: '>=18'} + cpu: [x64] + os: [freebsd] + '@esbuild/linux-arm64@0.27.7': resolution: {integrity: sha512-RZPHBoxXuNnPQO9rvjh5jdkRmVizktkT7TCDkDmQ0W2SwHInKCAV95GRuvdSvA7w4VMwfCjUiPwDi0ZO6Nfe9A==} engines: {node: '>=18'} cpu: [arm64] os: [linux] + '@esbuild/linux-arm64@0.28.1': + resolution: {integrity: sha512-yHs+0uc8+nvEAfAfxrWQKK5peSNzBc4PegcMO0EJ2hT71uA7vB8Ihg2e77R2P7SG5uYjPbHlLLmve4LLLRCf0g==} + engines: {node: '>=18'} + cpu: [arm64] + os: [linux] + '@esbuild/linux-arm@0.27.7': resolution: {integrity: sha512-RkT/YXYBTSULo3+af8Ib0ykH8u2MBh57o7q/DAs3lTJlyVQkgQvlrPTnjIzzRPQyavxtPtfg0EopvDyIt0j1rA==} engines: {node: '>=18'} cpu: [arm] os: [linux] + '@esbuild/linux-arm@0.28.1': + resolution: {integrity: sha512-qVXBOHQS+d5Y722GwJzJUtOLlX7km3CraOaGormF1pDtPd2C/l1SHRPgjLunLGe51Sh5YYWKMFDyV4SxgMQYTQ==} + engines: {node: '>=18'} + cpu: [arm] + os: [linux] + '@esbuild/linux-ia32@0.27.7': resolution: {integrity: sha512-GA48aKNkyQDbd3KtkplYWT102C5sn/EZTY4XROkxONgruHPU72l+gW+FfF8tf2cFjeHaRbWpOYa/uRBz/Xq1Pg==} engines: {node: '>=18'} cpu: [ia32] os: [linux] + '@esbuild/linux-ia32@0.28.1': + resolution: {integrity: sha512-d1z4ZuP0ajrfz/FhGT4vv278rX8KnPPJx8i5+AtK7TYbx9Le9F1hyzurZpkEyjkGa9dUGhQow4C1NmeGvqxN2w==} + engines: {node: '>=18'} + cpu: [ia32] + os: [linux] + '@esbuild/linux-loong64@0.27.7': resolution: {integrity: sha512-a4POruNM2oWsD4WKvBSEKGIiWQF8fZOAsycHOt6JBpZ+JN2n2JH9WAv56SOyu9X5IqAjqSIPTaJkqN8F7XOQ5Q==} engines: {node: '>=18'} cpu: [loong64] os: [linux] + '@esbuild/linux-loong64@0.28.1': + resolution: {integrity: sha512-M5sRjUVZrkm1OAPR3dlOYzNmN+loZKGVi1VUQGrwuqLcbR6qeAz+famMhjASeH3YVKvZz+zT1jlh/keC3Rj/lg==} + engines: {node: '>=18'} + cpu: [loong64] + os: [linux] + '@esbuild/linux-mips64el@0.27.7': resolution: {integrity: sha512-KabT5I6StirGfIz0FMgl1I+R1H73Gp0ofL9A3nG3i/cYFJzKHhouBV5VWK1CSgKvVaG4q1RNpCTR2LuTVB3fIw==} engines: {node: '>=18'} cpu: [mips64el] os: [linux] + '@esbuild/linux-mips64el@0.28.1': + resolution: {integrity: sha512-mRObBZeHh2OxcBFPWE/FjylkRgZdYuiTR3vaTozquCGOH14iP9oN4x4Ge81CoIDYQrXmIxpFumJBu5MtZpnQJQ==} + engines: {node: '>=18'} + cpu: [mips64el] + os: [linux] + '@esbuild/linux-ppc64@0.27.7': resolution: {integrity: sha512-gRsL4x6wsGHGRqhtI+ifpN/vpOFTQtnbsupUF5R5YTAg+y/lKelYR1hXbnBdzDjGbMYjVJLJTd2OFmMewAgwlQ==} engines: {node: '>=18'} cpu: [ppc64] os: [linux] + '@esbuild/linux-ppc64@0.28.1': + resolution: {integrity: sha512-slScBsMAb3GFDcdrCgLwZtPYRoH2H/youv10QiZyRjmsP48fznoveWytSgCI/R0ZcUgpc0ZhIUEx6LHts8yrfQ==} + engines: {node: '>=18'} + cpu: [ppc64] + os: [linux] + '@esbuild/linux-riscv64@0.27.7': resolution: {integrity: sha512-hL25LbxO1QOngGzu2U5xeXtxXcW+/GvMN3ejANqXkxZ/opySAZMrc+9LY/WyjAan41unrR3YrmtTsUpwT66InQ==} engines: {node: '>=18'} cpu: [riscv64] os: [linux] + '@esbuild/linux-riscv64@0.28.1': + resolution: {integrity: sha512-kw0owk1o0GFETUJyW0jc0G4Yzs0BHZn0JDZ8JRT088vjJYX777BAs1fDGxAC+q831qOs2DTC96mNsG2opdfyyQ==} + engines: {node: '>=18'} + cpu: [riscv64] + os: [linux] + '@esbuild/linux-s390x@0.27.7': resolution: {integrity: sha512-2k8go8Ycu1Kb46vEelhu1vqEP+UeRVj2zY1pSuPdgvbd5ykAw82Lrro28vXUrRmzEsUV0NzCf54yARIK8r0fdw==} engines: {node: '>=18'} cpu: [s390x] os: [linux] + '@esbuild/linux-s390x@0.28.1': + resolution: {integrity: sha512-/lAIjX8aYFRByhh6L5rYtPEDRqa9de/4V/juOXcta5frjvzXO4/sqEtyytse0g3zZFuWu5cDN0MkLz2qRDD2Ag==} + engines: {node: '>=18'} + cpu: [s390x] + os: [linux] + '@esbuild/linux-x64@0.27.7': resolution: {integrity: sha512-hzznmADPt+OmsYzw1EE33ccA+HPdIqiCRq7cQeL1Jlq2gb1+OyWBkMCrYGBJ+sxVzve2ZJEVeePbLM2iEIZSxA==} engines: {node: '>=18'} cpu: [x64] os: [linux] + '@esbuild/linux-x64@0.28.1': + resolution: {integrity: sha512-u/anNYF2mmVOEDwLtnQ1wOr3EZ9sTNGLWrsYGYwHWzGA3Si84IOkHXlbWTD1NB+9/1lcnweYKO54uhxZydNzfA==} + engines: {node: '>=18'} + cpu: [x64] + os: [linux] + '@esbuild/netbsd-arm64@0.27.7': resolution: {integrity: sha512-b6pqtrQdigZBwZxAn1UpazEisvwaIDvdbMbmrly7cDTMFnw/+3lVxxCTGOrkPVnsYIosJJXAsILG9XcQS+Yu6w==} engines: {node: '>=18'} cpu: [arm64] os: [netbsd] + '@esbuild/netbsd-arm64@0.28.1': + resolution: {integrity: sha512-oks0DYbLwWMmaakTsCb+zL4E+aHRVLom9IJZOAthMQEPiQmydXHkziYEsGYRx0uNV/IjEKGAV941JzH02pflqw==} + engines: {node: '>=18'} + cpu: [arm64] + os: [netbsd] + '@esbuild/netbsd-x64@0.27.7': resolution: {integrity: sha512-OfatkLojr6U+WN5EDYuoQhtM+1xco+/6FSzJJnuWiUw5eVcicbyK3dq5EeV/QHT1uy6GoDhGbFpprUiHUYggrw==} engines: {node: '>=18'} cpu: [x64] os: [netbsd] + '@esbuild/netbsd-x64@0.28.1': + resolution: {integrity: sha512-aeL6lAnN89Hz43Mlh1G8ARasbuoYvSITDEx0tHh5b7jJnHcssqgjy9Yx430GDpmCa6OyrKoS0aNRjKundRizGg==} + engines: {node: '>=18'} + cpu: [x64] + os: [netbsd] + '@esbuild/openbsd-arm64@0.27.7': resolution: {integrity: sha512-AFuojMQTxAz75Fo8idVcqoQWEHIXFRbOc1TrVcFSgCZtQfSdc1RXgB3tjOn/krRHENUB4j00bfGjyl2mJrU37A==} engines: {node: '>=18'} cpu: [arm64] os: [openbsd] + '@esbuild/openbsd-arm64@0.28.1': + resolution: {integrity: sha512-MEFJe5C3R8pwXdZ5Y21oo6m7ePiS0d9pWucn99O/wvyJZChoIQKrQDxKrGeW8F5+T0okTHesAmDeiHDTIq0V/Q==} + engines: {node: '>=18'} + cpu: [arm64] + os: [openbsd] + '@esbuild/openbsd-x64@0.27.7': resolution: {integrity: sha512-+A1NJmfM8WNDv5CLVQYJ5PshuRm/4cI6WMZRg1by1GwPIQPCTs1GLEUHwiiQGT5zDdyLiRM/l1G0Pv54gvtKIg==} engines: {node: '>=18'} cpu: [x64] os: [openbsd] + '@esbuild/openbsd-x64@0.28.1': + resolution: {integrity: sha512-i/ZLIOafE0Z8cI/XANJAixoJL/uRAoS2xOA3rb0xN+KK0K177cMAsQYkzHtBrtMXAKuAc7HGgcWiZ/sRC1Nxgw==} + engines: {node: '>=18'} + cpu: [x64] + os: [openbsd] + '@esbuild/openharmony-arm64@0.27.7': resolution: {integrity: sha512-+KrvYb/C8zA9CU/g0sR6w2RBw7IGc5J2BPnc3dYc5VJxHCSF1yNMxTV5LQ7GuKteQXZtspjFbiuW5/dOj7H4Yw==} engines: {node: '>=18'} cpu: [arm64] os: [openharmony] + '@esbuild/openharmony-arm64@0.28.1': + resolution: {integrity: sha512-ge+Z7EXFNt2BO1oAMsVpiQ8EwndV9i1xXerAeTIK7AtPs3bKFXQM7nlRxDSIUIMeueR1CNXxqztLzdNeReKBJg==} + engines: {node: '>=18'} + cpu: [arm64] + os: [openharmony] + '@esbuild/sunos-x64@0.27.7': resolution: {integrity: sha512-ikktIhFBzQNt/QDyOL580ti9+5mL/YZeUPKU2ivGtGjdTYoqz6jObj6nOMfhASpS4GU4Q/Clh1QtxWAvcYKamA==} engines: {node: '>=18'} cpu: [x64] os: [sunos] + '@esbuild/sunos-x64@0.28.1': + resolution: {integrity: sha512-BEjgtECkL3vY+SaSQ6nzVfiALUeFxpawyp8Jmf5PtYhf1Ug40N1h/hxlhts+f1FvSvarEigdxS3BlSMI2PJLcQ==} + engines: {node: '>=18'} + cpu: [x64] + os: [sunos] + '@esbuild/win32-arm64@0.27.7': resolution: {integrity: sha512-7yRhbHvPqSpRUV7Q20VuDwbjW5kIMwTHpptuUzV+AA46kiPze5Z7qgt6CLCK3pWFrHeNfDd1VKgyP4O+ng17CA==} engines: {node: '>=18'} cpu: [arm64] os: [win32] + '@esbuild/win32-arm64@0.28.1': + resolution: {integrity: sha512-lCv9eK/H6ZJWbE7bh2nw54CZ9M2nupBxJcTsdk/QQnWkdSjKGuxmmH8/GWrlT1eMmZfn4dGcCjRte397WqfQXA==} + engines: {node: '>=18'} + cpu: [arm64] + os: [win32] + '@esbuild/win32-ia32@0.27.7': resolution: {integrity: sha512-SmwKXe6VHIyZYbBLJrhOoCJRB/Z1tckzmgTLfFYOfpMAx63BJEaL9ExI8x7v0oAO3Zh6D/Oi1gVxEYr5oUCFhw==} engines: {node: '>=18'} cpu: [ia32] os: [win32] + '@esbuild/win32-ia32@0.28.1': + resolution: {integrity: sha512-zvb/mB2bSCoJOpoCBgYKKpX6YM6mJBlBUVUtVj41DlZJVEB6/0CKlRYxP5wWl1C1ILiCoAU5wZZ4q1P3qeS6Eg==} + engines: {node: '>=18'} + cpu: [ia32] + os: [win32] + '@esbuild/win32-x64@0.27.7': resolution: {integrity: sha512-56hiAJPhwQ1R4i+21FVF7V8kSD5zZTdHcVuRFMW0hn753vVfQN8xlx4uOPT4xoGH0Z/oVATuR82AiqSTDIpaHg==} engines: {node: '>=18'} cpu: [x64] os: [win32] + '@esbuild/win32-x64@0.28.1': + resolution: {integrity: sha512-bm4Mowrv+GXMlpWX++EcXw/iLyd1o3+bJkC2DkWXYVvgZCqD/bSj9ctZeAMC3cIxgjRVR2Dufaiu4YPxr5gW1A==} + engines: {node: '>=18'} + cpu: [x64] + os: [win32] + '@eslint-community/eslint-utils@4.4.0': resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} @@ -1168,11 +1324,11 @@ packages: '@redocly/ajv@8.11.2': resolution: {integrity: sha512-io1JpnwtIcvojV7QKDUSIuMN/ikdOUd1ReEnUnMKGfDVridQZ31J0MmIuqwuRjWDZfmvr+Q0MqCcfHM2gTivOg==} - '@redocly/config@0.22.2': - resolution: {integrity: sha512-roRDai8/zr2S9YfmzUfNhKjOF0NdcOIqF7bhf4MVC5UxpjIysDjyudvlAiVbpPHp3eDRWbdzUgtkK1a7YiDNyQ==} + '@redocly/config@0.22.0': + resolution: {integrity: sha512-gAy93Ddo01Z3bHuVdPWfCwzgfaYgMdaZPcfL7JZ7hWJoK9V0lXDbigTWkhiPFAaLWzbOJ+kbUQG1+XwIm0KRGQ==} - '@redocly/openapi-core@1.34.5': - resolution: {integrity: sha512-0EbE8LRbkogtcCXU7liAyC00n9uNG9hJ+eMyHFdUsy9lB/WGqnEBgwjA9q2cyzAVcdTkQqTBBU1XePNnN3OijA==} + '@redocly/openapi-core@1.34.15': + resolution: {integrity: sha512-HAwCnNyKcs5XGQqms+9t7OdAPM/5TDstmhF+0i7tdCFato2QKuYIlyWETwkXd8c5zbltr1oB+6y9NTeQLr2d6Q==} engines: {node: '>=18.17.0', npm: '>=9.5.0'} '@rolldown/binding-android-arm64@1.0.3': @@ -1963,8 +2119,8 @@ packages: asynckit@0.4.0: resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==} - autoprefixer@10.4.16: - resolution: {integrity: sha512-7vd3UC6xKp0HLfua5IjZlcXvGAGy7cBAXTg2lyQ/8WpNhd6SiZ8Be+xm3FyBSYJx5GKcpRCzBh7RH4/0dnY+uQ==} + autoprefixer@10.5.0: + resolution: {integrity: sha512-FMhOoZV4+qR6aTUALKX2rEqGG+oyATvwBt9IIzVR5rMa2HRWPkxf+P+PAJLD1I/H5/II+HuZcBJYEFBpq39ong==} engines: {node: ^10 || ^12 || >=14} hasBin: true peerDependencies: @@ -1991,6 +2147,11 @@ packages: resolution: {integrity: sha512-lGe34o6EHj9y3Kts9R4ZYs/Gr+6N7MCaMlIFA3F1R2O5/m7K06AxfSeO5530PEERE6/WyEg3lsuyw4GHlPZHog==} engines: {node: ^4.5.0 || >= 5.9} + baseline-browser-mapping@2.10.36: + resolution: {integrity: sha512-lVq/Df7LXlO79MVaaUHztSwWiG9oXoWHlgvNS51v8Dpd4+G4/VIy6qYePTw31nAVls33nUtnfezYeLkYAak9dg==} + engines: {node: '>=6.0.0'} + hasBin: true + bent@7.3.12: resolution: {integrity: sha512-T3yrKnVGB63zRuoco/7Ybl7BwwGZR0lceoVG5XmQyMIH9s19SV5m+a8qam4if0zQuAmOQTyPTPmsQBdAorGK3w==} @@ -2030,6 +2191,9 @@ packages: brace-expansion@2.0.2: resolution: {integrity: sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==} + brace-expansion@2.1.1: + resolution: {integrity: sha512-WR1cURNjuvBLMZBMbqM0UoE+WAfdUcEV1ccD8PVBVOI+Z3ND4+SZbN8RsfT2bMuG1qwz5RFvPukSZm5fF2D5eA==} + brace-expansion@5.0.2: resolution: {integrity: sha512-Pdk8c9poy+YhOgVWw1JNN22/HcivgKWwpxKq04M/jTmHyCZn12WPJebZxdjSa5TmBqISrUSgNYU3eRORljfCCw==} engines: {node: 20 || >=22} @@ -2051,6 +2215,11 @@ packages: engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} hasBin: true + browserslist@4.28.2: + resolution: {integrity: sha512-48xSriZYYg+8qXna9kwqjIVzuQxi+KYWp2+5nCYnYKPTr0LvD89Jqk2Or5ogxz0NUMfIjhh2lIUX/LyX9B4oIg==} + engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} + hasBin: true + buffer-from@1.1.2: resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==} @@ -2099,6 +2268,9 @@ packages: caniuse-lite@1.0.30001757: resolution: {integrity: sha512-r0nnL/I28Zi/yjk1el6ilj27tKcdjLsNqAOZr0yVjWPrSQyHgKI2INaEWw21bAQSv2LXRt1XuCS/GomNpWOxsQ==} + caniuse-lite@1.0.30001799: + resolution: {integrity: sha512-hG1bReV+OUU+MOqK4t/ZWI0tZOyz3rqS9XuhOUz1cIcbwBKjOyJEJuw9ER5JuNyqxNk8u/JUVbGibBOL1yrjFw==} + caseless@0.12.0: resolution: {integrity: sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==} @@ -2125,6 +2297,10 @@ packages: resolution: {integrity: sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==} engines: {node: '>= 14.16.0'} + chokidar@5.0.0: + resolution: {integrity: sha512-TQMmc3w+5AxjpL8iIiwebF73dRDF4fBIieAqGn9RGCWaEVwQ6Fb2cGe31Yns0RRIzii5goJ1Y7xbMwo1TxMplw==} + engines: {node: '>= 20.19.0'} + circular-json@0.5.9: resolution: {integrity: sha512-4ivwqHpIFJZBuhN3g/pEcdbnGUywkBblloGbkglyloVjjR3uT6tieI89MVOfbP2tHX5sgb01FuLgAOzebNlJNQ==} deprecated: CircularJSON is in maintenance only, flatted is its successor. @@ -2567,6 +2743,9 @@ packages: electron-to-chromium@1.4.554: resolution: {integrity: sha512-Q0umzPJjfBrrj8unkONTgbKQXzXRrH7sVV7D9ea2yBV3Oaogz991yhbpfvo2LMNkJItmruXTEzVpP9cp7vaIiQ==} + electron-to-chromium@1.5.372: + resolution: {integrity: sha512-M3yhbAlilnwqC8D21t28UCDGHyitShTmmLRU/H+b74P6Ski16Nb9HONYEaVpMj/pwC7BEo5B95FpjODLCWbtfA==} + elkjs@0.11.1: resolution: {integrity: sha512-zxxR9k+rx5ktMwT/FwyLdPCrq7xN6e4VGGHH8hA01vVYKjTFik7nHOxBnAYtrgYUB1RpAiLvA1/U2YraWxyKKg==} @@ -2642,6 +2821,11 @@ packages: engines: {node: '>=18'} hasBin: true + esbuild@0.28.1: + resolution: {integrity: sha512-HrJrvZv5ayxBzPfwphOoNzkzOIIlifzk0KJrGK2c8R4+LKpMtpYLQeUdjnwjWv/LZlkH2laZk+4w78pi99D4Vw==} + engines: {node: '>=18'} + hasBin: true + escalade@3.1.1: resolution: {integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==} engines: {node: '>=6'} @@ -2898,11 +3082,11 @@ packages: resolution: {integrity: sha512-8RipRLol37bNs2bhoV67fiTEvdTrbMUYcFTiy3+wuuOnUog2QBHCZWXDRijWQfAkhBj2Uf5UnVaiWwA5vdd82w==} engines: {node: '>= 6'} - fraction.js@4.3.7: - resolution: {integrity: sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==} + fraction.js@5.3.4: + resolution: {integrity: sha512-1X1NTtiJphryn/uLQz3whtY6jK3fTqoE3ohKs0tT+Ujr1W59oopxmoEh7Lu5p6vBaPbgoM0bzveAW4Qi5RyWDQ==} - fs-extra@11.2.0: - resolution: {integrity: sha512-PmDi3uwK5nFuXh7XDTlVnS17xJS7vW36is2+w3xcv8SVxiB4NyATf4ctkVY5bkSjX0Y4nbvZCq1/EjtEyr9ktw==} + fs-extra@11.3.5: + resolution: {integrity: sha512-eKpRKAovdpZtR1WopLHxlBWvAgPny3c4gX1G5Jhwmmw4XJj0ifSD5qB5TOo8hmA0wlRKDAOAhEE1yVPgs6Fgcg==} engines: {node: '>=14.14'} fs-extra@8.1.0: @@ -3103,8 +3287,8 @@ packages: immediate@3.0.6: resolution: {integrity: sha512-XXOFtyqDjNDAQxVfYxuF7g9Il/IbWmmlQg2MYKOH8ExIT1qg6xc4zyS3HaEEATgs1btfzxq15ciUiY7gjSXRGQ==} - immutable@5.1.4: - resolution: {integrity: sha512-p6u1bG3YSnINT5RQmx/yRZBpenIl30kVxkTLDyHLIMk0gict704Q9n+thfDI7lTRm9vXdDYutVzXhzcThxTnXA==} + immutable@5.1.6: + resolution: {integrity: sha512-q1swsS8K7L8usSHuOqF2TAoCCkonYz0SG38wLAggaa4Wml70zixIvt2ql4coQ2C2B3hTjltJry4r6bULwgAXLQ==} import-fresh@3.3.0: resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==} @@ -3327,6 +3511,10 @@ packages: resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==} hasBin: true + js-yaml@4.1.1: + resolution: {integrity: sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA==} + hasBin: true + jsdom@28.1.0: resolution: {integrity: sha512-0+MoQNYyr2rBHqO1xilltfDjV9G7ymYGlAUazgcDLQaUf8JDHbuGwsxN6U9qWaElZ4w1B2r7yEGIL3GdeW3Rug==} engines: {node: ^20.19.0 || ^22.12.0 || >=24.0.0} @@ -3629,8 +3817,8 @@ packages: minimatch@3.1.5: resolution: {integrity: sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w==} - minimatch@5.1.6: - resolution: {integrity: sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==} + minimatch@5.1.9: + resolution: {integrity: sha512-7o1wEA2RyMP7Iu7GNba9vc0RWWGACJOCZBJX2GJWip0ikV+wcOsgVuY9uE8CPiyQhkGFSlhuSkZPavN7u1c2Fw==} engines: {node: '>=10'} minimatch@9.0.5: @@ -3763,6 +3951,10 @@ packages: node-releases@2.0.13: resolution: {integrity: sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==} + node-releases@2.0.47: + resolution: {integrity: sha512-Uzmd6LXpouKo8EUK68IjH4+E01w/hXyV3R3g/geCJo+rXLNfh1xucB+LOzYEOQPSiUK3h/xZf0cQGcSsmyL2Og==} + engines: {node: '>=18'} + nopt@6.0.0: resolution: {integrity: sha512-ZwLpbTgdhuZUnZzjd7nb1ZV+4DoiC6/sfiVKok72ym/4Tlf+DFdlHYmT2JPmcNNWV6Pi3SDf1kT+A4r9RTuT9g==} engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} @@ -3772,10 +3964,6 @@ packages: resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} engines: {node: '>=0.10.0'} - normalize-range@0.1.2: - resolution: {integrity: sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==} - engines: {node: '>=0.10.0'} - nth-check@2.1.1: resolution: {integrity: sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==} @@ -3848,8 +4036,8 @@ packages: openapi-typescript-helpers@0.1.0: resolution: {integrity: sha512-OKTGPthhivLw/fHz6c3OPtg72vi86qaMlqbJuVJ23qOvQ+53uw1n7HdmkJFibloF7QEjDrDkzJiOJuockM/ljw==} - openapi-typescript@7.10.1: - resolution: {integrity: sha512-rBcU8bjKGGZQT4K2ekSTY2Q5veOQbVG/lTKZ49DeCyT9z62hM2Vj/LLHjDHC9W7LJG8YMHcdXpRZDqC1ojB/lw==} + openapi-typescript@7.13.0: + resolution: {integrity: sha512-EFP392gcqXS7ntPvbhBzbF8TyBA+baIYEm791Hy5YkjDYKTnk/Tn5OQeKm5BIZvJihpp8Zzr4hzx0Irde1LNGQ==} hasBin: true peerDependencies: typescript: ^5.x @@ -4133,6 +4321,10 @@ packages: resolution: {integrity: sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==} engines: {node: '>= 14.18.0'} + readdirp@5.0.0: + resolution: {integrity: sha512-9u/XQ1pvrQtYyMpZe7DXKv2p5CNvyVwzUB6uhLAnQwHMSgKMBR62lc7AHljaeteeHXn11XTAaLLUVZYVZyuRBQ==} + engines: {node: '>= 20.19.0'} + redent@3.0.0: resolution: {integrity: sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==} engines: {node: '>=8'} @@ -4266,9 +4458,9 @@ packages: safer-buffer@2.1.2: resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==} - sass@1.94.2: - resolution: {integrity: sha512-N+7WK20/wOr7CzA2snJcUSSNTCzeCGUTFY3OgeQP3mZ1aj9NMQ0mSTXwlrnd89j33zzQJGqIN52GIOmYrfq46A==} - engines: {node: '>=14.0.0'} + sass@1.101.0: + resolution: {integrity: sha512-OL3GoQyoUdDt843DpVmDO6y2k1sc5IhUDSpu8XucEI+35neq5QivZ1iuegnpraEVTJXlQGK1gl27zKcTLEPbQw==} + engines: {node: '>=20.19.0'} hasBin: true sax@1.4.1: @@ -4735,6 +4927,12 @@ packages: peerDependencies: browserslist: '>= 4.21.0' + update-browserslist-db@1.2.3: + resolution: {integrity: sha512-Js0m9cx+qOgDxo0eMiFGEueWztz+d4+M3rGlmKPT+T4IS/jP4ylw3Nwpu6cpTTP8R1MAC1kF4VbdLt3ARf209w==} + hasBin: true + peerDependencies: + browserslist: '>= 4.21.0' + uri-js-replace@1.0.1: resolution: {integrity: sha512-W+C9NWNLFOoBI2QWDp4UT9pv65r2w5Cx+3sTYFvtMdDBxkKt1syCqsUdSFAChbEe1uK5TfS04wt/nGwmaeIQ0g==} @@ -5426,81 +5624,159 @@ snapshots: '@esbuild/aix-ppc64@0.27.7': optional: true + '@esbuild/aix-ppc64@0.28.1': + optional: true + '@esbuild/android-arm64@0.27.7': optional: true + '@esbuild/android-arm64@0.28.1': + optional: true + '@esbuild/android-arm@0.27.7': optional: true + '@esbuild/android-arm@0.28.1': + optional: true + '@esbuild/android-x64@0.27.7': optional: true + '@esbuild/android-x64@0.28.1': + optional: true + '@esbuild/darwin-arm64@0.27.7': optional: true + '@esbuild/darwin-arm64@0.28.1': + optional: true + '@esbuild/darwin-x64@0.27.7': optional: true + '@esbuild/darwin-x64@0.28.1': + optional: true + '@esbuild/freebsd-arm64@0.27.7': optional: true + '@esbuild/freebsd-arm64@0.28.1': + optional: true + '@esbuild/freebsd-x64@0.27.7': optional: true + '@esbuild/freebsd-x64@0.28.1': + optional: true + '@esbuild/linux-arm64@0.27.7': optional: true + '@esbuild/linux-arm64@0.28.1': + optional: true + '@esbuild/linux-arm@0.27.7': optional: true + '@esbuild/linux-arm@0.28.1': + optional: true + '@esbuild/linux-ia32@0.27.7': optional: true + '@esbuild/linux-ia32@0.28.1': + optional: true + '@esbuild/linux-loong64@0.27.7': optional: true + '@esbuild/linux-loong64@0.28.1': + optional: true + '@esbuild/linux-mips64el@0.27.7': optional: true + '@esbuild/linux-mips64el@0.28.1': + optional: true + '@esbuild/linux-ppc64@0.27.7': optional: true + '@esbuild/linux-ppc64@0.28.1': + optional: true + '@esbuild/linux-riscv64@0.27.7': optional: true + '@esbuild/linux-riscv64@0.28.1': + optional: true + '@esbuild/linux-s390x@0.27.7': optional: true + '@esbuild/linux-s390x@0.28.1': + optional: true + '@esbuild/linux-x64@0.27.7': optional: true + '@esbuild/linux-x64@0.28.1': + optional: true + '@esbuild/netbsd-arm64@0.27.7': optional: true + '@esbuild/netbsd-arm64@0.28.1': + optional: true + '@esbuild/netbsd-x64@0.27.7': optional: true + '@esbuild/netbsd-x64@0.28.1': + optional: true + '@esbuild/openbsd-arm64@0.27.7': optional: true + '@esbuild/openbsd-arm64@0.28.1': + optional: true + '@esbuild/openbsd-x64@0.27.7': optional: true + '@esbuild/openbsd-x64@0.28.1': + optional: true + '@esbuild/openharmony-arm64@0.27.7': optional: true + '@esbuild/openharmony-arm64@0.28.1': + optional: true + '@esbuild/sunos-x64@0.27.7': optional: true + '@esbuild/sunos-x64@0.28.1': + optional: true + '@esbuild/win32-arm64@0.27.7': optional: true + '@esbuild/win32-arm64@0.28.1': + optional: true + '@esbuild/win32-ia32@0.27.7': optional: true + '@esbuild/win32-ia32@0.28.1': + optional: true + '@esbuild/win32-x64@0.27.7': optional: true + '@esbuild/win32-x64@0.28.1': + optional: true + '@eslint-community/eslint-utils@4.4.0(eslint@8.52.0)': dependencies: eslint: 8.52.0 @@ -5655,12 +5931,12 @@ snapshots: '@mdn/browser-compat-data@5.3.23': {} - '@modyfi/vite-plugin-yaml@1.1.1(rollup@4.60.1)(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1))': + '@modyfi/vite-plugin-yaml@1.1.1(rollup@4.60.1)(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.6.1))': dependencies: '@rollup/pluginutils': 5.1.0(rollup@4.60.1) js-yaml: 4.1.0 tosource: 2.0.0-alpha.3 - vite: 8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1) + vite: 8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.6.1) transitivePeerDependencies: - rollup @@ -5797,17 +6073,17 @@ snapshots: require-from-string: 2.0.2 uri-js-replace: 1.0.1 - '@redocly/config@0.22.2': {} + '@redocly/config@0.22.0': {} - '@redocly/openapi-core@1.34.5(supports-color@10.2.2)': + '@redocly/openapi-core@1.34.15(supports-color@10.2.2)': dependencies: '@redocly/ajv': 8.11.2 - '@redocly/config': 0.22.2 + '@redocly/config': 0.22.0 colorette: 1.4.0 https-proxy-agent: 7.0.6(supports-color@10.2.2) js-levenshtein: 1.1.6 - js-yaml: 4.1.0 - minimatch: 5.1.6 + js-yaml: 4.1.1 + minimatch: 5.1.9 pluralize: 8.0.0 yaml-ast-parser: 0.0.43 transitivePeerDependencies: @@ -6301,9 +6577,9 @@ snapshots: '@ungap/structured-clone@1.2.0': {} - '@vitejs/plugin-vue2@2.3.4(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1))(vue@2.7.16)': + '@vitejs/plugin-vue2@2.3.4(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.6.1))(vue@2.7.16)': dependencies: - vite: 8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1) + vite: 8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.6.1) vue: 2.7.16 '@vitest/coverage-v8@4.1.8(vitest@4.1.8)': @@ -6318,7 +6594,7 @@ snapshots: obug: 2.1.1 std-env: 4.1.0 tinyrainbow: 3.1.0 - vitest: 4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.10.2)(jsdom@28.1.0)(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)) + vitest: 4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.10.2)(jsdom@28.1.0)(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.6.1)) '@vitest/expect@4.1.8': dependencies: @@ -6329,14 +6605,23 @@ snapshots: chai: 6.2.2 tinyrainbow: 3.1.0 - '@vitest/mocker@4.1.8(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1))': + '@vitest/mocker@4.1.8(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.101.0)(yaml@2.6.1))': dependencies: '@vitest/spy': 4.1.8 estree-walker: 3.0.3 magic-string: 0.30.21 optionalDependencies: msw: 2.14.6(@types/node@25.9.3)(typescript@5.8.3) - vite: 8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1) + vite: 8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.101.0)(yaml@2.6.1) + + '@vitest/mocker@4.1.8(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.6.1))': + dependencies: + '@vitest/spy': 4.1.8 + estree-walker: 3.0.3 + magic-string: 0.30.21 + optionalDependencies: + msw: 2.14.6(@types/node@25.9.3)(typescript@5.8.3) + vite: 8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.6.1) '@vitest/pretty-format@4.1.8': dependencies: @@ -6365,7 +6650,7 @@ snapshots: sirv: 3.0.2 tinyglobby: 0.2.16 tinyrainbow: 3.1.0 - vitest: 4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.10.2)(jsdom@28.1.0)(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)) + vitest: 4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.10.2)(jsdom@28.1.0)(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.6.1)) '@vitest/utils@4.1.8': dependencies: @@ -6625,12 +6910,11 @@ snapshots: asynckit@0.4.0: {} - autoprefixer@10.4.16(postcss@8.5.15): + autoprefixer@10.5.0(postcss@8.5.15): dependencies: - browserslist: 4.22.1 - caniuse-lite: 1.0.30001757 - fraction.js: 4.3.7 - normalize-range: 0.1.2 + browserslist: 4.28.2 + caniuse-lite: 1.0.30001799 + fraction.js: 5.3.4 picocolors: 1.1.1 postcss: 8.5.15 postcss-value-parser: 4.2.0 @@ -6657,6 +6941,8 @@ snapshots: base64id@2.0.0: {} + baseline-browser-mapping@2.10.36: {} + bent@7.3.12: dependencies: bytesish: 0.4.4 @@ -6721,6 +7007,10 @@ snapshots: dependencies: balanced-match: 1.0.2 + brace-expansion@2.1.1: + dependencies: + balanced-match: 1.0.2 + brace-expansion@5.0.2: dependencies: balanced-match: 4.0.2 @@ -6744,6 +7034,14 @@ snapshots: node-releases: 2.0.13 update-browserslist-db: 1.0.13(browserslist@4.22.1) + browserslist@4.28.2: + dependencies: + baseline-browser-mapping: 2.10.36 + caniuse-lite: 1.0.30001799 + electron-to-chromium: 1.5.372 + node-releases: 2.0.47 + update-browserslist-db: 1.2.3(browserslist@4.28.2) + buffer-from@1.1.2: {} buffer-image-size@0.6.4: @@ -6790,6 +7088,8 @@ snapshots: caniuse-lite@1.0.30001757: {} + caniuse-lite@1.0.30001799: {} + caseless@0.12.0: {} chai@6.2.2: {} @@ -6819,6 +7119,10 @@ snapshots: dependencies: readdirp: 4.1.2 + chokidar@5.0.0: + dependencies: + readdirp: 5.0.0 + circular-json@0.5.9: {} citeproc@2.4.62: {} @@ -7266,6 +7570,8 @@ snapshots: electron-to-chromium@1.4.554: {} + electron-to-chromium@1.5.372: {} + elkjs@0.11.1: {} emoji-regex@10.1.0: {} @@ -7408,6 +7714,35 @@ snapshots: '@esbuild/win32-ia32': 0.27.7 '@esbuild/win32-x64': 0.27.7 + esbuild@0.28.1: + optionalDependencies: + '@esbuild/aix-ppc64': 0.28.1 + '@esbuild/android-arm': 0.28.1 + '@esbuild/android-arm64': 0.28.1 + '@esbuild/android-x64': 0.28.1 + '@esbuild/darwin-arm64': 0.28.1 + '@esbuild/darwin-x64': 0.28.1 + '@esbuild/freebsd-arm64': 0.28.1 + '@esbuild/freebsd-x64': 0.28.1 + '@esbuild/linux-arm': 0.28.1 + '@esbuild/linux-arm64': 0.28.1 + '@esbuild/linux-ia32': 0.28.1 + '@esbuild/linux-loong64': 0.28.1 + '@esbuild/linux-mips64el': 0.28.1 + '@esbuild/linux-ppc64': 0.28.1 + '@esbuild/linux-riscv64': 0.28.1 + '@esbuild/linux-s390x': 0.28.1 + '@esbuild/linux-x64': 0.28.1 + '@esbuild/netbsd-arm64': 0.28.1 + '@esbuild/netbsd-x64': 0.28.1 + '@esbuild/openbsd-arm64': 0.28.1 + '@esbuild/openbsd-x64': 0.28.1 + '@esbuild/openharmony-arm64': 0.28.1 + '@esbuild/sunos-x64': 0.28.1 + '@esbuild/win32-arm64': 0.28.1 + '@esbuild/win32-ia32': 0.28.1 + '@esbuild/win32-x64': 0.28.1 + escalade@3.1.1: {} escalade@3.2.0: {} @@ -7714,9 +8049,9 @@ snapshots: hasown: 2.0.4 mime-types: 2.1.35 - fraction.js@4.3.7: {} + fraction.js@5.3.4: {} - fs-extra@11.2.0: + fs-extra@11.3.5: dependencies: graceful-fs: 4.2.11 jsonfile: 6.1.0 @@ -7806,7 +8141,7 @@ snapshots: fs.realpath: 1.0.0 inflight: 1.0.6 inherits: 2.0.4 - minimatch: 5.1.6 + minimatch: 5.1.9 once: 1.4.0 globals@11.12.0: {} @@ -7961,7 +8296,7 @@ snapshots: immediate@3.0.6: {} - immutable@5.1.4: {} + immutable@5.1.6: {} import-fresh@3.3.0: dependencies: @@ -8156,6 +8491,10 @@ snapshots: dependencies: argparse: 2.0.1 + js-yaml@4.1.1: + dependencies: + argparse: 2.0.1 + jsdom@28.1.0: dependencies: '@acemir/cssom': 0.9.31 @@ -8467,9 +8806,9 @@ snapshots: dependencies: brace-expansion: 1.1.15 - minimatch@5.1.6: + minimatch@5.1.9: dependencies: - brace-expansion: 2.0.2 + brace-expansion: 2.1.1 minimatch@9.0.5: dependencies: @@ -8600,14 +8939,14 @@ snapshots: node-releases@2.0.13: {} + node-releases@2.0.47: {} + nopt@6.0.0: dependencies: abbrev: 1.1.1 normalize-path@3.0.0: {} - normalize-range@0.1.2: {} - nth-check@2.1.1: dependencies: boolbase: 1.0.0 @@ -8684,9 +9023,9 @@ snapshots: openapi-typescript-helpers@0.1.0: {} - openapi-typescript@7.10.1(typescript@5.8.3): + openapi-typescript@7.13.0(typescript@5.8.3): dependencies: - '@redocly/openapi-core': 1.34.5(supports-color@10.2.2) + '@redocly/openapi-core': 1.34.15(supports-color@10.2.2) ansi-colors: 4.1.3 change-case: 5.4.4 parse-json: 8.3.0 @@ -8930,6 +9269,8 @@ snapshots: readdirp@4.1.2: {} + readdirp@5.0.0: {} + redent@3.0.0: dependencies: indent-string: 4.0.0 @@ -9129,10 +9470,10 @@ snapshots: safer-buffer@2.1.2: {} - sass@1.94.2: + sass@1.101.0: dependencies: - chokidar: 4.0.3 - immutable: 5.1.4 + chokidar: 5.0.0 + immutable: 5.1.6 source-map-js: 1.2.1 optionalDependencies: '@parcel/watcher': 2.5.1 @@ -9145,7 +9486,7 @@ snapshots: schema-to-ts@0.0.2: dependencies: - openapi-typescript: 7.10.1(typescript@5.8.3) + openapi-typescript: 7.13.0(typescript@5.8.3) path-browserify: 1.0.1 stream-browserify: 3.0.0 typescript: 5.8.3 @@ -9612,6 +9953,12 @@ snapshots: escalade: 3.1.1 picocolors: 1.1.1 + update-browserslist-db@1.2.3(browserslist@4.28.2): + dependencies: + browserslist: 4.28.2 + escalade: 3.2.0 + picocolors: 1.1.1 + uri-js-replace@1.0.1: {} uri-js@4.4.1: @@ -9940,7 +10287,7 @@ snapshots: transitivePeerDependencies: - encoding - vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1): + vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.101.0)(yaml@2.6.1): dependencies: lightningcss: 1.32.0 picomatch: 4.0.4 @@ -9951,24 +10298,38 @@ snapshots: '@types/node': 25.9.3 esbuild: 0.27.7 fsevents: 2.3.3 - sass: 1.94.2 + sass: 1.101.0 yaml: 2.6.1 - vitest-fail-on-console@0.10.1(@vitest/utils@4.1.8)(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1))(vitest@4.1.8): + vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.6.1): + dependencies: + lightningcss: 1.32.0 + picomatch: 4.0.4 + postcss: 8.5.15 + rolldown: 1.0.3 + tinyglobby: 0.2.17 + optionalDependencies: + '@types/node': 25.9.3 + esbuild: 0.28.1 + fsevents: 2.3.3 + sass: 1.101.0 + yaml: 2.6.1 + + vitest-fail-on-console@0.10.1(@vitest/utils@4.1.8)(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.6.1))(vitest@4.1.8): dependencies: '@vitest/utils': 4.1.8 chalk: 5.6.2 - vite: 8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1) - vitest: 4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.10.2)(jsdom@28.1.0)(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)) + vite: 8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.6.1) + vitest: 4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.10.2)(jsdom@28.1.0)(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.6.1)) vitest-location-mock@1.0.4: dependencies: '@jedmao/location': 3.0.0 - vitest@4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.10.2)(jsdom@28.1.0)(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)): + vitest@4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.10.2)(jsdom@28.1.0)(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.101.0)(yaml@2.6.1)): dependencies: '@vitest/expect': 4.1.8 - '@vitest/mocker': 4.1.8(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1)) + '@vitest/mocker': 4.1.8(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.101.0)(yaml@2.6.1)) '@vitest/pretty-format': 4.1.8 '@vitest/runner': 4.1.8 '@vitest/snapshot': 4.1.8 @@ -9985,7 +10346,38 @@ snapshots: tinyexec: 1.1.2 tinyglobby: 0.2.16 tinyrainbow: 3.1.0 - vite: 8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.94.2)(yaml@2.6.1) + vite: 8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.101.0)(yaml@2.6.1) + why-is-node-running: 2.3.0 + optionalDependencies: + '@types/node': 25.9.3 + '@vitest/coverage-v8': 4.1.8(vitest@4.1.8) + '@vitest/ui': 4.1.8(vitest@4.1.8) + happy-dom: 20.10.2 + jsdom: 28.1.0 + transitivePeerDependencies: + - msw + + vitest@4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.10.2)(jsdom@28.1.0)(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.6.1)): + dependencies: + '@vitest/expect': 4.1.8 + '@vitest/mocker': 4.1.8(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.6.1)) + '@vitest/pretty-format': 4.1.8 + '@vitest/runner': 4.1.8 + '@vitest/snapshot': 4.1.8 + '@vitest/spy': 4.1.8 + '@vitest/utils': 4.1.8 + es-module-lexer: 2.1.0 + expect-type: 1.3.0 + magic-string: 0.30.21 + obug: 2.1.1 + pathe: 2.0.3 + picomatch: 4.0.4 + std-env: 4.1.0 + tinybench: 2.9.0 + tinyexec: 1.1.2 + tinyglobby: 0.2.16 + tinyrainbow: 3.1.0 + vite: 8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.6.1) why-is-node-running: 2.3.0 optionalDependencies: '@types/node': 25.9.3 From e467346952596a68e6fa6b3a381afa85e305f231 Mon Sep 17 00:00:00 2001 From: Dannon Baker Date: Fri, 12 Jun 2026 09:10:17 -0400 Subject: [PATCH 19/31] Bump the eslint stack in-range: eslint 8.52.0 -> 8.57.1 (last of the 8.x line; silences vue-eslint-parser's peer floor), eslint-plugin-import 2.28.1 -> 2.32.0 (recommended config unchanged, new rules all opt-in), eslint-plugin-vuejs-accessibility 2.2.0 -> 2.5.0 (same recommended rule set; its new globals peer auto-resolves to 13.20.0), and vue-eslint-parser 10.2.0 -> 10.4.1. Full eslint run over src comes back with zero errors, same warning set as before. --- client/pnpm-lock.yaml | 1217 ++++++++++++++++++++++++++--------------- 1 file changed, 765 insertions(+), 452 deletions(-) diff --git a/client/pnpm-lock.yaml b/client/pnpm-lock.yaml index 430618f3a7f..c4dcd4906b1 100644 --- a/client/pnpm-lock.yaml +++ b/client/pnpm-lock.yaml @@ -372,10 +372,10 @@ importers: version: 13.0.4 '@typescript-eslint/eslint-plugin': specifier: ^6.8.0 - version: 6.8.0(@typescript-eslint/parser@6.8.0(eslint@8.52.0)(typescript@5.8.3))(eslint@8.52.0)(typescript@5.8.3) + version: 6.8.0(@typescript-eslint/parser@6.8.0(eslint@8.57.1)(typescript@5.8.3))(eslint@8.57.1)(typescript@5.8.3) '@typescript-eslint/parser': specifier: ^6.8.0 - version: 6.8.0(eslint@8.52.0)(typescript@5.8.3) + version: 6.8.0(eslint@8.57.1)(typescript@5.8.3) '@vitejs/plugin-vue2': specifier: ^2.3.4 version: 2.3.4(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.6.1))(vue@2.7.16) @@ -408,22 +408,22 @@ importers: version: 0.28.1 eslint: specifier: ^8.52.0 - version: 8.52.0 + version: 8.57.1 eslint-plugin-compat: specifier: ^4.2.0 - version: 4.2.0(eslint@8.52.0) + version: 4.2.0(eslint@8.57.1) eslint-plugin-import: specifier: ^2.28.1 - version: 2.28.1(@typescript-eslint/parser@6.8.0(eslint@8.52.0)(typescript@5.8.3))(eslint@8.52.0) + version: 2.32.0(@typescript-eslint/parser@6.8.0(eslint@8.57.1)(typescript@5.8.3))(eslint@8.57.1) eslint-plugin-simple-import-sort: specifier: ^10.0.0 - version: 10.0.0(eslint@8.52.0) + version: 10.0.0(eslint@8.57.1) eslint-plugin-vue: specifier: ^9.17.0 - version: 9.17.0(eslint@8.52.0) + version: 9.17.0(eslint@8.57.1) eslint-plugin-vuejs-accessibility: specifier: ^2.2.0 - version: 2.2.0(eslint@8.52.0) + version: 2.5.0(eslint@8.57.1)(globals@13.20.0) fake-indexeddb: specifier: ^6.0.0 version: 6.2.5 @@ -471,7 +471,7 @@ importers: version: 1.0.4 vue-eslint-parser: specifier: ^10.2.0 - version: 10.2.0(eslint@8.52.0) + version: 10.4.1(eslint@8.57.1) vue-template-compiler: specifier: ^2.7.16 version: 2.7.16 @@ -1009,12 +1009,12 @@ packages: resolution: {integrity: sha512-Y27x+MBLjXa+0JWDhykM3+JE+il3kHKAEqabfEWq3SDhZjLYb6/BHL/JKFnH3fe207JaXkyDo685Oc2Glt6ifA==} engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} - '@eslint/eslintrc@2.1.2': - resolution: {integrity: sha512-+wvgpDsrB1YqAMdEUCcnTlpfVBH7Vqn6A/NT3D8WVXFIaKMlErPIZT3oCIAVCOtarRpMtelZLqJeU3t7WY6X6g==} + '@eslint/eslintrc@2.1.4': + resolution: {integrity: sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - '@eslint/js@8.52.0': - resolution: {integrity: sha512-mjZVbpaeMZludF2fsWLD0Z9gCref1Tk4i9+wddjRvpUNqqcndPkBD09N/Mapey0b3jaXbLm2kICwFv2E64QinA==} + '@eslint/js@8.57.1': + resolution: {integrity: sha512-d9zaMRSTIKDLhctzH12MtXvJKSSUhaHcjV+2Z+GK+EEY7XKpP5yR4x+N3TAcHTcu963nIr+TMcCb4DBCYX1z6Q==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} '@exodus/bytes@1.15.0': @@ -1094,8 +1094,8 @@ packages: rxjs: '>=6.0.0' typescript: '>=2.8.1' - '@humanwhocodes/config-array@0.11.13': - resolution: {integrity: sha512-JSBDMiDKSzQVngfRjOdFXgFfklaXI4K9nLF49Auh21lmBWRLIK3+xTErTWD4KU54pb6coM6ESE7Awz/FNU3zgQ==} + '@humanwhocodes/config-array@0.13.0': + resolution: {integrity: sha512-DZLEEqFWQFiyK6h5YIeynKx7JlvCYWL0cImfSRXZ9l4Sg2efkFGTuFf6vzXjK1cq6IYkU+Eg/JizXw+TD2vRNw==} engines: {node: '>=10.10.0'} deprecated: Use @eslint/config-array instead @@ -1103,8 +1103,8 @@ packages: resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==} engines: {node: '>=12.22'} - '@humanwhocodes/object-schema@2.0.1': - resolution: {integrity: sha512-dvuCeX5fC9dXgJn9t+X5atfmgQAzUOWqS1254Gh0m6i8wKd10ebXkfNKiRK+1GWi/yTvvLDHpoxLr0xxxeslWw==} + '@humanwhocodes/object-schema@2.0.3': + resolution: {integrity: sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==} deprecated: Use @eslint/object-schema instead '@inquirer/ansi@2.0.7': @@ -1575,6 +1575,9 @@ packages: cpu: [x64] os: [win32] + '@rtsao/scc@1.1.0': + resolution: {integrity: sha512-zt6OdqaDoOnJ1ZYsCYGt9YmWzDXl4vQdKTyJev62gFhRGKdx7mcT54V9KIjg+d2wi9EXsPvAPKe7i7WjfVWB8g==} + '@sentry-internal/browser-utils@10.45.0': resolution: {integrity: sha512-ZPZpeIarXKScvquGx2AfNKcYiVNDA4wegMmjyGVsTA2JPmP0TrJoO3UybJS6KGDeee8V3I3EfD/ruauMm7jOFQ==} engines: {node: '>=18'} @@ -2072,31 +2075,32 @@ packages: aria-query@5.3.0: resolution: {integrity: sha512-b0P0sZPKtyu8HkeRAfCq0IfURZK+SuwMjY1UXGBU27wpAiTwQAIlq56IbIO+ytk/JjS1fMR14ee5WBBfKi5J6A==} - array-buffer-byte-length@1.0.0: - resolution: {integrity: sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A==} + array-buffer-byte-length@1.0.2: + resolution: {integrity: sha512-LHE+8BuR7RYGDKvnrmcuSq3tDcKv9OFEXQt/HpbZhY7V6h0zlUXutnAD82GiFx9rdieCMjkvtcsPqBwgUl1Iiw==} + engines: {node: '>= 0.4'} - array-includes@3.1.6: - resolution: {integrity: sha512-sgTbLvL6cNnw24FnbaDyjmvddQ2ML8arZsgaJhoABMoplz/4QRhtrYS+alr1BUM1Bwp6dhx8vVCBSLG+StwOFw==} + array-includes@3.1.9: + resolution: {integrity: sha512-FmeCCAenzH0KH381SPT5FZmiA/TmpndpcaShhfgEN9eCVjnFBqq3l1xrI42y8+PPLI6hypzou4GXw00WHmPBLQ==} engines: {node: '>= 0.4'} array-union@2.1.0: resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==} engines: {node: '>=8'} - array.prototype.findlastindex@1.2.3: - resolution: {integrity: sha512-LzLoiOMAxvy+Gd3BAq3B7VeIgPdo+Q8hthvKtXybMvRV0jrXfJM/t8mw7nNlpEcVlVUnCnM2KSX4XU5HmpodOA==} + array.prototype.findlastindex@1.2.6: + resolution: {integrity: sha512-F/TKATkzseUExPlfvmwQKGITM3DGTK+vkAsCZoDc5daVygbJBnjEUCbgkAvVFsgfXfX4YIqZ/27G3k3tdXrTxQ==} engines: {node: '>= 0.4'} - array.prototype.flat@1.3.1: - resolution: {integrity: sha512-roTU0KWIOmJ4DRLmwKd19Otg0/mT3qPNt0Qb3GWW8iObuZXxrjB/pzn0R3hqpRSWg4HCwqx+0vwOnWnvlOyeIA==} + array.prototype.flat@1.3.3: + resolution: {integrity: sha512-rwG/ja1neyLqCuGZ5YYrznA62D4mZXg0i1cIskIUKSiqF3Cje9/wXAls9B9s1Wa2fomMsIv8czB8jZcPmxCXFg==} engines: {node: '>= 0.4'} - array.prototype.flatmap@1.3.1: - resolution: {integrity: sha512-8UGn9O1FDVvMNB0UlLv4voxRMze7+FpHyF5mSMRjWHUMlpoDViniy05870VlxhfgTnLbpuwTzvD76MTtWxB/mQ==} + array.prototype.flatmap@1.3.3: + resolution: {integrity: sha512-Y7Wt51eKJSyi80hFrJCePGGNo5ktJCslFuboqJsbf57CCPcm5zztluPlc4/aD8sWsKvlwatezpV4U1efk8kpjg==} engines: {node: '>= 0.4'} - arraybuffer.prototype.slice@1.0.2: - resolution: {integrity: sha512-yMBKppFur/fbHu9/6USUe03bZ4knMYiwFBcyiaXB8Go0qNehwX6inYPzK9U0NeQvGxKthcmHcaR8P5MStSRBAw==} + arraybuffer.prototype.slice@1.0.4: + resolution: {integrity: sha512-BNoCY6SXXPQ7gF2opIP4GBE+Xw7U+pHMYKuzjgCN3GwiaIR09UUeKfheyIry77QtrCBlC0KK0q5/TER/tYh3PQ==} engines: {node: '>= 0.4'} arrify@3.0.0: @@ -2116,6 +2120,10 @@ packages: ast-v8-to-istanbul@1.0.0: resolution: {integrity: sha512-1fSfIwuDICFA4LKkCzRPO7F0hzFf0B7+Xqrl27ynQaa+Rh0e1Es0v6kWHPott3lU10AyAr7oKHa65OppjLn3Rg==} + async-function@1.0.0: + resolution: {integrity: sha512-hsU18Ae8CDTR6Kgu9DYf0EbCr/a5iGL0rytQDobUcdpYOKokk8LEjVphnXkDkgpi0wYVsqrXuP0bZxJaTqdgoA==} + engines: {node: '>= 0.4'} + asynckit@0.4.0: resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==} @@ -2130,6 +2138,10 @@ packages: resolution: {integrity: sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==} engines: {node: '>= 0.4'} + available-typed-arrays@1.0.7: + resolution: {integrity: sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==} + engines: {node: '>= 0.4'} + axios@1.17.0: resolution: {integrity: sha512-J8SwNxprqqpbfenehxWYXE7CW+wM1BB4w3+N+g+/Wx40xM4rsLrfPmHHxSWIxJLYDgSY/HqlFPIYb2/S3rxafw==} @@ -2257,6 +2269,10 @@ packages: call-bind@1.0.2: resolution: {integrity: sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==} + call-bind@1.0.9: + resolution: {integrity: sha512-a/hy+pNsFUTR+Iz8TCJvXudKVLAnz/DyeSUo10I5yvFDQJBFU2s9uqQpoSrJlroHUKoKqzg+epxyP9lqFdzfBQ==} + engines: {node: '>= 0.4'} + call-bound@1.0.4: resolution: {integrity: sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==} engines: {node: '>= 0.4'} @@ -2427,10 +2443,6 @@ packages: cross-fetch@4.1.0: resolution: {integrity: sha512-uKm5PU+MHTootlWEY+mZ4vvXoCn4fLQxT9dSc1sXVMSFkINTJVN8cAQROpwcKm8bJ/c7rgZVIBWzH5T78sNZZw==} - cross-spawn@7.0.5: - resolution: {integrity: sha512-ZVJrKKYunU38/76t0RMOulHOnUcbU9GbpWKAOZ0mhjr7CX6FVrH+4FrAapSOekrgFQ3f/8gwMEuIft0aKq6Hug==} - engines: {node: '>= 8'} - cross-spawn@7.0.6: resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==} engines: {node: '>= 8'} @@ -2602,6 +2614,18 @@ packages: resolution: {integrity: sha512-23XHcCF+coGYevirZceTVD7NdJOqVn+49IHyxgszm+JIiHLoB2TkmPtsYkNWT1pvRSGkc35L6NHs0yHkN2SumA==} engines: {node: ^20.19.0 || ^22.12.0 || >=24.0.0} + data-view-buffer@1.0.2: + resolution: {integrity: sha512-EmKO5V3OLXh1rtK2wgXRansaK1/mtVdTUEiEI0W8RkvgT05kfxaH29PliLnpLP73yYO6142Q72QNa8Wx/A5CqQ==} + engines: {node: '>= 0.4'} + + data-view-byte-length@1.0.2: + resolution: {integrity: sha512-tuhGbE6CfTM9+5ANGf+oQb72Ky/0+s3xKUpHvShfiz2RxMFgFPjsXuRLBVMtvMs15awe45SRb83D6wH4ew6wlQ==} + engines: {node: '>= 0.4'} + + data-view-byte-offset@1.0.1: + resolution: {integrity: sha512-BS8PfmtDGnrgYdOonGZQdLZslWIeCGFP9tpan0hi1Co2Zr2NKADsvGYA8XxuG/4UWgJ6Cjtv+YJnB6MM69QGlQ==} + engines: {node: '>= 0.4'} + date-fns@2.30.0: resolution: {integrity: sha512-fnULvOpxnC5/Vg3NCiWelDsLiUc9bRwAPs/+LfTLNvetFCtCTN+yQz15C/fs4AwX1R9K5GLtLfn8QW+dWisaAw==} engines: {node: '>=0.11'} @@ -2648,8 +2672,8 @@ packages: deep-is@0.1.4: resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} - define-data-property@1.1.1: - resolution: {integrity: sha512-E7uGkTzkk1d0ByLeSc6ZsFS79Axg+m1P/VsgYsxHgiuc3tFSj+MjMIwe90FC4lOAZzNBdY7kkO2P2wKdsQ1vgQ==} + define-data-property@1.1.4: + resolution: {integrity: sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==} engines: {node: '>= 0.4'} define-properties@1.2.1: @@ -2749,9 +2773,6 @@ packages: elkjs@0.11.1: resolution: {integrity: sha512-zxxR9k+rx5ktMwT/FwyLdPCrq7xN6e4VGGHH8hA01vVYKjTFik7nHOxBnAYtrgYUB1RpAiLvA1/U2YraWxyKKg==} - emoji-regex@10.1.0: - resolution: {integrity: sha512-xAEnNCT3w2Tg6MA7ly6QqYJvEoY1tm9iIjJ3yMKK9JPlWuRHAMoe5iETwQnx3M9TVbFMfsrBgWKR+IsmswwNjg==} - emoji-regex@8.0.0: resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} @@ -2786,8 +2807,8 @@ packages: error-stack-parser@2.1.4: resolution: {integrity: sha512-Sk5V6wVazPhq5MhpO+AUxJn5x7XSXGl1R93Vn7i+zS15KDVxQijejNCrz8340/2bgLBjR9GtEG8ZVKONDjcqGQ==} - es-abstract@1.22.2: - resolution: {integrity: sha512-YoxfFcDmhjOgWPWsV13+2RNjq1F6UQnfs+8TftwNqtzlmFzEXvlUwdrNrYeaizfjQzRMxkZ6ElWMOJIFKdVqwA==} + es-abstract@1.24.2: + resolution: {integrity: sha512-2FpH9Q5i2RRwyEP1AylXe6nYLR5OhaJTZwmlcP0dL/+JCbgg7yyEo/sEK6HeGZRf3dFpWwThaRHVApXSkW3xeg==} engines: {node: '>= 0.4'} es-define-property@1.0.1: @@ -2801,19 +2822,20 @@ packages: es-module-lexer@2.1.0: resolution: {integrity: sha512-n27zTYMjYu1aj4MjCWzSP7G9r75utsaoc8m61weK+W8JMBGGQybd43GstCXZ3WNmSFtGT9wi59qQTW6mhTR5LQ==} - es-object-atoms@1.1.1: - resolution: {integrity: sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==} + es-object-atoms@1.1.2: + resolution: {integrity: sha512-HWcBoN6NileqtSydK2FqHbS/LoDd2pqrnQHLyJzBj4kOp/ky2MWMN694xOfkK8/SnUsW2DH7EfyVlydKCsm1Zw==} engines: {node: '>= 0.4'} es-set-tostringtag@2.1.0: resolution: {integrity: sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==} engines: {node: '>= 0.4'} - es-shim-unscopables@1.0.0: - resolution: {integrity: sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w==} + es-shim-unscopables@1.1.0: + resolution: {integrity: sha512-d9T8ucsEhh8Bi1woXCf+TIKDIROLG5WCkxg8geBCbvk22kzwC5G2OnXVMO6FUsvQlgUUXQ2itephWDLqDzbeCw==} + engines: {node: '>= 0.4'} - es-to-primitive@1.2.1: - resolution: {integrity: sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==} + es-to-primitive@1.3.0: + resolution: {integrity: sha512-w+5mJ3GuFL+NjVtJlvydShqE1eN3h3PbI7/5LAsYJP/2qtuMXjfL2LpHSRqo4b4eSF5K/DH1JXKUAHSB2UW50g==} engines: {node: '>= 0.4'} esbuild@0.27.7: @@ -2845,11 +2867,11 @@ packages: resolution: {integrity: sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==} engines: {node: '>=12'} - eslint-import-resolver-node@0.3.7: - resolution: {integrity: sha512-gozW2blMLJCeFpBwugLTGyvVjNoeo1knonXAcatC6bjPBZitotxdWf7Gimr25N4c0AAOo4eOUfaG82IJPDpqCA==} + eslint-import-resolver-node@0.3.10: + resolution: {integrity: sha512-tRrKqFyCaKict5hOd244sL6EQFNycnMQnBe+j8uqGNXYzsImGbGUU4ibtoaBmv5FLwJwcFJNeg1GeVjQfbMrDQ==} - eslint-module-utils@2.8.0: - resolution: {integrity: sha512-aWajIYfsqCKRDgUfjEXNN/JlrzauMuSEy5sbd7WXbtW3EH6A6MpwEh42c7qD+MqQo9QMJ6fWLAeIJynx0g6OAw==} + eslint-module-utils@2.13.0: + resolution: {integrity: sha512-bLohSkT6469rRs8czj0tLTD8vaeIS/whvPRJVjDr7IuoTT1k5DYDERlNycjDj/HkOlvQdYurmfZ/g3fG5bgeLQ==} engines: {node: '>=4'} peerDependencies: '@typescript-eslint/parser': '*' @@ -2875,12 +2897,12 @@ packages: peerDependencies: eslint: ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0 - eslint-plugin-import@2.28.1: - resolution: {integrity: sha512-9I9hFlITvOV55alzoKBI+K9q74kv0iKMeY6av5+umsNwayt59fz692daGyjR+oStBQgx6nwR9rXldDev3Clw+A==} + eslint-plugin-import@2.32.0: + resolution: {integrity: sha512-whOE1HFo/qJDyX4SnXzP4N6zOWn79WhnCUY/iDR0mPfQZO8wcYE4JClzI2oZrhBnnMUCBCHZhO6VQyoBU95mZA==} engines: {node: '>=4'} peerDependencies: '@typescript-eslint/parser': '*' - eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 + eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 || ^9 peerDependenciesMeta: '@typescript-eslint/parser': optional: true @@ -2896,11 +2918,12 @@ packages: peerDependencies: eslint: ^6.2.0 || ^7.0.0 || ^8.0.0 - eslint-plugin-vuejs-accessibility@2.2.0: - resolution: {integrity: sha512-/Dr02rkrBU/mDE4+xO8/9Y230mC9ZTkh2U5tJHEFHxw/CldccmVCWgWs4NM1lq+Bbu9bJzwJPHOsZ+o5wIQuOA==} + eslint-plugin-vuejs-accessibility@2.5.0: + resolution: {integrity: sha512-oZ2fL4tS91Cm/ezH3BueNP+FtpbbeS627OSqqgp9/lsN//glmoPcLBT6D53xwGocLtyBybaT99tX4ThBh8+ytA==} engines: {node: '>=16.0.0'} peerDependencies: - eslint: ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0 + eslint: ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0 || ^9.0.0 || ^10.0.0 + globals: '>= 13.12.1' eslint-scope@7.2.2: resolution: {integrity: sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==} @@ -2918,8 +2941,8 @@ packages: resolution: {integrity: sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - eslint@8.52.0: - resolution: {integrity: sha512-zh/JHnaixqHZsolRB/w9/02akBk9EPrOs9JwcTP2ek7yL5bVvXuRariiaAjjoJ5DvuwQ1WAE/HsMz+w17YgBCg==} + eslint@8.57.1: + resolution: {integrity: sha512-ypowyDxpVSYpkXr9WPv2PAZCtNip1Mv5KTW0SCurXv/9iOpcrH9PaqUElksqEB6pChqHGDRCFTyrZlGhnLNGiA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} deprecated: This version is no longer supported. Please see https://eslint.org/version-support for other options. hasBin: true @@ -3053,9 +3076,6 @@ packages: resolution: {integrity: sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==} engines: {node: ^10.12.0 || >=12.0.0} - flatted@3.3.3: - resolution: {integrity: sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==} - flatted@3.4.2: resolution: {integrity: sha512-PjDse7RzhcPkIJwy5t7KPWQSZ9cAbzQXcafsetQoD7sOJRQlGikNbx7yZp2OotDnJyrDcbyRq3Ttb18iYOqkxA==} @@ -3074,6 +3094,10 @@ packages: for-each@0.3.3: resolution: {integrity: sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==} + for-each@0.3.5: + resolution: {integrity: sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg==} + engines: {node: '>= 0.4'} + foreground-child@3.3.1: resolution: {integrity: sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==} engines: {node: '>=14'} @@ -3104,13 +3128,17 @@ packages: function-bind@1.1.2: resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==} - function.prototype.name@1.1.6: - resolution: {integrity: sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==} + function.prototype.name@1.2.0: + resolution: {integrity: sha512-jObKIik1P2QjPHP5nz5BaOtUlfgS0fWo8IUByNXkM+o+02sJOi94em77GwJKQSJ3gfPHdgzLNrHc1uokV4P/ew==} engines: {node: '>= 0.4'} functions-have-names@1.2.3: resolution: {integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==} + generator-function@2.0.1: + resolution: {integrity: sha512-SFdFmIJi+ybC0vjlHN0ZGVGHc3lgE0DxPAT0djjVg+kjOnSqclqmj0KQ7ykTOLP6YxoqOvuAODGdcHJn+43q3g==} + engines: {node: '>= 0.4'} + get-caller-file@2.0.5: resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==} engines: {node: 6.* || 8.* || >= 10.*} @@ -3123,8 +3151,8 @@ packages: resolution: {integrity: sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==} engines: {node: '>= 0.4'} - get-symbol-description@1.0.0: - resolution: {integrity: sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==} + get-symbol-description@1.1.0: + resolution: {integrity: sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg==} engines: {node: '>= 0.4'} glob-parent@5.1.2: @@ -3161,8 +3189,8 @@ packages: resolution: {integrity: sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==} engines: {node: '>=8'} - globalthis@1.0.3: - resolution: {integrity: sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==} + globalthis@1.0.4: + resolution: {integrity: sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==} engines: {node: '>= 0.4'} globby@11.1.0: @@ -3194,18 +3222,19 @@ packages: resolution: {integrity: sha512-5p9Sxis3eowDJKqx90QCsgbNA02XXqJ59NOHvD4V6cxp+rP4d/xOyVx7uY3hS8hiUbY1VeiFH8lbJ81AyuDVLQ==} engines: {node: '>=20.0.0'} - has-bigints@1.0.2: - resolution: {integrity: sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==} + has-bigints@1.1.0: + resolution: {integrity: sha512-R3pbpkcIqv2Pm3dUwgjclDRVmWpTJW2DcMzcIhEXEx1oh/CEMObMm3KLmRJOdvhM7o4uQBnwr8pzRK2sJWIqfg==} + engines: {node: '>= 0.4'} has-flag@4.0.0: resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} engines: {node: '>=8'} - has-property-descriptors@1.0.0: - resolution: {integrity: sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==} + has-property-descriptors@1.0.2: + resolution: {integrity: sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==} - has-proto@1.0.1: - resolution: {integrity: sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==} + has-proto@1.2.0: + resolution: {integrity: sha512-KIL7eQPfHQRC8+XluaIw7BHUwwqL19bQn4hzNgdr+1wXoU0KKj6rufu47lhY7KbJR2C6T6+PfyN0Ea7wkSS+qQ==} engines: {node: '>= 0.4'} has-symbols@1.1.0: @@ -3216,14 +3245,6 @@ packages: resolution: {integrity: sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==} engines: {node: '>= 0.4'} - has@1.0.4: - resolution: {integrity: sha512-qdSAmqLF6209RFj4VVItywPMbm3vWylknmB3nvNiUIs72xAimcM8nVYxYr7ncvZq5qzk9MKIZR8ijqD/1QuYjQ==} - engines: {node: '>= 0.4.0'} - - hasown@2.0.2: - resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==} - engines: {node: '>= 0.4'} - hasown@2.0.4: resolution: {integrity: sha512-T2UbfbBEF32wiepXIsMlTW9+dDYC6wMh/t/vYA4tuOMKqWz/n3vr1NFSxQiyP+zk2mXsoMA/i/7qV6LKut1t1A==} engines: {node: '>= 0.4'} @@ -3290,8 +3311,8 @@ packages: immutable@5.1.6: resolution: {integrity: sha512-q1swsS8K7L8usSHuOqF2TAoCCkonYz0SG38wLAggaa4Wml70zixIvt2ql4coQ2C2B3hTjltJry4r6bULwgAXLQ==} - import-fresh@3.3.0: - resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==} + import-fresh@3.3.1: + resolution: {integrity: sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==} engines: {node: '>=6'} imurmurhash@0.1.4: @@ -3320,8 +3341,8 @@ packages: ini@1.3.8: resolution: {integrity: sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==} - internal-slot@1.0.5: - resolution: {integrity: sha512-Y+R5hJrzs52QCG2laLn4udYVnxsfny9CpOhNhUvk/SSSVyF6T27FzRbF0sroPidSu3X8oEAkOn2K804mjpt6UQ==} + internal-slot@1.1.0: + resolution: {integrity: sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw==} engines: {node: '>= 0.4'} internmap@2.0.3: @@ -3332,18 +3353,24 @@ packages: resolution: {integrity: sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==} engines: {node: '>= 0.4'} - is-array-buffer@3.0.2: - resolution: {integrity: sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==} + is-array-buffer@3.0.5: + resolution: {integrity: sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A==} + engines: {node: '>= 0.4'} - is-bigint@1.0.4: - resolution: {integrity: sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==} + is-async-function@2.1.1: + resolution: {integrity: sha512-9dgM/cZBnNvjzaMYHVoxxfPj2QXt22Ev7SuuPrs+xav0ukGB0S6d4ydZdEiM48kLx5kDV+QBPrpVnFyefL8kkQ==} + engines: {node: '>= 0.4'} + + is-bigint@1.1.0: + resolution: {integrity: sha512-n4ZT37wG78iz03xPRKJrHTdZbe3IicyucEtdRsV5yglwc3GyUfbAfpSeD0FJ41NbUNSt5wbhqfp1fS+BgnvDFQ==} + engines: {node: '>= 0.4'} is-binary-path@2.1.0: resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==} engines: {node: '>=8'} - is-boolean-object@1.1.2: - resolution: {integrity: sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==} + is-boolean-object@1.2.2: + resolution: {integrity: sha512-wa56o2/ElJMYqjCjGkXri7it5FbebW5usLw/nPmCMs5DeZ7eziSYZhSmPRn0txqeW4LnAmQQU7FgqLpsEFKM4A==} engines: {node: '>= 0.4'} is-buffer@1.1.6: @@ -3353,11 +3380,20 @@ packages: resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==} engines: {node: '>= 0.4'} - is-core-module@2.13.0: - resolution: {integrity: sha512-Z7dk6Qo8pOCp3l4tsX2C5ZVas4V+UxwQodwZhLopL91TX8UyyHEXafPcyoeeWuLrwzHcr3igO78wNLwHJHsMCQ==} + is-core-module@2.16.2: + resolution: {integrity: sha512-evOr8xfXKxE6qSR0hSXL2r3sd7ALj8+7jQEUvPYcm5sgZFdJ+AYzT6yNmJenvIYQBgIGwfwz08sL8zoL7yq2BA==} + engines: {node: '>= 0.4'} - is-date-object@1.0.5: - resolution: {integrity: sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==} + is-data-view@1.0.2: + resolution: {integrity: sha512-RKtWF8pGmS87i2D6gqQu/l7EYRlVdfzemCJN/P3UOs//x1QE7mfhvzHIApBTRf7axvT6DMGwSwBXYCT0nfB9xw==} + engines: {node: '>= 0.4'} + + is-date-object@1.1.0: + resolution: {integrity: sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg==} + engines: {node: '>= 0.4'} + + is-document.all@1.0.0: + resolution: {integrity: sha512-+XSoyS05OdBbhFuELhgTCpFNHkpBOJqtsZfUFFpe5QTw+9Sjbh8zitxhQkYAo6wV7e1Vb8cAPvpCk9jGam/82g==} engines: {node: '>= 0.4'} is-extendable@0.1.1: @@ -3368,6 +3404,10 @@ packages: resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} engines: {node: '>=0.10.0'} + is-finalizationregistry@1.1.1: + resolution: {integrity: sha512-1pC6N8qWJbWoPtEjgcL2xyhQOP491EQjeUo3qTKcmV8YSDDJrOepfG8pcC7h/QgnQHYSv0mJ3Z/ZWxmatVrysg==} + engines: {node: '>= 0.4'} + is-fullwidth-code-point@3.0.0: resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} engines: {node: '>=8'} @@ -3376,23 +3416,31 @@ packages: resolution: {integrity: sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==} engines: {node: '>= 0.4'} + is-generator-function@1.1.2: + resolution: {integrity: sha512-upqt1SkGkODW9tsGNG5mtXTXtECizwtS2kA161M+gJPc1xdb/Ax629af6YrTwcOeQHbewrPNlE5Dx7kzvXTizA==} + engines: {node: '>= 0.4'} + is-glob@4.0.3: resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} engines: {node: '>=0.10.0'} + is-map@2.0.3: + resolution: {integrity: sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==} + engines: {node: '>= 0.4'} + is-nan@1.3.2: resolution: {integrity: sha512-E+zBKpQ2t6MEo1VsonYmluk9NxGrbzpeeLC2xIViuO2EjU2xsXsBPwTr3Ykv9l08UYEVEdWeRZNouaZqF6RN0w==} engines: {node: '>= 0.4'} - is-negative-zero@2.0.2: - resolution: {integrity: sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==} + is-negative-zero@2.0.3: + resolution: {integrity: sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==} engines: {node: '>= 0.4'} is-node-process@1.2.0: resolution: {integrity: sha512-Vg4o6/fqPxIjtxgUH5QLJhwZ7gW5diGCVlXpuUfELC62CuxM1iHcRe51f2W1FDy04Ai4KJkagKjx3XaqyfRKXw==} - is-number-object@1.0.7: - resolution: {integrity: sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==} + is-number-object@1.1.1: + resolution: {integrity: sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw==} engines: {node: '>= 0.4'} is-number@7.0.0: @@ -3406,35 +3454,49 @@ packages: is-potential-custom-element-name@1.0.1: resolution: {integrity: sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==} - is-regex@1.1.4: - resolution: {integrity: sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==} - engines: {node: '>= 0.4'} - is-regex@1.2.1: resolution: {integrity: sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==} engines: {node: '>= 0.4'} - is-shared-array-buffer@1.0.2: - resolution: {integrity: sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==} + is-set@2.0.3: + resolution: {integrity: sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==} + engines: {node: '>= 0.4'} + + is-shared-array-buffer@1.0.4: + resolution: {integrity: sha512-ISWac8drv4ZGfwKl5slpHG9OwPNty4jOWPRIhBpxOoD+hqITiwuipOQ2bNthAzwA3B4fIjO4Nln74N0S9byq8A==} + engines: {node: '>= 0.4'} is-stream@2.0.1: resolution: {integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==} engines: {node: '>=8'} - is-string@1.0.7: - resolution: {integrity: sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==} + is-string@1.1.1: + resolution: {integrity: sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA==} engines: {node: '>= 0.4'} - is-symbol@1.0.4: - resolution: {integrity: sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==} + is-symbol@1.1.1: + resolution: {integrity: sha512-9gGx6GTtCQM73BgmHQXfDmLtfjjTUDSyoxTCbp5WtoixAhfgsDirWIcVQ/IHpvI5Vgd5i/J5F7B9cN/WlVbC/w==} engines: {node: '>= 0.4'} is-typed-array@1.1.12: resolution: {integrity: sha512-Z14TF2JNG8Lss5/HMqt0//T9JeHXttXy5pH/DBU4vi98ozO2btxzq9MwYDZYnKwU8nRsz/+GVFVRDq3DkVuSPg==} engines: {node: '>= 0.4'} - is-weakref@1.0.2: - resolution: {integrity: sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==} + is-typed-array@1.1.15: + resolution: {integrity: sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ==} + engines: {node: '>= 0.4'} + + is-weakmap@2.0.2: + resolution: {integrity: sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==} + engines: {node: '>= 0.4'} + + is-weakref@1.1.1: + resolution: {integrity: sha512-6i9mGWSlqzNMEqpCp93KwRS1uUOodk2OJ6b+sq7ZPDSy2WuI5NFIxp/254TytR8ftefexkWn5xNiHUNpPOfSew==} + engines: {node: '>= 0.4'} + + is-weakset@2.0.4: + resolution: {integrity: sha512-mfcwb6IzQyOKTs84CQMrOwW4gQcaTOAWJ0zzJCl2WSPDrWk/OzDaImWFH3djXhb24g4eudZfLRozAvPGw4d9hQ==} + engines: {node: '>= 0.4'} is-whitespace@0.3.0: resolution: {integrity: sha512-RydPhl4S6JwAyj0JJjshWJEFG6hNye3pZFBRZaTUfZFwGHxzppNaNOVgQuS/E/SlhrApuMXrpnK1EEIXfdo3Dg==} @@ -3825,9 +3887,6 @@ packages: resolution: {integrity: sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==} engines: {node: '>=16 || 14 >=14.17'} - minimist@1.2.6: - resolution: {integrity: sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==} - minimist@1.2.8: resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==} @@ -3930,6 +3989,10 @@ packages: node-addon-api@7.1.1: resolution: {integrity: sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==} + node-exports-info@1.6.0: + resolution: {integrity: sha512-pyFS63ptit/P5WqUkt+UUfe+4oevH+bFeIiPPdfb0pFeYEu/1ELnJu5l+5EcTKYL5M7zaAa7S8ddywgXypqKCw==} + engines: {node: '>= 0.4'} + node-fetch@2.6.7: resolution: {integrity: sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==} engines: {node: 4.x || >=6.0.0} @@ -3978,9 +4041,6 @@ packages: resolution: {integrity: sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==} engines: {node: '>= 6'} - object-inspect@1.13.0: - resolution: {integrity: sha512-HQ4J+ic8hKrgIt3mqk6cVOVrW2ozL4KdvHlqpBv9vDYWx9ysAgENAdvy4FoGF+KFdhR7nQTNm5J0ctAeOwn+3g==} - object-inspect@1.13.4: resolution: {integrity: sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==} engines: {node: '>= 0.4'} @@ -3997,15 +4057,24 @@ packages: resolution: {integrity: sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==} engines: {node: '>= 0.4'} - object.fromentries@2.0.7: - resolution: {integrity: sha512-UPbPHML6sL8PI/mOqPwsH4G6iyXcCGzLin8KvEPenOZN5lpCNBZZQ+V62vdjB1mQHrmqGQt5/OJzemUA+KJmEA==} + object.assign@4.1.7: + resolution: {integrity: sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw==} engines: {node: '>= 0.4'} - object.groupby@1.0.1: - resolution: {integrity: sha512-HqaQtqLnp/8Bn4GL16cj+CUYbnpe1bh0TtEaWvybszDG4tgxCJuRpV8VGuvNaI1fAnI4lUJzDG55MXcOH4JZcQ==} + object.entries@1.1.9: + resolution: {integrity: sha512-8u/hfXFRBD1O0hPUjioLhoWFHRmt6tKA4/vZPyckBr18l1KE9uHrFaFaUi8MDRTpi4uak2goyPTSNJLXX2k2Hw==} + engines: {node: '>= 0.4'} - object.values@1.1.6: - resolution: {integrity: sha512-FVVTkD1vENCsAcwNs9k6jea2uHC/X0+JcjG8YA60FN5CMaJmG95wT9jek/xX9nornqGRrBkKtzuAu2wuHpKqvw==} + object.fromentries@2.0.8: + resolution: {integrity: sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ==} + engines: {node: '>= 0.4'} + + object.groupby@1.0.3: + resolution: {integrity: sha512-+Lhy3TQTuzXI5hevh8sBGqbmurHbbIjAi0Z4S63nthVLmLxfbj4T54a4CfZrXIrt9iP4mVAPYMo/v99taj3wjQ==} + engines: {node: '>= 0.4'} + + object.values@1.2.1: + resolution: {integrity: sha512-gXah6aZrcUxjWg2zR2MwouP2eHlCBzdV4pygudehaKXSGW4v2AsRQUK+lwwXhii6KFZcunEnmSUoYp5CXibxtA==} engines: {node: '>= 0.4'} obug@2.1.1: @@ -4049,6 +4118,10 @@ packages: outvariant@1.4.3: resolution: {integrity: sha512-+Sl2UErvtsoajRDKCE5/dBz4DIvHXQQnAxtQTF04OJxY0+DyZXSo5P5Bb7XYWOh81syohlYL24hbDwxedPUJCA==} + own-keys@1.0.1: + resolution: {integrity: sha512-qFOyK5PjiWZd+QQIh+1jhdb9LpxTF0qs7Pm8o5QHYZ0M3vKqSqzsZaEB6oWlxZ+q2sJBMI/Ktgd2N5ZwQoRHfg==} + engines: {node: '>= 0.4'} + p-event@5.0.1: resolution: {integrity: sha512-dd589iCQ7m1L0bmC5NLlVYfy3TbBEsMUfWx9PyAgPeIcFZ/E2yaTZ4Rz4MiBmmJShviiftHVXOqfnfzJ6kyMrQ==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} @@ -4188,6 +4261,10 @@ packages: peerDependencies: vue: 2.7.16 + possible-typed-array-names@1.1.0: + resolution: {integrity: sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg==} + engines: {node: '>= 0.4'} + postcss-load-config@6.0.1: resolution: {integrity: sha512-oPtTM4oerL+UXmx+93ytZVN82RrlY/wPUV8IeDxFrzIjXOLF1pN+EmKPLbubvKHT2HC20xXsCAH2Z+CKV6Oz/g==} engines: {node: '>= 18'} @@ -4329,11 +4406,15 @@ packages: resolution: {integrity: sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==} engines: {node: '>=8'} + reflect.getprototypeof@1.0.10: + resolution: {integrity: sha512-00o4I+DVrefhv+nX0ulyi3biSHCPDe+yLv5o/p6d/UVlirijB8E16FtfwSAi4g3tcqrQ4lRAqQSoFEZJehYEcw==} + engines: {node: '>= 0.4'} + regenerator-runtime@0.14.0: resolution: {integrity: sha512-srw17NI0TUWHuGa5CFGGmhfNIeja30WMBfbslPNhf6JrqQlLN5gcrvig1oqPxiVaXb0oW0XRKtH6Nngs5lKCIA==} - regexp.prototype.flags@1.5.1: - resolution: {integrity: sha512-sy6TXMN+hnP/wMy+ISxg3krXx7BAtWVO4UouuCN/ziM9UEne0euamVNafDfvC83bRNr95y0V5iijeDQFUNpvrg==} + regexp.prototype.flags@1.5.4: + resolution: {integrity: sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA==} engines: {node: '>= 0.4'} repeat-string@1.6.1: @@ -4359,8 +4440,9 @@ packages: resolution: {integrity: sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==} engines: {node: '>=8'} - resolve@1.22.2: - resolution: {integrity: sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g==} + resolve@2.0.0-next.7: + resolution: {integrity: sha512-tqt+NBWwyaMgw3zDsnygx4CByWjQEJHOPMdslYhppaQSJUtL/D4JO9CcBBlhPoI8lz9oJIDXkwXfhF4aWqP8xQ==} + engines: {node: '>= 0.4'} hasBin: true retry@0.12.0: @@ -4438,8 +4520,8 @@ packages: rxjs@7.8.2: resolution: {integrity: sha512-dhKf903U/PQZY6boNNtAGdWbG85WAbjT/1xYoZIC7FAY0yWapOBQVsVrDl58W86//e1VpMNBtRV4MaXfdMySFA==} - safe-array-concat@1.0.1: - resolution: {integrity: sha512-6XbUAseYE2KtOuGueyeobCySj9L4+66Tn6KQMOPQJrAJEowYKW/YR/MGJZl7FdydUdaFu4LYyDZjxf4/Nmo23Q==} + safe-array-concat@1.1.4: + resolution: {integrity: sha512-wtZlHyOje6OZTGqAoaDKxFkgRtkF9CnHAVnCHKfuj200wAgL+bSJhdsCD2l0Qx/2ekEXjPWcyKkfGb5CPboslg==} engines: {node: '>=0.4'} safe-buffer@5.1.2: @@ -4448,8 +4530,9 @@ packages: safe-buffer@5.2.1: resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==} - safe-regex-test@1.0.0: - resolution: {integrity: sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==} + safe-push-apply@1.0.0: + resolution: {integrity: sha512-iKE9w/Z7xCzUMIZqdBsp6pEQvwuEebH4vdpjcDWnyzaI6yl6O9FHvVpmGelvEHNsoY6wGblkxR6Zty/h00WiSA==} + engines: {node: '>= 0.4'} safe-regex-test@1.1.0: resolution: {integrity: sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==} @@ -4489,8 +4572,16 @@ packages: set-cookie-parser@3.1.0: resolution: {integrity: sha512-kjnC1DXBHcxaOaOXBHBeRtltsDG2nUiUni+jP92M9gYdW12rsmx92UsfpH7o5tDRs7I1ZZPSQJQGv3UaRfCiuw==} - set-function-name@2.0.1: - resolution: {integrity: sha512-tMNCiqYVkXIZgc2Hnoy2IvC/f8ezc5koaRFkCjrpWzGpCd3qbZXPzVy9MAZzK1ch/X0jvSkojys3oqJN0qCmdA==} + set-function-length@1.2.2: + resolution: {integrity: sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==} + engines: {node: '>= 0.4'} + + set-function-name@2.0.2: + resolution: {integrity: sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==} + engines: {node: '>= 0.4'} + + set-proto@1.0.0: + resolution: {integrity: sha512-RJRdvCo6IAnPdsvP/7m6bsQqNnn1FCBX5ZNtFL98MmFF/4xAIJTIg1YbHW5DC2W5SKZanrC6i4HsJqlajw/dZw==} engines: {node: '>= 0.4'} setimmediate@1.0.5: @@ -4519,9 +4610,6 @@ packages: resolution: {integrity: sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==} engines: {node: '>= 0.4'} - side-channel@1.0.4: - resolution: {integrity: sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==} - side-channel@1.1.1: resolution: {integrity: sha512-6x6dK6zJdpTzF4sQeNYxwtvBzf6Eg4GtlesS94HOvTudUeyK2WXAaIfmDgsyslYrRBeFIlsi54AYsFGUuhmvrQ==} engines: {node: '>= 0.4'} @@ -4614,6 +4702,10 @@ packages: std-env@4.1.0: resolution: {integrity: sha512-Rq7ybcX2RuC55r9oaPVEW7/xu3tj8u4GeBYHBWCychFtzMIr86A7e3PPEBPT37sHStKX3+TiX/Fr/ACmJLVlLQ==} + stop-iteration-iterator@1.1.0: + resolution: {integrity: sha512-eLoXW/DHyl62zxY4SCaIgnRhuMr6ri4juEYARS8E6sCEqzKpOiE521Ucofdx+KnDZl5xmvGYaaKCk5FEOxJCoQ==} + engines: {node: '>= 0.4'} + store@2.0.12: resolution: {integrity: sha512-eO9xlzDpXLiMr9W1nQ3Nfp9EzZieIQc10zPPMP5jsVV7bLOziSFFBP0XoDXACEIFtdI+rIz0NwWVA/QVJ8zJtw==} @@ -4631,15 +4723,17 @@ packages: resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} engines: {node: '>=8'} - string.prototype.trim@1.2.8: - resolution: {integrity: sha512-lfjY4HcixfQXOfaqCvcBuOIapyaroTXhbkfJN3gcB1OtyupngWK4sEET9Knd0cXd28kTUqu/kHoV4HKSJdnjiQ==} + string.prototype.trim@1.2.11: + resolution: {integrity: sha512-PwvK7BU+CMTJGYQCTZb5RWXIML92lftJLhQz1tBzgKiqGxJaMlBAa48POXaNAC2s4y8jr3EFqrkF9+44neS46w==} engines: {node: '>= 0.4'} - string.prototype.trimend@1.0.7: - resolution: {integrity: sha512-Ni79DqeB72ZFq1uH/L6zJ+DKZTkOtPIHovb3YZHQViE+HDouuU4mBrLOLDn5Dde3RF8qw5qVETEjhu9locMLvA==} + string.prototype.trimend@1.0.10: + resolution: {integrity: sha512-2+3aDAOmPTmuFwjDnmJG2ctEkQKVki7vOSqaxkv42Mowj1V6PnvuwFCRrR5lChUux1TBskPjfkeTOhqczDMxTw==} + engines: {node: '>= 0.4'} - string.prototype.trimstart@1.0.7: - resolution: {integrity: sha512-NGhtDFu3jCEm7B4Fy0DpLewdJQOZcQ0rGbwQ/+stjnrp2i+rlKeCvos9hOIeCmqwratM47OBxY7uFZzjxHXmrg==} + string.prototype.trimstart@1.0.8: + resolution: {integrity: sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==} + engines: {node: '>= 0.4'} string_decoder@1.1.1: resolution: {integrity: sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==} @@ -4806,8 +4900,8 @@ packages: '@swc/wasm': optional: true - tsconfig-paths@3.14.2: - resolution: {integrity: sha512-o/9iXgCYc5L/JxCHPe3Hvh8Q/2xm5Z+p18PESBU6Ff33695QnCHBEjcytY2q19ua7Mbl/DavtBOLq+oG0RCL+g==} + tsconfig-paths@3.15.0: + resolution: {integrity: sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==} tslib@1.14.1: resolution: {integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==} @@ -4866,20 +4960,21 @@ packages: resolution: {integrity: sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==} engines: {node: '>= 0.6'} - typed-array-buffer@1.0.0: - resolution: {integrity: sha512-Y8KTSIglk9OZEr8zywiIHG/kmQ7KWyjseXs1CbSo8vC42w7hg2HgYTxSWwP0+is7bWDc1H+Fo026CpHFwm8tkw==} + typed-array-buffer@1.0.3: + resolution: {integrity: sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw==} engines: {node: '>= 0.4'} - typed-array-byte-length@1.0.0: - resolution: {integrity: sha512-Or/+kvLxNpeQ9DtSydonMxCx+9ZXOswtwJn17SNLvhptaXYDJvkFFP5zbfU/uLmvnBJlI4yrnXRxpdWH/M5tNA==} + typed-array-byte-length@1.0.3: + resolution: {integrity: sha512-BaXgOuIxz8n8pIq3e7Atg/7s+DpiYrxn4vdot3w9KbnBhcRQq6o3xemQdIfynqSeXeDrF32x+WvfzmOjPiY9lg==} engines: {node: '>= 0.4'} - typed-array-byte-offset@1.0.0: - resolution: {integrity: sha512-RD97prjEt9EL8YgAgpOkf3O4IF9lhJFr9g0htQkm0rchFp/Vx7LW5Q8fSXXub7BXAODyUQohRMyOc3faCPd0hg==} + typed-array-byte-offset@1.0.4: + resolution: {integrity: sha512-bTlAFB/FBYMcuX81gbL4OcpH5PmlFHqlCCpAl8AlEzMz5k53oNDvN8p1PNOWLEmI2x4orp3raOFB51tv9X+MFQ==} engines: {node: '>= 0.4'} - typed-array-length@1.0.4: - resolution: {integrity: sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==} + typed-array-length@1.0.8: + resolution: {integrity: sha512-phPGCwqr2+Qo0fwniCE8e4pKnGu/yFb5nD5Y8bf0EEeiI5GklnACYA9GFy/DrAeRrKHXvHn+1SUsOWgJp6RO+g==} + engines: {node: '>= 0.4'} typescript@5.8.3: resolution: {integrity: sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ==} @@ -4896,8 +4991,9 @@ packages: ufo@1.6.3: resolution: {integrity: sha512-yDJTmhydvl5lJzBmy/hyOAA0d+aqCBuwl818haVdYCRrWV84o7YyeVm4QlVHStqNrrJSTb6jKuFAVqAFsr+K3Q==} - unbox-primitive@1.0.2: - resolution: {integrity: sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==} + unbox-primitive@1.1.0: + resolution: {integrity: sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw==} + engines: {node: '>= 0.4'} undici-types@7.24.6: resolution: {integrity: sha512-WRNW+sJgj5OBN4/0JpHFqtqzhpbnV0GuB+OozA9gCL7a993SmU+1JBZCzLNxYsbMfIeDL+lTsphD5jN5N+n0zg==} @@ -5229,14 +5325,14 @@ packages: '@vue/runtime-core': optional: true - vue-eslint-parser@10.2.0: - resolution: {integrity: sha512-CydUvFOQKD928UzZhTp4pr2vWz1L+H99t7Pkln2QSPdvmURT0MoC4wUccfCnuEaihNsu9aYYyk+bep8rlfkUXw==} + vue-eslint-parser@10.4.1: + resolution: {integrity: sha512-Gk6gRDj0n/fkRa3C3l0bBheoBckUq/Rs0F/TvMWIS6nzzx67amAViMe9CkNgsP2tXyQONvGiHQESHwFtZ3aYDA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: - eslint: ^8.57.0 || ^9.0.0 + eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 - vue-eslint-parser@9.3.2: - resolution: {integrity: sha512-q7tWyCVaV9f8iQyIA5Mkj/S6AoJ9KBN8IeUSf3XEmBrOtxOZnfTg5s4KClbZBCK3GtnT/+RyCLZyDHuZwTuBjg==} + vue-eslint-parser@9.4.3: + resolution: {integrity: sha512-2rYRLWlIpaiN8xbPiDyXZXRgLGOtWxERV7ND5fFAv5qo1D2N9Fu9MNajBNc6o13lZ+24DAWCkQCvj4klgmcITg==} engines: {node: ^14.17.0 || >=16.0.0} peerDependencies: eslint: '>=6.0.0' @@ -5322,13 +5418,26 @@ packages: whatwg-url@5.0.0: resolution: {integrity: sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==} - which-boxed-primitive@1.0.2: - resolution: {integrity: sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==} + which-boxed-primitive@1.1.1: + resolution: {integrity: sha512-TbX3mj8n0odCBFVlY8AxkqcHASw3L60jIuF8jFP78az3C2YhmGvqbHBpAjTRH2/xqYunrJ9g1jSyjCjpoWzIAA==} + engines: {node: '>= 0.4'} + + which-builtin-type@1.2.1: + resolution: {integrity: sha512-6iBczoX+kDQ7a3+YJBnh3T+KZRxM/iYNPXicqk66/Qfm1b93iu+yOImkg0zHbj5LNOcNv1TEADiZ0xa34B4q6Q==} + engines: {node: '>= 0.4'} + + which-collection@1.0.2: + resolution: {integrity: sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==} + engines: {node: '>= 0.4'} which-typed-array@1.1.11: resolution: {integrity: sha512-qe9UWWpkeG5yzZ0tNYxDmd7vo58HDBc39mZ0xWWpolAGADdFOzkfamWLDxkOWcvHQKVmdTyQdLD4NOfjLWTKew==} engines: {node: '>= 0.4'} + which-typed-array@1.1.22: + resolution: {integrity: sha512-fvO4ExWMFsqyhG3AiPAObMuY1lxaqgYcxbc49CNdWDDECOJNgQyvsOWVwbZc+qf3rzRtxojBK+CMEv0Ld5CYpw==} + engines: {node: '>= 0.4'} + which@2.0.2: resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} engines: {node: '>= 8'} @@ -5777,28 +5886,28 @@ snapshots: '@esbuild/win32-x64@0.28.1': optional: true - '@eslint-community/eslint-utils@4.4.0(eslint@8.52.0)': + '@eslint-community/eslint-utils@4.4.0(eslint@8.57.1)': dependencies: - eslint: 8.52.0 + eslint: 8.57.1 eslint-visitor-keys: 3.4.3 '@eslint-community/regexpp@4.9.1': {} - '@eslint/eslintrc@2.1.2': + '@eslint/eslintrc@2.1.4': dependencies: ajv: 6.12.6 debug: 4.4.3(supports-color@10.2.2) espree: 9.6.1 globals: 13.20.0 ignore: 5.2.4 - import-fresh: 3.3.0 - js-yaml: 4.1.0 - minimatch: 3.1.2 + import-fresh: 3.3.1 + js-yaml: 4.1.1 + minimatch: 3.1.5 strip-json-comments: 3.1.1 transitivePeerDependencies: - supports-color - '@eslint/js@8.52.0': {} + '@eslint/js@8.57.1': {} '@exodus/bytes@1.15.0': {} @@ -5860,17 +5969,17 @@ snapshots: rxjs: 7.8.2 typescript: 5.8.3 - '@humanwhocodes/config-array@0.11.13': + '@humanwhocodes/config-array@0.13.0': dependencies: - '@humanwhocodes/object-schema': 2.0.1 + '@humanwhocodes/object-schema': 2.0.3 debug: 4.4.3(supports-color@10.2.2) - minimatch: 3.1.2 + minimatch: 3.1.5 transitivePeerDependencies: - supports-color '@humanwhocodes/module-importer@1.0.1': {} - '@humanwhocodes/object-schema@2.0.1': {} + '@humanwhocodes/object-schema@2.0.3': {} '@inquirer/ansi@2.0.7': {} @@ -6239,6 +6348,8 @@ snapshots: '@rollup/rollup-win32-x64-msvc@4.60.1': optional: true + '@rtsao/scc@1.1.0': {} + '@sentry-internal/browser-utils@10.45.0': dependencies: '@sentry/core': 10.45.0 @@ -6490,16 +6601,16 @@ snapshots: dependencies: '@types/node': 25.9.3 - '@typescript-eslint/eslint-plugin@6.8.0(@typescript-eslint/parser@6.8.0(eslint@8.52.0)(typescript@5.8.3))(eslint@8.52.0)(typescript@5.8.3)': + '@typescript-eslint/eslint-plugin@6.8.0(@typescript-eslint/parser@6.8.0(eslint@8.57.1)(typescript@5.8.3))(eslint@8.57.1)(typescript@5.8.3)': dependencies: '@eslint-community/regexpp': 4.9.1 - '@typescript-eslint/parser': 6.8.0(eslint@8.52.0)(typescript@5.8.3) + '@typescript-eslint/parser': 6.8.0(eslint@8.57.1)(typescript@5.8.3) '@typescript-eslint/scope-manager': 6.8.0 - '@typescript-eslint/type-utils': 6.8.0(eslint@8.52.0)(typescript@5.8.3) - '@typescript-eslint/utils': 6.8.0(eslint@8.52.0)(typescript@5.8.3) + '@typescript-eslint/type-utils': 6.8.0(eslint@8.57.1)(typescript@5.8.3) + '@typescript-eslint/utils': 6.8.0(eslint@8.57.1)(typescript@5.8.3) '@typescript-eslint/visitor-keys': 6.8.0 debug: 4.4.3(supports-color@10.2.2) - eslint: 8.52.0 + eslint: 8.57.1 graphemer: 1.4.0 ignore: 5.2.4 natural-compare: 1.4.0 @@ -6510,14 +6621,14 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/parser@6.8.0(eslint@8.52.0)(typescript@5.8.3)': + '@typescript-eslint/parser@6.8.0(eslint@8.57.1)(typescript@5.8.3)': dependencies: '@typescript-eslint/scope-manager': 6.8.0 '@typescript-eslint/types': 6.8.0 '@typescript-eslint/typescript-estree': 6.8.0(typescript@5.8.3) '@typescript-eslint/visitor-keys': 6.8.0 debug: 4.4.3(supports-color@10.2.2) - eslint: 8.52.0 + eslint: 8.57.1 optionalDependencies: typescript: 5.8.3 transitivePeerDependencies: @@ -6528,12 +6639,12 @@ snapshots: '@typescript-eslint/types': 6.8.0 '@typescript-eslint/visitor-keys': 6.8.0 - '@typescript-eslint/type-utils@6.8.0(eslint@8.52.0)(typescript@5.8.3)': + '@typescript-eslint/type-utils@6.8.0(eslint@8.57.1)(typescript@5.8.3)': dependencies: '@typescript-eslint/typescript-estree': 6.8.0(typescript@5.8.3) - '@typescript-eslint/utils': 6.8.0(eslint@8.52.0)(typescript@5.8.3) + '@typescript-eslint/utils': 6.8.0(eslint@8.57.1)(typescript@5.8.3) debug: 4.4.3(supports-color@10.2.2) - eslint: 8.52.0 + eslint: 8.57.1 ts-api-utils: 1.0.3(typescript@5.8.3) optionalDependencies: typescript: 5.8.3 @@ -6556,15 +6667,15 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/utils@6.8.0(eslint@8.52.0)(typescript@5.8.3)': + '@typescript-eslint/utils@6.8.0(eslint@8.57.1)(typescript@5.8.3)': dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@8.52.0) + '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.1) '@types/json-schema': 7.0.13 '@types/semver': 7.5.3 '@typescript-eslint/scope-manager': 6.8.0 '@typescript-eslint/types': 6.8.0 '@typescript-eslint/typescript-estree': 6.8.0(typescript@5.8.3) - eslint: 8.52.0 + eslint: 8.57.1 semver: 7.6.3 transitivePeerDependencies: - supports-color @@ -6772,9 +6883,9 @@ snapshots: dependencies: acorn: 8.10.0 - acorn-jsx@5.3.2(acorn@8.15.0): + acorn-jsx@5.3.2(acorn@8.16.0): dependencies: - acorn: 8.15.0 + acorn: 8.16.0 acorn-walk@8.3.5: dependencies: @@ -6839,52 +6950,57 @@ snapshots: dependencies: dequal: 2.0.3 - array-buffer-byte-length@1.0.0: + array-buffer-byte-length@1.0.2: dependencies: - call-bind: 1.0.2 - is-array-buffer: 3.0.2 + call-bound: 1.0.4 + is-array-buffer: 3.0.5 - array-includes@3.1.6: + array-includes@3.1.9: dependencies: - call-bind: 1.0.2 + call-bind: 1.0.9 + call-bound: 1.0.4 define-properties: 1.2.1 - es-abstract: 1.22.2 + es-abstract: 1.24.2 + es-object-atoms: 1.1.2 get-intrinsic: 1.3.0 - is-string: 1.0.7 + is-string: 1.1.1 + math-intrinsics: 1.1.0 array-union@2.1.0: {} - array.prototype.findlastindex@1.2.3: + array.prototype.findlastindex@1.2.6: dependencies: - call-bind: 1.0.2 + call-bind: 1.0.9 + call-bound: 1.0.4 define-properties: 1.2.1 - es-abstract: 1.22.2 - es-shim-unscopables: 1.0.0 + es-abstract: 1.24.2 + es-errors: 1.3.0 + es-object-atoms: 1.1.2 + es-shim-unscopables: 1.1.0 + + array.prototype.flat@1.3.3: + dependencies: + call-bind: 1.0.9 + define-properties: 1.2.1 + es-abstract: 1.24.2 + es-shim-unscopables: 1.1.0 + + array.prototype.flatmap@1.3.3: + dependencies: + call-bind: 1.0.9 + define-properties: 1.2.1 + es-abstract: 1.24.2 + es-shim-unscopables: 1.1.0 + + arraybuffer.prototype.slice@1.0.4: + dependencies: + array-buffer-byte-length: 1.0.2 + call-bind: 1.0.9 + define-properties: 1.2.1 + es-abstract: 1.24.2 + es-errors: 1.3.0 get-intrinsic: 1.3.0 - - array.prototype.flat@1.3.1: - dependencies: - call-bind: 1.0.2 - define-properties: 1.2.1 - es-abstract: 1.22.2 - es-shim-unscopables: 1.0.0 - - array.prototype.flatmap@1.3.1: - dependencies: - call-bind: 1.0.2 - define-properties: 1.2.1 - es-abstract: 1.22.2 - es-shim-unscopables: 1.0.0 - - arraybuffer.prototype.slice@1.0.2: - dependencies: - array-buffer-byte-length: 1.0.0 - call-bind: 1.0.2 - define-properties: 1.2.1 - es-abstract: 1.22.2 - get-intrinsic: 1.3.0 - is-array-buffer: 3.0.2 - is-shared-array-buffer: 1.0.2 + is-array-buffer: 3.0.5 arrify@3.0.0: {} @@ -6908,6 +7024,8 @@ snapshots: estree-walker: 3.0.3 js-tokens: 10.0.0 + async-function@1.0.0: {} + asynckit@0.4.0: {} autoprefixer@10.5.0(postcss@8.5.15): @@ -6921,6 +7039,10 @@ snapshots: available-typed-arrays@1.0.5: {} + available-typed-arrays@1.0.7: + dependencies: + possible-typed-array-names: 1.1.0 + axios@1.17.0: dependencies: follow-redirects: 1.16.0 @@ -7079,6 +7201,13 @@ snapshots: function-bind: 1.1.2 get-intrinsic: 1.3.0 + call-bind@1.0.9: + dependencies: + call-bind-apply-helpers: 1.0.2 + es-define-property: 1.0.1 + get-intrinsic: 1.3.0 + set-function-length: 1.2.2 + call-bound@1.0.4: dependencies: call-bind-apply-helpers: 1.0.2 @@ -7247,12 +7376,6 @@ snapshots: transitivePeerDependencies: - encoding - cross-spawn@7.0.5: - dependencies: - path-key: 3.1.1 - shebang-command: 2.0.0 - which: 2.0.2 - cross-spawn@7.0.6: dependencies: path-key: 3.1.1 @@ -7450,6 +7573,24 @@ snapshots: transitivePeerDependencies: - '@noble/hashes' + data-view-buffer@1.0.2: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + is-data-view: 1.0.2 + + data-view-byte-length@1.0.2: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + is-data-view: 1.0.2 + + data-view-byte-offset@1.0.1: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + is-data-view: 1.0.2 + date-fns@2.30.0: dependencies: '@babel/runtime': 7.28.3 @@ -7478,16 +7619,16 @@ snapshots: deep-is@0.1.4: {} - define-data-property@1.1.1: + define-data-property@1.1.4: dependencies: - get-intrinsic: 1.3.0 + es-define-property: 1.0.1 + es-errors: 1.3.0 gopd: 1.2.0 - has-property-descriptors: 1.0.0 define-properties@1.2.1: dependencies: - define-data-property: 1.1.1 - has-property-descriptors: 1.0.0 + define-data-property: 1.1.4 + has-property-descriptors: 1.0.2 object-keys: 1.1.1 delaunator@5.0.0: @@ -7574,8 +7715,6 @@ snapshots: elkjs@0.11.1: {} - emoji-regex@10.1.0: {} - emoji-regex@8.0.0: {} encodeurl@1.0.2: {} @@ -7616,47 +7755,62 @@ snapshots: dependencies: stackframe: 1.3.4 - es-abstract@1.22.2: + es-abstract@1.24.2: dependencies: - array-buffer-byte-length: 1.0.0 - arraybuffer.prototype.slice: 1.0.2 - available-typed-arrays: 1.0.5 - call-bind: 1.0.2 + array-buffer-byte-length: 1.0.2 + arraybuffer.prototype.slice: 1.0.4 + available-typed-arrays: 1.0.7 + call-bind: 1.0.9 + call-bound: 1.0.4 + data-view-buffer: 1.0.2 + data-view-byte-length: 1.0.2 + data-view-byte-offset: 1.0.1 + es-define-property: 1.0.1 + es-errors: 1.3.0 + es-object-atoms: 1.1.2 es-set-tostringtag: 2.1.0 - es-to-primitive: 1.2.1 - function.prototype.name: 1.1.6 + es-to-primitive: 1.3.0 + function.prototype.name: 1.2.0 get-intrinsic: 1.3.0 - get-symbol-description: 1.0.0 - globalthis: 1.0.3 + get-proto: 1.0.1 + get-symbol-description: 1.1.0 + globalthis: 1.0.4 gopd: 1.2.0 - has: 1.0.4 - has-property-descriptors: 1.0.0 - has-proto: 1.0.1 + has-property-descriptors: 1.0.2 + has-proto: 1.2.0 has-symbols: 1.1.0 - internal-slot: 1.0.5 - is-array-buffer: 3.0.2 + hasown: 2.0.4 + internal-slot: 1.1.0 + is-array-buffer: 3.0.5 is-callable: 1.2.7 - is-negative-zero: 2.0.2 - is-regex: 1.1.4 - is-shared-array-buffer: 1.0.2 - is-string: 1.0.7 - is-typed-array: 1.1.12 - is-weakref: 1.0.2 - object-inspect: 1.13.0 + is-data-view: 1.0.2 + is-negative-zero: 2.0.3 + is-regex: 1.2.1 + is-set: 2.0.3 + is-shared-array-buffer: 1.0.4 + is-string: 1.1.1 + is-typed-array: 1.1.15 + is-weakref: 1.1.1 + math-intrinsics: 1.1.0 + object-inspect: 1.13.4 object-keys: 1.1.1 - object.assign: 4.1.4 - regexp.prototype.flags: 1.5.1 - safe-array-concat: 1.0.1 - safe-regex-test: 1.0.0 - string.prototype.trim: 1.2.8 - string.prototype.trimend: 1.0.7 - string.prototype.trimstart: 1.0.7 - typed-array-buffer: 1.0.0 - typed-array-byte-length: 1.0.0 - typed-array-byte-offset: 1.0.0 - typed-array-length: 1.0.4 - unbox-primitive: 1.0.2 - which-typed-array: 1.1.11 + object.assign: 4.1.7 + own-keys: 1.0.1 + regexp.prototype.flags: 1.5.4 + safe-array-concat: 1.1.4 + safe-push-apply: 1.0.0 + safe-regex-test: 1.1.0 + set-proto: 1.0.0 + stop-iteration-iterator: 1.1.0 + string.prototype.trim: 1.2.11 + string.prototype.trimend: 1.0.10 + string.prototype.trimstart: 1.0.8 + typed-array-buffer: 1.0.3 + typed-array-byte-length: 1.0.3 + typed-array-byte-offset: 1.0.4 + typed-array-length: 1.0.8 + unbox-primitive: 1.1.0 + which-typed-array: 1.1.22 es-define-property@1.0.1: {} @@ -7664,7 +7818,7 @@ snapshots: es-module-lexer@2.1.0: {} - es-object-atoms@1.1.1: + es-object-atoms@1.1.2: dependencies: es-errors: 1.3.0 @@ -7673,17 +7827,17 @@ snapshots: es-errors: 1.3.0 get-intrinsic: 1.3.0 has-tostringtag: 1.0.2 - hasown: 2.0.2 + hasown: 2.0.4 - es-shim-unscopables@1.0.0: + es-shim-unscopables@1.1.0: dependencies: - has: 1.0.4 + hasown: 2.0.4 - es-to-primitive@1.2.1: + es-to-primitive@1.3.0: dependencies: is-callable: 1.2.7 - is-date-object: 1.0.5 - is-symbol: 1.0.4 + is-date-object: 1.1.0 + is-symbol: 1.1.1 esbuild@0.27.7: optionalDependencies: @@ -7753,85 +7907,87 @@ snapshots: escape-string-regexp@5.0.0: {} - eslint-import-resolver-node@0.3.7: + eslint-import-resolver-node@0.3.10: dependencies: debug: 3.2.7 - is-core-module: 2.13.0 - resolve: 1.22.2 + is-core-module: 2.16.2 + resolve: 2.0.0-next.7 transitivePeerDependencies: - supports-color - eslint-module-utils@2.8.0(@typescript-eslint/parser@6.8.0(eslint@8.52.0)(typescript@5.8.3))(eslint-import-resolver-node@0.3.7)(eslint@8.52.0): + eslint-module-utils@2.13.0(@typescript-eslint/parser@6.8.0(eslint@8.57.1)(typescript@5.8.3))(eslint-import-resolver-node@0.3.10)(eslint@8.57.1): dependencies: debug: 3.2.7 optionalDependencies: - '@typescript-eslint/parser': 6.8.0(eslint@8.52.0)(typescript@5.8.3) - eslint: 8.52.0 - eslint-import-resolver-node: 0.3.7 + '@typescript-eslint/parser': 6.8.0(eslint@8.57.1)(typescript@5.8.3) + eslint: 8.57.1 + eslint-import-resolver-node: 0.3.10 transitivePeerDependencies: - supports-color - eslint-plugin-compat@4.2.0(eslint@8.52.0): + eslint-plugin-compat@4.2.0(eslint@8.57.1): dependencies: '@mdn/browser-compat-data': 5.3.23 ast-metadata-inferer: 0.8.0 browserslist: 4.22.1 caniuse-lite: 1.0.30001757 - eslint: 8.52.0 + eslint: 8.57.1 find-up: 5.0.0 lodash.memoize: 4.1.2 semver: 7.6.3 - eslint-plugin-import@2.28.1(@typescript-eslint/parser@6.8.0(eslint@8.52.0)(typescript@5.8.3))(eslint@8.52.0): + eslint-plugin-import@2.32.0(@typescript-eslint/parser@6.8.0(eslint@8.57.1)(typescript@5.8.3))(eslint@8.57.1): dependencies: - array-includes: 3.1.6 - array.prototype.findlastindex: 1.2.3 - array.prototype.flat: 1.3.1 - array.prototype.flatmap: 1.3.1 + '@rtsao/scc': 1.1.0 + array-includes: 3.1.9 + array.prototype.findlastindex: 1.2.6 + array.prototype.flat: 1.3.3 + array.prototype.flatmap: 1.3.3 debug: 3.2.7 doctrine: 2.1.0 - eslint: 8.52.0 - eslint-import-resolver-node: 0.3.7 - eslint-module-utils: 2.8.0(@typescript-eslint/parser@6.8.0(eslint@8.52.0)(typescript@5.8.3))(eslint-import-resolver-node@0.3.7)(eslint@8.52.0) - has: 1.0.4 - is-core-module: 2.13.0 + eslint: 8.57.1 + eslint-import-resolver-node: 0.3.10 + eslint-module-utils: 2.13.0(@typescript-eslint/parser@6.8.0(eslint@8.57.1)(typescript@5.8.3))(eslint-import-resolver-node@0.3.10)(eslint@8.57.1) + hasown: 2.0.4 + is-core-module: 2.16.2 is-glob: 4.0.3 - minimatch: 3.1.2 - object.fromentries: 2.0.7 - object.groupby: 1.0.1 - object.values: 1.1.6 + minimatch: 3.1.5 + object.fromentries: 2.0.8 + object.groupby: 1.0.3 + object.values: 1.2.1 semver: 6.3.1 - tsconfig-paths: 3.14.2 + string.prototype.trimend: 1.0.10 + tsconfig-paths: 3.15.0 optionalDependencies: - '@typescript-eslint/parser': 6.8.0(eslint@8.52.0)(typescript@5.8.3) + '@typescript-eslint/parser': 6.8.0(eslint@8.57.1)(typescript@5.8.3) transitivePeerDependencies: - eslint-import-resolver-typescript - eslint-import-resolver-webpack - supports-color - eslint-plugin-simple-import-sort@10.0.0(eslint@8.52.0): + eslint-plugin-simple-import-sort@10.0.0(eslint@8.57.1): dependencies: - eslint: 8.52.0 + eslint: 8.57.1 - eslint-plugin-vue@9.17.0(eslint@8.52.0): + eslint-plugin-vue@9.17.0(eslint@8.57.1): dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@8.52.0) - eslint: 8.52.0 + '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.1) + eslint: 8.57.1 natural-compare: 1.4.0 nth-check: 2.1.1 postcss-selector-parser: 6.0.13 semver: 7.6.3 - vue-eslint-parser: 9.3.2(eslint@8.52.0) + vue-eslint-parser: 9.4.3(eslint@8.57.1) xml-name-validator: 4.0.0 transitivePeerDependencies: - supports-color - eslint-plugin-vuejs-accessibility@2.2.0(eslint@8.52.0): + eslint-plugin-vuejs-accessibility@2.5.0(eslint@8.57.1)(globals@13.20.0): dependencies: aria-query: 5.3.0 - emoji-regex: 10.1.0 - eslint: 8.52.0 - vue-eslint-parser: 9.3.2(eslint@8.52.0) + eslint: 8.57.1 + globals: 13.20.0 + vue-eslint-parser: 10.4.1(eslint@8.57.1) transitivePeerDependencies: - supports-color @@ -7849,26 +8005,26 @@ snapshots: eslint-visitor-keys@4.2.1: {} - eslint@8.52.0: + eslint@8.57.1: dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@8.52.0) + '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.1) '@eslint-community/regexpp': 4.9.1 - '@eslint/eslintrc': 2.1.2 - '@eslint/js': 8.52.0 - '@humanwhocodes/config-array': 0.11.13 + '@eslint/eslintrc': 2.1.4 + '@eslint/js': 8.57.1 + '@humanwhocodes/config-array': 0.13.0 '@humanwhocodes/module-importer': 1.0.1 '@nodelib/fs.walk': 1.2.8 '@ungap/structured-clone': 1.2.0 ajv: 6.12.6 chalk: 4.1.2 - cross-spawn: 7.0.5 + cross-spawn: 7.0.6 debug: 4.4.3(supports-color@10.2.2) doctrine: 3.0.0 escape-string-regexp: 4.0.0 eslint-scope: 7.2.2 eslint-visitor-keys: 3.4.3 espree: 9.6.1 - esquery: 1.5.0 + esquery: 1.7.0 esutils: 2.0.3 fast-deep-equal: 3.1.3 file-entry-cache: 6.0.1 @@ -7880,11 +8036,11 @@ snapshots: imurmurhash: 0.1.4 is-glob: 4.0.3 is-path-inside: 3.0.3 - js-yaml: 4.1.0 + js-yaml: 4.1.1 json-stable-stringify-without-jsonify: 1.0.1 levn: 0.4.1 lodash.merge: 4.6.2 - minimatch: 3.1.2 + minimatch: 3.1.5 natural-compare: 1.4.0 optionator: 0.9.3 strip-ansi: 6.0.1 @@ -7894,8 +8050,8 @@ snapshots: espree@10.4.0: dependencies: - acorn: 8.15.0 - acorn-jsx: 5.3.2(acorn@8.15.0) + acorn: 8.16.0 + acorn-jsx: 5.3.2(acorn@8.16.0) eslint-visitor-keys: 4.2.1 espree@9.6.1: @@ -8021,11 +8177,9 @@ snapshots: flat-cache@3.0.4: dependencies: - flatted: 3.3.3 + flatted: 3.4.2 rimraf: 3.0.2 - flatted@3.3.3: {} - flatted@3.4.2: {} flush-promises@1.0.2: {} @@ -8036,6 +8190,10 @@ snapshots: dependencies: is-callable: 1.2.7 + for-each@0.3.5: + dependencies: + is-callable: 1.2.7 + foreground-child@3.3.1: dependencies: cross-spawn: 7.0.6 @@ -8070,15 +8228,22 @@ snapshots: function-bind@1.1.2: {} - function.prototype.name@1.1.6: + function.prototype.name@1.2.0: dependencies: - call-bind: 1.0.2 - define-properties: 1.2.1 - es-abstract: 1.22.2 + call-bind: 1.0.9 + call-bound: 1.0.4 + es-define-property: 1.0.1 + es-errors: 1.3.0 functions-have-names: 1.2.3 + has-property-descriptors: 1.0.2 + hasown: 2.0.4 + is-callable: 1.2.7 + is-document.all: 1.0.0 functions-have-names@1.2.3: {} + generator-function@2.0.1: {} + get-caller-file@2.0.5: {} get-intrinsic@1.3.0: @@ -8086,22 +8251,23 @@ snapshots: call-bind-apply-helpers: 1.0.2 es-define-property: 1.0.1 es-errors: 1.3.0 - es-object-atoms: 1.1.1 + es-object-atoms: 1.1.2 function-bind: 1.1.2 get-proto: 1.0.1 gopd: 1.2.0 has-symbols: 1.1.0 - hasown: 2.0.2 + hasown: 2.0.4 math-intrinsics: 1.1.0 get-proto@1.0.1: dependencies: dunder-proto: 1.0.1 - es-object-atoms: 1.1.1 + es-object-atoms: 1.1.2 - get-symbol-description@1.0.0: + get-symbol-description@1.1.0: dependencies: - call-bind: 1.0.2 + call-bound: 1.0.4 + es-errors: 1.3.0 get-intrinsic: 1.3.0 glob-parent@5.1.2: @@ -8150,9 +8316,10 @@ snapshots: dependencies: type-fest: 0.20.2 - globalthis@1.0.3: + globalthis@1.0.4: dependencies: define-properties: 1.2.1 + gopd: 1.2.0 globby@11.1.0: dependencies: @@ -8198,15 +8365,17 @@ snapshots: - bufferutil - utf-8-validate - has-bigints@1.0.2: {} + has-bigints@1.1.0: {} has-flag@4.0.0: {} - has-property-descriptors@1.0.0: + has-property-descriptors@1.0.2: dependencies: - get-intrinsic: 1.3.0 + es-define-property: 1.0.1 - has-proto@1.0.1: {} + has-proto@1.2.0: + dependencies: + dunder-proto: 1.0.1 has-symbols@1.1.0: {} @@ -8214,12 +8383,6 @@ snapshots: dependencies: has-symbols: 1.1.0 - has@1.0.4: {} - - hasown@2.0.2: - dependencies: - function-bind: 1.1.2 - hasown@2.0.4: dependencies: function-bind: 1.1.2 @@ -8298,7 +8461,7 @@ snapshots: immutable@5.1.6: {} - import-fresh@3.3.0: + import-fresh@3.3.1: dependencies: parent-module: 1.0.1 resolve-from: 4.0.0 @@ -8320,11 +8483,11 @@ snapshots: ini@1.3.8: {} - internal-slot@1.0.5: + internal-slot@1.1.0: dependencies: - get-intrinsic: 1.3.0 - has: 1.0.4 - side-channel: 1.0.4 + es-errors: 1.3.0 + hasown: 2.0.4 + side-channel: 1.1.1 internmap@2.0.3: {} @@ -8333,62 +8496,96 @@ snapshots: call-bind: 1.0.2 has-tostringtag: 1.0.2 - is-array-buffer@3.0.2: + is-array-buffer@3.0.5: dependencies: - call-bind: 1.0.2 + call-bind: 1.0.9 + call-bound: 1.0.4 get-intrinsic: 1.3.0 - is-typed-array: 1.1.12 - is-bigint@1.0.4: + is-async-function@2.1.1: dependencies: - has-bigints: 1.0.2 + async-function: 1.0.0 + call-bound: 1.0.4 + get-proto: 1.0.1 + has-tostringtag: 1.0.2 + safe-regex-test: 1.1.0 + + is-bigint@1.1.0: + dependencies: + has-bigints: 1.1.0 is-binary-path@2.1.0: dependencies: binary-extensions: 2.3.0 - is-boolean-object@1.1.2: + is-boolean-object@1.2.2: dependencies: - call-bind: 1.0.2 + call-bound: 1.0.4 has-tostringtag: 1.0.2 is-buffer@1.1.6: {} is-callable@1.2.7: {} - is-core-module@2.13.0: + is-core-module@2.16.2: dependencies: - has: 1.0.4 + hasown: 2.0.4 - is-date-object@1.0.5: + is-data-view@1.0.2: dependencies: + call-bound: 1.0.4 + get-intrinsic: 1.3.0 + is-typed-array: 1.1.15 + + is-date-object@1.1.0: + dependencies: + call-bound: 1.0.4 has-tostringtag: 1.0.2 + is-document.all@1.0.0: + dependencies: + call-bound: 1.0.4 + is-extendable@0.1.1: {} is-extglob@2.1.1: {} + is-finalizationregistry@1.1.1: + dependencies: + call-bound: 1.0.4 + is-fullwidth-code-point@3.0.0: {} is-generator-function@1.0.10: dependencies: has-tostringtag: 1.0.2 + is-generator-function@1.1.2: + dependencies: + call-bound: 1.0.4 + generator-function: 2.0.1 + get-proto: 1.0.1 + has-tostringtag: 1.0.2 + safe-regex-test: 1.1.0 + is-glob@4.0.3: dependencies: is-extglob: 2.1.1 + is-map@2.0.3: {} + is-nan@1.3.2: dependencies: call-bind: 1.0.2 define-properties: 1.2.1 - is-negative-zero@2.0.2: {} + is-negative-zero@2.0.3: {} is-node-process@1.2.0: {} - is-number-object@1.0.7: + is-number-object@1.1.1: dependencies: + call-bound: 1.0.4 has-tostringtag: 1.0.2 is-number@7.0.0: {} @@ -8397,11 +8594,6 @@ snapshots: is-potential-custom-element-name@1.0.1: {} - is-regex@1.1.4: - dependencies: - call-bind: 1.0.2 - has-tostringtag: 1.0.2 - is-regex@1.2.1: dependencies: call-bound: 1.0.4 @@ -8409,27 +8601,43 @@ snapshots: has-tostringtag: 1.0.2 hasown: 2.0.4 - is-shared-array-buffer@1.0.2: + is-set@2.0.3: {} + + is-shared-array-buffer@1.0.4: dependencies: - call-bind: 1.0.2 + call-bound: 1.0.4 is-stream@2.0.1: {} - is-string@1.0.7: + is-string@1.1.1: dependencies: + call-bound: 1.0.4 has-tostringtag: 1.0.2 - is-symbol@1.0.4: + is-symbol@1.1.1: dependencies: + call-bound: 1.0.4 has-symbols: 1.1.0 + safe-regex-test: 1.1.0 is-typed-array@1.1.12: dependencies: which-typed-array: 1.1.11 - is-weakref@1.0.2: + is-typed-array@1.1.15: dependencies: - call-bind: 1.0.2 + which-typed-array: 1.1.22 + + is-weakmap@2.0.2: {} + + is-weakref@1.1.1: + dependencies: + call-bound: 1.0.4 + + is-weakset@2.0.4: + dependencies: + call-bound: 1.0.4 + get-intrinsic: 1.3.0 is-whitespace@0.3.0: {} @@ -8534,7 +8742,7 @@ snapshots: json5@1.0.2: dependencies: - minimist: 1.2.6 + minimist: 1.2.8 jsonc-parser@3.3.1: {} @@ -8814,8 +9022,6 @@ snapshots: dependencies: brace-expansion: 2.0.2 - minimist@1.2.6: {} - minimist@1.2.8: {} minipass@7.1.2: {} @@ -8929,6 +9135,13 @@ snapshots: node-addon-api@7.1.1: optional: true + node-exports-info@1.6.0: + dependencies: + array.prototype.flatmap: 1.3.3 + es-errors: 1.3.0 + object.entries: 1.1.9 + semver: 6.3.1 + node-fetch@2.6.7: dependencies: whatwg-url: 5.0.0 @@ -8959,8 +9172,6 @@ snapshots: object-hash@3.0.0: {} - object-inspect@1.13.0: {} - object-inspect@1.13.4: {} object-is@1.1.5: @@ -8977,24 +9188,41 @@ snapshots: has-symbols: 1.1.0 object-keys: 1.1.1 - object.fromentries@2.0.7: + object.assign@4.1.7: dependencies: - call-bind: 1.0.2 + call-bind: 1.0.9 + call-bound: 1.0.4 define-properties: 1.2.1 - es-abstract: 1.22.2 + es-object-atoms: 1.1.2 + has-symbols: 1.1.0 + object-keys: 1.1.1 - object.groupby@1.0.1: + object.entries@1.1.9: dependencies: - call-bind: 1.0.2 + call-bind: 1.0.9 + call-bound: 1.0.4 define-properties: 1.2.1 - es-abstract: 1.22.2 - get-intrinsic: 1.3.0 + es-object-atoms: 1.1.2 - object.values@1.1.6: + object.fromentries@2.0.8: dependencies: - call-bind: 1.0.2 + call-bind: 1.0.9 define-properties: 1.2.1 - es-abstract: 1.22.2 + es-abstract: 1.24.2 + es-object-atoms: 1.1.2 + + object.groupby@1.0.3: + dependencies: + call-bind: 1.0.9 + define-properties: 1.2.1 + es-abstract: 1.24.2 + + object.values@1.2.1: + dependencies: + call-bind: 1.0.9 + call-bound: 1.0.4 + define-properties: 1.2.1 + es-object-atoms: 1.1.2 obug@2.1.1: {} @@ -9044,6 +9272,12 @@ snapshots: outvariant@1.4.3: {} + own-keys@1.0.1: + dependencies: + get-intrinsic: 1.3.0 + object-keys: 1.1.1 + safe-push-apply: 1.0.0 + p-event@5.0.1: dependencies: p-timeout: 5.1.0 @@ -9156,6 +9390,8 @@ snapshots: dependencies: vue: 2.7.16 + possible-typed-array-names@1.1.0: {} + postcss-load-config@6.0.1(postcss@8.5.15)(yaml@2.6.1): dependencies: lilconfig: 3.1.3 @@ -9276,13 +9512,27 @@ snapshots: indent-string: 4.0.0 strip-indent: 3.0.0 + reflect.getprototypeof@1.0.10: + dependencies: + call-bind: 1.0.9 + define-properties: 1.2.1 + es-abstract: 1.24.2 + es-errors: 1.3.0 + es-object-atoms: 1.1.2 + get-intrinsic: 1.3.0 + get-proto: 1.0.1 + which-builtin-type: 1.2.1 + regenerator-runtime@0.14.0: {} - regexp.prototype.flags@1.5.1: + regexp.prototype.flags@1.5.4: dependencies: - call-bind: 1.0.2 + call-bind: 1.0.9 define-properties: 1.2.1 - set-function-name: 2.0.1 + es-errors: 1.3.0 + get-proto: 1.0.1 + gopd: 1.2.0 + set-function-name: 2.0.2 repeat-string@1.6.1: {} @@ -9296,9 +9546,12 @@ snapshots: resolve-from@5.0.0: {} - resolve@1.22.2: + resolve@2.0.0-next.7: dependencies: - is-core-module: 2.13.0 + es-errors: 1.3.0 + is-core-module: 2.16.2 + node-exports-info: 1.6.0 + object-keys: 1.1.1 path-parse: 1.0.7 supports-preserve-symlinks-flag: 1.0.0 @@ -9445,9 +9698,10 @@ snapshots: dependencies: tslib: 2.8.1 - safe-array-concat@1.0.1: + safe-array-concat@1.1.4: dependencies: - call-bind: 1.0.2 + call-bind: 1.0.9 + call-bound: 1.0.4 get-intrinsic: 1.3.0 has-symbols: 1.1.0 isarray: 2.0.5 @@ -9456,11 +9710,10 @@ snapshots: safe-buffer@5.2.1: {} - safe-regex-test@1.0.0: + safe-push-apply@1.0.0: dependencies: - call-bind: 1.0.2 - get-intrinsic: 1.3.0 - is-regex: 1.1.4 + es-errors: 1.3.0 + isarray: 2.0.5 safe-regex-test@1.1.0: dependencies: @@ -9499,11 +9752,27 @@ snapshots: set-cookie-parser@3.1.0: {} - set-function-name@2.0.1: + set-function-length@1.2.2: dependencies: - define-data-property: 1.1.1 + define-data-property: 1.1.4 + es-errors: 1.3.0 + function-bind: 1.1.2 + get-intrinsic: 1.3.0 + gopd: 1.2.0 + has-property-descriptors: 1.0.2 + + set-function-name@2.0.2: + dependencies: + define-data-property: 1.1.4 + es-errors: 1.3.0 functions-have-names: 1.2.3 - has-property-descriptors: 1.0.0 + has-property-descriptors: 1.0.2 + + set-proto@1.0.0: + dependencies: + dunder-proto: 1.0.1 + es-errors: 1.3.0 + es-object-atoms: 1.1.2 setimmediate@1.0.5: {} @@ -9535,12 +9804,6 @@ snapshots: object-inspect: 1.13.4 side-channel-map: 1.0.1 - side-channel@1.0.4: - dependencies: - call-bind: 1.0.2 - get-intrinsic: 1.3.0 - object-inspect: 1.13.0 - side-channel@1.1.1: dependencies: es-errors: 1.3.0 @@ -9630,6 +9893,11 @@ snapshots: std-env@4.1.0: {} + stop-iteration-iterator@1.1.0: + dependencies: + es-errors: 1.3.0 + internal-slot: 1.1.0 + store@2.0.12: {} stream-browserify@3.0.0: @@ -9653,23 +9921,29 @@ snapshots: is-fullwidth-code-point: 3.0.0 strip-ansi: 6.0.1 - string.prototype.trim@1.2.8: + string.prototype.trim@1.2.11: dependencies: - call-bind: 1.0.2 + call-bind: 1.0.9 + call-bound: 1.0.4 + define-data-property: 1.1.4 define-properties: 1.2.1 - es-abstract: 1.22.2 + es-abstract: 1.24.2 + es-object-atoms: 1.1.2 + has-property-descriptors: 1.0.2 + safe-regex-test: 1.1.0 - string.prototype.trimend@1.0.7: + string.prototype.trimend@1.0.10: dependencies: - call-bind: 1.0.2 + call-bind: 1.0.9 + call-bound: 1.0.4 define-properties: 1.2.1 - es-abstract: 1.22.2 + es-object-atoms: 1.1.2 - string.prototype.trimstart@1.0.7: + string.prototype.trimstart@1.0.8: dependencies: - call-bind: 1.0.2 + call-bind: 1.0.9 define-properties: 1.2.1 - es-abstract: 1.22.2 + es-object-atoms: 1.1.2 string_decoder@1.1.1: dependencies: @@ -9821,11 +10095,11 @@ snapshots: v8-compile-cache-lib: 3.0.1 yn: 3.1.1 - tsconfig-paths@3.14.2: + tsconfig-paths@3.15.0: dependencies: '@types/json5': 0.0.29 json5: 1.0.2 - minimist: 1.2.6 + minimist: 1.2.8 strip-bom: 3.0.0 tslib@1.14.1: {} @@ -9893,32 +10167,38 @@ snapshots: media-typer: 0.3.0 mime-types: 2.1.35 - typed-array-buffer@1.0.0: + typed-array-buffer@1.0.3: dependencies: - call-bind: 1.0.2 - get-intrinsic: 1.3.0 - is-typed-array: 1.1.12 + call-bound: 1.0.4 + es-errors: 1.3.0 + is-typed-array: 1.1.15 - typed-array-byte-length@1.0.0: + typed-array-byte-length@1.0.3: dependencies: - call-bind: 1.0.2 - for-each: 0.3.3 - has-proto: 1.0.1 - is-typed-array: 1.1.12 + call-bind: 1.0.9 + for-each: 0.3.5 + gopd: 1.2.0 + has-proto: 1.2.0 + is-typed-array: 1.1.15 - typed-array-byte-offset@1.0.0: + typed-array-byte-offset@1.0.4: dependencies: - available-typed-arrays: 1.0.5 - call-bind: 1.0.2 - for-each: 0.3.3 - has-proto: 1.0.1 - is-typed-array: 1.1.12 + available-typed-arrays: 1.0.7 + call-bind: 1.0.9 + for-each: 0.3.5 + gopd: 1.2.0 + has-proto: 1.2.0 + is-typed-array: 1.1.15 + reflect.getprototypeof: 1.0.10 - typed-array-length@1.0.4: + typed-array-length@1.0.8: dependencies: - call-bind: 1.0.2 - for-each: 0.3.3 - is-typed-array: 1.1.12 + call-bind: 1.0.9 + for-each: 0.3.5 + gopd: 1.2.0 + is-typed-array: 1.1.15 + possible-typed-array-names: 1.1.0 + reflect.getprototypeof: 1.0.10 typescript@5.8.3: {} @@ -9928,12 +10208,12 @@ snapshots: ufo@1.6.3: {} - unbox-primitive@1.0.2: + unbox-primitive@1.1.0: dependencies: - call-bind: 1.0.2 - has-bigints: 1.0.2 + call-bound: 1.0.4 + has-bigints: 1.1.0 has-symbols: 1.1.0 - which-boxed-primitive: 1.0.2 + which-boxed-primitive: 1.1.1 undici-types@7.24.6: {} @@ -10423,10 +10703,10 @@ snapshots: transitivePeerDependencies: - '@vue/composition-api' - vue-eslint-parser@10.2.0(eslint@8.52.0): + vue-eslint-parser@10.4.1(eslint@8.57.1): dependencies: debug: 4.4.3(supports-color@10.2.2) - eslint: 8.52.0 + eslint: 8.57.1 eslint-scope: 8.4.0 eslint-visitor-keys: 4.2.1 espree: 10.4.0 @@ -10435,10 +10715,10 @@ snapshots: transitivePeerDependencies: - supports-color - vue-eslint-parser@9.3.2(eslint@8.52.0): + vue-eslint-parser@9.4.3(eslint@8.57.1): dependencies: debug: 4.4.3(supports-color@10.2.2) - eslint: 8.52.0 + eslint: 8.57.1 eslint-scope: 7.2.2 eslint-visitor-keys: 3.4.3 espree: 9.6.1 @@ -10520,13 +10800,36 @@ snapshots: tr46: 0.0.3 webidl-conversions: 3.0.1 - which-boxed-primitive@1.0.2: + which-boxed-primitive@1.1.1: dependencies: - is-bigint: 1.0.4 - is-boolean-object: 1.1.2 - is-number-object: 1.0.7 - is-string: 1.0.7 - is-symbol: 1.0.4 + is-bigint: 1.1.0 + is-boolean-object: 1.2.2 + is-number-object: 1.1.1 + is-string: 1.1.1 + is-symbol: 1.1.1 + + which-builtin-type@1.2.1: + dependencies: + call-bound: 1.0.4 + function.prototype.name: 1.2.0 + has-tostringtag: 1.0.2 + is-async-function: 2.1.1 + is-date-object: 1.1.0 + is-finalizationregistry: 1.1.1 + is-generator-function: 1.1.2 + is-regex: 1.2.1 + is-weakref: 1.1.1 + isarray: 2.0.5 + which-boxed-primitive: 1.1.1 + which-collection: 1.0.2 + which-typed-array: 1.1.22 + + which-collection@1.0.2: + dependencies: + is-map: 2.0.3 + is-set: 2.0.3 + is-weakmap: 2.0.2 + is-weakset: 2.0.4 which-typed-array@1.1.11: dependencies: @@ -10536,6 +10839,16 @@ snapshots: gopd: 1.2.0 has-tostringtag: 1.0.2 + which-typed-array@1.1.22: + dependencies: + available-typed-arrays: 1.0.7 + call-bind: 1.0.9 + call-bound: 1.0.4 + for-each: 0.3.5 + get-proto: 1.0.1 + gopd: 1.2.0 + has-tostringtag: 1.0.2 + which@2.0.2: dependencies: isexe: 2.0.0 From 58db8f3376d13e248db3063a6811dd735efbfdd4 Mon Sep 17 00:00:00 2001 From: Dannon Baker Date: Fri, 12 Jun 2026 09:11:12 -0400 Subject: [PATCH 20/31] Unpin vue-demi (0.13.11 exact -> ^0.14.10). The exact pin had stopped doing its job: pinia 2.3.1 requires vue-demi ^0.14.10 and @vueuse 10.x requires >=0.14.6, so the lockfile was already carrying a second 0.14.10 copy for them, and two vue-demi instances is exactly the kind of interop hazard the pin was presumably meant to prevent. 0.14.x fully supports Vue 2.7 (it even got 2.7-specific fixes). Now app code, pinia, and vueuse all share one 0.14.10; only vue-echarts 7 still nests its own 0.13.11, which goes away whenever vue-echarts 8 happens. Store and composable tests pass. --- client/package.json | 2 +- client/pnpm-lock.yaml | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/client/package.json b/client/package.json index 43f485a0bcd..5637d71ccf4 100644 --- a/client/package.json +++ b/client/package.json @@ -129,7 +129,7 @@ "vscode-languageserver-types": "^3.17.5", "vue": "^2.7.16", "vue-class-component": "^7.2.6", - "vue-demi": "0.13.11", + "vue-demi": "^0.14.10", "vue-echarts": "^7.0.3", "vue-infinite-scroll": "^2.0.2", "vue-json-pretty": "^1.9.5", diff --git a/client/pnpm-lock.yaml b/client/pnpm-lock.yaml index c4dcd4906b1..26ab420641a 100644 --- a/client/pnpm-lock.yaml +++ b/client/pnpm-lock.yaml @@ -292,8 +292,8 @@ importers: specifier: ^7.2.6 version: 7.2.6(vue@2.7.16) vue-demi: - specifier: 0.13.11 - version: 0.13.11(vue@2.7.16) + specifier: ^0.14.10 + version: 0.14.10(vue@2.7.16) vue-echarts: specifier: ^7.0.3 version: 7.0.3(echarts@5.5.1)(vue@2.7.16) From 7445abd1ac22ab8d9930c718b26dc69503cf5085 Mon Sep 17 00:00:00 2001 From: Dannon Baker Date: Fri, 12 Jun 2026 09:13:05 -0400 Subject: [PATCH 21/31] Bump runtime libs, all changelog-vetted: yaml 2.9.0, markdown-it 14.2.0 (parser edge-case fixes only), @sentry/vue 10.57.0 (still vue 2.x; our beforeSend only filters by error name so the array-attribute change doesn't apply), imask 7.6.1, vue2-teleport 1.2.2 (the new multi-match teleport behavior can't hit us -- both call sites target unique ids), @fontsource/atkinson-hyperlegible 5.2.8 (same file layout, refreshed glyphs), linkify-html 4.3.3 (pairs with the linkifyjs 4.3.3 we already have -- 4.3.x peer-pins its core exactly), vscode-languageserver-types 3.18.0, jquery-ui 1.14.2 (upstream tests against jquery 2.2.4, and nothing imports the npm package anyway -- the vendored copy in src/libs is what runs), jquery-mousewheel 3.2.2, and decode-uri-component ^0.2.1 -> ^0.4.1 (now pure ESM which is fine for vite/vitest, and it stopped converting + to space in 0.3 -- Home.vue already guards for exactly that). Everything except decode-uri-component is in-range/lockfile-only. jquery-ui and jquery-mousewheel are honestly removal candidates; nothing in src imports either. --- client/package.json | 2 +- client/pnpm-lock.yaml | 265 +++++++++++++++++++++--------------------- 2 files changed, 134 insertions(+), 133 deletions(-) diff --git a/client/package.json b/client/package.json index 5637d71ccf4..aa2e44ce214 100644 --- a/client/package.json +++ b/client/package.json @@ -72,7 +72,7 @@ "d3-zoom": "^3.0.0", "d3v3": "npm:d3@3", "date-fns": "^2.30.0", - "decode-uri-component": "^0.2.1", + "decode-uri-component": "^0.4.1", "dexie": "^3.2.5", "diff": "^8.0.3", "dom-to-image": "^2.6.0", diff --git a/client/pnpm-lock.yaml b/client/pnpm-lock.yaml index 26ab420641a..c23fbc18da9 100644 --- a/client/pnpm-lock.yaml +++ b/client/pnpm-lock.yaml @@ -26,7 +26,7 @@ importers: version: 1.7.6 '@fontsource/atkinson-hyperlegible': specifier: ^5.0.17 - version: 5.0.17 + version: 5.2.8 '@fortawesome/fontawesome-free': specifier: ^5.15.4 version: 5.15.4 @@ -68,7 +68,7 @@ importers: version: 2.11.8 '@sentry/vue': specifier: ^10.45.0 - version: 10.45.0(pinia@2.3.1(typescript@5.8.3)(vue@2.7.16))(vue@2.7.16) + version: 10.57.0(pinia@2.3.1(typescript@5.8.3)(vue@2.7.16))(vue@2.7.16) '@vueuse/core': specifier: ^10.5.0 version: 10.5.0(vue@2.7.16) @@ -118,8 +118,8 @@ importers: specifier: ^2.30.0 version: 2.30.0 decode-uri-component: - specifier: ^0.2.1 - version: 0.2.2 + specifier: ^0.4.1 + version: 0.4.1 dexie: specifier: ^3.2.5 version: 3.2.5(karma@6.4.4) @@ -161,7 +161,7 @@ importers: version: 1.0.1 imask: specifier: ^7.1.3 - version: 7.1.3 + version: 7.6.1 jquery: specifier: '2' version: 2.2.4 @@ -170,16 +170,16 @@ importers: version: 1.4.1 jquery-mousewheel: specifier: ^3.1.13 - version: 3.1.13 + version: 3.2.2 jquery-ui: specifier: ^1.13.2 - version: 1.13.2 + version: 1.14.2 katex: specifier: ^0.17.0 version: 0.17.0 linkify-html: specifier: ^4.1.1 - version: 4.1.1(linkifyjs@4.3.3) + version: 4.3.3(linkifyjs@4.3.3) linkifyjs: specifier: ^4.1.1 version: 4.3.3 @@ -194,7 +194,7 @@ importers: version: 0.344.0(vue@2.7.16) markdown-it: specifier: ^14.1.1 - version: 14.1.1 + version: 14.2.0 markdown-it-regexp: specifier: ^0.4.0 version: 0.4.0 @@ -284,7 +284,7 @@ importers: version: 5.21.0(vega@5.30.0) vscode-languageserver-types: specifier: ^3.17.5 - version: 3.17.5 + version: 3.18.0 vue: specifier: 2.7.16 version: 2.7.16 @@ -323,7 +323,7 @@ importers: version: 2.3.5 vue2-teleport: specifier: ^1.0.1 - version: 1.0.1 + version: 1.2.2 vuedraggable: specifier: ^2.24.3 version: 2.24.3 @@ -332,11 +332,11 @@ importers: version: 0.5.0 yaml: specifier: ^2.6.1 - version: 2.6.1 + version: 2.9.0 devDependencies: '@modyfi/vite-plugin-yaml': specifier: ^1.1.1 - version: 1.1.1(rollup@4.60.1)(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.6.1)) + version: 1.1.1(rollup@4.60.1)(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.9.0)) '@pinia/testing': specifier: 0.1.5 version: 0.1.5(pinia@2.3.1(typescript@5.8.3)(vue@2.7.16))(vue@2.7.16) @@ -378,7 +378,7 @@ importers: version: 6.8.0(eslint@8.57.1)(typescript@5.8.3) '@vitejs/plugin-vue2': specifier: ^2.3.4 - version: 2.3.4(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.6.1))(vue@2.7.16) + version: 2.3.4(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.9.0))(vue@2.7.16) '@vitest/coverage-v8': specifier: ^4.1.5 version: 4.1.8(vitest@4.1.8) @@ -459,13 +459,13 @@ importers: version: 5.8.3 vite: specifier: ^8.0.11 - version: 8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.6.1) + version: 8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.9.0) vitest: specifier: ^4.1.5 - version: 4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.10.2)(jsdom@28.1.0)(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.6.1)) + version: 4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.10.2)(jsdom@28.1.0)(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.9.0)) vitest-fail-on-console: specifier: ^0.10.1 - version: 0.10.1(@vitest/utils@4.1.8)(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.6.1))(vitest@4.1.8) + version: 0.10.1(@vitest/utils@4.1.8)(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.9.0))(vitest@4.1.8) vitest-location-mock: specifier: ^1.0.4 version: 1.0.4 @@ -502,13 +502,13 @@ importers: version: 10.9.2(@types/node@25.9.3)(typescript@5.8.3) tsup: specifier: ^8.4.0 - version: 8.5.1(postcss@8.5.15)(typescript@5.8.3)(yaml@2.6.1) + version: 8.5.1(postcss@8.5.15)(typescript@5.8.3)(yaml@2.9.0) typescript: specifier: ^5.7.3 version: 5.8.3 vitest: specifier: ^4.0.14 - version: 4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.10.2)(jsdom@28.1.0)(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.101.0)(yaml@2.6.1)) + version: 4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.10.2)(jsdom@28.1.0)(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.101.0)(yaml@2.9.0)) packages: @@ -578,8 +578,8 @@ packages: engines: {node: '>=6.0.0'} hasBin: true - '@babel/runtime-corejs3@7.23.2': - resolution: {integrity: sha512-54cIh74Z1rp4oIjsHjqN+WM4fMyCBYe+LpZ9jWm51CZ1fbH3SkAzQD/3XLoNkjbJ7YEmjobLXyvQrFypRHOrXw==} + '@babel/runtime-corejs3@7.29.7': + resolution: {integrity: sha512-ppj9ouYku+RX0ljtgZd+KMO5mkM2bCqg8H2PYAFWnLsHEIKIdRojqbJ2i3eVHrisuxy7nOFCmngTDdWtUCdXUQ==} engines: {node: '>=6.9.0'} '@babel/runtime@7.28.3': @@ -1035,8 +1035,8 @@ packages: '@floating-ui/utils@0.2.11': resolution: {integrity: sha512-RiB/yIh78pcIxl6lLMG0CgBXAZ2Y0eVHqMPYugu+9U0AeT6YBeiJpf7lbdJNIugFP5SIjwNRgo4DhR1Qxi26Gg==} - '@fontsource/atkinson-hyperlegible@5.0.17': - resolution: {integrity: sha512-Evhr7GER/hFVxYj93msIC/BxEDpIMU27C42alWeILCyWsQEu3AWKLxQY/IVZyLrpgVT1ktWAXnH52WS1NarPPg==} + '@fontsource/atkinson-hyperlegible@5.2.8': + resolution: {integrity: sha512-HciLcJ5DIK/OVOdo71EbEN4NnvDFlp6/SpAxtcbWf2aAdcsOuPqITxj5KNEXb48qSPSdnnZdGGnSJChPKi3/bA==} '@fortawesome/fontawesome-common-types@6.2.1': resolution: {integrity: sha512-Sz07mnQrTekFWLz5BMjOzHl/+NooTdW8F8kDQxjWwbpOJcnoSg4vUDng8d/WR1wOxM0O+CY9Zw0nR054riNYtQ==} @@ -1578,32 +1578,32 @@ packages: '@rtsao/scc@1.1.0': resolution: {integrity: sha512-zt6OdqaDoOnJ1ZYsCYGt9YmWzDXl4vQdKTyJev62gFhRGKdx7mcT54V9KIjg+d2wi9EXsPvAPKe7i7WjfVWB8g==} - '@sentry-internal/browser-utils@10.45.0': - resolution: {integrity: sha512-ZPZpeIarXKScvquGx2AfNKcYiVNDA4wegMmjyGVsTA2JPmP0TrJoO3UybJS6KGDeee8V3I3EfD/ruauMm7jOFQ==} + '@sentry-internal/browser-utils@10.57.0': + resolution: {integrity: sha512-tXObp954rMTSYKlbftjVXHtNl4t/6ssks3jkqyzmKb+PDPWzabGQO7sWwqVuTjT8Kx/8A3FmriS1bGmqxiJy3A==} engines: {node: '>=18'} - '@sentry-internal/feedback@10.45.0': - resolution: {integrity: sha512-vCSurazFVq7RUeYiM5X326jA5gOVrWYD6lYX2fbjBOMcyCEhDnveNxMT62zKkZDyNT/jyD194nz/cjntBUkyWA==} + '@sentry-internal/feedback@10.57.0': + resolution: {integrity: sha512-ZcF4QhkqGX3iiQSXB2N0N3Awp+j5iqnDRu6PA/qyLFrWqH5ZiiAAgu59OLD9E6XAdg6iFtLYw19MAMZVK8qNOQ==} engines: {node: '>=18'} - '@sentry-internal/replay-canvas@10.45.0': - resolution: {integrity: sha512-nvq/AocdZTuD7y0KSiWi3gVaY0s5HOFy86mC/v1kDZmT/jsBAzN5LDkk/f1FvsWma1peqQmpUqxvhC+YIW294Q==} + '@sentry-internal/replay-canvas@10.57.0': + resolution: {integrity: sha512-zsfa4JcfV0AEc9YhNxNabd5lSZL2Av84saAyexGAqcHs+67m9Gd0cGStOzMb/nCl7UAtmdP0aI+G7a3rcxxN/A==} engines: {node: '>=18'} - '@sentry-internal/replay@10.45.0': - resolution: {integrity: sha512-vjosRoGA1bzhVAEO1oce+CsRdd70quzBeo7WvYqpcUnoLe/Rv8qpOMqWX3j26z7XfFHMExWQNQeLxmtYOArvlw==} + '@sentry-internal/replay@10.57.0': + resolution: {integrity: sha512-Wmnx/6ABynVH1iwuoNUqJNyjIUqsqoGML7qsyivBRKb5Wo2YQtPOQlQYfxfZSvWzGpcoSVdInkRjDssUQxQEQg==} engines: {node: '>=18'} - '@sentry/browser@10.45.0': - resolution: {integrity: sha512-e/a8UMiQhqqv706McSIcG6XK+AoQf9INthi2pD+giZfNRTzXTdqHzUT5OIO5hg8Am6eF63nDJc+vrYNPhzs51Q==} + '@sentry/browser@10.57.0': + resolution: {integrity: sha512-s36AQy/CKXTfyY9Z+qUhzNomntZXgfs0rbaK7q9ffnFkqcPwzE8qQtVs58y3Suut56u+AhwSztgQtERcuZ5VIA==} engines: {node: '>=18'} - '@sentry/core@10.45.0': - resolution: {integrity: sha512-s69UXxvefeQxuZ5nY7/THtTrIEvJxNVCp3ns4kwoCw1qMpgpvn/296WCKVmM7MiwnaAdzEKnAvLAwaxZc2nM7Q==} + '@sentry/core@10.57.0': + resolution: {integrity: sha512-kntItTA2kiT0YpL7encXaF6mkdZMB+y48lwj8w1wkfBpfJAC7sifdgrzLQZqmsqVNE3crg9VfufaAGA+78uFMg==} engines: {node: '>=18'} - '@sentry/vue@10.45.0': - resolution: {integrity: sha512-p6ghTgQtiCBZ+Yw0B2xmC69S8AdCRRsYvbTHW7MJYspwNnJDs7rqgCBqOxNhvr3tsKdDuEOEHLtf/5hbKi+8xQ==} + '@sentry/vue@10.57.0': + resolution: {integrity: sha512-U4Vg4WJGhDfallavSt2gUFeOKrcrgA/rP6ZJc0fFM8vtpkAzmx+eLcTO+jvoqmk/GoQde4t3yy7iQwi/xGg2ow==} engines: {node: '>=18'} peerDependencies: '@tanstack/vue-router': ^1.64.0 @@ -2414,8 +2414,8 @@ packages: resolution: {integrity: sha512-ei8Aos7ja0weRpFzJnEA9UHJ/7XQmqglbRwnf2ATjcB9Wq874VKH9kfjjirM6UhU2/E5fFYadylyhFldcqSidQ==} engines: {node: '>=18'} - core-js-pure@3.33.0: - resolution: {integrity: sha512-FKSIDtJnds/YFIEaZ4HszRX7hkxGpNKM7FC9aJ9WLJbSd3lD4vOltFuVIBLR8asSx9frkTSqL0dw90SKQxgKrg==} + core-js-pure@3.49.0: + resolution: {integrity: sha512-XM4RFka59xATyJv/cS3O3Kml72hQXUeGRuuTmMYFxwzc9/7C8OYTaIR/Ji+Yt8DXzsFLNhat15cE/JP15HrCgw==} core-util-is@1.0.3: resolution: {integrity: sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==} @@ -2665,9 +2665,9 @@ packages: decimal.js@10.6.0: resolution: {integrity: sha512-YpgQiITW3JXGntzdUmyUR1V812Hn8T1YVXhCu+wO3OpS4eU9l4YdD3qjyiKdV6mvV29zapkMeD390UVEf2lkUg==} - decode-uri-component@0.2.2: - resolution: {integrity: sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ==} - engines: {node: '>=0.10'} + decode-uri-component@0.4.1: + resolution: {integrity: sha512-+8VxcR21HhTy8nOt6jf20w0c9CADrw1O8d+VZ/YzzCt4bJ3uBjw+D1q2osAB8RnpwwaeYBxy0HyKQxD5JBMuuQ==} + engines: {node: '>=14.16'} deep-is@0.1.4: resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} @@ -3301,8 +3301,8 @@ packages: resolution: {integrity: sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==} engines: {node: '>= 4'} - imask@7.1.3: - resolution: {integrity: sha512-jZCqTI5Jgukhl2ff+znBQd8BiHOTlnFYCIgggzHYDdoJsHmSSWr1BaejcYBxsjy4ZIs8Rm0HhbOxQcobcdESRQ==} + imask@7.6.1: + resolution: {integrity: sha512-sJlIFM7eathUEMChTh9Mrfw/IgiWgJqBKq2VNbyXvBZ7ev/IlO6/KQTKlV/Fm+viQMLrFLG/zCuudrLIwgK2dg==} engines: {npm: '>=4.0.0'} immediate@3.0.6: @@ -3538,11 +3538,11 @@ packages: jquery-migrate@1.4.1: resolution: {integrity: sha512-RwIqqAaEC1gQ9KFtdw69wse2bUGQnGNwbkZBkCwSCYkAICMlpVxAbHmfvWaS7SfLGJrYd13FZTuuQgZ6gBotJQ==} - jquery-mousewheel@3.1.13: - resolution: {integrity: sha512-GXhSjfOPyDemM005YCEHvzrEALhKDIswtxSHSR2e4K/suHVJKJxxRCGz3skPjNxjJjQa9AVSGGlYjv1M3VLIPg==} + jquery-mousewheel@3.2.2: + resolution: {integrity: sha512-JP71xTAg08ZY3hcs9ZbYUZ5i+dkSsz4yRl/zpWkAmtzc+kMs5EfPkpkINSidiLYMaR0MTo3DfFGF9WIezMsFQQ==} - jquery-ui@1.13.2: - resolution: {integrity: sha512-wBZPnqWs5GaYJmo1Jj0k/mrSkzdQzKDwhXNtHKcBdAcKVxMM3KNYFq+iJ2i1rwiG53Z8M4mTn3Qxrm17uH1D4Q==} + jquery-ui@1.14.2: + resolution: {integrity: sha512-1gSl7PUjyipa2adSr780Ujk16faicrV7PjPPzPtvWk7tTqBnsqp67NNV9jZK2+BIxUPXWSnIUU/LBCgwgGZE+Q==} jquery@2.2.4: resolution: {integrity: sha512-lBHj60ezci2u1v2FqnZIraShGgEXq35qCzMv4lITyHGppTnA13rwR0MgwyNJh9TnDs3aXUvd1xjAotfraMHX/Q==} @@ -3729,13 +3729,13 @@ packages: lines-and-columns@1.2.4: resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} - linkify-html@4.1.1: - resolution: {integrity: sha512-7RcF7gIhEOGBBvs7orCJ2tevaz7iF0ZLZSRPWNNBOnW/uGjOOQYB+ztSeHF6dchMC2dM9H8zZlt6Z959bjteaw==} + linkify-html@4.3.3: + resolution: {integrity: sha512-VQH0xk8QilyWvRNQqyervP/zfe/KqE1bXB5NcwWoz8Oj9Yz5hWM0VvXs9vkLy7NlTao1jrmM1cqQv8rTmerctg==} peerDependencies: - linkifyjs: ^4.0.0 + linkifyjs: '==4.3.3' - linkify-it@5.0.0: - resolution: {integrity: sha512-5aHCbzQRADcdP+ATqnDuhhJ/MRIqDkZX5pyjFHRRysS8vZ5AbqGEoFIb6pYHPZ+L/OC2Lc+xT8uHVVR5CAK/wQ==} + linkify-it@5.0.1: + resolution: {integrity: sha512-wVoTjP4Q6R0NW5hiZkVJaFZPWgtXfoGF+6LucL3/FtiNjmcHhYjEr5f1Kqjirc1nBW07J/ZuRFumqr2oqccEWg==} linkifyjs@4.3.3: resolution: {integrity: sha512-P8aEP5U/D1/IlTY2OeYsErdwh9bGuLE30NcXtKEjgdHcahveQoQwM2yZNsioQHsWFz0P7KKudisbrzCgR0sDHg==} @@ -3818,8 +3818,8 @@ packages: markdown-it-regexp@0.4.0: resolution: {integrity: sha512-0XQmr46K/rMKnI93Y3CLXsHj4jIioRETTAiVnJnjrZCEkGaDOmUxTbZj/aZ17G5NlRcVpWBYjqpwSlQ9lj+Kxw==} - markdown-it@14.1.1: - resolution: {integrity: sha512-BuU2qnTti9YKgK5N+IeMubp14ZUKUUw7yeJbkjtosvHiP0AZ5c8IAgEMk79D0eC8F23r4Ac/q8cAIFdm2FtyoA==} + markdown-it@14.2.0: + resolution: {integrity: sha512-1TGiQiJVRQ3NPmZH6sx5Cfnmg6GQm9jvC1ch4TK511NjSJvjzKLzn5pPfZRNZkRPZP0HqCioSndqH8v2nRaWVQ==} hasBin: true math-intrinsics@1.1.0: @@ -4410,9 +4410,6 @@ packages: resolution: {integrity: sha512-00o4I+DVrefhv+nX0ulyi3biSHCPDe+yLv5o/p6d/UVlirijB8E16FtfwSAi4g3tcqrQ4lRAqQSoFEZJehYEcw==} engines: {node: '>= 0.4'} - regenerator-runtime@0.14.0: - resolution: {integrity: sha512-srw17NI0TUWHuGa5CFGGmhfNIeja30WMBfbslPNhf6JrqQlLN5gcrvig1oqPxiVaXb0oW0XRKtH6Nngs5lKCIA==} - regexp.prototype.flags@1.5.4: resolution: {integrity: sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA==} engines: {node: '>= 0.4'} @@ -5285,6 +5282,9 @@ packages: vscode-languageserver-types@3.17.5: resolution: {integrity: sha512-Ld1VelNuX9pdF39h2Hgaeb5hEZM2Z3jUrrMgWQAu82jMtZp7p3vJT3BzToKtZI7NgQssZje5o0zryOrhQvzQAg==} + vscode-languageserver-types@3.18.0: + resolution: {integrity: sha512-8TsGPNMIMiiBdkORgRSvLjuiEIiAFtO+KssmYWxQ+uSVvlf7RjK8YKCOjPzZ+YA04jXEV7+7LvkSmHkhpNS99g==} + vscode-uri@3.1.0: resolution: {integrity: sha512-/BpdSx+yCQGnCvecbyXdxHDkuk55/G3xwnC0GqY4gmQ3j+A+g8kzzgB4Nk/SINjqn6+waqw3EgbVF2QKExkRxQ==} @@ -5382,8 +5382,8 @@ packages: vue-virtual-scroll-list@2.3.5: resolution: {integrity: sha512-YFK6u5yltqtAOfTBcij/KGAS2SoZvzbNIAf9qTULauPObEp53xj22tDuohrrM2vNkgoD5kejXICIUBt2Q4ZDqQ==} - vue2-teleport@1.0.1: - resolution: {integrity: sha512-hbY/Q0x8qXGFxo6h4KU4YYesUcN+uUjliqqC0PoNSgpcbS2QRb3qXi+7XMTgLYs0a8i7o1H6Mu43UV4Vbgkhgw==} + vue2-teleport@1.2.2: + resolution: {integrity: sha512-HiGkijzS+qcM6OAovlPfdnbVbi+cA2DX8qfFIm0QF4Mmh7nuQUZomGwkQ4Qei5Wy3SwtLeHvVc9CSfk+pzleog==} vue@2.7.16: resolution: {integrity: sha512-4gCtFXaAA3zYZdTp5s4Hl2sozuySsgz4jy1EnpBHNfpMa9dK1ZCG7viqBPCwXtmgc8nHqUsAu3G4gtmXkkY3Sw==} @@ -5515,9 +5515,9 @@ packages: yaml-ast-parser@0.0.43: resolution: {integrity: sha512-2PTINUwsRqSd+s8XxKaJWQlUuEMHJQyEuh2edBbW8KNJz0SJPwUSD2zRWqezFEdN7IzAgeuYHFUCF7o8zRdZ0A==} - yaml@2.6.1: - resolution: {integrity: sha512-7r0XPzioN/Q9kXBro/XPnA6kznR73DHq+GXh5ON7ZozRO6aMjbmiBuKste2wslTFkC5d1dw0GooOCepZXJ2SAg==} - engines: {node: '>= 14'} + yaml@2.9.0: + resolution: {integrity: sha512-2AvhNX3mb8zd6Zy7INTtSpl1F15HW6Wnqj0srWlkKLcpYl/gMIMJiyuGq2KeI2YFxUPjdlB+3Lc10seMLtL4cA==} + engines: {node: '>= 14.6'} hasBin: true yargs-parser@20.2.9: @@ -5614,10 +5614,9 @@ snapshots: dependencies: '@babel/types': 7.29.0 - '@babel/runtime-corejs3@7.23.2': + '@babel/runtime-corejs3@7.29.7': dependencies: - core-js-pure: 3.33.0 - regenerator-runtime: 0.14.0 + core-js-pure: 3.49.0 '@babel/runtime@7.28.3': {} @@ -5922,7 +5921,7 @@ snapshots: '@floating-ui/utils@0.2.11': {} - '@fontsource/atkinson-hyperlegible@5.0.17': {} + '@fontsource/atkinson-hyperlegible@5.2.8': {} '@fortawesome/fontawesome-common-types@6.2.1': {} @@ -6040,12 +6039,12 @@ snapshots: '@mdn/browser-compat-data@5.3.23': {} - '@modyfi/vite-plugin-yaml@1.1.1(rollup@4.60.1)(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.6.1))': + '@modyfi/vite-plugin-yaml@1.1.1(rollup@4.60.1)(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.9.0))': dependencies: '@rollup/pluginutils': 5.1.0(rollup@4.60.1) js-yaml: 4.1.0 tosource: 2.0.0-alpha.3 - vite: 8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.6.1) + vite: 8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.9.0) transitivePeerDependencies: - rollup @@ -6350,38 +6349,38 @@ snapshots: '@rtsao/scc@1.1.0': {} - '@sentry-internal/browser-utils@10.45.0': + '@sentry-internal/browser-utils@10.57.0': dependencies: - '@sentry/core': 10.45.0 + '@sentry/core': 10.57.0 - '@sentry-internal/feedback@10.45.0': + '@sentry-internal/feedback@10.57.0': dependencies: - '@sentry/core': 10.45.0 + '@sentry/core': 10.57.0 - '@sentry-internal/replay-canvas@10.45.0': + '@sentry-internal/replay-canvas@10.57.0': dependencies: - '@sentry-internal/replay': 10.45.0 - '@sentry/core': 10.45.0 + '@sentry-internal/replay': 10.57.0 + '@sentry/core': 10.57.0 - '@sentry-internal/replay@10.45.0': + '@sentry-internal/replay@10.57.0': dependencies: - '@sentry-internal/browser-utils': 10.45.0 - '@sentry/core': 10.45.0 + '@sentry-internal/browser-utils': 10.57.0 + '@sentry/core': 10.57.0 - '@sentry/browser@10.45.0': + '@sentry/browser@10.57.0': dependencies: - '@sentry-internal/browser-utils': 10.45.0 - '@sentry-internal/feedback': 10.45.0 - '@sentry-internal/replay': 10.45.0 - '@sentry-internal/replay-canvas': 10.45.0 - '@sentry/core': 10.45.0 + '@sentry-internal/browser-utils': 10.57.0 + '@sentry-internal/feedback': 10.57.0 + '@sentry-internal/replay': 10.57.0 + '@sentry-internal/replay-canvas': 10.57.0 + '@sentry/core': 10.57.0 - '@sentry/core@10.45.0': {} + '@sentry/core@10.57.0': {} - '@sentry/vue@10.45.0(pinia@2.3.1(typescript@5.8.3)(vue@2.7.16))(vue@2.7.16)': + '@sentry/vue@10.57.0(pinia@2.3.1(typescript@5.8.3)(vue@2.7.16))(vue@2.7.16)': dependencies: - '@sentry/browser': 10.45.0 - '@sentry/core': 10.45.0 + '@sentry/browser': 10.57.0 + '@sentry/core': 10.57.0 vue: 2.7.16 optionalDependencies: pinia: 2.3.1(typescript@5.8.3)(vue@2.7.16) @@ -6688,9 +6687,9 @@ snapshots: '@ungap/structured-clone@1.2.0': {} - '@vitejs/plugin-vue2@2.3.4(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.6.1))(vue@2.7.16)': + '@vitejs/plugin-vue2@2.3.4(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.9.0))(vue@2.7.16)': dependencies: - vite: 8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.6.1) + vite: 8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.9.0) vue: 2.7.16 '@vitest/coverage-v8@4.1.8(vitest@4.1.8)': @@ -6705,7 +6704,7 @@ snapshots: obug: 2.1.1 std-env: 4.1.0 tinyrainbow: 3.1.0 - vitest: 4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.10.2)(jsdom@28.1.0)(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.6.1)) + vitest: 4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.10.2)(jsdom@28.1.0)(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.9.0)) '@vitest/expect@4.1.8': dependencies: @@ -6716,23 +6715,23 @@ snapshots: chai: 6.2.2 tinyrainbow: 3.1.0 - '@vitest/mocker@4.1.8(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.101.0)(yaml@2.6.1))': + '@vitest/mocker@4.1.8(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.101.0)(yaml@2.9.0))': dependencies: '@vitest/spy': 4.1.8 estree-walker: 3.0.3 magic-string: 0.30.21 optionalDependencies: msw: 2.14.6(@types/node@25.9.3)(typescript@5.8.3) - vite: 8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.101.0)(yaml@2.6.1) + vite: 8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.101.0)(yaml@2.9.0) - '@vitest/mocker@4.1.8(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.6.1))': + '@vitest/mocker@4.1.8(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.9.0))': dependencies: '@vitest/spy': 4.1.8 estree-walker: 3.0.3 magic-string: 0.30.21 optionalDependencies: msw: 2.14.6(@types/node@25.9.3)(typescript@5.8.3) - vite: 8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.6.1) + vite: 8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.9.0) '@vitest/pretty-format@4.1.8': dependencies: @@ -6761,7 +6760,7 @@ snapshots: sirv: 3.0.2 tinyglobby: 0.2.16 tinyrainbow: 3.1.0 - vitest: 4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.10.2)(jsdom@28.1.0)(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.6.1)) + vitest: 4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.10.2)(jsdom@28.1.0)(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.9.0)) '@vitest/utils@4.1.8': dependencies: @@ -7337,7 +7336,7 @@ snapshots: cookie@1.1.1: {} - core-js-pure@3.33.0: {} + core-js-pure@3.49.0: {} core-util-is@1.0.3: {} @@ -7615,7 +7614,7 @@ snapshots: decimal.js@10.6.0: {} - decode-uri-component@0.2.2: {} + decode-uri-component@0.4.1: {} deep-is@0.1.4: {} @@ -8453,9 +8452,9 @@ snapshots: ignore@5.2.4: {} - imask@7.1.3: + imask@7.6.1: dependencies: - '@babel/runtime-corejs3': 7.23.2 + '@babel/runtime-corejs3': 7.29.7 immediate@3.0.6: {} @@ -8670,11 +8669,13 @@ snapshots: jquery-migrate@1.4.1: {} - jquery-mousewheel@3.1.13: {} - - jquery-ui@1.13.2: + jquery-mousewheel@3.2.2: dependencies: - jquery: 3.6.0 + jquery: 2.2.4 + + jquery-ui@1.14.2: + dependencies: + jquery: 2.2.4 jquery@2.2.4: {} @@ -8873,11 +8874,11 @@ snapshots: lines-and-columns@1.2.4: {} - linkify-html@4.1.1(linkifyjs@4.3.3): + linkify-html@4.3.3(linkifyjs@4.3.3): dependencies: linkifyjs: 4.3.3 - linkify-it@5.0.0: + linkify-it@5.0.1: dependencies: uc.micro: 2.1.0 @@ -8962,11 +8963,11 @@ snapshots: markdown-it-regexp@0.4.0: {} - markdown-it@14.1.1: + markdown-it@14.2.0: dependencies: argparse: 2.0.1 entities: 4.5.0 - linkify-it: 5.0.0 + linkify-it: 5.0.1 mdurl: 2.0.0 punycode.js: 2.3.1 uc.micro: 2.1.0 @@ -9075,9 +9076,9 @@ snapshots: prettier: 3.6.2 proxy-disposable: 1.0.0 vscode-languageserver-textdocument: 1.0.12 - vscode-languageserver-types: 3.17.5 + vscode-languageserver-types: 3.18.0 vscode-uri: 3.1.0 - yaml: 2.6.1 + yaml: 2.9.0 moo@0.5.1: {} @@ -9392,12 +9393,12 @@ snapshots: possible-typed-array-names@1.1.0: {} - postcss-load-config@6.0.1(postcss@8.5.15)(yaml@2.6.1): + postcss-load-config@6.0.1(postcss@8.5.15)(yaml@2.9.0): dependencies: lilconfig: 3.1.3 optionalDependencies: postcss: 8.5.15 - yaml: 2.6.1 + yaml: 2.9.0 postcss-selector-parser@6.0.13: dependencies: @@ -9523,8 +9524,6 @@ snapshots: get-proto: 1.0.1 which-builtin-type: 1.2.1 - regenerator-runtime@0.14.0: {} - regexp.prototype.flags@1.5.4: dependencies: call-bind: 1.0.9 @@ -10112,7 +10111,7 @@ snapshots: tslib@2.8.1: {} - tsup@8.5.1(postcss@8.5.15)(typescript@5.8.3)(yaml@2.6.1): + tsup@8.5.1(postcss@8.5.15)(typescript@5.8.3)(yaml@2.9.0): dependencies: bundle-require: 5.1.0(esbuild@0.27.7) cac: 6.7.14 @@ -10123,7 +10122,7 @@ snapshots: fix-dts-default-cjs-exports: 1.0.1 joycon: 3.1.1 picocolors: 1.1.1 - postcss-load-config: 6.0.1(postcss@8.5.15)(yaml@2.6.1) + postcss-load-config: 6.0.1(postcss@8.5.15)(yaml@2.9.0) resolve-from: 5.0.0 rollup: 4.60.1 source-map: 0.7.6 @@ -10567,7 +10566,7 @@ snapshots: transitivePeerDependencies: - encoding - vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.101.0)(yaml@2.6.1): + vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.101.0)(yaml@2.9.0): dependencies: lightningcss: 1.32.0 picomatch: 4.0.4 @@ -10579,9 +10578,9 @@ snapshots: esbuild: 0.27.7 fsevents: 2.3.3 sass: 1.101.0 - yaml: 2.6.1 + yaml: 2.9.0 - vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.6.1): + vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.9.0): dependencies: lightningcss: 1.32.0 picomatch: 4.0.4 @@ -10593,23 +10592,23 @@ snapshots: esbuild: 0.28.1 fsevents: 2.3.3 sass: 1.101.0 - yaml: 2.6.1 + yaml: 2.9.0 - vitest-fail-on-console@0.10.1(@vitest/utils@4.1.8)(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.6.1))(vitest@4.1.8): + vitest-fail-on-console@0.10.1(@vitest/utils@4.1.8)(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.9.0))(vitest@4.1.8): dependencies: '@vitest/utils': 4.1.8 chalk: 5.6.2 - vite: 8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.6.1) - vitest: 4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.10.2)(jsdom@28.1.0)(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.6.1)) + vite: 8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.9.0) + vitest: 4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.10.2)(jsdom@28.1.0)(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.9.0)) vitest-location-mock@1.0.4: dependencies: '@jedmao/location': 3.0.0 - vitest@4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.10.2)(jsdom@28.1.0)(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.101.0)(yaml@2.6.1)): + vitest@4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.10.2)(jsdom@28.1.0)(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.101.0)(yaml@2.9.0)): dependencies: '@vitest/expect': 4.1.8 - '@vitest/mocker': 4.1.8(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.101.0)(yaml@2.6.1)) + '@vitest/mocker': 4.1.8(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.101.0)(yaml@2.9.0)) '@vitest/pretty-format': 4.1.8 '@vitest/runner': 4.1.8 '@vitest/snapshot': 4.1.8 @@ -10626,7 +10625,7 @@ snapshots: tinyexec: 1.1.2 tinyglobby: 0.2.16 tinyrainbow: 3.1.0 - vite: 8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.101.0)(yaml@2.6.1) + vite: 8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.101.0)(yaml@2.9.0) why-is-node-running: 2.3.0 optionalDependencies: '@types/node': 25.9.3 @@ -10637,10 +10636,10 @@ snapshots: transitivePeerDependencies: - msw - vitest@4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.10.2)(jsdom@28.1.0)(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.6.1)): + vitest@4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.10.2)(jsdom@28.1.0)(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.9.0)): dependencies: '@vitest/expect': 4.1.8 - '@vitest/mocker': 4.1.8(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.6.1)) + '@vitest/mocker': 4.1.8(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.9.0)) '@vitest/pretty-format': 4.1.8 '@vitest/runner': 4.1.8 '@vitest/snapshot': 4.1.8 @@ -10657,7 +10656,7 @@ snapshots: tinyexec: 1.1.2 tinyglobby: 0.2.16 tinyrainbow: 3.1.0 - vite: 8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.6.1) + vite: 8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.9.0) why-is-node-running: 2.3.0 optionalDependencies: '@types/node': 25.9.3 @@ -10681,6 +10680,8 @@ snapshots: vscode-languageserver-types@3.17.5: {} + vscode-languageserver-types@3.18.0: {} + vscode-uri@3.1.0: {} vue-class-component@7.2.6(vue@2.7.16): @@ -10764,7 +10765,7 @@ snapshots: vue-virtual-scroll-list@2.3.5: {} - vue2-teleport@1.0.1: {} + vue2-teleport@1.2.2: {} vue@2.7.16: dependencies: @@ -10897,7 +10898,7 @@ snapshots: yaml-ast-parser@0.0.43: {} - yaml@2.6.1: {} + yaml@2.9.0: {} yargs-parser@20.2.9: {} From 4b53d8065d339dad0ffdf3d69f944eebc4df6db8 Mon Sep 17 00:00:00 2001 From: Dannon Baker Date: Fri, 12 Jun 2026 09:16:16 -0400 Subject: [PATCH 22/31] Type-package updates: @types/lodash 4.17.24 (in-range; the 4.14 -> 4.17 jump was literally a version renumbering to match the lodash runtime), @types/markdown-it ^13.0.4 -> ^14.1.2 to match our markdown-it 14 (the 13.x types describe a package layout that 14 doesn't have), and drop @types/dompurify entirely -- since dompurify 3.2 the package ships its own types and the @types stub is an empty deprecated placeholder. The markdown-it types restructure means the one deep import we have (markdown-it/lib/token in composables/markdown.ts) needs the .mjs suffix to resolve under bundler moduleResolution. vue-tsc --noEmit passes clean, same as the pre-change baseline. --- client/package.json | 3 +- client/pnpm-lock.yaml | 49 ++++++++++++------------------ client/src/composables/markdown.ts | 2 +- 3 files changed, 22 insertions(+), 32 deletions(-) diff --git a/client/package.json b/client/package.json index aa2e44ce214..12dafd6223b 100644 --- a/client/package.json +++ b/client/package.json @@ -173,11 +173,10 @@ "@types/d3": "^7.4.2", "@types/d3-selection": "^3.0.11", "@types/d3-zoom": "^3.0.8", - "@types/dompurify": "^3.0.2", "@types/jquery": "^3.5.24", "@types/lodash": "^4.14.200", "@types/lodash.isequal": "^4.5.7", - "@types/markdown-it": "^13.0.4", + "@types/markdown-it": "^14.1.2", "@typescript-eslint/eslint-plugin": "^6.8.0", "@typescript-eslint/parser": "^6.8.0", "@vitejs/plugin-vue2": "^2.3.4", diff --git a/client/pnpm-lock.yaml b/client/pnpm-lock.yaml index c23fbc18da9..28981c17fb6 100644 --- a/client/pnpm-lock.yaml +++ b/client/pnpm-lock.yaml @@ -355,21 +355,18 @@ importers: '@types/d3-zoom': specifier: ^3.0.8 version: 3.0.8 - '@types/dompurify': - specifier: ^3.0.2 - version: 3.0.2 '@types/jquery': specifier: ^3.5.24 version: 3.5.24 '@types/lodash': specifier: ^4.14.200 - version: 4.14.200 + version: 4.17.24 '@types/lodash.isequal': specifier: ^4.5.7 version: 4.5.8 '@types/markdown-it': - specifier: ^13.0.4 - version: 13.0.4 + specifier: ^14.1.2 + version: 14.1.2 '@typescript-eslint/eslint-plugin': specifier: ^6.8.0 version: 6.8.0(@typescript-eslint/parser@6.8.0(eslint@8.57.1)(typescript@5.8.3))(eslint@8.57.1)(typescript@5.8.3) @@ -1745,9 +1742,6 @@ packages: '@types/deep-eql@4.0.2': resolution: {integrity: sha512-c9h9dVVMigMPc4bwTvC5dxqtqJZwQPePsWjPlpSOnojbor6pGqdk541lfA7AqFQr5pB1BRdq0juY9db81BwyFw==} - '@types/dompurify@3.0.2': - resolution: {integrity: sha512-YBL4ziFebbbfQfH5mlC+QTJsvh0oJUrWbmxKMyEdL7emlHJqGR2Qb34TEFKj+VCayBvjKy3xczMFNhugThUsfQ==} - '@types/estree@1.0.8': resolution: {integrity: sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==} @@ -1766,20 +1760,20 @@ packages: '@types/json5@0.0.29': resolution: {integrity: sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==} - '@types/linkify-it@3.0.2': - resolution: {integrity: sha512-HZQYqbiFVWufzCwexrvh694SOim8z2d+xJl5UNamcvQFejLY/2YUtzXHYi3cHdI7PMlS8ejH2slRAOJQ32aNbA==} + '@types/linkify-it@5.0.0': + resolution: {integrity: sha512-sVDA58zAw4eWAffKOaQH5/5j3XeayukzDk+ewSsnv3p4yJEZHCCzMDiZM8e0OUrRvmpGZ85jf4yDHkHsgBNr9Q==} '@types/lodash.isequal@4.5.8': resolution: {integrity: sha512-uput6pg4E/tj2LGxCZo9+y27JNyB2OZuuI/T5F+ylVDYuqICLG2/ktjxx0v6GvVntAf8TvEzeQLcV0ffRirXuA==} - '@types/lodash@4.14.200': - resolution: {integrity: sha512-YI/M/4HRImtNf3pJgbF+W6FrXovqj+T+/HpENLTooK9PnkacBsDpeP3IpHab40CClUfhNmdM2WTNP2sa2dni5Q==} + '@types/lodash@4.17.24': + resolution: {integrity: sha512-gIW7lQLZbue7lRSWEFql49QJJWThrTFFeIMJdp3eH4tKoxm1OvEPg02rm4wCCSHS0cL3/Fizimb35b7k8atwsQ==} - '@types/markdown-it@13.0.4': - resolution: {integrity: sha512-FAIUdEXrCDnQmAAmJC+UeW/3p0eCI4QZ/+W0lX/h83VD3v78IgTFYftjnAeXS8H0g4PFQCgipc51cQDA8tjgLw==} + '@types/markdown-it@14.1.2': + resolution: {integrity: sha512-promo4eFwuiW+TfGxhi+0x3czqTYJkG8qB17ZUJiVF10Xm7NLVRSLUsfRTU/6h1e24VvRnXCx+hG7li58lkzog==} - '@types/mdurl@1.0.2': - resolution: {integrity: sha512-eC4U9MlIcu2q0KQmXszyn5Akca/0jrQmwDRgpAMJai7qBWq4amIQhZyNau4VYGtCeALvW1/NtjzJJ567aZxfKA==} + '@types/mdurl@2.0.0': + resolution: {integrity: sha512-RGdgjQUZba5p6QEFAVx2OGb8rQDL/cPRG7GiedRzMcJ1tYnUANBncjbSB1NRGwbvjcPeikRABz2nshyPk1bhWg==} '@types/node@25.9.3': resolution: {integrity: sha512-603BddQMv3pUcr4U2dhujk83N2tTDVr/34wII2B6bJy6g+8WD6yUb11jszNs0gdi4PesVWl7ABt8nYMVpnLUcg==} @@ -6541,10 +6535,6 @@ snapshots: '@types/deep-eql@4.0.2': {} - '@types/dompurify@3.0.2': - dependencies: - '@types/trusted-types': 2.0.7 - '@types/estree@1.0.8': {} '@types/geojson@7946.0.10': {} @@ -6559,20 +6549,20 @@ snapshots: '@types/json5@0.0.29': {} - '@types/linkify-it@3.0.2': {} + '@types/linkify-it@5.0.0': {} '@types/lodash.isequal@4.5.8': dependencies: - '@types/lodash': 4.14.200 + '@types/lodash': 4.17.24 - '@types/lodash@4.14.200': {} + '@types/lodash@4.17.24': {} - '@types/markdown-it@13.0.4': + '@types/markdown-it@14.1.2': dependencies: - '@types/linkify-it': 3.0.2 - '@types/mdurl': 1.0.2 + '@types/linkify-it': 5.0.0 + '@types/mdurl': 2.0.0 - '@types/mdurl@1.0.2': {} + '@types/mdurl@2.0.0': {} '@types/node@25.9.3': dependencies: @@ -6590,7 +6580,8 @@ snapshots: '@types/statuses@2.0.6': {} - '@types/trusted-types@2.0.7': {} + '@types/trusted-types@2.0.7': + optional: true '@types/web-bluetooth@0.0.18': {} diff --git a/client/src/composables/markdown.ts b/client/src/composables/markdown.ts index 5c344b52a84..309b134c6fb 100644 --- a/client/src/composables/markdown.ts +++ b/client/src/composables/markdown.ts @@ -1,5 +1,5 @@ import MarkdownIt from "markdown-it"; -import type Token from "markdown-it/lib/token"; +import type Token from "markdown-it/lib/token.mjs"; import { readonly } from "vue"; /** From 3a02daf5d138bfd09737268bb442ed49c285210d Mon Sep 17 00:00:00 2001 From: Dannon Baker Date: Fri, 12 Jun 2026 09:34:41 -0400 Subject: [PATCH 23/31] Walk msw back from 2.14.6 to ~2.10.5. Something in msw 2.11.0 (likely the @mswjs/interceptors bump riding along with its custom-predicate feature) changes XHR response delivery timing enough that the Toolshed RepositoryDetails test starts emitting a transient 'Invalid prop: tools expected Array got Undefined' warning during a re-render, which vitest-fail-on-console turns into a failure. Bisected: 2.10.x passes, 2.11.0 fails, and the failure follows msw alone with everything else at HEAD. The component's final rendered state is correct either way, so this looks like a latent timing-sensitive transient render in RepositoryDetails/GTable that deserves its own fix -- holding msw at the last good minor with a tilde pin until then. 2.10.5 still satisfies @vitest/mocker's optional msw ^2.4.9 peer. Note the lockfile keeps a vestigial msw@2.14.6 entry in @vitest/mocker's optional peer context; nothing resolves through it. --- client/package.json | 2 +- client/pnpm-lock.yaml | 332 ++++++++++++++++++++++++++++++++++-------- 2 files changed, 274 insertions(+), 60 deletions(-) diff --git a/client/package.json b/client/package.json index 12dafd6223b..1e6815947de 100644 --- a/client/package.json +++ b/client/package.json @@ -198,7 +198,7 @@ "fake-indexeddb": "^6.0.0", "fs-extra": "^11.2.0", "happy-dom": "^20.0.10", - "msw": "^2.3.4", + "msw": "~2.10.5", "openapi-msw": "^0.7.0", "openapi-typescript": "^7.3.0", "prettier": "^3.6.2", diff --git a/client/pnpm-lock.yaml b/client/pnpm-lock.yaml index 28981c17fb6..dc6bba437c5 100644 --- a/client/pnpm-lock.yaml +++ b/client/pnpm-lock.yaml @@ -431,11 +431,11 @@ importers: specifier: ^20.0.10 version: 20.10.2 msw: - specifier: ^2.3.4 - version: 2.14.6(@types/node@25.9.3)(typescript@5.8.3) + specifier: ~2.10.5 + version: 2.10.5(@types/node@25.9.3)(typescript@5.8.3) openapi-msw: specifier: ^0.7.0 - version: 0.7.0(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3)) + version: 0.7.0(msw@2.10.5(@types/node@25.9.3)(typescript@5.8.3)) openapi-typescript: specifier: ^7.3.0 version: 7.13.0(typescript@5.8.3) @@ -459,7 +459,7 @@ importers: version: 8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.9.0) vitest: specifier: ^4.1.5 - version: 4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.10.2)(jsdom@28.1.0)(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.9.0)) + version: 4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.10.2)(jsdom@28.1.0)(msw@2.10.5(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.9.0)) vitest-fail-on-console: specifier: ^0.10.1 version: 0.10.1(@vitest/utils@4.1.8)(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.9.0))(vitest@4.1.8) @@ -607,6 +607,15 @@ packages: resolution: {integrity: sha512-ctxtJ/eA+t+6q2++vj5j7FYX3nRu311q1wfYH3xjlLOsczhlhxAg2FWNUXhpGvAw3BWo1xBcvOV6/YLc2r5FJw==} hasBin: true + '@bundled-es-modules/cookie@2.0.1': + resolution: {integrity: sha512-8o+5fRPLNbjbdGRRmJj3h6Hh1AQJf2dk3qQ/5ZFb+PXkRNiSoMGGUKlsgLfrxneb72axVJyIYji64E2+nNfYyw==} + + '@bundled-es-modules/statuses@1.0.1': + resolution: {integrity: sha512-yn7BklA5acgcBr+7w064fGV+SGIFySjCKpqjcWgBAIfrAkY+4GQTJJHQMeT3V/sgz23VTEVV8TtOmkvJAhFVfg==} + + '@bundled-es-modules/tough-cookie@0.1.6': + resolution: {integrity: sha512-dvMHbL464C0zI+Yqxbz6kZ5TOEp7GLW+pry/RWndAR8MJQAXZ2rPmIs8tziTZjeIyhSNZgZbCePtfSbdWqStJw==} + '@citation-js/core@0.7.21': resolution: {integrity: sha512-Vobv2/Yfnn6C6BVO/pvj7madQ7Mfzl83/jAWwixbemGF6ZThhGMz8++FD9hWHyHXDMYuLGa6fK68c2VsolZmTA==} engines: {node: '>=16.0.0'} @@ -1104,10 +1113,23 @@ packages: resolution: {integrity: sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==} deprecated: Use @eslint/object-schema instead + '@inquirer/ansi@1.0.2': + resolution: {integrity: sha512-S8qNSZiYzFd0wAcyG5AXCvUHC5Sr7xpZ9wZ2py9XR88jUz8wooStVx5M6dRzczbBWjic9NP7+rY0Xi7qqK/aMQ==} + engines: {node: '>=18'} + '@inquirer/ansi@2.0.7': resolution: {integrity: sha512-3eTuUO1vH2cZm2ZKHeQxnOqlTi9EfZDGgIe3BL3I4u+rJHocr9Fz86M4fjYABPvFnQG/gGK551HqDiIcETwU6Q==} engines: {node: '>=23.5.0 || ^22.13.0 || ^20.17.0'} + '@inquirer/confirm@5.1.21': + resolution: {integrity: sha512-KR8edRkIsUayMXV+o3Gv+q4jlhENF9nMYUZs9PA2HzrXeHI8M5uDag70U7RJn9yyiMZSbtF5/UexBtAVtZGSbQ==} + engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true + '@inquirer/confirm@6.1.1': resolution: {integrity: sha512-eb8DBZcz/2qHWQda4rk2JiQk5h9QV/cVHi1yjt0f69WFZMRFn0sJTye3EAP8icut8UDMjQPsaH5KbcOogefrFQ==} engines: {node: '>=23.5.0 || ^22.13.0 || ^20.17.0'} @@ -1117,6 +1139,15 @@ packages: '@types/node': optional: true + '@inquirer/core@10.3.2': + resolution: {integrity: sha512-43RTuEbfP8MbKzedNqBrlhhNKVwoK//vUFNW3Q3vZ88BLcrs4kYpGg+B2mm5p2K/HfygoCxuKwJJiv8PbGmE0A==} + engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true + '@inquirer/core@11.2.1': resolution: {integrity: sha512-Qd6GJT1yVyrZZCfN8W2qKF5ApmqryXRhRKCuip8h01x2w/esJQ2XIYc6f9abMIHgKQdBfFTSOdbHRLAhuM09UA==} engines: {node: '>=23.5.0 || ^22.13.0 || ^20.17.0'} @@ -1126,10 +1157,23 @@ packages: '@types/node': optional: true + '@inquirer/figures@1.0.15': + resolution: {integrity: sha512-t2IEY+unGHOzAaVM5Xx6DEWKeXlDDcNPeDyUpsRc6CUhBfU3VQOEl+Vssh7VNp1dR8MdUJBWhuObjXCsVpjN5g==} + engines: {node: '>=18'} + '@inquirer/figures@2.0.7': resolution: {integrity: sha512-aJ8TBPOGB6f/2qziPfElISTCEd5XOYTFckA2SGjhNmiKzfK/u4ot3v0DUzGVdUnKjN10EqnnEPck36BkyfLnJw==} engines: {node: '>=23.5.0 || ^22.13.0 || ^20.17.0'} + '@inquirer/type@3.0.10': + resolution: {integrity: sha512-BvziSRxfz5Ov8ch0z/n3oijRSEcEsHnhggm4xFZe93DHcUCTlutlq9Ox4SVENAfcRD22UQq7T/atg9Wr3k09eA==} + engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true + '@inquirer/type@4.0.7': resolution: {integrity: sha512-t28inv14nMQ1PhKpsJPY+kEs/c00qzeCOS2gTNRyTjG5d6qsVA2fItxW4hkvGZ5lvanGLdtCzVIx5dwdRpN1+g==} engines: {node: '>=23.5.0 || ^22.13.0 || ^20.17.0'} @@ -1183,6 +1227,10 @@ packages: '@monaco-editor/loader@1.7.0': resolution: {integrity: sha512-gIwR1HrJrrx+vfyOhYmCZ0/JcWqG5kbfG7+d3f/C1LXk2EvzAbHSg3MQ5lO2sMlo9izoAZ04shohfKLVT6crVA==} + '@mswjs/interceptors@0.39.8': + resolution: {integrity: sha512-2+BzZbjRO7Ct61k8fMNHEtoKjeWI9pIlHFTqBwZ5icHpqszIgEZbjb1MW5Z0+bITTCTl3gk4PDBxs9tA/csXvA==} + engines: {node: '>=18'} + '@mswjs/interceptors@0.41.9': resolution: {integrity: sha512-VVPPgHyQ6ShqnrmDWuxjmUIsO9gWyOZFmuOfLd9LfBGQJwZfy0gvv9pbHSJuoFNIYC7ZDX9aoFwowjcdSC4E8w==} engines: {node: '>=18'} @@ -1643,6 +1691,9 @@ packages: '@types/circular-json@0.4.0': resolution: {integrity: sha512-7+kYB7x5a7nFWW1YPBh3KxhwKfiaI4PbZ1RvzBU91LZy7lWJO822CI+pqzSre/DZ7KsCuMKdHnLHHFu8AyXbQg==} + '@types/cookie@0.6.0': + resolution: {integrity: sha512-4Kh9a6B2bQciAhf7FSuMRRkUWecJgJu9nPnx3yzpsfXX/c50REIqpHY4C82bXP90qrLtXtkDxTZosYO3UpOwlA==} + '@types/cors@2.8.19': resolution: {integrity: sha512-mFNylyeyqN93lfe/9CSxOGREz8cpzAhH+E93xJ4xWQf62V8sQ/24reV2nyzUWM6H6Xji+GGHpkbLe7pVoUEskg==} @@ -1793,6 +1844,9 @@ packages: '@types/statuses@2.0.6': resolution: {integrity: sha512-xMAgYwceFhRA2zY+XbEA7mxYbA093wdiW8Vu6gZPGWy9cmOyU9XesH1tNcEWsKFd5Vzrqx5T3D38PWx1FIIXkA==} + '@types/tough-cookie@4.0.5': + resolution: {integrity: sha512-/Ad8+nIOV7Rl++6f1BdKxFSMgmoqEoYbHRpPcx3JEfv8VRsQe9Z4mCXeJBzxs7mbHY/XOZZuXlRNfhpVPbs6ZA==} + '@types/trusted-types@2.0.7': resolution: {integrity: sha512-ScaPdn1dQczgbl0QFTeTOmVHFULt394XJgOQNoyVhZ6r2vLnMLJfBPd53SB52T/3G36VI1/g2MZaX0cwDuXsfw==} @@ -3247,6 +3301,9 @@ packages: resolution: {integrity: sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==} hasBin: true + headers-polyfill@4.0.3: + resolution: {integrity: sha512-IScLbePpkvO846sIwOtOTDjutRMWdXdJmXdMvk6gCBHxFO8d+QKOQedyZSxFTTFYRSmlgSTDtXqqq4pcenBXLQ==} + headers-polyfill@5.0.1: resolution: {integrity: sha512-1TJ6Fih/b8h5TIcv+1+Hw0PDQWJTKDKzFZzcKOiW1wJza3XoAQlkCuXLbymPYB8+ZQyw8mHvdw560e8zVFIWyA==} @@ -3940,6 +3997,16 @@ packages: ms@2.1.3: resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} + msw@2.10.5: + resolution: {integrity: sha512-0EsQCrCI1HbhpBWd89DvmxY6plmvrM96b0sCIztnvcNHQbXn5vqwm1KlXslo6u4wN9LFGLC1WFjjgljcQhe40A==} + engines: {node: '>=18'} + hasBin: true + peerDependencies: + typescript: '>= 4.8.x' + peerDependenciesMeta: + typescript: + optional: true + msw@2.14.6: resolution: {integrity: sha512-ALe+N10S72cyx94cMcy3Zs4HhXCj35sgeAL4c+WTvKi0zWnbd8/h0lcFqv0mb2P+aSgAdD7p9HzvA0DiUPxsyg==} engines: {node: '>=18'} @@ -3953,6 +4020,10 @@ packages: muggle-string@0.4.1: resolution: {integrity: sha512-VNTrAak/KhO2i8dqqnqnAHOa3cYBwXEZe9h+D5h/1ZqFSTEFHdM65lR7RoIqq3tBBYavsOXV84NoHXZ0AkPyqQ==} + mute-stream@2.0.0: + resolution: {integrity: sha512-WWdIxpyjEn+FhQJQQv9aQAYlHoNVdzIzUySNV1gHUPDSdZJ3yZn7pAAbQcV7B56Mvu881q9FZV+0Vx2xC44VWA==} + engines: {node: ^18.17.0 || >=20.5.0} + mute-stream@3.0.0: resolution: {integrity: sha512-dkEJPVvun4FryqBmZ5KhDo0K9iDXAwn08tMLDinNdRBNPcYEDiWYysLcc6k3mjTMlbP9KyylvRpd4wFtwrT9rw==} engines: {node: ^20.17.0 || >=22.9.0} @@ -4337,6 +4408,9 @@ packages: pseudomap@1.0.2: resolution: {integrity: sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==} + psl@1.15.0: + resolution: {integrity: sha512-JZd3gMVBAVQkSs6HdNZo9Sdo0LNcQeMNP3CozBJb3JYC/QUYZTnKxP+f8oWRX4rHP5EurWxqAHTSwUCjlNKa1w==} + punycode.js@2.3.1: resolution: {integrity: sha512-uxFIHU0YlHYhDQtV4R9J6a52SLx28BCjT+4ieh7IGbgwVJWO+km431c4yRlREUAsAmt/uMjQUyQHNEPf0M39CA==} engines: {node: '>=6'} @@ -4853,6 +4927,10 @@ packages: resolution: {integrity: sha512-sf4i37nQ2LBx4m3wB74y+ubopq6W/dIzXg0FDGjsYnZHVa1Da8FH853wlL2gtUhg+xJXjfk3kUZS3BRoQeoQBQ==} engines: {node: '>=6'} + tough-cookie@4.1.4: + resolution: {integrity: sha512-Loo5UUvLD9ScZ6jh8beX1T6sO1w2/MpCRpEP7V280GKMVUQ0Jzar2U3UJPsrdbziLEMMhu3Ujnq//rhiFuIeag==} + engines: {node: '>=6'} + tough-cookie@6.0.1: resolution: {integrity: sha512-LktZQb3IeoUWB9lqR5EWTHgW/VTITCXg4D21M+lvybRVdylLrRMnqaIONLVb5mav8vM19m44HIcGq4qASeu2Qw==} engines: {node: '>=16'} @@ -4997,6 +5075,10 @@ packages: resolution: {integrity: sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==} engines: {node: '>= 4.0.0'} + universalify@0.2.0: + resolution: {integrity: sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==} + engines: {node: '>= 4.0.0'} + universalify@2.0.1: resolution: {integrity: sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==} engines: {node: '>= 10.0.0'} @@ -5442,6 +5524,10 @@ packages: engines: {node: '>=8'} hasBin: true + wrap-ansi@6.2.0: + resolution: {integrity: sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==} + engines: {node: '>=8'} + wrap-ansi@7.0.0: resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} engines: {node: '>=10'} @@ -5538,6 +5624,10 @@ packages: resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} engines: {node: '>=10'} + yoctocolors-cjs@2.1.3: + resolution: {integrity: sha512-U/PBtDf35ff0D8X8D0jfdzHYEPFxAI7jJlxZXwCSez5M3190m+QobIfh+sWDWSHMCWWJN2AWamkegn6vr6YBTw==} + engines: {node: '>=18'} + zrender@5.6.0: resolution: {integrity: sha512-uzgraf4njmmHAbEUxMJ8Oxg+P3fT04O+9p7gY+wJRVxo8Ge+KmYv0WJev945EH4wFuc4OY2NLXz46FZrWS9xJg==} @@ -5651,6 +5741,19 @@ snapshots: dependencies: css-tree: 3.2.1 + '@bundled-es-modules/cookie@2.0.1': + dependencies: + cookie: 0.7.2 + + '@bundled-es-modules/statuses@1.0.1': + dependencies: + statuses: 2.0.2 + + '@bundled-es-modules/tough-cookie@0.1.6': + dependencies: + '@types/tough-cookie': 4.0.5 + tough-cookie: 4.1.4 + '@citation-js/core@0.7.21': dependencies: '@citation-js/date': 0.5.1 @@ -5974,7 +6077,17 @@ snapshots: '@humanwhocodes/object-schema@2.0.3': {} - '@inquirer/ansi@2.0.7': {} + '@inquirer/ansi@1.0.2': {} + + '@inquirer/ansi@2.0.7': + optional: true + + '@inquirer/confirm@5.1.21(@types/node@25.9.3)': + dependencies: + '@inquirer/core': 10.3.2(@types/node@25.9.3) + '@inquirer/type': 3.0.10(@types/node@25.9.3) + optionalDependencies: + '@types/node': 25.9.3 '@inquirer/confirm@6.1.1(@types/node@25.9.3)': dependencies: @@ -5982,6 +6095,20 @@ snapshots: '@inquirer/type': 4.0.7(@types/node@25.9.3) optionalDependencies: '@types/node': 25.9.3 + optional: true + + '@inquirer/core@10.3.2(@types/node@25.9.3)': + dependencies: + '@inquirer/ansi': 1.0.2 + '@inquirer/figures': 1.0.15 + '@inquirer/type': 3.0.10(@types/node@25.9.3) + cli-width: 4.1.0 + mute-stream: 2.0.0 + signal-exit: 4.1.0 + wrap-ansi: 6.2.0 + yoctocolors-cjs: 2.1.3 + optionalDependencies: + '@types/node': 25.9.3 '@inquirer/core@11.2.1(@types/node@25.9.3)': dependencies: @@ -5994,12 +6121,21 @@ snapshots: signal-exit: 4.1.0 optionalDependencies: '@types/node': 25.9.3 + optional: true - '@inquirer/figures@2.0.7': {} + '@inquirer/figures@1.0.15': {} + + '@inquirer/figures@2.0.7': + optional: true + + '@inquirer/type@3.0.10(@types/node@25.9.3)': + optionalDependencies: + '@types/node': 25.9.3 '@inquirer/type@4.0.7(@types/node@25.9.3)': optionalDependencies: '@types/node': 25.9.3 + optional: true '@isaacs/cliui@9.0.0': {} @@ -6046,6 +6182,15 @@ snapshots: dependencies: state-local: 1.0.7 + '@mswjs/interceptors@0.39.8': + dependencies: + '@open-draft/deferred-promise': 2.2.0 + '@open-draft/logger': 0.3.0 + '@open-draft/until': 2.1.0 + is-node-process: 1.2.0 + outvariant: 1.4.3 + strict-event-emitter: 0.5.1 + '@mswjs/interceptors@0.41.9': dependencies: '@open-draft/deferred-promise': 2.2.0 @@ -6054,6 +6199,7 @@ snapshots: is-node-process: 1.2.0 outvariant: 1.4.3 strict-event-emitter: 0.5.1 + optional: true '@napi-rs/wasm-runtime@1.1.5(@emnapi/core@1.10.0)(@emnapi/runtime@1.10.0)': dependencies: @@ -6084,7 +6230,8 @@ snapshots: '@open-draft/deferred-promise@2.2.0': {} - '@open-draft/deferred-promise@3.0.0': {} + '@open-draft/deferred-promise@3.0.0': + optional: true '@open-draft/logger@0.3.0': dependencies: @@ -6412,6 +6559,8 @@ snapshots: '@types/circular-json@0.4.0': {} + '@types/cookie@0.6.0': {} + '@types/cors@2.8.19': dependencies: '@types/node': 25.9.3 @@ -6573,6 +6722,7 @@ snapshots: '@types/set-cookie-parser@2.4.10': dependencies: '@types/node': 25.9.3 + optional: true '@types/sizzle@2.3.3': {} @@ -6580,6 +6730,8 @@ snapshots: '@types/statuses@2.0.6': {} + '@types/tough-cookie@4.0.5': {} + '@types/trusted-types@2.0.7': optional: true @@ -6695,7 +6847,7 @@ snapshots: obug: 2.1.1 std-env: 4.1.0 tinyrainbow: 3.1.0 - vitest: 4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.10.2)(jsdom@28.1.0)(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.9.0)) + vitest: 4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.10.2)(jsdom@28.1.0)(msw@2.10.5(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.9.0)) '@vitest/expect@4.1.8': dependencies: @@ -6706,6 +6858,15 @@ snapshots: chai: 6.2.2 tinyrainbow: 3.1.0 + '@vitest/mocker@4.1.8(msw@2.10.5(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.9.0))': + dependencies: + '@vitest/spy': 4.1.8 + estree-walker: 3.0.3 + magic-string: 0.30.21 + optionalDependencies: + msw: 2.10.5(@types/node@25.9.3)(typescript@5.8.3) + vite: 8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.9.0) + '@vitest/mocker@4.1.8(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.101.0)(yaml@2.9.0))': dependencies: '@vitest/spy': 4.1.8 @@ -6715,15 +6876,6 @@ snapshots: msw: 2.14.6(@types/node@25.9.3)(typescript@5.8.3) vite: 8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.101.0)(yaml@2.9.0) - '@vitest/mocker@4.1.8(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.9.0))': - dependencies: - '@vitest/spy': 4.1.8 - estree-walker: 3.0.3 - magic-string: 0.30.21 - optionalDependencies: - msw: 2.14.6(@types/node@25.9.3)(typescript@5.8.3) - vite: 8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.9.0) - '@vitest/pretty-format@4.1.8': dependencies: tinyrainbow: 3.1.0 @@ -6751,7 +6903,7 @@ snapshots: sirv: 3.0.2 tinyglobby: 0.2.16 tinyrainbow: 3.1.0 - vitest: 4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.10.2)(jsdom@28.1.0)(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.9.0)) + vitest: 4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.10.2)(jsdom@28.1.0)(msw@2.10.5(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.9.0)) '@vitest/utils@4.1.8': dependencies: @@ -7325,7 +7477,8 @@ snapshots: cookie@0.7.2: {} - cookie@1.1.1: {} + cookie@1.1.1: + optional: true core-js-pure@3.49.0: {} @@ -8102,15 +8255,18 @@ snapshots: fast-levenshtein@2.0.6: {} - fast-string-truncated-width@3.0.3: {} + fast-string-truncated-width@3.0.3: + optional: true fast-string-width@3.0.2: dependencies: fast-string-truncated-width: 3.0.3 + optional: true fast-wrap-ansi@0.2.2: dependencies: fast-string-width: 3.0.2 + optional: true fastq@1.13.0: dependencies: @@ -8379,10 +8535,13 @@ snapshots: he@1.2.0: {} + headers-polyfill@4.0.3: {} + headers-polyfill@5.0.1: dependencies: '@types/set-cookie-parser': 2.4.10 set-cookie-parser: 3.1.0 + optional: true hsluv@1.0.1: {} @@ -9079,6 +9238,31 @@ snapshots: ms@2.1.3: {} + msw@2.10.5(@types/node@25.9.3)(typescript@5.8.3): + dependencies: + '@bundled-es-modules/cookie': 2.0.1 + '@bundled-es-modules/statuses': 1.0.1 + '@bundled-es-modules/tough-cookie': 0.1.6 + '@inquirer/confirm': 5.1.21(@types/node@25.9.3) + '@mswjs/interceptors': 0.39.8 + '@open-draft/deferred-promise': 2.2.0 + '@open-draft/until': 2.1.0 + '@types/cookie': 0.6.0 + '@types/statuses': 2.0.6 + graphql: 16.14.2 + headers-polyfill: 4.0.3 + is-node-process: 1.2.0 + outvariant: 1.4.3 + path-to-regexp: 6.3.0 + picocolors: 1.1.1 + strict-event-emitter: 0.5.1 + type-fest: 4.41.0 + yargs: 17.7.2 + optionalDependencies: + typescript: 5.8.3 + transitivePeerDependencies: + - '@types/node' + msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3): dependencies: '@inquirer/confirm': 6.1.1(@types/node@25.9.3) @@ -9103,10 +9287,14 @@ snapshots: typescript: 5.8.3 transitivePeerDependencies: - '@types/node' + optional: true muggle-string@0.4.1: {} - mute-stream@3.0.0: {} + mute-stream@2.0.0: {} + + mute-stream@3.0.0: + optional: true mz@2.7.0: dependencies: @@ -9234,9 +9422,9 @@ snapshots: dependencies: openapi-typescript-helpers: 0.1.0 - openapi-msw@0.7.0(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3)): + openapi-msw@0.7.0(msw@2.10.5(@types/node@25.9.3)(typescript@5.8.3)): dependencies: - msw: 2.14.6(@types/node@25.9.3)(typescript@5.8.3) + msw: 2.10.5(@types/node@25.9.3)(typescript@5.8.3) openapi-typescript-helpers: 0.0.8 openapi-typescript-helpers@0.0.8: {} @@ -9446,6 +9634,10 @@ snapshots: pseudomap@1.0.2: {} + psl@1.15.0: + dependencies: + punycode: 2.3.1 + punycode.js@2.3.1: {} punycode@1.4.1: {} @@ -9547,7 +9739,8 @@ snapshots: retry@0.12.0: {} - rettime@0.11.11: {} + rettime@0.11.11: + optional: true reusify@1.0.4: {} @@ -9740,7 +9933,8 @@ snapshots: semver@7.6.3: {} - set-cookie-parser@3.1.0: {} + set-cookie-parser@3.1.0: + optional: true set-function-length@1.2.2: dependencies: @@ -9982,7 +10176,8 @@ snapshots: transitivePeerDependencies: - encoding - tagged-tag@1.0.0: {} + tagged-tag@1.0.0: + optional: true text-table@0.2.0: {} @@ -10049,6 +10244,13 @@ snapshots: totalist@3.0.1: {} + tough-cookie@4.1.4: + dependencies: + psl: 1.15.0 + punycode: 2.3.1 + universalify: 0.2.0 + url-parse: 1.5.10 + tough-cookie@6.0.1: dependencies: tldts: 7.4.2 @@ -10151,6 +10353,7 @@ snapshots: type-fest@5.7.0: dependencies: tagged-tag: 1.0.0 + optional: true type-is@1.6.18: dependencies: @@ -10211,11 +10414,14 @@ snapshots: universalify@0.1.2: {} + universalify@0.2.0: {} + universalify@2.0.1: {} unpipe@1.0.0: {} - until-async@3.0.2: {} + until-async@3.0.2: + optional: true update-browserslist-db@1.0.13(browserslist@4.22.1): dependencies: @@ -10590,12 +10796,43 @@ snapshots: '@vitest/utils': 4.1.8 chalk: 5.6.2 vite: 8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.9.0) - vitest: 4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.10.2)(jsdom@28.1.0)(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.9.0)) + vitest: 4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.10.2)(jsdom@28.1.0)(msw@2.10.5(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.9.0)) vitest-location-mock@1.0.4: dependencies: '@jedmao/location': 3.0.0 + vitest@4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.10.2)(jsdom@28.1.0)(msw@2.10.5(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.9.0)): + dependencies: + '@vitest/expect': 4.1.8 + '@vitest/mocker': 4.1.8(msw@2.10.5(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.9.0)) + '@vitest/pretty-format': 4.1.8 + '@vitest/runner': 4.1.8 + '@vitest/snapshot': 4.1.8 + '@vitest/spy': 4.1.8 + '@vitest/utils': 4.1.8 + es-module-lexer: 2.1.0 + expect-type: 1.3.0 + magic-string: 0.30.21 + obug: 2.1.1 + pathe: 2.0.3 + picomatch: 4.0.4 + std-env: 4.1.0 + tinybench: 2.9.0 + tinyexec: 1.1.2 + tinyglobby: 0.2.16 + tinyrainbow: 3.1.0 + vite: 8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.9.0) + why-is-node-running: 2.3.0 + optionalDependencies: + '@types/node': 25.9.3 + '@vitest/coverage-v8': 4.1.8(vitest@4.1.8) + '@vitest/ui': 4.1.8(vitest@4.1.8) + happy-dom: 20.10.2 + jsdom: 28.1.0 + transitivePeerDependencies: + - msw + vitest@4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.10.2)(jsdom@28.1.0)(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.101.0)(yaml@2.9.0)): dependencies: '@vitest/expect': 4.1.8 @@ -10627,37 +10864,6 @@ snapshots: transitivePeerDependencies: - msw - vitest@4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.10.2)(jsdom@28.1.0)(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.9.0)): - dependencies: - '@vitest/expect': 4.1.8 - '@vitest/mocker': 4.1.8(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.9.0)) - '@vitest/pretty-format': 4.1.8 - '@vitest/runner': 4.1.8 - '@vitest/snapshot': 4.1.8 - '@vitest/spy': 4.1.8 - '@vitest/utils': 4.1.8 - es-module-lexer: 2.1.0 - expect-type: 1.3.0 - magic-string: 0.30.21 - obug: 2.1.1 - pathe: 2.0.3 - picomatch: 4.0.4 - std-env: 4.1.0 - tinybench: 2.9.0 - tinyexec: 1.1.2 - tinyglobby: 0.2.16 - tinyrainbow: 3.1.0 - vite: 8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.9.0) - why-is-node-running: 2.3.0 - optionalDependencies: - '@types/node': 25.9.3 - '@vitest/coverage-v8': 4.1.8(vitest@4.1.8) - '@vitest/ui': 4.1.8(vitest@4.1.8) - happy-dom: 20.10.2 - jsdom: 28.1.0 - transitivePeerDependencies: - - msw - void-elements@2.0.1: {} vscode-jsonrpc@8.2.0: {} @@ -10850,6 +11056,12 @@ snapshots: siginfo: 2.0.0 stackback: 0.0.2 + wrap-ansi@6.2.0: + dependencies: + ansi-styles: 4.3.0 + string-width: 4.2.3 + strip-ansi: 6.0.1 + wrap-ansi@7.0.0: dependencies: ansi-styles: 4.3.0 @@ -10919,6 +11131,8 @@ snapshots: yocto-queue@0.1.0: {} + yoctocolors-cjs@2.1.3: {} + zrender@5.6.0: dependencies: tslib: 2.3.0 From 5c13d421f09ae46083a1e79b79c7c1521cdc4f7c Mon Sep 17 00:00:00 2001 From: Dannon Baker Date: Fri, 12 Jun 2026 09:39:38 -0400 Subject: [PATCH 24/31] Walk happy-dom back from 20.10.2 to an exact 20.6.2 pin. The query-selector parser rewrite that shipped in 20.6.3 is spec-strict about CSS identifiers, and happy-dom's input.list getter internally does querySelector('datalist#') without escaping -- so Galaxy's tool form inputs, whose ids legitimately contain pipes (conditional_section|conditional_leaf style parameter paths), now throw 'is not a valid selector' the moment Vue sets the list attribute. Real browsers resolve list= by id semantics and handle these ids fine, so this is a happy-dom bug (still present in 20.10.2); the right upstream fix is getElementById or CSS.escape in that getter. Exact pin because every later patch contains the rewrite. This does mean we forgo the 20.8.8/20.8.9 security fixes, which is tolerable for a test-only DOM but is the reason to revisit once upstream fixes the escaping. Form component tests: 158/158. --- client/package.json | 2 +- client/pnpm-lock.yaml | 92 ++++++++++++++++++++++++++----------------- 2 files changed, 56 insertions(+), 38 deletions(-) diff --git a/client/package.json b/client/package.json index 1e6815947de..f1cdb19a38f 100644 --- a/client/package.json +++ b/client/package.json @@ -197,7 +197,7 @@ "eslint-plugin-vuejs-accessibility": "^2.2.0", "fake-indexeddb": "^6.0.0", "fs-extra": "^11.2.0", - "happy-dom": "^20.0.10", + "happy-dom": "20.6.2", "msw": "~2.10.5", "openapi-msw": "^0.7.0", "openapi-typescript": "^7.3.0", diff --git a/client/pnpm-lock.yaml b/client/pnpm-lock.yaml index dc6bba437c5..94a03b32b3e 100644 --- a/client/pnpm-lock.yaml +++ b/client/pnpm-lock.yaml @@ -428,8 +428,8 @@ importers: specifier: ^11.2.0 version: 11.3.5 happy-dom: - specifier: ^20.0.10 - version: 20.10.2 + specifier: 20.6.2 + version: 20.6.2 msw: specifier: ~2.10.5 version: 2.10.5(@types/node@25.9.3)(typescript@5.8.3) @@ -459,7 +459,7 @@ importers: version: 8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.9.0) vitest: specifier: ^4.1.5 - version: 4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.10.2)(jsdom@28.1.0)(msw@2.10.5(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.9.0)) + version: 4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.6.2)(jsdom@28.1.0)(msw@2.10.5(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.9.0)) vitest-fail-on-console: specifier: ^0.10.1 version: 0.10.1(@vitest/utils@4.1.8)(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.9.0))(vitest@4.1.8) @@ -3270,6 +3270,10 @@ packages: resolution: {integrity: sha512-5p9Sxis3eowDJKqx90QCsgbNA02XXqJ59NOHvD4V6cxp+rP4d/xOyVx7uY3hS8hiUbY1VeiFH8lbJ81AyuDVLQ==} engines: {node: '>=20.0.0'} + happy-dom@20.6.2: + resolution: {integrity: sha512-Xk/Y0cuq9ngN/my8uvK4gKoyDl6sBKkIl8A/hJ0IabZVH7E5SJLHNE7uKRPVmSrQbhJaLIHTEcvTct4GgNtsRA==} + engines: {node: '>=20.0.0'} + has-bigints@1.1.0: resolution: {integrity: sha512-R3pbpkcIqv2Pm3dUwgjclDRVmWpTJW2DcMzcIhEXEx1oh/CEMObMm3KLmRJOdvhM7o4uQBnwr8pzRK2sJWIqfg==} engines: {node: '>= 0.4'} @@ -6847,7 +6851,7 @@ snapshots: obug: 2.1.1 std-env: 4.1.0 tinyrainbow: 3.1.0 - vitest: 4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.10.2)(jsdom@28.1.0)(msw@2.10.5(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.9.0)) + vitest: 4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.6.2)(jsdom@28.1.0)(msw@2.10.5(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.9.0)) '@vitest/expect@4.1.8': dependencies: @@ -6903,7 +6907,7 @@ snapshots: sirv: 3.0.2 tinyglobby: 0.2.16 tinyrainbow: 3.1.0 - vitest: 4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.10.2)(jsdom@28.1.0)(msw@2.10.5(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.9.0)) + vitest: 4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.6.2)(jsdom@28.1.0)(msw@2.10.5(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.9.0)) '@vitest/utils@4.1.8': dependencies: @@ -7311,6 +7315,7 @@ snapshots: buffer-image-size@0.6.4: dependencies: '@types/node': 25.9.3 + optional: true buffer@5.7.1: dependencies: @@ -8510,6 +8515,19 @@ snapshots: transitivePeerDependencies: - bufferutil - utf-8-validate + optional: true + + happy-dom@20.6.2: + dependencies: + '@types/node': 25.9.3 + '@types/whatwg-mimetype': 3.0.2 + '@types/ws': 8.18.1 + entities: 7.0.1 + whatwg-mimetype: 3.0.0 + ws: 8.21.0 + transitivePeerDependencies: + - bufferutil + - utf-8-validate has-bigints@1.1.0: {} @@ -10796,43 +10814,12 @@ snapshots: '@vitest/utils': 4.1.8 chalk: 5.6.2 vite: 8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.9.0) - vitest: 4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.10.2)(jsdom@28.1.0)(msw@2.10.5(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.9.0)) + vitest: 4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.6.2)(jsdom@28.1.0)(msw@2.10.5(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.9.0)) vitest-location-mock@1.0.4: dependencies: '@jedmao/location': 3.0.0 - vitest@4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.10.2)(jsdom@28.1.0)(msw@2.10.5(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.9.0)): - dependencies: - '@vitest/expect': 4.1.8 - '@vitest/mocker': 4.1.8(msw@2.10.5(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.9.0)) - '@vitest/pretty-format': 4.1.8 - '@vitest/runner': 4.1.8 - '@vitest/snapshot': 4.1.8 - '@vitest/spy': 4.1.8 - '@vitest/utils': 4.1.8 - es-module-lexer: 2.1.0 - expect-type: 1.3.0 - magic-string: 0.30.21 - obug: 2.1.1 - pathe: 2.0.3 - picomatch: 4.0.4 - std-env: 4.1.0 - tinybench: 2.9.0 - tinyexec: 1.1.2 - tinyglobby: 0.2.16 - tinyrainbow: 3.1.0 - vite: 8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.9.0) - why-is-node-running: 2.3.0 - optionalDependencies: - '@types/node': 25.9.3 - '@vitest/coverage-v8': 4.1.8(vitest@4.1.8) - '@vitest/ui': 4.1.8(vitest@4.1.8) - happy-dom: 20.10.2 - jsdom: 28.1.0 - transitivePeerDependencies: - - msw - vitest@4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.10.2)(jsdom@28.1.0)(msw@2.14.6(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.27.7)(sass@1.101.0)(yaml@2.9.0)): dependencies: '@vitest/expect': 4.1.8 @@ -10864,6 +10851,37 @@ snapshots: transitivePeerDependencies: - msw + vitest@4.1.8(@types/node@25.9.3)(@vitest/coverage-v8@4.1.8)(@vitest/ui@4.1.8)(happy-dom@20.6.2)(jsdom@28.1.0)(msw@2.10.5(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.9.0)): + dependencies: + '@vitest/expect': 4.1.8 + '@vitest/mocker': 4.1.8(msw@2.10.5(@types/node@25.9.3)(typescript@5.8.3))(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.9.0)) + '@vitest/pretty-format': 4.1.8 + '@vitest/runner': 4.1.8 + '@vitest/snapshot': 4.1.8 + '@vitest/spy': 4.1.8 + '@vitest/utils': 4.1.8 + es-module-lexer: 2.1.0 + expect-type: 1.3.0 + magic-string: 0.30.21 + obug: 2.1.1 + pathe: 2.0.3 + picomatch: 4.0.4 + std-env: 4.1.0 + tinybench: 2.9.0 + tinyexec: 1.1.2 + tinyglobby: 0.2.16 + tinyrainbow: 3.1.0 + vite: 8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(sass@1.101.0)(yaml@2.9.0) + why-is-node-running: 2.3.0 + optionalDependencies: + '@types/node': 25.9.3 + '@vitest/coverage-v8': 4.1.8(vitest@4.1.8) + '@vitest/ui': 4.1.8(vitest@4.1.8) + happy-dom: 20.6.2 + jsdom: 28.1.0 + transitivePeerDependencies: + - msw + void-elements@2.0.1: {} vscode-jsonrpc@8.2.0: {} From b7896c13a6e683298432cbf17d177f40cc4562fa Mon Sep 17 00:00:00 2001 From: benjamin Date: Tue, 9 Jun 2026 21:23:20 +0000 Subject: [PATCH 25/31] docs: fix typos --- doc/source/admin/authentication.md | 2 +- doc/source/admin/cluster.md | 8 ++++---- doc/source/admin/data.md | 4 ++-- doc/source/admin/jobs.md | 2 +- doc/source/admin/nginx.md | 2 +- doc/source/admin/production.md | 2 +- doc/source/admin/scaling.md | 2 +- doc/source/admin/security.md | 2 +- doc/source/admin/special_topics/ftp.md | 2 +- doc/source/admin/special_topics/job_metrics.md | 2 +- doc/source/dev/api_guidelines.rst | 2 +- doc/source/dev/data_managers.rst | 4 ++-- doc/source/dev/debugging_galaxy.md | 2 +- doc/source/dev/debugging_galaxy_slurm.md | 4 ++-- doc/source/dev/writing_tests.md | 8 ++++---- 15 files changed, 24 insertions(+), 24 deletions(-) diff --git a/doc/source/admin/authentication.md b/doc/source/admin/authentication.md index 631e7bea6f9..dc0e4111ede 100644 --- a/doc/source/admin/authentication.md +++ b/doc/source/admin/authentication.md @@ -34,7 +34,7 @@ Currently, we provide two variants of the LDAP authenticator namely, `ldap` and `ldap` is based on the [python-ldap](https://www.python-ldap.org/) module which is a wrapper around the OpenLDAP's client library `libldap`. Currently, `python-ldap` does not provide pre-built Python wheel packages and hence, the OpenLDAP client libraries are needed to install `python-ldap` on the Galaxy server. -On the otherhand, `ldap3` is a pure-Python implementation of the OpenLDAP client library and has no external dependencies. This package can be installed out-of-the-box, so we recommend to use it when the OpenLDAP client libraries are not available on the Galaxy server. +On the other hand, `ldap3` is a pure-Python implementation of the OpenLDAP client library and has no external dependencies. This package can be installed out-of-the-box, so we recommend to use it when the OpenLDAP client libraries are not available on the Galaxy server. These same mechanisms can also be configured by proxies serving Galaxy (e.g. nginx or Apache), but configuring them within Galaxy allows users to use the Galaxy UI for logging in instead of relying on a proxy. diff --git a/doc/source/admin/cluster.md b/doc/source/admin/cluster.md index 1927ff56df9..11e8a108e3a 100644 --- a/doc/source/admin/cluster.md +++ b/doc/source/admin/cluster.md @@ -113,7 +113,7 @@ galaxy_server% export DRMAA_LIBRARY_PATH=/galaxy/sge/lib/lx24-amd64/libdrmaa.so #### DRM Notes -**Limitations**: The DRMAA runner does not work if Galaxy is configured to run jobs as real user, because in this setting jobs are submitted with an external script, i.e. in an extra DRMAA session, and the session based (python) DRMAA library can only query jobs within the session in which started them. Furthermore, the DRMAA job runner only distinguishes successful and failed jobs and ignores information about possible failure sources, e.g. runtime / memory violation, which could be used for job resubmission. Specialized job runners are abvailable that are not affected by these limitations, e.g. univa and slurm runners. +**Limitations**: The DRMAA runner does not work if Galaxy is configured to run jobs as real user, because in this setting jobs are submitted with an external script, i.e. in an extra DRMAA session, and the session based (python) DRMAA library can only query jobs within the session in which started them. Furthermore, the DRMAA job runner only distinguishes successful and failed jobs and ignores information about possible failure sources, e.g. runtime / memory violation, which could be used for job resubmission. Specialized job runners are available that are not affected by these limitations, e.g. univa and slurm runners. **TORQUE**: The DRMAA runner can also be used (instead of the [PBS](#pbs) runner) to submit jobs to TORQUE, however, problems have been reported when using the `libdrmaa.so` provided with TORQUE. Using this library will result in a segmentation fault when the drmaa runner attempts to write the job template, and any native job runner options will not be passed to the DRM. Instead, you should compile the [pbs-drmaa](https://apps.man.poznan.pl/trac/pbs-drmaa/wiki) library and use this as the value for `$DRMAA_LIBRARY_PATH`. @@ -456,7 +456,7 @@ The `RemoteShell` plugin uses `rsh(1)` to connect to a remote system and execute : Remote system hostname to log in to. ``shell_rsh`` -: ``rsh``-like command to excute (e.g. ``/opt/example/bin/remsh``) - just defaults to ``rst``. +: ``rsh``-like command to execute (e.g. ``/opt/example/bin/remsh``) - just defaults to ``rst``. The `RemoteShell` parameters translate to a command line of `% [-l ] ""`, where the inclusion of `-l` is dependent on whether `shell_username` is set. Alternate values for `shell_rsh` must be compatible with this syntax. @@ -571,7 +571,7 @@ Since this is a complex problem, the current solution does have some caveats: * All of the datasets stored in Galaxy will have to be readable on the underlying filesystem by all Galaxy users. Said users need not have direct access to any systems which mount these filesystems, only the ability to run jobs on clusters that mount them. But I expect that in most environments, users will have the ability to submit jobs to these clusters or log in to these clusters outside of Galaxy, so this will be a security concern to evaluate for most environments. * *Technical details* - Since Galaxy maintains dataset sharing internally and all files are owned by the Galaxy user, when running jobs only under a single user, permissions can be set such that only the Galaxy user can read all datasets. Since the dataset may be shared by multiple users, it is not suitable to simply change ownership of inputs before a job runs (what if another user tried to use the same dataset as an input during this time?). This could possibly be solved if Galaxy had tight control over extended ACLs on the file, but since many different ACL schemes exist, Galaxy would need a module for each scheme to be supported. * The real user system works by changing ownership of the job's working directory to the system prior to running the job, and back to the Galaxy user once the job has completed. It does this by executing a site-customizable script via [sudo](https://www.sudo.ws/). - * Two possibilities to determine the system user that corresponds to a galaxy user are implemented: i) the user whos name matches the Galaxy user's email address (with the @domain stripped off) and ii) the user whos name is equal to the galaxy user name. Until release 17.05 only the former option is available. The latter option is suitable for Galaxy installations that user external authentification (e.g. LDAP) against a source that is also the source of the system users. + * Two possibilities to determine the system user that corresponds to a galaxy user are implemented: i) the user whose name matches the Galaxy user's email address (with the @domain stripped off) and ii) the user whos name is equal to the galaxy user name. Until release 17.05 only the former option is available. The latter option is suitable for Galaxy installations that user external authentification (e.g. LDAP) against a source that is also the source of the system users. * The script accepts a path and does nothing to ensure that this path is a Galaxy working directory per default (and not at all up to release 17.05). So anyone who has access to the Galaxy user could use this script and sudo to change the ownership of any file or directory. Furthermore, anyone with write access to the script could introduce arbitrary (harmful) code -- so it might be a good idea to give write access only to trustworthy users, e.g., root. ### Configuration @@ -605,7 +605,7 @@ For Galaxy releases > 17.05, the sudo call has been moved to `galaxy.yml` and is drmaa_external_runjob_script: sudo -E .venv/bin/python scripts/drmaa_external_runner.py --assign_all_groups ``` -Also for Galaxy releases > 17.05: In order to allow `external_chown_script.py` to chown only path below certain entry points the variable `ALLOWED_PATHS` in the python script can be adapted. It is sufficient to include the directorries `job_working_directory` and `new_file_path` as configured in `galaxy.yml`. +Also for Galaxy releases > 17.05: In order to allow `external_chown_script.py` to chown only path below certain entry points the variable `ALLOWED_PATHS` in the python script can be adapted. It is sufficient to include the directories `job_working_directory` and `new_file_path` as configured in `galaxy.yml`. It is also a good idea to make sure that only trusted users, e.g. root, have write access to all three scripts. diff --git a/doc/source/admin/data.md b/doc/source/admin/data.md index d4f22558f4c..e73e8a1323b 100644 --- a/doc/source/admin/data.md +++ b/doc/source/admin/data.md @@ -2,7 +2,7 @@ Galaxy has countless ways for users to connect with things that might be considered their "data" - file sources (aka "remote files"), object stores (aka "storage locations"), data libraries, the upload API, visualizations, display applications, custom tools, etc... -This document is going to discuss two of these (file sources and object stores) that are most important Galaxy administrators and how to build Galaxy configurations that allow administrators to let users tie into various pieces of infrastructure (local and publicly available). +This document is going to discuss two of these (file sources and object stores) that are most important to Galaxy administrators and how to build Galaxy configurations that allow administrators to let users tie into various pieces of infrastructure (local and publicly available). ```{contents} Table of Contents :depth: 4 @@ -17,7 +17,7 @@ Galaxy object stores (called "storage locations" in the UI) store datasets and g Some of Galaxy's most updated and complete administrator documentation can be found in configuration sample files - this is definitely the case for object stores and file sources. The relevant sample configuration files include [file_sources_conf.yml.sample](https://github.com/galaxyproject/galaxy/blob/dev/lib/galaxy/config/sample/file_sources_conf.yml.sample) and [object_store_conf.sample.yml](https://github.com/galaxyproject/galaxy/blob/dev/lib/galaxy/config/sample/object_store_conf.sample.yml). -File sources and object stores configured with the above files essentially are available to all users of your Galaxy instance - hence this document describes them as "global" file sources and object stores. File source configurations do allow some templating that does allow the a global file source to be materialized differently for different users. For instance, you as an admin may setup a Dropbox file source and may explicitly add custom user properties that allow that single Dropbox file source to read from a user's preferences. Since there is just one Dropbox service and most people only have a single Dropbox account, this use case can be somewhat adequately addressed by the global file source and the global user preferences file. For a use case like Amazon S3 buckets though for instance, a single bucket file source that is parameterized one way is probably more clearly inadequate. For instance, users would very likely want to attach different buckets for different projects. Additionally, the Galaxy user interface doesn't tie the user preferences to the particular file source and so this method introduces a huge education burden on your Galaxy instance. Finally, the templating available to file sources are not available for object stores - and allowing users to describe how they would like datasets stored and to pay for their own dataset storage are important use cases. +File sources and object stores configured with the above files essentially are available to all users of your Galaxy instance - hence this document describes them as "global" file sources and object stores. File source configurations do allow some templating that does allow a global file source to be materialized differently for different users. For instance, you as an admin may setup a Dropbox file source and may explicitly add custom user properties that allow that single Dropbox file source to read from a user's preferences. Since there is just one Dropbox service and most people only have a single Dropbox account, this use case can be somewhat adequately addressed by the global file source and the global user preferences file. For a use case like Amazon S3 buckets though for instance, a single bucket file source that is parameterized one way is probably more clearly inadequate. For instance, users would very likely want to attach different buckets for different projects. Additionally, the Galaxy user interface doesn't tie the user preferences to the particular file source and so this method introduces a huge education burden on your Galaxy instance. Finally, the templating available to file sources are not available for object stores - and allowing users to describe how they would like datasets stored and to pay for their own dataset storage are important use cases. This document is going to describe Galaxy configuration template libraries that allow the administrator to setup templates for file sources and object stores that your users may instantiate diff --git a/doc/source/admin/jobs.md b/doc/source/admin/jobs.md index dcb7f75a3f7..15b380dddfe 100644 --- a/doc/source/admin/jobs.md +++ b/doc/source/admin/jobs.md @@ -279,7 +279,7 @@ def ncbi_blastn_wrapper(app, user_email): ``` -The first example above delegates to the PBS job runner and allocates extra walltime for larger input files (based on tool input parameter named `query`). The second example delegates to the DRMAA job runner and assigns users in the in the admin list to a special project (perhaps configured to have a higher priority or extended walltime). +The first example above delegates to the PBS job runner and allocates extra walltime for larger input files (based on tool input parameter named `query`). The second example delegates to the DRMAA job runner and assigns users in the admin list to a special project (perhaps configured to have a higher priority or extended walltime). The above examples demonstrate that the dynamic job destination framework will pass in the arguments to your function that are needed based on the argument names. The valid argument names at this time are: diff --git a/doc/source/admin/nginx.md b/doc/source/admin/nginx.md index d140809ba19..0181b6be1cb 100644 --- a/doc/source/admin/nginx.md +++ b/doc/source/admin/nginx.md @@ -27,7 +27,7 @@ Instructions for [proxying with Apache](apache.md) are also available. ```{include} _inc_proxy_prereq.md ``` -### NGINX Proxy Prerequisities +### NGINX Proxy Prerequisites If you are **not** planning to use the recommended [tus.io method](#receiving-files-via-the-tus-protocol) to handle file uploads but want to use nginx to handle uploads, you will (most likely) not be able to use your package manager's version of nginx. The [Receiving Files With NGINX](#receiving-files-with-nginx-legacy) section explains this in detail and provides some options for installing *nginx + upload module* packages maintained by the Galaxy Committers Team. diff --git a/doc/source/admin/production.md b/doc/source/admin/production.md index aa52f9c7232..970bd17a603 100644 --- a/doc/source/admin/production.md +++ b/doc/source/admin/production.md @@ -150,7 +150,7 @@ To get started with setting up local data, please see [Data Integration](https:/ * The `galaxy_dist/tool-data/` directory contains a set of sample location (`.loc`) files that describe the metadata and path to local data and indexes. * Installed tool packages from the [Tool Shed](https://galaxyproject.org/toolshed/) may also include location files. * Comments in location files explain the expected format. -* [Data Integration](https://galaxyproject.org/admin/data-integration/) explain how to obtain, create, or rysnc many common data and indexes. See an individual Tool Shed repository's documentation for more details. +* [Data Integration](https://galaxyproject.org/admin/data-integration/) explain how to obtain, create, or rsync many common data and indexes. See an individual Tool Shed repository's documentation for more details. ### Enable upload via FTP diff --git a/doc/source/admin/scaling.md b/doc/source/admin/scaling.md index 40036a1ad4b..75558c3b997 100644 --- a/doc/source/admin/scaling.md +++ b/doc/source/admin/scaling.md @@ -411,7 +411,7 @@ If you omit the `processes` argument this will default to a single process. You can further customize the handler names using the `name_template` section, for a complete example see [this gravity test case](https://github.com/galaxyproject/gravity/blob/a00df1c671fdc01e3fbc42f64a851a45a37a1870/tests/test_process_manager.py#L28). -You can define arbitrary environment variables for dynamic handlers using the ``environnment`` key on a handler +You can define arbitrary environment variables for dynamic handlers using the ``environment`` key on a handler definition: ```yaml diff --git a/doc/source/admin/security.md b/doc/source/admin/security.md index d3b86ef6738..b2761a3cfbc 100644 --- a/doc/source/admin/security.md +++ b/doc/source/admin/security.md @@ -12,7 +12,7 @@ Galaxy. Thus it is possible that a tool modifies data in Galaxy's ``file_path``. Examples of such potential changes are: - Creation of additional files, e.g. indices, which is a problem for cleaning up data, because Galaxy does not know about these files. -- Removal of tool input or output files. This will create problems with other tools using these datasets (note that most tool repositories use CI tests to to avoid this, but the problem may still occur). +- Removal of tool input or output files. This will create problems with other tools using these datasets (note that most tool repositories use CI tests to avoid this, but the problem may still occur). Note that a tool only knows the paths to its inputs and outputs, but if using the default configuration for other paths (e.g. the configuration directory) also these paths can be calculated and accessed. diff --git a/doc/source/admin/special_topics/ftp.md b/doc/source/admin/special_topics/ftp.md index 7acdcdaba13..f08a8b035b5 100644 --- a/doc/source/admin/special_topics/ftp.md +++ b/doc/source/admin/special_topics/ftp.md @@ -50,7 +50,7 @@ Although any FTP server should work, our public site uses ProFTPD. You'll need * mod_sql_postgres or mod_sql_mysql * mod_sql_passwd -We compile by hand using the following configure arguments (OpenSSL is prebuilt and statically linked), you should read the INSTALL file that come with the proftpd source distribution. At least you should consider if you need to use any of these options "install_user= install_group= ./configure --sysconfdir=/etc --localstatedir=/var": +We compile by hand using the following configure arguments (OpenSSL is prebuilt and statically linked), you should read the INSTALL file that comes with the proftpd source distribution. At least you should consider if you need to use any of these options "install_user= install_group= ./configure --sysconfdir=/etc --localstatedir=/var": ```console ./configure --prefix=/foo --disable-auth-file --disable-ncurses --disable-ident --disable-shadow --enable-openssl --with-modules=mod_sql:mod_sql_postgres:mod_sql_passwd --with-includes=/usr/postgres/9.1-pgdg/include:`pwd`/../openssl/.openssl/include --with-libraries=/usr/postgres/9.1-pgdg/lib/64:`pwd`/../openssl/.openssl/lib diff --git a/doc/source/admin/special_topics/job_metrics.md b/doc/source/admin/special_topics/job_metrics.md index 115d4460fa3..5f1976d94ec 100644 --- a/doc/source/admin/special_topics/job_metrics.md +++ b/doc/source/admin/special_topics/job_metrics.md @@ -18,7 +18,7 @@ Job metrics can be collected for Pulsar jobs - but there is added complexity. Th See `job_metrics_conf.xml.sample` for the most updated information. -The `core` plugin is one enabled by default and it is a cross-platform plugin used to caputre job run time and core allocation. `env` is the only other cross-platform plugin (should work with any *nix) and can be used to record all environment variables set at job runtime or just specific variables (e.g. `PATH`) - this can potentially be useful for debugging cluster issues. +The `core` plugin is one enabled by default and it is a cross-platform plugin used to capture job run time and core allocation. `env` is the only other cross-platform plugin (should work with any *nix) and can be used to record all environment variables set at job runtime or just specific variables (e.g. `PATH`) - this can potentially be useful for debugging cluster issues. There are a number of remaining Linux-only plugins - there include `cpuinfo` and `meminfo` to collect CPU and memory about the node the Galaxy job runs on and `uname` to likewise collect host and operating system information. diff --git a/doc/source/dev/api_guidelines.rst b/doc/source/dev/api_guidelines.rst index 6e1c822b46a..17ba815f1df 100644 --- a/doc/source/dev/api_guidelines.rst +++ b/doc/source/dev/api_guidelines.rst @@ -131,7 +131,7 @@ in :mod:`galaxy.webapps.galaxy.api` receive or produce Pydantic_ models and pass them to manager components defined in :mod:`galaxy.managers`. The manager is then responsible for interacting with the whole backend or specific components to -fullfil the desired request. +fulfill the desired request. Galaxy work contexts provide a way for API requests (and other components) to describe what they require from the framework diff --git a/doc/source/dev/data_managers.rst b/doc/source/dev/data_managers.rst index 7320385f75b..3e37e2c2617 100644 --- a/doc/source/dev/data_managers.rst +++ b/doc/source/dev/data_managers.rst @@ -508,7 +508,7 @@ Data Manager can add entries to one or more Tool Data Tables. For each Tool Data Table under consideration, the expected output entry columns, and how to handle the Data Manager Tool results, are defined. -Upon installation, Galaxy will recursivly search for data_manager_conf.xml in the repository. +Upon installation, Galaxy will recursively search for data_manager_conf.xml in the repository. data_manager_conf.xml should be located in the root of the repository but can be located in a sub-directory. The first instance of data_manager_conf.xml found will be used. This file defines the paths to the data manager tools within the repository directory structure. @@ -648,7 +648,7 @@ the ``extra_files_path`` of ``out_file``. - + diff --git a/doc/source/dev/debugging_galaxy.md b/doc/source/dev/debugging_galaxy.md index 532a87d1af1..cdf0e32da58 100644 --- a/doc/source/dev/debugging_galaxy.md +++ b/doc/source/dev/debugging_galaxy.md @@ -40,5 +40,5 @@ should work fine. 2. Re-start VS Code 3. Add a breakpoint somewhere in your code 4. Select Run and Debug on Activity Bar, on the far left hand side. In the RUN AND DEBUG drop down, select `GalaxyFastAPI uvicorn`, and click the Start Debugging button (green arrow) -5. Galaxy should stop right on the break point you added. +5. Galaxy should stop right on the breakpoint you added. 6. Enjoy your debugging session :-) diff --git a/doc/source/dev/debugging_galaxy_slurm.md b/doc/source/dev/debugging_galaxy_slurm.md index 75dc6173ba7..d625a85a6cd 100644 --- a/doc/source/dev/debugging_galaxy_slurm.md +++ b/doc/source/dev/debugging_galaxy_slurm.md @@ -6,7 +6,7 @@ default LocalRunner). If you have a MacOS machine, you need to create a Linux VM VirtualBoxVM and run the instructions in the VM. For reference, I created a 64-bit Linux VM with 4096 MB of RAM and 32 GB of disk space (all other parameters were left as default) and managed to successfully run the instructions. If using a Linux VM, you may need to install Git, Python, VSCode, -and Docker (if using Irods storage). Finally, These instructions are intended for developers who +and Docker (if using Irods storage). Finally, these instructions are intended for developers who want to debug their Galaxy instance and are not meant for deployment purposes (We have nice Ansible playbooks for that). @@ -73,4 +73,4 @@ playbooks for that). 6. Follow the instructions [here](debugging_galaxy) to setup VSCode for debugging. -Enjoy debugging session your Galaxy instance backed by a Slurm cluster! +Enjoy debugging your Galaxy instance backed by a Slurm cluster! diff --git a/doc/source/dev/writing_tests.md b/doc/source/dev/writing_tests.md index 4deca3f1d60..d00988872a4 100644 --- a/doc/source/dev/writing_tests.md +++ b/doc/source/dev/writing_tests.md @@ -77,13 +77,13 @@ find the right documentation for a given test one wishes to write. - **Client/ES6** These tests should be placed in ``client/src`` directly and executed - via Vitest. Checkout [Frontend/ES6 Unit Tests](#es6_unit) below for more + via Vitest. Check out [Frontend/ES6 Unit Tests](#es6_unit) below for more information. - **Backend/Python** These tests should be placed in ``test/unit`` or doctests and - executed via pytest. Checkout [Backend/Python Unit Tests](#python_unit) below for more + executed via pytest. Check out [Backend/Python Unit Tests](#python_unit) below for more information. - **Yes** @@ -1212,8 +1212,8 @@ see the [Browser Automation README](https://github.com/galaxyproject/galaxy/blob ### Jupyter + Selenium Jupyter can leveraged to develop Selenium test cases interactively, -checkout out the [``galaxy_test.selenium.jupyter`` documentation](../lib/galaxy_test.selenium.jupyter) -for more a full discussion of this. +check out the [``galaxy_test.selenium.jupyter`` documentation](../lib/galaxy_test.selenium.jupyter) +for a full discussion of this. ### API Abstractions Available From 01afe742e300d12c03f35292f1ca422f194c0486 Mon Sep 17 00:00:00 2001 From: benjamin Date: Tue, 9 Jun 2026 21:45:52 +0000 Subject: [PATCH 26/31] docs: fix typos --- client/docs/avoid-using-global-Galaxy.md | 2 +- client/docs/headings.md | 2 +- client/docs/providers-and-renderers.md | 4 ++-- client/docs/styleguide.md | 4 ++-- doc/source/admin/apache.md | 2 +- doc/source/admin/carbon_emissions.md | 6 +++--- doc/source/admin/conda_faq.rst | 2 +- doc/source/admin/config.rst | 2 +- doc/source/admin/container_resolvers.rst | 2 +- doc/source/admin/data_tables.md | 2 +- doc/source/admin/dependency_resolvers.rst | 6 +++--- doc/source/admin/galaxy_options.rst | 6 +++--- doc/source/admin/migrating_to_gunicorn.md | 2 +- doc/source/admin/special_topics/interactivetools.rst | 10 +++++----- doc/source/admin/useful_scripts.rst | 4 ++-- doc/source/admin/user_defined_tools.md | 2 +- doc/source/dev/api_guidelines.rst | 2 +- 17 files changed, 30 insertions(+), 30 deletions(-) diff --git a/client/docs/avoid-using-global-Galaxy.md b/client/docs/avoid-using-global-Galaxy.md index 1a4bc92099f..60b94299195 100644 --- a/client/docs/avoid-using-global-Galaxy.md +++ b/client/docs/avoid-using-global-Galaxy.md @@ -23,7 +23,7 @@ ecosystem. ## Mount Functions In what most people think of as a "standard" Vue application there would be only one place that Vue -is mounted to the HTML environment, and that would be in a main.j or an app.js. Most modern +is mounted to the HTML environment, and that would be in a main.js or an app.js. Most modern single-page applications only have one starting point like that. However, we are incrementally replacing old Backbone views, so in its current state, Galaxy may have diff --git a/client/docs/headings.md b/client/docs/headings.md index e582e443a42..4c6c2ee2f79 100644 --- a/client/docs/headings.md +++ b/client/docs/headings.md @@ -10,7 +10,7 @@ Heading Levels are used by screen readers, and other software, to get a rough id - When increasing a heading level, do not skip Levels. -- Do not use a headings level to determine it's size. Use one of the heading utility classes (e.g. `h-lg`) instead. +- Do not use a headings level to determine its size. Use one of the heading utility classes (e.g. `h-lg`) instead. - Do not use a heading tag to make a non-heading text large. Use a heading utility class on a `` instead. diff --git a/client/docs/providers-and-renderers.md b/client/docs/providers-and-renderers.md index 4db13420cac..23b5522103d 100644 --- a/client/docs/providers-and-renderers.md +++ b/client/docs/providers-and-renderers.md @@ -3,7 +3,7 @@ --- We are using components in two very distinct ways. The first, "normal", kind of component will -probably look familiar to anybody whis is already passingly familiar with Vue. Here the relevant +probably look familiar to anybody who is already passingly familiar with Vue. Here the relevant information comes in as properties, any internal variables get defined in "data", changes go out as events. @@ -18,7 +18,7 @@ events. In this example, we've created a component whose job is to deal with loading and updating the doodad object. Notice that there is no markup inside the DoodadProvider other than the explicit renderless -component we previously made, but you are free to putput whatever you want in there, accessing the +component we previously made, but you are free to put whatever you want in there, accessing the doodad and saveDoddad properties as desired, as well as any other local data with the only restriction that Vue needs a single root element in which to render. diff --git a/client/docs/styleguide.md b/client/docs/styleguide.md index 82134b5592a..a8e6311fb70 100644 --- a/client/docs/styleguide.md +++ b/client/docs/styleguide.md @@ -231,7 +231,7 @@ Add spaces between the `script`, `template` and `style` blocks. > > > > ``` > @@ -245,7 +245,7 @@ Add spaces between the `script`, `template` and `style` blocks. > > > > ``` diff --git a/doc/source/admin/apache.md b/doc/source/admin/apache.md index cc2a5096b10..adeedb93016 100644 --- a/doc/source/admin/apache.md +++ b/doc/source/admin/apache.md @@ -35,7 +35,7 @@ These modules must be enabled in the Apache config. The main proxy directives, ` Additionally, these directions are written for Apache 2.4+. Apache 2.4 for EL 6 can be obtained from the [CentOS SCLo SIG Repo][sclo-sig-repo]. Otherwise, your system package manager's version of Apache should be suitable. -Ensure that the `mod_headers`, `mod_rewrite` and `mod_proxy`modules are loaded. Although not +Ensure that the `mod_headers`, `mod_rewrite` and `mod_proxy` modules are loaded. Although not required, the configuration examples also use `mod_deflate` and `mod_expires` for increased client/server performance, so these should also be enabled. diff --git a/doc/source/admin/carbon_emissions.md b/doc/source/admin/carbon_emissions.md index 9c84b595734..d0940f28832 100644 --- a/doc/source/admin/carbon_emissions.md +++ b/doc/source/admin/carbon_emissions.md @@ -1,7 +1,7 @@ # Carbon Emissions Reporting Galaxy can estimate the carbon footprint of each job you run. The carbon emissions reporting can be -configured for each galaxy instance to allow for more accurate results. The following options can +configured for each Galaxy instance to allow for more accurate results. The following options can be set: * [Geographical server location](#geographical-server-location) @@ -15,7 +15,7 @@ United States [Environmental Protection Agency (EPA)](https://www.epa.gov/energy ## Geographical server location The `geographical_server_location_code` flag is an [ISO 3166-2](https://en.wikipedia.org/wiki/ISO_3166-2) string specifying the -location of your galaxy instance, with the only exception being `GLOBAL`, which specifies that global average values are to be used. +location of your Galaxy instance, with the only exception being `GLOBAL`, which specifies that global average values are to be used. Each valid code corresponds to a location name and a specific carbon intensity value. The corresponding flags (`geographical_server_location_name` and `carbon_intensity`) are automatically set and will be displayed to the client when carbon emissions are reported. The more accurate the location the better the estimates. In all cases, it is assumed that all jobs are run on @@ -25,7 +25,7 @@ a server in the same location as the one specified in `geographical_server_locat ## Power usage effectiveness [Power usage effectiveness](https://en.wikipedia.org/wiki/Power_usage_effectiveness), or PUE for short, is a ratio specifying -how efficiently the data centre hosting your galaxy server used energy. It is essentially your server's 'indirect' energy usage. +how efficiently the data centre hosting your Galaxy server used energy. It is essentially your server's 'indirect' energy usage. Galaxy uses a default PUE of `1.67`. If you would like to set a custom value, you can [calculate a PUE value as follows](https://en.wikipedia.org/wiki/Power_usage_effectiveness). ## Feature toggling diff --git a/doc/source/admin/conda_faq.rst b/doc/source/admin/conda_faq.rst index c50adb26876..01b1784a92e 100644 --- a/doc/source/admin/conda_faq.rst +++ b/doc/source/admin/conda_faq.rst @@ -4,7 +4,7 @@ Conda for Tool Dependencies =========================== -.. note:: This document describes configuring Galaxy using YAML based configuraiton +.. note:: This document describes configuring Galaxy using YAML based configuration options. For Galaxy instances before version 18.01, `this variant `__ of this document will be more directly relatable. diff --git a/doc/source/admin/config.rst b/doc/source/admin/config.rst index c6c26ee4cc7..2531edca4ba 100644 --- a/doc/source/admin/config.rst +++ b/doc/source/admin/config.rst @@ -64,7 +64,7 @@ Additional configuration files and their purposes are: internally. - ``build_sites.yml``: Controls which display applications are available and their configuration paths - ``containers_conf.yml``: Configures the beta Galaxy containers interface, currently only used by Galaxy Interactive - Environments, and only neccesary for Docker Swarm support. + Environments, and only necessary for Docker Swarm support. - ``dependency_resolvers_conf.xml``: Describes how Galaxy tools (which are typically just descriptions of how to run a particular command line tool) should locate their dependencies (the command line tool) that are not part of the tool. See the `Dependency Resolvers documentation ` for more. diff --git a/doc/source/admin/container_resolvers.rst b/doc/source/admin/container_resolvers.rst index 153c5053c60..ec39595271b 100644 --- a/doc/source/admin/container_resolvers.rst +++ b/doc/source/admin/container_resolvers.rst @@ -364,7 +364,7 @@ admins might want to control. .. note:: - For the execution of jobs Galaxy already implement the `support for using + For the execution of jobs Galaxy already implements the `support for using tarballs of container images `_. from ``container_image_cache_path`` (set in galaxy.yml) or the destination diff --git a/doc/source/admin/data_tables.md b/doc/source/admin/data_tables.md index c598f48abed..1e4bfe6f980 100644 --- a/doc/source/admin/data_tables.md +++ b/doc/source/admin/data_tables.md @@ -16,7 +16,7 @@ In order to understand the naming and structure of these three components it mig to look in the history. Tool data was organized in tabular `loc` that contained metadata and paths of the data. Those files were installed with the tool and could be accessed with the [`from_file`](https://docs.galaxyproject.org/en/master/dev/schema.html#from-file) mechanism from tools. -Since each tool version had it's own `loc` file the maintenance was difficult. With tool data tables +Since each tool version had its own `loc` file the maintenance was difficult. With tool data tables an additional abstraction layer was introduced that is used from tools via [`from_datatable`](https://docs.galaxyproject.org/en/master/dev/schema.html#from-data-table). diff --git a/doc/source/admin/dependency_resolvers.rst b/doc/source/admin/dependency_resolvers.rst index 1004b311415..5560d4872ef 100644 --- a/doc/source/admin/dependency_resolvers.rst +++ b/doc/source/admin/dependency_resolvers.rst @@ -294,7 +294,7 @@ mapping_files skip_availability_check Set to ``true`` to skip filtering module dependencies using ``module avail`` and attempt to load each - module listed in the depedencies (default: ``false``). + module listed in the dependencies (default: ``false``). This setting should be used when during dependency resolution modules are not listed in ``module avail``, but can be expected to be present when using ``module load`` in the job script, such as child modules in hierarchical module systems. Note: the order in which dependencies are listed could be important. @@ -342,7 +342,7 @@ default_indicator skip_availability_check Set to ``true`` to skip filtering module dependencies using ``module avail`` and attempt to load each - module listed in the depedencies (default: ``false``). + module listed in the dependencies (default: ``false``). This setting should be used when during dependency resolution modules are not listed in ``module avail``, but can be expected to be present when using ``module load`` in the job script, such as child modules in hierarchical module systems. Note: the order in which dependencies are listed could be important. @@ -376,6 +376,6 @@ It is highly experimental, undocumented, and unmaintained, and likely to be drop Brewed Tool Shed Package Resolver ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -The ``brewed_tool_shed`` dependency resolver was an attmept to resolve tool shed packages that had been auto converted +The ``brewed_tool_shed`` dependency resolver was an attempt to resolve tool shed packages that had been auto converted to the tool shed. It is highly experimental, undocumented, unmaintained, and will almost certainly be removed from the code base. diff --git a/doc/source/admin/galaxy_options.rst b/doc/source/admin/galaxy_options.rst index 6b285e7cf4e..65ca2fb6361 100644 --- a/doc/source/admin/galaxy_options.rst +++ b/doc/source/admin/galaxy_options.rst @@ -697,7 +697,7 @@ :Description: Location of files available for a short time as downloads (short term storage). This directory is exclusively used for serving - dynamically generated downloadable content. Galaxy may uses the + dynamically generated downloadable content. Galaxy may use the new_file_path parameter as a general temporary directory and that directory should be monitored by a tool such as tmpwatch in production environments. short_term_storage_dir on the other hand @@ -1288,7 +1288,7 @@ destination level for heterogeneous clusters. conda job resolution requires bash or zsh so if this is switched to /bin/sh for instance - conda resolution should be disabled. Containerized jobs - always use /bin/sh - so more maximum portability tool authors + always use /bin/sh - for maximum portability tool authors should assume generated commands run in sh. :Default: ``/bin/bash`` :Type: str @@ -1323,7 +1323,7 @@ :Description: Set this to true to attempt to resolve bio.tools metadata for - tools for tool not resovled via biotools_content_directory. + tools for tool not resolved via biotools_content_directory. :Default: ``false`` :Type: bool diff --git a/doc/source/admin/migrating_to_gunicorn.md b/doc/source/admin/migrating_to_gunicorn.md index e647487dcdb..a0fa75e1962 100644 --- a/doc/source/admin/migrating_to_gunicorn.md +++ b/doc/source/admin/migrating_to_gunicorn.md @@ -7,7 +7,7 @@ We removed support for running Galaxy under uWSGI in Galaxy release 22.05. We made this move because uWSGI support for newer Python versions has been problematic and because we have modernized the API portion of our backend. The Galaxy web application is now an ASGI application driven by [FastAPI](https://fastapi.tiangolo.com/) and [Starlette](https://www.starlette.io/). -This enables numerous important features that were not be possible (or were more complicated to set up) +This enables numerous important features that were not possible (or were more complicated to set up) otherwise. Importantly, [FastAPI's documentation](https://fastapi.tiangolo.com/tutorial/) is very good and should increase developer productivity. diff --git a/doc/source/admin/special_topics/interactivetools.rst b/doc/source/admin/special_topics/interactivetools.rst index aa124fff701..53e7e81eec1 100644 --- a/doc/source/admin/special_topics/interactivetools.rst +++ b/doc/source/admin/special_topics/interactivetools.rst @@ -10,7 +10,7 @@ and enabling a Galaxy User to gain access to content inside in real-time. How Galaxy InteractiveTools work -------------------------------- -A InteractiveTool is defined in the same familiar way as standard Galaxy Tools, +An InteractiveTool is defined in the same familiar way as standard Galaxy Tools, but are specified with ``tool_type="interactive"``, and providing additional entry point information: @@ -202,7 +202,7 @@ An example ``job_conf.yml`` file as seen in ``config/job_conf.yml.interactivetoo default_destination_id: local -The Galaxy currently contains a sizable collection of **InteractiveTools** directly in the +Galaxy currently contains a sizable collection of **InteractiveTools** directly in the code base. To be enabled, they need to be commented in or added to the ``config/tool_conf.xml``: .. code-block:: xml @@ -213,7 +213,7 @@ code base. To be enabled, they need to be commented in or added to the ``config/ -A InteractiveTool is defined in the same familiar way as standard Galaxy Tools, +An InteractiveTool is defined in the same familiar way as standard Galaxy Tools, but are specified with ``tool_type="interactive"``, and providing additional entry point information: @@ -268,7 +268,7 @@ server within an InteractiveTool container now must serve the contents under a p 2. Absolute links. Unfortunately many relevant services are implemented with absolute links, i.e. starting at the top-level ``/``. For such InteractiveTools to work with path-based URLs the contained web server needs to be configured with the path prefix/entry point path under which the content should be served. Two issues then - needs to be considered: + need to be considered: a. How to inject the path prefix into the InteractiveTool at run-time? @@ -395,7 +395,7 @@ In both nginx config examples, you might want to replace localhost with your ser Job runner configuration in production ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -InteractiveTools have been enabled for the Condor, Slurm, Pulsar and Kuberneters job runner. +InteractiveTools have been enabled for the Condor, Slurm, Pulsar and Kubernetes job runner. A destination configuration for Condor may look like this: .. code-block:: xml diff --git a/doc/source/admin/useful_scripts.rst b/doc/source/admin/useful_scripts.rst index c65b3e59e6d..d992de2898d 100644 --- a/doc/source/admin/useful_scripts.rst +++ b/doc/source/admin/useful_scripts.rst @@ -40,9 +40,9 @@ To safely delete unused histories and their associated records, please use the ` Deleting old galaxy_session records ----------------------------------- -Each time Galaxy is accessed, a galaxy_session record is created, even when the user is annonymous. Over time, Galaxy accumulates such records. Deleting such records will declutter the database and free up space. +Each time Galaxy is accessed, a galaxy_session record is created, even when the user is anonymous. Over time, Galaxy accumulates such records. Deleting such records will declutter the database and free up space. -To safely delete such records, please use the galaxy-delete-sessions script. By default, a galaxy_session record should be at least a month old to be considered safe to delete (which is determinded by the value of its ``update_time`` field). +To safely delete such records, please use the galaxy-delete-sessions script. By default, a galaxy_session record should be at least a month old to be considered safe to delete (which is determined by the value of its ``update_time`` field). .. code-block:: console diff --git a/doc/source/admin/user_defined_tools.md b/doc/source/admin/user_defined_tools.md index fe0f0e81f8a..f0f4f5b7198 100644 --- a/doc/source/admin/user_defined_tools.md +++ b/doc/source/admin/user_defined_tools.md @@ -77,7 +77,7 @@ While the structure is similar, several key differences exist: To enable this feature: 1. Set `enable_beta_tool_formats: true` in your Galaxy configuration. -2. Create a role of type `Custom Tool Execution` in the admin user interdace. +2. Create a role of type `Custom Tool Execution` in the admin user interface. 3. Assign users or groups to this role. ## Sharing User-Defined Tools diff --git a/doc/source/dev/api_guidelines.rst b/doc/source/dev/api_guidelines.rst index 17ba815f1df..6e009137f58 100644 --- a/doc/source/dev/api_guidelines.rst +++ b/doc/source/dev/api_guidelines.rst @@ -44,7 +44,7 @@ of the static checking that can be done for the Galaxy backend. To further document your API and allow other developers to see how it functions, new API functionality should include functional tests. These functional tests should be implemented in Python and added to either the API test suite -or the integration test suite. Checkout the :doc:`Writing Tests for Galaxy ` +or the integration test suite. Check out the :doc:`Writing Tests for Galaxy ` documentation for more information on developing tests for Galaxy. .. note:: From a9861d7ddc61ef23aae1ff4a72407b8534dea70c Mon Sep 17 00:00:00 2001 From: benjamin Date: Sun, 14 Jun 2026 13:12:07 +0000 Subject: [PATCH 27/31] docs: fix more typos --- doc/source/admin/python.md | 2 +- doc/source/admin/reports_options.rst | 2 +- doc/source/admin/special_topics/interactivetools.rst | 2 +- doc/source/admin/special_topics/mulled_containers.rst | 6 +++--- doc/source/admin/special_topics/webhooks.rst | 4 ++-- doc/source/admin/user_defined_tools.md | 2 +- 6 files changed, 9 insertions(+), 9 deletions(-) diff --git a/doc/source/admin/python.md b/doc/source/admin/python.md index 98ce8f12a85..580cc0a6c78 100644 --- a/doc/source/admin/python.md +++ b/doc/source/admin/python.md @@ -26,7 +26,7 @@ If Galaxy complains about the version of Python you are using: ```sh % rm -rf /path/to/galaxy/database/compiled_templates/ ``` - These templated will be regenerated automatically when starting Galaxy. + These templates will be regenerated automatically when starting Galaxy. 5. Start Galaxy again. diff --git a/doc/source/admin/reports_options.rst b/doc/source/admin/reports_options.rst index 51773cdfc34..bb704bac2ad 100644 --- a/doc/source/admin/reports_options.rst +++ b/doc/source/admin/reports_options.rst @@ -16,7 +16,7 @@ :Description: Database connection. Galaxy Reports are intended for production Galaxy instances, so sqlite (and the default value below) is not - supported. An SQLAlchemy connection string should be used specify + supported. An SQLAlchemy connection string should be used to specify an external database. :Default: ``sqlite:///./database/universe.sqlite?isolation_level=IMMEDIATE`` :Type: str diff --git a/doc/source/admin/special_topics/interactivetools.rst b/doc/source/admin/special_topics/interactivetools.rst index 53e7e81eec1..029794ffaa8 100644 --- a/doc/source/admin/special_topics/interactivetools.rst +++ b/doc/source/admin/special_topics/interactivetools.rst @@ -326,7 +326,7 @@ server within an InteractiveTool container now must serve the contents under a p When ``requires_path_in_url="True"`` in the ``entry_point`` tag, the InteractiveTool proxy service forwards the HTTP requests with the full path intact. - Both values of ``requires_path_in_url`` can be combined with both injection mechanisms, leading two four configuration variants + Both values of ``requires_path_in_url`` can be combined with both injection mechanisms, leading to four configuration variants for path-based InteractiveTools. Choosing the correct one depends on the implementation of the web server contained in the InteractiveTool and can be a bit tricky to get correct. In some cases, none of these options will work. One solution can then be to configure another highly customized proxy web server within the InteractiveTool, e.g. using NGINX. diff --git a/doc/source/admin/special_topics/mulled_containers.rst b/doc/source/admin/special_topics/mulled_containers.rst index 28191842d94..40739119f6a 100644 --- a/doc/source/admin/special_topics/mulled_containers.rst +++ b/doc/source/admin/special_topics/mulled_containers.rst @@ -41,7 +41,7 @@ is not available already. Automatic build of Linux containers ----------------------------------- -We utilize mulled_ with involucro_ to automatically convert all packages in Bioconda_ into Linux containers images +We utilize mulled_ with involucro_ to automatically convert all packages in Bioconda_ into Linux container images (Docker and rkt at the moment) and make them available at the `BioContainers Quay.io account`_. We have developed small utilities around this technology stack, which is currently included in the ``galaxy-tool-util`` @@ -122,7 +122,7 @@ Build, test, and push a conda-forge package to biocontainers > You need to have write access to the biocontainers repository You can build packages from other Conda channels as well, not only from BioConda. ``pandoc`` tool is available from the -conda-forge channel and conda-forge is also enabled by default in Galaxy. To build ``pandoc`` and push it to biocontainrs +conda-forge channel and conda-forge is also enabled by default in Galaxy. To build ``pandoc`` and push it to biocontainers you could do something along these lines. @@ -167,7 +167,7 @@ In order to generate the list file the ``mulled-list`` command may be useful. Th $ mulled-list --source docker --not-singularity --blacklist blacklist.txt --file output.txt -The list of containers will be saved as ``output.txt``. The (optional) ``--blacklist`` option may be used to exclude containers which should not included in the output; ``blacklist.txt`` should contain a list of the 'blacklisted' containers, each on a new line. +The list of containers will be saved as ``output.txt``. The (optional) ``--blacklist`` option may be used to exclude containers which should not be included in the output; ``blacklist.txt`` should contain a list of the 'blacklisted' containers, each on a new line. The generated containers should also be tested. This can be achieved by affixing ``--testing test-output.log`` to the ``mulled-update-singularity-containers`` command: diff --git a/doc/source/admin/special_topics/webhooks.rst b/doc/source/admin/special_topics/webhooks.rst index 7a81a5809cc..5d09d04bbd9 100644 --- a/doc/source/admin/special_topics/webhooks.rst +++ b/doc/source/admin/special_topics/webhooks.rst @@ -5,7 +5,7 @@ Tiny plugin interface to extend the Galaxy client. Galaxy webhooks provides a simple way of inserting icons, links, or other HTML elements into predefined locations. For this Galaxy provides some entry points which can be used to extend the client with content. This content -can consists out of simple HTML, JS or dynamically generated content from a python function. +can consist of simple HTML, JS or dynamically generated content from a python function. Please note that the webhooks interface is new and can change in the coming releases. Consider it as beta as we don't make promises to keep the API stable at the moment. @@ -82,7 +82,7 @@ The configuration file is just a .yml (or .yaml) file with a few options. The fo - **activate** - *true* or *false* - whether show the plugin on a page or not - **icon** Icon to show (if masthead) - **tooltip** - Tooltip to show on hover -- **function** - A javascript function to be executed. Any calls to Galaxy APIs should be sure to use Galaxy.root when constructing the URL to ensure compatability across Galaxy deployments. +- **function** - A javascript function to be executed. Any calls to Galaxy APIs should be sure to use Galaxy.root when constructing the URL to ensure compatibility across Galaxy deployments. All other options can be anything used by the plugin and accessed later via *webhook.config['...']*. diff --git a/doc/source/admin/user_defined_tools.md b/doc/source/admin/user_defined_tools.md index f0f4f5b7198..8e48a84d64a 100644 --- a/doc/source/admin/user_defined_tools.md +++ b/doc/source/admin/user_defined_tools.md @@ -88,7 +88,7 @@ These tools can also be exported to disk and loaded like regular tools, enabling ## Security considerations -User-defined tools share the same security risks as interactive tools.. +User-defined tools share the same security risks as interactive tools. See https://training.galaxyproject.org/training-material/topics/admin/tutorials/interactive-tools/tutorial.html#securing-interactive-tools for an extended discussion, and see https://github.com/galaxyproject/galaxy/blob/dev/test/integration/embedded_pulsar_job_conf.yml#L29 for a simple example that uses embedded pulsar to isolate mounts and disables network access. While the feature is in beta we recommend that only trusted users are allowed to use this feature. From d36470c09a0ca766bc2d3c02e54d232ec9a73b5f Mon Sep 17 00:00:00 2001 From: benjamin Date: Sun, 14 Jun 2026 13:18:29 +0000 Subject: [PATCH 28/31] docs: fix remaining typos --- client/docs/providers-and-renderers.md | 2 +- doc/source/admin/db_migration.md | 2 +- doc/source/admin/galaxy_options.rst | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/client/docs/providers-and-renderers.md b/client/docs/providers-and-renderers.md index 23b5522103d..a2c99105dbf 100644 --- a/client/docs/providers-and-renderers.md +++ b/client/docs/providers-and-renderers.md @@ -57,7 +57,7 @@ update:propname event syntax whenever possible [to facilitate .sync binds](https://vuejs.org/v2/guide/components-custom-events.html#sync-Modifier)). Whatever happens to that new object is somebody else's job. As soon as you tie the data management -to the rendering, the re-usability of your components craters. +to the rendering, the re-usability of your components crater. ## The Provider diff --git a/doc/source/admin/db_migration.md b/doc/source/admin/db_migration.md index 3b29abf53f9..b65c63e0528 100644 --- a/doc/source/admin/db_migration.md +++ b/doc/source/admin/db_migration.md @@ -146,7 +146,7 @@ Galaxy's data model includes the [galaxy model](https://github.com/galaxyproject These two models may be persisted in one combined database (which is the default) or two separate databases (which is enabled by setting the [`install_database_connection`](https://github.com/galaxyproject/galaxy/blob/dev/lib/galaxy/webapps/galaxy/config_schema.yml#L157) configuration option). -These models are represented by migration [branches](https://alembic.sqlalchemy.org/en/latest/branches.html) (versioning lineages with a common base) labeled as *gxy* for the galaxy model and *tsi* for the install model. If both models are hosted in the same databases, the branches will share the same Alembic version table; otherwise, each database has its own version table. +These models are represented by migration [branches](https://alembic.sqlalchemy.org/en/latest/branches.html) (versioning lineages with a common base) labeled as *gxy* for the galaxy model and *tsi* for the install model. If both models are hosted in the same database, the branches will share the same Alembic version table; otherwise, each database has its own version table. Each branch has its own version history, represented by revision scripts located in the branch version directory (`migrations/alembic/versions_gxy` for *gxy* and `migrations/alembic/versions_tsi` for *tsi*). diff --git a/doc/source/admin/galaxy_options.rst b/doc/source/admin/galaxy_options.rst index 65ca2fb6361..48b242dc4f2 100644 --- a/doc/source/admin/galaxy_options.rst +++ b/doc/source/admin/galaxy_options.rst @@ -1008,7 +1008,7 @@ :Description: XML config file that contains data table entries for the - ToolDataTableManager. This file is manually # maintained by the + ToolDataTableManager. This file is manually maintained by the Galaxy administrator (.sample used if default does not exist). The value of this option will be resolved with respect to . From 7073c166a3840e2420e6fde4596c389fe8e27799 Mon Sep 17 00:00:00 2001 From: John Chilton Date: Fri, 12 Jun 2026 12:58:44 -0400 Subject: [PATCH 29/31] Add MCP page (notebook/report) operations Wrap PagesService in AgentOperationsManager and expose 7 FastMCP tools: list_pages, get_page, create_page, update_page, list_page_revisions, get_page_revision, revert_page_revision. Lets external MCP agents read and author Galaxy Notebooks/Reports. Works in encoded-id space throughout (page schemas are EncodedDatabaseIdField), so no resolve_hid/ID_FIELDS machinery. get_page and get_page_revision return content_editor; expanded content opt-in via include_rendered. MCP edits tagged edit_source=agent. list_pages defaults to own pages. No migration/config changes. Tests: 11 unit (mocked PagesService) + integration round-trips (lifecycle, dataset-directive encoded-id round-trip, revision, revert). Co-Authored-By: Claude Opus 4.8 (1M context) --- .../PageEditor/PageRevisionView.test.ts | 1 + lib/galaxy/agents/operations.py | 132 ++++++++++ lib/galaxy/schema/schema.py | 1 + lib/galaxy/webapps/galaxy/api/mcp.py | 232 ++++++++++++++++++ test/integration/test_agents.py | 90 +++++++ .../managers/test_AgentOperationsManager.py | 188 ++++++++++++++ 6 files changed, 644 insertions(+) diff --git a/client/src/components/PageEditor/PageRevisionView.test.ts b/client/src/components/PageEditor/PageRevisionView.test.ts index 87c39a77bb3..4840ad51019 100644 --- a/client/src/components/PageEditor/PageRevisionView.test.ts +++ b/client/src/components/PageEditor/PageRevisionView.test.ts @@ -16,6 +16,7 @@ const REVISION: PageRevisionDetails = { update_time: "2025-01-01T00:00:00Z", title: "Test Revision", content: "# Title\nOld line 1\nOld line 2", + content_editor: "# Title\nOld line 1\nOld line 2", content_format: "markdown", }; diff --git a/lib/galaxy/agents/operations.py b/lib/galaxy/agents/operations.py index 3de1a66f6f0..e28daa1a380 100644 --- a/lib/galaxy/agents/operations.py +++ b/lib/galaxy/agents/operations.py @@ -31,8 +31,11 @@ from galaxy.schema.fetch_data import ( from galaxy.schema.invocation import InvocationSerializationParams from galaxy.schema.schema import ( CreateHistoryPayload, + CreatePagePayload, DatasetSourceType, InvocationIndexPayload, + PageIndexQueryPayload, + UpdatePagePayload, WorkflowIndexPayload, ) from galaxy.schema.workflows import InvokeWorkflowPayload @@ -72,6 +75,7 @@ class AgentOperationsManager: self._dataset_collections_service: Optional[Any] = None self._dynamic_tools_manager: Optional[Any] = None self._file_source_instances_manager: Optional[Any] = None + self._pages_service: Optional[Any] = None def _encode_id(self, value: int) -> str: return self.trans.security.encode_id(value) @@ -173,6 +177,14 @@ class AgentOperationsManager: self._file_source_instances_manager = self.app[FileSourceInstancesManager] return self._file_source_instances_manager + @property + def pages_service(self): + if self._pages_service is None: + from galaxy.webapps.galaxy.services.pages import PagesService + + self._pages_service = self.app[PagesService] + return self._pages_service + def connect(self) -> dict[str, Any]: config = self.app.config user = self.trans.user @@ -1089,3 +1101,123 @@ class AgentOperationsManager: "file_sources": file_sources, "count": len(file_sources), } + + # ==================== Pages (notebooks and reports) ==================== + + def list_pages( + self, + history_id: Optional[str] = None, + search: Optional[str] = None, + limit: int = 100, + offset: int = 0, + show_published: bool = False, + show_shared: bool = False, + deleted: bool = False, + ) -> dict[str, Any]: + """List pages viewable by the current user. + + When history_id is set, only pages attached to that history (Galaxy + Notebooks) are returned. Defaults to the user's own pages; published or + shared pages are included only when explicitly requested. + """ + payload = PageIndexQueryPayload( + history_id=history_id, + search=search, + limit=limit, + offset=offset, + show_own=True, + show_published=show_published, + show_shared=show_shared, + deleted=deleted, + ) + pages, total_matches = self.pages_service.index(self.trans, payload, include_total_count=True) + return { + "pages": pages.model_dump(mode="json"), + "count": len(pages.root), + "total_matches": total_matches, + } + + def get_page(self, page_id: str, include_rendered: bool = False) -> dict[str, Any]: + """Return a page with its latest-revision content. + + content_editor (editable markdown with encoded-id directives) is always + returned. The embed-expanded render form (content) can be large and is + included only when include_rendered is True. + """ + decoded_page_id = self.trans.security.decode_id(page_id) + details = self.pages_service.show(self.trans, decoded_page_id) + result = details.model_dump(mode="json") + if not include_rendered: + result.pop("content", None) + return result + + def create_page( + self, + history_id: Optional[str] = None, + title: Optional[str] = None, + content: Optional[str] = None, + annotation: Optional[str] = None, + slug: Optional[str] = None, + ) -> dict[str, Any]: + """Create a markdown page. Attach it to a history (notebook) by passing history_id. + + Standalone reports (no history_id) require a unique slug and a title. + """ + payload = CreatePagePayload( + history_id=history_id, + title=title, + content=content, + content_format="markdown", + annotation=annotation, + slug=slug, + ) + details = self.pages_service.create(self.trans, payload) + return details.model_dump(mode="json") + + def update_page( + self, + page_id: str, + content: Optional[str] = None, + title: Optional[str] = None, + edit_source: str = "agent", + ) -> dict[str, Any]: + """Update a page. Supplying content creates a new revision tagged with edit_source.""" + decoded_page_id = self.trans.security.decode_id(page_id) + payload = UpdatePagePayload( + content=content, + title=title, + edit_source=edit_source, + ) + details = self.pages_service.update(self.trans, decoded_page_id, payload) + return details.model_dump(mode="json") + + def list_page_revisions(self, page_id: str, sort_desc: bool = False) -> dict[str, Any]: + """List the revision history of a page (provenance via edit_source).""" + decoded_page_id = self.trans.security.decode_id(page_id) + revisions = self.pages_service.list_revisions(self.trans, decoded_page_id, sort_desc=sort_desc) + return { + "revisions": revisions.model_dump(mode="json"), + "count": len(revisions.root), + } + + def get_page_revision(self, page_id: str, revision_id: str, include_rendered: bool = False) -> dict[str, Any]: + """Return a single page revision with its content. + + Mirrors get_page: content_editor (editable encoded-id markdown) is always + returned; the embed-expanded render form (content) is included only when + include_rendered is True. + """ + decoded_page_id = self.trans.security.decode_id(page_id) + decoded_revision_id = self.trans.security.decode_id(revision_id) + revision = self.pages_service.show_revision(self.trans, decoded_page_id, decoded_revision_id) + result = revision.model_dump(mode="json") + if not include_rendered: + result.pop("content", None) + return result + + def revert_page_revision(self, page_id: str, revision_id: str) -> dict[str, Any]: + """Roll a page back to an earlier revision (creates a new 'restore' revision).""" + decoded_page_id = self.trans.security.decode_id(page_id) + decoded_revision_id = self.trans.security.decode_id(revision_id) + revision = self.pages_service.revert_revision(self.trans, decoded_page_id, decoded_revision_id) + return revision.model_dump(mode="json") diff --git a/lib/galaxy/schema/schema.py b/lib/galaxy/schema/schema.py index c2e7797c222..72afb1b8149 100644 --- a/lib/galaxy/schema/schema.py +++ b/lib/galaxy/schema/schema.py @@ -4376,6 +4376,7 @@ class PageRevisionSummary(Model): class PageRevisionDetails(PageRevisionSummary): title: Optional[str] = None content: Optional[str] = None + content_editor: Optional[str] = ContentEditorField content_format: Optional[PageContentFormat] = None diff --git a/lib/galaxy/webapps/galaxy/api/mcp.py b/lib/galaxy/webapps/galaxy/api/mcp.py index 5975ba8b95b..f37cb332877 100644 --- a/lib/galaxy/webapps/galaxy/api/mcp.py +++ b/lib/galaxy/webapps/galaxy/api/mcp.py @@ -1180,6 +1180,238 @@ def get_mcp_app(gx_app): ops_manager = get_operations_manager(api_key, ctx) return ops_manager.import_workflow_from_iwc(trs_id) + # ==================== Pages (notebooks and reports) ==================== + + @mcp.tool() + def list_pages( + api_key: str, + ctx: MCPContext, + history_id: str | None = None, + search: str | None = None, + limit: int = 100, + offset: int = 0, + show_published: bool = False, + show_shared: bool = False, + ) -> dict[str, Any]: + """List Galaxy pages (markdown documents) viewable by the user. + + A page attached to a history is a "Galaxy Notebook"; a standalone page is + a "Report". Pass history_id to list only that history's notebooks. + + Args: + history_id: Encoded history id. When set, returns only notebooks + attached to that history. + search: Freetext filter over title/content. + limit: Max pages to return (default 100). + offset: Pagination offset. + show_published: Also include pages published by other users (default False). + show_shared: Also include pages shared with the user (default False). + + Returns: + Dict with `pages` (summaries incl. encoded id, title, history_id, + latest_revision_id), `count`, and `total_matches`. + + NEXT STEPS: + - Read one: get_page(page_id) + - Create a notebook: create_page(history_id=...) + """ + with _mcp_error_handler("list_pages"): + ops_manager = get_operations_manager(api_key, ctx) + return ops_manager.list_pages( + history_id=history_id, + search=search, + limit=limit, + offset=offset, + show_published=show_published, + show_shared=show_shared, + ) + + @mcp.tool() + def get_page( + page_id: str, + api_key: str, + ctx: MCPContext, + include_rendered: bool = False, + ) -> dict[str, Any]: + """Get a page and the content of its latest revision. + + Returns `content_editor`: the editable Galaxy-flavored markdown, with + ENCODED ids in directives (e.g. `history_dataset_id=f2db41e1fa331b3e`). + This is the form to edit and pass back to update_page. + + Args: + page_id: Encoded id of the page (from list_pages / create_page). + include_rendered: When True, also return `content` -- the + embed-expanded render form (inlined dataset previews). Can be + large; omit unless you need the rendered output. + + Returns: + Page details including `content_editor`, metadata, and `edit_source` + of the latest revision. + + NEXT STEPS: + - Edit it: update_page(page_id, content=...) + - See history: list_page_revisions(page_id) + """ + with _mcp_error_handler("get_page"): + ops_manager = get_operations_manager(api_key, ctx) + return ops_manager.get_page(page_id, include_rendered=include_rendered) + + @mcp.tool() + def create_page( + api_key: str, + ctx: MCPContext, + history_id: str | None = None, + title: str | None = None, + content: str | None = None, + annotation: str | None = None, + slug: str | None = None, + ) -> dict[str, Any]: + """Create a markdown page (Galaxy Notebook or Report). + + Pass history_id to create a history-attached notebook (title auto-fills + from the history if omitted). Omit history_id to create a standalone + report -- reports REQUIRE both a title and a unique slug + (lowercase/digits/hyphens). + + Content is Galaxy-flavored markdown. To embed a dataset, use a directive + with the ENCODED dataset id, e.g. + `history_dataset_display(history_dataset_id=f2db41e1fa331b3e)` or + `history_dataset_collection_display(history_dataset_collection_id=...)`. + Get encoded ids from get_history_contents / get_dataset_details. + + Args: + history_id: Encoded history id to attach the page to (notebook). + title: Page title. + content: Initial markdown content. + annotation: Optional annotation attached to the page. + slug: URL slug (required for standalone reports). + + Returns: + Created page details including encoded id and content_editor. + + NEXT STEPS: + - Edit it: update_page(page_id, content=...) + """ + with _mcp_error_handler("create_page"): + ops_manager = get_operations_manager(api_key, ctx) + return ops_manager.create_page( + history_id=history_id, + title=title, + content=content, + annotation=annotation, + slug=slug, + ) + + @mcp.tool() + def update_page( + page_id: str, + api_key: str, + ctx: MCPContext, + content: str | None = None, + title: str | None = None, + ) -> dict[str, Any]: + """Update a page, creating a new revision when content changes. + + Content is Galaxy-flavored markdown using ENCODED ids in directives + (e.g. `history_dataset_id=f2db41e1fa331b3e`) -- never raw integer ids or + HIDs. Get encoded ids from get_history_contents / get_dataset_details. + Edits made through this tool are recorded with edit_source="agent". + + Args: + page_id: Encoded id of the page. + content: New markdown content. Omit to leave content unchanged. + title: New title. Omit to leave unchanged. + + Returns: + Updated page details including content_editor. + + NEXT STEPS: + - Inspect revisions: list_page_revisions(page_id) + - Roll back: revert_page_revision(page_id, revision_id) + """ + with _mcp_error_handler("update_page"): + ops_manager = get_operations_manager(api_key, ctx) + return ops_manager.update_page(page_id, content=content, title=title) + + @mcp.tool() + def list_page_revisions( + page_id: str, + api_key: str, + ctx: MCPContext, + sort_desc: bool = False, + ) -> dict[str, Any]: + """List the revision history of a page. + + Each revision carries an `edit_source` ("user", "agent", or "restore") + recording who made the edit. + + Args: + page_id: Encoded id of the page. + sort_desc: Newest-first when True (default oldest-first). + + Returns: + Dict with `revisions` (encoded id, page_id, edit_source, timestamps) + and `count`. + + NEXT STEPS: + - Read a revision: get_page_revision(page_id, revision_id) + - Roll back: revert_page_revision(page_id, revision_id) + """ + with _mcp_error_handler("list_page_revisions"): + ops_manager = get_operations_manager(api_key, ctx) + return ops_manager.list_page_revisions(page_id, sort_desc=sort_desc) + + @mcp.tool() + def get_page_revision( + page_id: str, + revision_id: str, + api_key: str, + ctx: MCPContext, + include_rendered: bool = False, + ) -> dict[str, Any]: + """Get the content of a single page revision. + + Mirrors get_page: returns `content_editor` (the editable Galaxy-flavored + markdown with ENCODED ids in directives) -- the form to compare against + get_page or pass back to update_page. + + Args: + page_id: Encoded id of the page. + revision_id: Encoded id of the revision (from list_page_revisions). + include_rendered: When True, also return `content` -- the + embed-expanded render form. Can be large; omit unless needed. + + Returns: + Revision details including `content_editor`, `edit_source`, and timestamps. + """ + with _mcp_error_handler("get_page_revision"): + ops_manager = get_operations_manager(api_key, ctx) + return ops_manager.get_page_revision(page_id, revision_id, include_rendered=include_rendered) + + @mcp.tool() + def revert_page_revision( + page_id: str, + revision_id: str, + api_key: str, + ctx: MCPContext, + ) -> dict[str, Any]: + """Roll a page back to an earlier revision. + + Creates a NEW revision from the target revision's content, recorded with + edit_source="restore" (the history is append-only -- nothing is deleted). + + Args: + page_id: Encoded id of the page. + revision_id: Encoded id of the revision to restore. + + Returns: + The new restored revision's details. + """ + with _mcp_error_handler("revert_page_revision"): + ops_manager = get_operations_manager(api_key, ctx) + return ops_manager.revert_page_revision(page_id, revision_id) + mcp_app = mcp.http_app(path="/") mcp_app.state.mcp_server = mcp diff --git a/test/integration/test_agents.py b/test/integration/test_agents.py index 333a61b2c52..b852caec1a3 100644 --- a/test/integration/test_agents.py +++ b/test/integration/test_agents.py @@ -349,6 +349,13 @@ class TestMCPServerSmoke(IntegrationTestCase): "search_iwc_workflows", "get_iwc_workflow_details", "import_workflow_from_iwc", + "list_pages", + "get_page", + "create_page", + "update_page", + "list_page_revisions", + "get_page_revision", + "revert_page_revision", } assert expected.issubset(tool_names), f"Missing tools: {expected - tool_names}" @@ -563,3 +570,86 @@ class TestMCPServerSmoke(IntegrationTestCase): data = result.data assert "id" in data assert data["trsID"] == trs_id + + def test_mcp_page_lifecycle(self): + """create_page -> get_page -> update_page -> list_page_revisions round-trip.""" + mcp_server = self._get_mcp_server() + api_key = self._get_api_key() + populator = DatasetPopulator(self._get_interactor(api_key=api_key)) + history_id = populator.new_history() + + async def _flow(): + async with Client(mcp_server) as client: + created = await client.call_tool( + "create_page", + {"api_key": api_key, "history_id": history_id, "title": "MCP Notebook", "content": "# Intro\n"}, + ) + page_id = created.data["id"] + got = await client.call_tool("get_page", {"api_key": api_key, "page_id": page_id}) + await client.call_tool( + "update_page", + {"api_key": api_key, "page_id": page_id, "content": "# Intro\n\n## Methods\n"}, + ) + revisions = await client.call_tool("list_page_revisions", {"api_key": api_key, "page_id": page_id}) + listed = await client.call_tool("list_pages", {"api_key": api_key, "history_id": history_id}) + return created, got, revisions, listed + + created, got, revisions, listed = self._run_async(_flow()) + assert not created.is_error, created + assert created.data["history_id"] == history_id + # get_page returns the editable content and omits the rendered form by default + assert "content_editor" in got.data + assert "content" not in got.data + # update_page created a second revision tagged with edit_source="agent" + assert revisions.data["count"] == 2 + assert revisions.data["revisions"][-1]["edit_source"] == "agent" + # the notebook shows up when listing pages for its history + assert created.data["id"] in {p["id"] for p in listed.data["pages"]} + + def test_mcp_page_directive_and_revert(self): + """Dataset directives survive in encoded-id space; revert restores prior content.""" + mcp_server = self._get_mcp_server() + api_key = self._get_api_key() + populator = DatasetPopulator(self._get_interactor(api_key=api_key)) + history_id = populator.new_history() + hda_id = populator.new_dataset(history_id)["id"] + directive = f"# Analysis\n\n```galaxy\nhistory_dataset_display(history_dataset_id={hda_id})\n```\n" + + async def _flow(): + async with Client(mcp_server) as client: + created = await client.call_tool( + "create_page", + {"api_key": api_key, "history_id": history_id, "title": "Directive NB", "content": directive}, + ) + page_id = created.data["id"] + editor = await client.call_tool("get_page", {"api_key": api_key, "page_id": page_id}) + rendered = await client.call_tool( + "get_page", {"api_key": api_key, "page_id": page_id, "include_rendered": True} + ) + await client.call_tool( + "update_page", {"api_key": api_key, "page_id": page_id, "content": "# Replaced\n"} + ) + revisions = await client.call_tool("list_page_revisions", {"api_key": api_key, "page_id": page_id}) + first_rev_id = revisions.data["revisions"][0]["id"] + old_rev = await client.call_tool( + "get_page_revision", + {"api_key": api_key, "page_id": page_id, "revision_id": first_rev_id}, + ) + reverted = await client.call_tool( + "revert_page_revision", + {"api_key": api_key, "page_id": page_id, "revision_id": first_rev_id}, + ) + return editor, rendered, old_rev, reverted + + editor, rendered, old_rev, reverted = self._run_async(_flow()) + # content_editor keeps the directive with the ENCODED dataset id (encoded-id space) + assert hda_id in editor.data["content_editor"] + assert "content" not in editor.data + # include_rendered exposes the expanded render form + assert "content" in rendered.data + # get_page_revision mirrors get_page: editable content_editor by default, rendered omitted + assert hda_id in old_rev.data["content_editor"] + assert "content" not in old_rev.data + # revert appends a new "restore" revision carrying the original directive content + assert reverted.data["edit_source"] == "restore" + assert hda_id in reverted.data["content"] diff --git a/test/unit/app/managers/test_AgentOperationsManager.py b/test/unit/app/managers/test_AgentOperationsManager.py index 7241c405502..6665d6b281c 100644 --- a/test/unit/app/managers/test_AgentOperationsManager.py +++ b/test/unit/app/managers/test_AgentOperationsManager.py @@ -3,6 +3,7 @@ from unittest import mock import pytest from galaxy.agents.operations import AgentOperationsManager +from galaxy.schema.fields import Security from .base import BaseTestCase @@ -419,3 +420,190 @@ class TestAgentOperationsManagerWithMockedServices(BaseTestCase): with pytest.raises(ValueError, match="User must be authenticated"): agent_ops.list_user_file_sources() + + +class TestAgentOperationsManagerPages(BaseTestCase): + """Page (notebook/report) operations against a mocked PagesService.""" + + def set_up_managers(self): + super().set_up_managers() + # DecodedDatabaseIdField on page payloads decodes via the module-global + # Security.security; point it at the same helper trans uses to encode. + Security.security = self.trans.security + self.agent_ops = AgentOperationsManager(app=self.app, trans=self.trans) + + def _mock_pages_service(self, mock_service): + return mock.patch.object( + type(self.agent_ops), "pages_service", new_callable=lambda: property(lambda self: mock_service) + ) + + def test_list_pages_defaults_to_own_only(self): + pages = mock.MagicMock() + pages.model_dump.return_value = [] + pages.root = [] + mock_service = mock.MagicMock() + mock_service.index.return_value = (pages, 0) + + with self._mock_pages_service(mock_service): + result = self.agent_ops.list_pages() + + payload = mock_service.index.call_args.args[1] + assert payload.show_own is True + assert payload.show_published is False + assert payload.show_shared is False + assert payload.history_id is None + assert result["count"] == 0 + assert result["total_matches"] == 0 + + def test_list_pages_history_filter(self): + encoded_history_id = self.trans.security.encode_id(42) + pages = mock.MagicMock() + pages.model_dump.return_value = [] + pages.root = [] + mock_service = mock.MagicMock() + mock_service.index.return_value = (pages, 5) + + with self._mock_pages_service(mock_service): + result = self.agent_ops.list_pages(history_id=encoded_history_id) + + payload = mock_service.index.call_args.args[1] + assert payload.history_id == 42 + assert result["total_matches"] == 5 + + def test_get_page_drops_rendered_by_default(self): + details = mock.MagicMock() + details.model_dump.return_value = {"id": "p1", "content_editor": "# Notes", "content": ""} + mock_service = mock.MagicMock() + mock_service.show.return_value = details + + with ( + self._mock_pages_service(mock_service), + mock.patch.object(self.trans.security, "decode_id", return_value=7), + ): + result = self.agent_ops.get_page("encoded_page") + + assert result["content_editor"] == "# Notes" + assert "content" not in result + mock_service.show.assert_called_once_with(self.trans, 7) + + def test_get_page_includes_rendered_when_requested(self): + details = mock.MagicMock() + details.model_dump.return_value = {"id": "p1", "content_editor": "# Notes", "content": ""} + mock_service = mock.MagicMock() + mock_service.show.return_value = details + + with ( + self._mock_pages_service(mock_service), + mock.patch.object(self.trans.security, "decode_id", return_value=7), + ): + result = self.agent_ops.get_page("encoded_page", include_rendered=True) + + assert result["content"] == "" + + def test_create_page_sets_markdown_format(self): + details = mock.MagicMock() + details.model_dump.return_value = {"id": "p1"} + mock_service = mock.MagicMock() + mock_service.create.return_value = details + + with self._mock_pages_service(mock_service): + self.agent_ops.create_page(title="Report", content="# Hi", slug="my-report") + + payload = mock_service.create.call_args.args[1] + assert payload.content_format == "markdown" + assert payload.title == "Report" + assert payload.slug == "my-report" + assert payload.history_id is None + + def test_create_page_with_history_decodes_id(self): + encoded_history_id = self.trans.security.encode_id(99) + details = mock.MagicMock() + details.model_dump.return_value = {"id": "p1"} + mock_service = mock.MagicMock() + mock_service.create.return_value = details + + with self._mock_pages_service(mock_service): + self.agent_ops.create_page(history_id=encoded_history_id, content="# Hi") + + payload = mock_service.create.call_args.args[1] + assert payload.history_id == 99 + assert payload.content_format == "markdown" + + def test_update_page_sets_edit_source_agent(self): + details = mock.MagicMock() + details.model_dump.return_value = {"id": "p1"} + mock_service = mock.MagicMock() + mock_service.update.return_value = details + + with ( + self._mock_pages_service(mock_service), + mock.patch.object(self.trans.security, "decode_id", return_value=7), + ): + self.agent_ops.update_page("encoded_page", content="# New") + + call = mock_service.update.call_args + assert call.args[1] == 7 + payload = call.args[2] + assert payload.edit_source == "agent" + assert payload.content == "# New" + + def test_list_page_revisions(self): + revisions = mock.MagicMock() + revisions.model_dump.return_value = [{"id": "r1"}] + revisions.root = [{"id": "r1"}] + mock_service = mock.MagicMock() + mock_service.list_revisions.return_value = revisions + + with ( + self._mock_pages_service(mock_service), + mock.patch.object(self.trans.security, "decode_id", return_value=7), + ): + result = self.agent_ops.list_page_revisions("encoded_page") + + mock_service.list_revisions.assert_called_once_with(self.trans, 7, sort_desc=False) + assert result["count"] == 1 + + def test_get_page_revision_drops_rendered_by_default(self): + revision = mock.MagicMock() + revision.model_dump.return_value = {"id": "r1", "content_editor": "# Notes", "content": ""} + mock_service = mock.MagicMock() + mock_service.show_revision.return_value = revision + + with ( + self._mock_pages_service(mock_service), + mock.patch.object(self.trans.security, "decode_id", side_effect=[7, 3]), + ): + result = self.agent_ops.get_page_revision("encoded_page", "encoded_rev") + + mock_service.show_revision.assert_called_once_with(self.trans, 7, 3) + assert result["content_editor"] == "# Notes" + assert "content" not in result + + def test_get_page_revision_includes_rendered_when_requested(self): + revision = mock.MagicMock() + revision.model_dump.return_value = {"id": "r1", "content_editor": "# Notes", "content": ""} + mock_service = mock.MagicMock() + mock_service.show_revision.return_value = revision + + with ( + self._mock_pages_service(mock_service), + mock.patch.object(self.trans.security, "decode_id", side_effect=[7, 3]), + ): + result = self.agent_ops.get_page_revision("encoded_page", "encoded_rev", include_rendered=True) + + assert result["content"] == "" + + def test_revert_page_revision_returns_restore(self): + revision = mock.MagicMock() + revision.model_dump.return_value = {"id": "r2", "edit_source": "restore"} + mock_service = mock.MagicMock() + mock_service.revert_revision.return_value = revision + + with ( + self._mock_pages_service(mock_service), + mock.patch.object(self.trans.security, "decode_id", side_effect=[7, 3]), + ): + result = self.agent_ops.revert_page_revision("encoded_page", "encoded_rev") + + mock_service.revert_revision.assert_called_once_with(self.trans, 7, 3) + assert result["edit_source"] == "restore" From 08f0c56b54229163e697af99d8303f4e27458842 Mon Sep 17 00:00:00 2001 From: John Chilton Date: Sat, 13 Jun 2026 10:11:57 -0400 Subject: [PATCH 30/31] Unify page rendered-content stripping; drop edit_source param _dump_page helper: model_dump + default-strip rendered `content`, keep content_editor. Route all 5 single-page/revision ops through it so create/update/revert stop leaking the rendered blob get_page/get_page_revision already gate. Dedupes the pop logic. update_page: drop caller-facing edit_source param, set "agent" inline. Integration: revert assertion checks content_editor (rendered now stripped). Co-Authored-By: Claude Opus 4.8 (1M context) --- lib/galaxy/agents/operations.py | 32 ++++++++++++++++++-------------- test/integration/test_agents.py | 3 ++- 2 files changed, 20 insertions(+), 15 deletions(-) diff --git a/lib/galaxy/agents/operations.py b/lib/galaxy/agents/operations.py index e28daa1a380..b976838accd 100644 --- a/lib/galaxy/agents/operations.py +++ b/lib/galaxy/agents/operations.py @@ -1104,6 +1104,17 @@ class AgentOperationsManager: # ==================== Pages (notebooks and reports) ==================== + def _dump_page(self, model, include_rendered: bool = False) -> dict[str, Any]: + """Serialize a page/revision schema, dropping the large rendered form by default. + + content_editor (editable encoded-id markdown) is always kept; content (the + embed-expanded render form) is included only when include_rendered is True. + """ + result = model.model_dump(mode="json") + if not include_rendered: + result.pop("content", None) + return result + def list_pages( self, history_id: Optional[str] = None, @@ -1146,10 +1157,7 @@ class AgentOperationsManager: """ decoded_page_id = self.trans.security.decode_id(page_id) details = self.pages_service.show(self.trans, decoded_page_id) - result = details.model_dump(mode="json") - if not include_rendered: - result.pop("content", None) - return result + return self._dump_page(details, include_rendered) def create_page( self, @@ -1172,24 +1180,23 @@ class AgentOperationsManager: slug=slug, ) details = self.pages_service.create(self.trans, payload) - return details.model_dump(mode="json") + return self._dump_page(details) def update_page( self, page_id: str, content: Optional[str] = None, title: Optional[str] = None, - edit_source: str = "agent", ) -> dict[str, Any]: - """Update a page. Supplying content creates a new revision tagged with edit_source.""" + """Update a page. Supplying content creates a new revision tagged edit_source=agent.""" decoded_page_id = self.trans.security.decode_id(page_id) payload = UpdatePagePayload( content=content, title=title, - edit_source=edit_source, + edit_source="agent", ) details = self.pages_service.update(self.trans, decoded_page_id, payload) - return details.model_dump(mode="json") + return self._dump_page(details) def list_page_revisions(self, page_id: str, sort_desc: bool = False) -> dict[str, Any]: """List the revision history of a page (provenance via edit_source).""" @@ -1210,14 +1217,11 @@ class AgentOperationsManager: decoded_page_id = self.trans.security.decode_id(page_id) decoded_revision_id = self.trans.security.decode_id(revision_id) revision = self.pages_service.show_revision(self.trans, decoded_page_id, decoded_revision_id) - result = revision.model_dump(mode="json") - if not include_rendered: - result.pop("content", None) - return result + return self._dump_page(revision, include_rendered) def revert_page_revision(self, page_id: str, revision_id: str) -> dict[str, Any]: """Roll a page back to an earlier revision (creates a new 'restore' revision).""" decoded_page_id = self.trans.security.decode_id(page_id) decoded_revision_id = self.trans.security.decode_id(revision_id) revision = self.pages_service.revert_revision(self.trans, decoded_page_id, decoded_revision_id) - return revision.model_dump(mode="json") + return self._dump_page(revision) diff --git a/test/integration/test_agents.py b/test/integration/test_agents.py index b852caec1a3..42924bf8671 100644 --- a/test/integration/test_agents.py +++ b/test/integration/test_agents.py @@ -652,4 +652,5 @@ class TestMCPServerSmoke(IntegrationTestCase): assert "content" not in old_rev.data # revert appends a new "restore" revision carrying the original directive content assert reverted.data["edit_source"] == "restore" - assert hda_id in reverted.data["content"] + assert hda_id in reverted.data["content_editor"] + assert "content" not in reverted.data From e65c2448db67790be71def22c4a6ab216204cbc6 Mon Sep 17 00:00:00 2001 From: John Chilton Date: Sat, 13 Jun 2026 12:00:33 -0400 Subject: [PATCH 31/31] Rebuild schema. --- client/packages/api-client/src/schema/schema.ts | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/client/packages/api-client/src/schema/schema.ts b/client/packages/api-client/src/schema/schema.ts index a65bbc4cdb5..7e55bfc71d7 100644 --- a/client/packages/api-client/src/schema/schema.ts +++ b/client/packages/api-client/src/schema/schema.ts @@ -19995,6 +19995,12 @@ export interface components { PageRevisionDetails: { /** Content */ content?: string | null; + /** + * Content for Editor + * @description Raw text contents of the last page revision (type dependent on content_format). + * @default + */ + content_editor: string | null; content_format?: components["schemas"]["PageContentFormat"] | null; /** * Create Time