-
+
From d53dcad4f690744fbc6d4a4f00f6307f0a95d73d Mon Sep 17 00:00:00 2001
From: GitHub Actions <41898282+github-actions[bot]@users.noreply.github.com>
Date: Tue, 17 Mar 2026 15:24:49 +0000
Subject: [PATCH 23/38] Auto translate strings
---
src-ui/messages.xlf | 150 ++++++++++++++++++++++----------------------
1 file changed, 75 insertions(+), 75 deletions(-)
diff --git a/src-ui/messages.xlf b/src-ui/messages.xlf
index 9f2993a4c..d2e12880f 100644
--- a/src-ui/messages.xlf
+++ b/src-ui/messages.xlf
@@ -532,15 +532,79 @@
125
-
- Discard
+
+ Cancel
src/app/components/admin/config/config.component.html
62
- src/app/components/document-detail/document-detail.component.html
- 452
+ src/app/components/admin/settings/settings.component.html
+ 399
+
+
+ src/app/components/common/confirm-dialog/confirm-dialog.component.ts
+ 47
+
+
+ src/app/components/common/edit-dialog/correspondent-edit-dialog/correspondent-edit-dialog.component.html
+ 25
+
+
+ src/app/components/common/edit-dialog/custom-field-edit-dialog/custom-field-edit-dialog.component.html
+ 51
+
+
+ src/app/components/common/edit-dialog/document-type-edit-dialog/document-type-edit-dialog.component.html
+ 27
+
+
+ src/app/components/common/edit-dialog/group-edit-dialog/group-edit-dialog.component.html
+ 19
+
+
+ src/app/components/common/edit-dialog/mail-account-edit-dialog/mail-account-edit-dialog.component.html
+ 39
+
+
+ src/app/components/common/edit-dialog/mail-rule-edit-dialog/mail-rule-edit-dialog.component.html
+ 80
+
+
+ src/app/components/common/edit-dialog/storage-path-edit-dialog/storage-path-edit-dialog.component.html
+ 76
+
+
+ src/app/components/common/edit-dialog/tag-edit-dialog/tag-edit-dialog.component.html
+ 30
+
+
+ src/app/components/common/edit-dialog/user-edit-dialog/user-edit-dialog.component.html
+ 56
+
+
+ src/app/components/common/edit-dialog/workflow-edit-dialog/workflow-edit-dialog.component.html
+ 115
+
+
+ src/app/components/common/permissions-dialog/permissions-dialog.component.html
+ 31
+
+
+ src/app/components/common/profile-edit-dialog/profile-edit-dialog.component.html
+ 182
+
+
+ src/app/components/document-list/bulk-editor/custom-fields-bulk-edit-dialog/custom-fields-bulk-edit-dialog.component.html
+ 81
+
+
+ src/app/components/document-list/save-view-config-dialog/save-view-config-dialog.component.html
+ 21
+
+
+ src/app/components/manage/saved-views/saved-views.component.html
+ 82
@@ -1514,77 +1578,6 @@
389
-
- Cancel
-
- src/app/components/admin/settings/settings.component.html
- 399
-
-
- src/app/components/common/confirm-dialog/confirm-dialog.component.ts
- 47
-
-
- src/app/components/common/edit-dialog/correspondent-edit-dialog/correspondent-edit-dialog.component.html
- 25
-
-
- src/app/components/common/edit-dialog/custom-field-edit-dialog/custom-field-edit-dialog.component.html
- 51
-
-
- src/app/components/common/edit-dialog/document-type-edit-dialog/document-type-edit-dialog.component.html
- 27
-
-
- src/app/components/common/edit-dialog/group-edit-dialog/group-edit-dialog.component.html
- 19
-
-
- src/app/components/common/edit-dialog/mail-account-edit-dialog/mail-account-edit-dialog.component.html
- 39
-
-
- src/app/components/common/edit-dialog/mail-rule-edit-dialog/mail-rule-edit-dialog.component.html
- 80
-
-
- src/app/components/common/edit-dialog/storage-path-edit-dialog/storage-path-edit-dialog.component.html
- 76
-
-
- src/app/components/common/edit-dialog/tag-edit-dialog/tag-edit-dialog.component.html
- 30
-
-
- src/app/components/common/edit-dialog/user-edit-dialog/user-edit-dialog.component.html
- 56
-
-
- src/app/components/common/edit-dialog/workflow-edit-dialog/workflow-edit-dialog.component.html
- 115
-
-
- src/app/components/common/permissions-dialog/permissions-dialog.component.html
- 31
-
-
- src/app/components/common/profile-edit-dialog/profile-edit-dialog.component.html
- 182
-
-
- src/app/components/document-list/bulk-editor/custom-fields-bulk-edit-dialog/custom-fields-bulk-edit-dialog.component.html
- 81
-
-
- src/app/components/document-list/save-view-config-dialog/save-view-config-dialog.component.html
- 21
-
-
- src/app/components/manage/saved-views/saved-views.component.html
- 82
-
-
Use system language
@@ -7684,6 +7677,13 @@
450
+
+ Discard
+
+ src/app/components/document-detail/document-detail.component.html
+ 452
+
+
Document loading...
From aea2927a029a64d0982ac419ae9ceeac5539d6de Mon Sep 17 00:00:00 2001
From: Trenton H <797416+stumpylog@users.noreply.github.com>
Date: Tue, 17 Mar 2026 15:43:28 -0700
Subject: [PATCH 24/38] Feature: Convert Tika parser to the plugin system
(#12333)
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
* Chore: move Tika parser and tests to paperless/
Move TikaDocumentParser and its tests to the canonical parser package
location, matching the pattern established for TextDocumentParser:
- src/paperless_tika/parsers.py → src/paperless/parsers/tika.py
- src/paperless_tika/tests/test_tika_parser.py → src/paperless/tests/parsers/test_tika_parser.py
- src/paperless_tika/tests/samples/ → src/paperless/tests/samples/tika/
Merge tika fixtures (tika_parser, sample_odt_file, sample_docx_file,
sample_doc_file, sample_broken_odt) into the shared parsers conftest.
Remove the now-empty src/paperless_tika/tests/conftest.py.
Content is unchanged — this commit is rename-only so git history is
preserved on the moved files.
Co-Authored-By: Claude Sonnet 4.6
* Feature: Phase 3 — migrate TikaDocumentParser to ParserProtocol
Refactor TikaDocumentParser to satisfy ParserProtocol without subclassing
the legacy DocumentParser ABC:
- Add ClassVars: name, version, author, url
- Add supported_mime_types() classmethod (12 Office/ODF/RTF MIME types)
- Add score() classmethod — returns None when TIKA_ENABLED is False, 10 otherwise
- can_produce_archive = False (PDF is for display, not an OCR archive)
- requires_pdf_rendition = True (Office formats need PDF for browser display)
- __enter__/__exit__ via ExitStack: TikaClient opened once per parser
lifetime and shared across parse() and extract_metadata() calls
- extract_metadata() falls back to a short-lived TikaClient when called
outside a context manager (legacy view-layer metadata path)
- _convert_to_pdf() uses OutputTypeConfig() to honour the database-stored
ApplicationConfiguration before falling back to the env-var setting
- Rename convert_to_pdf → _convert_to_pdf (private helper)
Update paperless_tika/signals.py shim to import from the new module path
and drop the legacy logging_group/progress_callback kwargs.
Update documents/consumer.py to extend the existing TextDocumentParser
special cases to also cover TikaDocumentParser (parse/get_thumbnail
signatures, __exit__ cleanup).
Add TestTikaParserRegistryInterface (7 tests) covering score(), properties,
and ParserProtocol isinstance check. Update existing tests to use the new
accessor API (get_text, get_date, get_archive_path, _convert_to_pdf).
Co-Authored-By: Claude Sonnet 4.6
* Fix: update remaining imports and move live Tika tests after parser migration
- src/documents/tests/test_parsers.py: import TikaDocumentParser from
paperless.parsers.tika (old paperless_tika.parsers no longer exists)
- git mv paperless_tika/tests/test_live_tika.py →
paperless/tests/parsers/test_live_tika.py to co-locate all Tika tests
with the parser; update import and replace old attribute API
(tika_parser.text/.archive_path) with accessor methods
(get_text/get_archive_path)
Co-Authored-By: Claude Sonnet 4.6
* Fix: satisfy mypy and pyrefly for TikaDocumentParser
Use a TYPE_CHECKING-guarded assert to narrow self._tika_client from
TikaClient | None to TikaClient at the point of use in parse(). The
assert is visible to type checkers (TYPE_CHECKING=True) so both mypy
and pyrefly accept the subsequent attribute accesses without error;
at runtime TYPE_CHECKING is False so the assert never executes and no
ruff S101 suppression is required.
Co-Authored-By: Claude Sonnet 4.6
* Fix: require context manager for TikaDocumentParser; clean up client lifecycle
- consumer.py: call __enter__ for new-style parsers so _tika_client and
_gotenberg_client are set before parse() is invoked
- views.py: use `with parser` (via nullcontext for old-style parsers) in
get_metadata so extract_metadata always runs inside a context manager
- tika.py: GotenbergClient added to ExitStack alongside TikaClient;
inline client creation removed from extract_metadata and _convert_to_pdf;
__exit__ uses ExitStack.close() instead of __exit__ pass-through
Co-Authored-By: Claude Sonnet 4.6
---------
Co-authored-by: Claude Sonnet 4.6
---
.github/dependabot.yml | 3 +
docker/compose/docker-compose.ci-test.yml | 4 +-
src/documents/consumer.py | 13 +-
src/documents/tests/test_parsers.py | 2 +-
src/documents/views.py | 6 +-
src/paperless/parsers/registry.py | 2 +
src/paperless/parsers/tika.py | 440 ++++++++++++++++++
src/paperless/tests/parsers/conftest.py | 84 ++++
.../tests/parsers/test_tika_liva.py} | 38 +-
.../tests/parsers}/test_tika_parser.py | 67 ++-
.../tests/samples/tika}/multi-part-broken.odt | Bin
.../tests/samples/tika}/sample.doc | Bin
.../tests/samples/tika}/sample.docx | Bin
.../tests/samples/tika}/sample.odt | Bin
src/paperless_text/signals.py | 10 +-
src/paperless_tika/parsers.py | 136 ------
src/paperless_tika/signals.py | 12 +-
src/paperless_tika/tests/__init__.py | 0
src/paperless_tika/tests/conftest.py | 41 --
19 files changed, 642 insertions(+), 216 deletions(-)
create mode 100644 src/paperless/parsers/tika.py
rename src/{paperless_tika/tests/test_live_tika.py => paperless/tests/parsers/test_tika_liva.py} (77%)
rename src/{paperless_tika/tests => paperless/tests/parsers}/test_tika_parser.py (63%)
rename src/{paperless_tika/tests/samples => paperless/tests/samples/tika}/multi-part-broken.odt (100%)
rename src/{paperless_tika/tests/samples => paperless/tests/samples/tika}/sample.doc (100%)
rename src/{paperless_tika/tests/samples => paperless/tests/samples/tika}/sample.docx (100%)
rename src/{paperless_tika/tests/samples => paperless/tests/samples/tika}/sample.odt (100%)
delete mode 100644 src/paperless_tika/parsers.py
delete mode 100644 src/paperless_tika/tests/__init__.py
delete mode 100644 src/paperless_tika/tests/conftest.py
diff --git a/.github/dependabot.yml b/.github/dependabot.yml
index dfca17dbb..8ac712f97 100644
--- a/.github/dependabot.yml
+++ b/.github/dependabot.yml
@@ -157,6 +157,9 @@ updates:
postgres:
patterns:
- "docker.io/library/postgres*"
+ greenmail:
+ patterns:
+ - "docker.io/greenmail*"
- package-ecosystem: "pre-commit" # See documentation for possible values
directory: "/" # Location of package manifests
schedule:
diff --git a/docker/compose/docker-compose.ci-test.yml b/docker/compose/docker-compose.ci-test.yml
index 545019eec..5cb4bcd39 100644
--- a/docker/compose/docker-compose.ci-test.yml
+++ b/docker/compose/docker-compose.ci-test.yml
@@ -18,13 +18,13 @@ services:
- "--log-level=warn"
- "--log-format=text"
tika:
- image: docker.io/apache/tika:latest
+ image: docker.io/apache/tika:3.2.3.0
hostname: tika
container_name: tika
network_mode: host
restart: unless-stopped
greenmail:
- image: greenmail/standalone:2.1.8
+ image: docker.io/greenmail/standalone:2.1.8
hostname: greenmail
container_name: greenmail
environment:
diff --git a/src/documents/consumer.py b/src/documents/consumer.py
index cbc2198ef..53fd1ca0f 100644
--- a/src/documents/consumer.py
+++ b/src/documents/consumer.py
@@ -52,6 +52,7 @@ from documents.utils import copy_basic_file_stats
from documents.utils import copy_file_with_basic_stats
from documents.utils import run_subprocess
from paperless.parsers.text import TextDocumentParser
+from paperless.parsers.tika import TikaDocumentParser
from paperless_mail.parsers import MailDocumentParser
LOGGING_NAME: Final[str] = "paperless.consumer"
@@ -67,7 +68,7 @@ def _parser_cleanup(parser: DocumentParser) -> None:
TODO(stumpylog): Remove me in the future
"""
- if isinstance(parser, TextDocumentParser):
+ if isinstance(parser, (TextDocumentParser, TikaDocumentParser)):
parser.__exit__(None, None, None)
else:
parser.cleanup()
@@ -448,6 +449,12 @@ class ConsumerPlugin(
progress_callback=progress_callback,
)
+ # New-style parsers use __enter__/__exit__ for resource management.
+ # _parser_cleanup (below) handles __exit__; call __enter__ here.
+ # TODO(stumpylog): Remove me in the future
+ if isinstance(document_parser, (TextDocumentParser, TikaDocumentParser)):
+ document_parser.__enter__()
+
self.log.debug(f"Parser: {type(document_parser).__name__}")
# Parse the document. This may take some time.
@@ -476,7 +483,7 @@ class ConsumerPlugin(
self.filename,
self.input_doc.mailrule_id,
)
- elif isinstance(document_parser, TextDocumentParser):
+ elif isinstance(document_parser, (TextDocumentParser, TikaDocumentParser)):
# TODO(stumpylog): Remove me in the future
document_parser.parse(self.working_copy, mime_type)
else:
@@ -489,7 +496,7 @@ class ConsumerPlugin(
ProgressStatusOptions.WORKING,
ConsumerStatusShortMessage.GENERATING_THUMBNAIL,
)
- if isinstance(document_parser, TextDocumentParser):
+ if isinstance(document_parser, (TextDocumentParser, TikaDocumentParser)):
# TODO(stumpylog): Remove me in the future
thumbnail = document_parser.get_thumbnail(self.working_copy, mime_type)
else:
diff --git a/src/documents/tests/test_parsers.py b/src/documents/tests/test_parsers.py
index 5383975d1..7be6ad20d 100644
--- a/src/documents/tests/test_parsers.py
+++ b/src/documents/tests/test_parsers.py
@@ -10,8 +10,8 @@ from documents.parsers import get_parser_class_for_mime_type
from documents.parsers import get_supported_file_extensions
from documents.parsers import is_file_ext_supported
from paperless.parsers.text import TextDocumentParser
+from paperless.parsers.tika import TikaDocumentParser
from paperless_tesseract.parsers import RasterisedDocumentParser
-from paperless_tika.parsers import TikaDocumentParser
class TestParserDiscovery(TestCase):
diff --git a/src/documents/views.py b/src/documents/views.py
index 6f9caa987..91fb0c1ff 100644
--- a/src/documents/views.py
+++ b/src/documents/views.py
@@ -7,6 +7,7 @@ import tempfile
import zipfile
from collections import defaultdict
from collections import deque
+from contextlib import nullcontext
from datetime import datetime
from pathlib import Path
from time import mktime
@@ -225,6 +226,7 @@ from paperless.celery import app as celery_app
from paperless.config import AIConfig
from paperless.config import GeneralConfig
from paperless.models import ApplicationConfiguration
+from paperless.parsers import ParserProtocol
from paperless.serialisers import GroupSerializer
from paperless.serialisers import UserSerializer
from paperless.views import StandardPagination
@@ -1084,9 +1086,11 @@ class DocumentViewSet(
parser_class = get_parser_class_for_mime_type(mime_type)
if parser_class:
parser = parser_class(progress_callback=None, logging_group=None)
+ cm = parser if isinstance(parser, ParserProtocol) else nullcontext(parser)
try:
- return parser.extract_metadata(file, mime_type)
+ with cm:
+ return parser.extract_metadata(file, mime_type)
except Exception: # pragma: no cover
logger.exception(f"Issue getting metadata for {file}")
# TODO: cover GPG errors, remove later.
diff --git a/src/paperless/parsers/registry.py b/src/paperless/parsers/registry.py
index 8c45db628..85e825fa4 100644
--- a/src/paperless/parsers/registry.py
+++ b/src/paperless/parsers/registry.py
@@ -194,8 +194,10 @@ class ParserRegistry:
at runtime regardless of registration order.
"""
from paperless.parsers.text import TextDocumentParser
+ from paperless.parsers.tika import TikaDocumentParser
self.register_builtin(TextDocumentParser)
+ self.register_builtin(TikaDocumentParser)
# ------------------------------------------------------------------
# Discovery
diff --git a/src/paperless/parsers/tika.py b/src/paperless/parsers/tika.py
new file mode 100644
index 000000000..b9307858a
--- /dev/null
+++ b/src/paperless/parsers/tika.py
@@ -0,0 +1,440 @@
+"""
+Built-in Tika document parser.
+
+Handles Office documents (DOCX, ODT, XLS, XLSX, PPT, PPTX, RTF, etc.) by
+sending them to an Apache Tika server for text extraction and a Gotenberg
+server for PDF conversion. Because the source formats cannot be rendered by
+a browser natively, the parser always produces a PDF rendition for display.
+"""
+
+from __future__ import annotations
+
+import logging
+import shutil
+import tempfile
+from contextlib import ExitStack
+from pathlib import Path
+from typing import TYPE_CHECKING
+from typing import Self
+
+import httpx
+from django.conf import settings
+from django.utils import timezone
+from gotenberg_client import GotenbergClient
+from gotenberg_client.options import PdfAFormat
+from tika_client import TikaClient
+
+from documents.parsers import ParseError
+from documents.parsers import make_thumbnail_from_pdf
+from paperless.config import OutputTypeConfig
+from paperless.models import OutputTypeChoices
+from paperless.version import __full_version_str__
+
+if TYPE_CHECKING:
+ import datetime
+ from types import TracebackType
+
+ from paperless.parsers import MetadataEntry
+
+logger = logging.getLogger("paperless.parsing.tika")
+
+_SUPPORTED_MIME_TYPES: dict[str, str] = {
+ "application/msword": ".doc",
+ "application/vnd.openxmlformats-officedocument.wordprocessingml.document": ".docx",
+ "application/vnd.ms-excel": ".xls",
+ "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet": ".xlsx",
+ "application/vnd.ms-powerpoint": ".ppt",
+ "application/vnd.openxmlformats-officedocument.presentationml.presentation": ".pptx",
+ "application/vnd.openxmlformats-officedocument.presentationml.slideshow": ".ppsx",
+ "application/vnd.oasis.opendocument.presentation": ".odp",
+ "application/vnd.oasis.opendocument.spreadsheet": ".ods",
+ "application/vnd.oasis.opendocument.text": ".odt",
+ "application/vnd.oasis.opendocument.graphics": ".odg",
+ "text/rtf": ".rtf",
+}
+
+
+class TikaDocumentParser:
+ """Parse Office documents via Apache Tika and Gotenberg for Paperless-ngx.
+
+ Text extraction is handled by the Tika server. PDF conversion for display
+ is handled by Gotenberg (LibreOffice route). Because the source formats
+ cannot be rendered by a browser natively, ``requires_pdf_rendition`` is
+ True and the PDF is always produced regardless of the ``produce_archive``
+ flag passed to ``parse``.
+
+ Both ``TikaClient`` and ``GotenbergClient`` are opened once in
+ ``__enter__`` via an ``ExitStack`` and shared across ``parse``,
+ ``extract_metadata``, and ``_convert_to_pdf`` calls, then closed via
+ ``ExitStack.close()`` in ``__exit__``. The parser must always be used
+ as a context manager.
+
+ Class attributes
+ ----------------
+ name : str
+ Human-readable parser name.
+ version : str
+ Semantic version string, kept in sync with Paperless-ngx releases.
+ author : str
+ Maintainer name.
+ url : str
+ Issue tracker / source URL.
+ """
+
+ name: str = "Paperless-ngx Tika Parser"
+ version: str = __full_version_str__
+ author: str = "Paperless-ngx Contributors"
+ url: str = "https://github.com/paperless-ngx/paperless-ngx"
+
+ # ------------------------------------------------------------------
+ # Class methods
+ # ------------------------------------------------------------------
+
+ @classmethod
+ def supported_mime_types(cls) -> dict[str, str]:
+ """Return the MIME types this parser handles.
+
+ Returns
+ -------
+ dict[str, str]
+ Mapping of MIME type to preferred file extension.
+ """
+ return _SUPPORTED_MIME_TYPES
+
+ @classmethod
+ def score(
+ cls,
+ mime_type: str,
+ filename: str,
+ path: Path | None = None,
+ ) -> int | None:
+ """Return the priority score for handling this file.
+
+ Returns ``None`` when Tika integration is disabled so the registry
+ skips this parser entirely.
+
+ Parameters
+ ----------
+ mime_type:
+ Detected MIME type of the file.
+ filename:
+ Original filename including extension.
+ path:
+ Optional filesystem path. Not inspected by this parser.
+
+ Returns
+ -------
+ int | None
+ 10 if TIKA_ENABLED and the MIME type is supported, otherwise None.
+ """
+ if not settings.TIKA_ENABLED:
+ return None
+ if mime_type in _SUPPORTED_MIME_TYPES:
+ return 10
+ return None
+
+ # ------------------------------------------------------------------
+ # Properties
+ # ------------------------------------------------------------------
+
+ @property
+ def can_produce_archive(self) -> bool:
+ """Whether this parser can produce a searchable PDF archive copy.
+
+ Returns
+ -------
+ bool
+ Always False — Tika produces a display PDF, not an OCR archive.
+ """
+ return False
+
+ @property
+ def requires_pdf_rendition(self) -> bool:
+ """Whether the parser must produce a PDF for the frontend to display.
+
+ Returns
+ -------
+ bool
+ Always True — Office formats cannot be rendered natively in a
+ browser, so a PDF conversion is always required for display.
+ """
+ return True
+
+ # ------------------------------------------------------------------
+ # Lifecycle
+ # ------------------------------------------------------------------
+
+ def __init__(self, logging_group: object = None) -> None:
+ settings.SCRATCH_DIR.mkdir(parents=True, exist_ok=True)
+ self._tempdir = Path(
+ tempfile.mkdtemp(prefix="paperless-", dir=settings.SCRATCH_DIR),
+ )
+ self._text: str | None = None
+ self._date: datetime.datetime | None = None
+ self._archive_path: Path | None = None
+ self._exit_stack = ExitStack()
+ self._tika_client: TikaClient | None = None
+ self._gotenberg_client: GotenbergClient | None = None
+
+ def __enter__(self) -> Self:
+ self._tika_client = self._exit_stack.enter_context(
+ TikaClient(
+ tika_url=settings.TIKA_ENDPOINT,
+ timeout=settings.CELERY_TASK_TIME_LIMIT,
+ ),
+ )
+ self._gotenberg_client = self._exit_stack.enter_context(
+ GotenbergClient(
+ host=settings.TIKA_GOTENBERG_ENDPOINT,
+ timeout=settings.CELERY_TASK_TIME_LIMIT,
+ ),
+ )
+ return self
+
+ def __exit__(
+ self,
+ exc_type: type[BaseException] | None,
+ exc_val: BaseException | None,
+ exc_tb: TracebackType | None,
+ ) -> None:
+ self._exit_stack.close()
+ logger.debug("Cleaning up temporary directory %s", self._tempdir)
+ shutil.rmtree(self._tempdir, ignore_errors=True)
+
+ # ------------------------------------------------------------------
+ # Core parsing interface
+ # ------------------------------------------------------------------
+
+ def parse(
+ self,
+ document_path: Path,
+ mime_type: str,
+ *,
+ produce_archive: bool = True,
+ ) -> None:
+ """Send the document to Tika for text extraction and Gotenberg for PDF.
+
+ Because ``requires_pdf_rendition`` is True the PDF conversion is
+ always performed — the ``produce_archive`` flag is intentionally
+ ignored.
+
+ Parameters
+ ----------
+ document_path:
+ Absolute path to the document file to parse.
+ mime_type:
+ Detected MIME type of the document.
+ produce_archive:
+ Accepted for protocol compatibility but ignored; the PDF rendition
+ is always produced since the source format cannot be displayed
+ natively in the browser.
+
+ Raises
+ ------
+ documents.parsers.ParseError
+ If Tika or Gotenberg returns an error.
+ """
+ if TYPE_CHECKING:
+ assert self._tika_client is not None
+
+ logger.info("Sending %s to Tika server", document_path)
+
+ try:
+ try:
+ parsed = self._tika_client.tika.as_text.from_file(
+ document_path,
+ mime_type,
+ )
+ except httpx.HTTPStatusError as err:
+ # Workaround https://issues.apache.org/jira/browse/TIKA-4110
+ # Tika fails with some files as multi-part form data
+ if err.response.status_code == httpx.codes.INTERNAL_SERVER_ERROR:
+ parsed = self._tika_client.tika.as_text.from_buffer(
+ document_path.read_bytes(),
+ mime_type,
+ )
+ else: # pragma: no cover
+ raise
+ except Exception as err:
+ raise ParseError(
+ f"Could not parse {document_path} with tika server at "
+ f"{settings.TIKA_ENDPOINT}: {err}",
+ ) from err
+
+ self._text = parsed.content
+ if self._text is not None:
+ self._text = self._text.strip()
+
+ self._date = parsed.created
+ if self._date is not None and timezone.is_naive(self._date):
+ self._date = timezone.make_aware(self._date)
+
+ # Always convert — requires_pdf_rendition=True means the browser
+ # cannot display the source format natively.
+ self._archive_path = self._convert_to_pdf(document_path)
+
+ # ------------------------------------------------------------------
+ # Result accessors
+ # ------------------------------------------------------------------
+
+ def get_text(self) -> str | None:
+ """Return the plain-text content extracted during parse.
+
+ Returns
+ -------
+ str | None
+ Extracted text, or None if parse has not been called yet.
+ """
+ return self._text
+
+ def get_date(self) -> datetime.datetime | None:
+ """Return the document date detected during parse.
+
+ Returns
+ -------
+ datetime.datetime | None
+ Creation date from Tika metadata, or None if not detected.
+ """
+ return self._date
+
+ def get_archive_path(self) -> Path | None:
+ """Return the path to the generated PDF rendition, or None.
+
+ Returns
+ -------
+ Path | None
+ Path to the PDF produced by Gotenberg, or None if parse has not
+ been called yet.
+ """
+ return self._archive_path
+
+ # ------------------------------------------------------------------
+ # Thumbnail and metadata
+ # ------------------------------------------------------------------
+
+ def get_thumbnail(self, document_path: Path, mime_type: str) -> Path:
+ """Generate a thumbnail from the PDF rendition of the document.
+
+ Converts the document to PDF first if not already done.
+
+ Parameters
+ ----------
+ document_path:
+ Absolute path to the source document.
+ mime_type:
+ Detected MIME type of the document.
+
+ Returns
+ -------
+ Path
+ Path to the generated WebP thumbnail inside the temporary directory.
+ """
+ if self._archive_path is None:
+ self._archive_path = self._convert_to_pdf(document_path)
+ return make_thumbnail_from_pdf(self._archive_path, self._tempdir)
+
+ def get_page_count(
+ self,
+ document_path: Path,
+ mime_type: str,
+ ) -> int | None:
+ """Return the number of pages in the document.
+
+ Returns
+ -------
+ int | None
+ Always None — page count is not available from Tika.
+ """
+ return None
+
+ def extract_metadata(
+ self,
+ document_path: Path,
+ mime_type: str,
+ ) -> list[MetadataEntry]:
+ """Extract format-specific metadata via the Tika metadata endpoint.
+
+ Returns
+ -------
+ list[MetadataEntry]
+ All key/value pairs returned by Tika, or ``[]`` on error.
+ """
+ if TYPE_CHECKING:
+ assert self._tika_client is not None
+
+ try:
+ parsed = self._tika_client.metadata.from_file(document_path, mime_type)
+ return [
+ {
+ "namespace": "",
+ "prefix": "",
+ "key": key,
+ "value": parsed.data[key],
+ }
+ for key in parsed.data
+ ]
+ except Exception as e:
+ logger.warning(
+ "Error while fetching document metadata for %s: %s",
+ document_path,
+ e,
+ )
+ return []
+
+ # ------------------------------------------------------------------
+ # Private helpers
+ # ------------------------------------------------------------------
+
+ def _convert_to_pdf(self, document_path: Path) -> Path:
+ """Convert the document to PDF using Gotenberg's LibreOffice route.
+
+ Parameters
+ ----------
+ document_path:
+ Absolute path to the source document.
+
+ Returns
+ -------
+ Path
+ Path to the generated PDF inside the temporary directory.
+
+ Raises
+ ------
+ documents.parsers.ParseError
+ If Gotenberg returns an error.
+ """
+ if TYPE_CHECKING:
+ assert self._gotenberg_client is not None
+
+ pdf_path = self._tempdir / "convert.pdf"
+
+ logger.info("Converting %s to PDF as %s", document_path, pdf_path)
+
+ with self._gotenberg_client.libre_office.to_pdf() as route:
+ # Set the output format of the resulting PDF.
+ # OutputTypeConfig reads the database-stored ApplicationConfiguration
+ # first, then falls back to the PAPERLESS_OCR_OUTPUT_TYPE env var.
+ output_type = OutputTypeConfig().output_type
+ if output_type in {
+ OutputTypeChoices.PDF_A,
+ OutputTypeChoices.PDF_A2,
+ }:
+ route.pdf_format(PdfAFormat.A2b)
+ elif output_type == OutputTypeChoices.PDF_A1:
+ logger.warning(
+ "Gotenberg does not support PDF/A-1a, choosing PDF/A-2b instead",
+ )
+ route.pdf_format(PdfAFormat.A2b)
+ elif output_type == OutputTypeChoices.PDF_A3:
+ route.pdf_format(PdfAFormat.A3b)
+
+ route.convert(document_path)
+
+ try:
+ response = route.run()
+ pdf_path.write_bytes(response.content)
+ return pdf_path
+ except Exception as err:
+ raise ParseError(
+ f"Error while converting document to PDF: {err}",
+ ) from err
diff --git a/src/paperless/tests/parsers/conftest.py b/src/paperless/tests/parsers/conftest.py
index 2d5deb684..936058733 100644
--- a/src/paperless/tests/parsers/conftest.py
+++ b/src/paperless/tests/parsers/conftest.py
@@ -11,6 +11,7 @@ from typing import TYPE_CHECKING
import pytest
from paperless.parsers.text import TextDocumentParser
+from paperless.parsers.tika import TikaDocumentParser
if TYPE_CHECKING:
from collections.abc import Generator
@@ -74,3 +75,86 @@ def text_parser() -> Generator[TextDocumentParser, None, None]:
"""
with TextDocumentParser() as parser:
yield parser
+
+
+# ------------------------------------------------------------------
+# Tika parser sample files
+# ------------------------------------------------------------------
+
+
+@pytest.fixture(scope="session")
+def tika_samples_dir(samples_dir: Path) -> Path:
+ """Absolute path to the Tika parser sample files directory.
+
+ Returns
+ -------
+ Path
+ ``/tika/``
+ """
+ return samples_dir / "tika"
+
+
+@pytest.fixture(scope="session")
+def sample_odt_file(tika_samples_dir: Path) -> Path:
+ """Path to a sample ODT file.
+
+ Returns
+ -------
+ Path
+ Absolute path to ``tika/sample.odt``.
+ """
+ return tika_samples_dir / "sample.odt"
+
+
+@pytest.fixture(scope="session")
+def sample_docx_file(tika_samples_dir: Path) -> Path:
+ """Path to a sample DOCX file.
+
+ Returns
+ -------
+ Path
+ Absolute path to ``tika/sample.docx``.
+ """
+ return tika_samples_dir / "sample.docx"
+
+
+@pytest.fixture(scope="session")
+def sample_doc_file(tika_samples_dir: Path) -> Path:
+ """Path to a sample DOC file.
+
+ Returns
+ -------
+ Path
+ Absolute path to ``tika/sample.doc``.
+ """
+ return tika_samples_dir / "sample.doc"
+
+
+@pytest.fixture(scope="session")
+def sample_broken_odt(tika_samples_dir: Path) -> Path:
+ """Path to a broken ODT file that triggers the multi-part fallback.
+
+ Returns
+ -------
+ Path
+ Absolute path to ``tika/multi-part-broken.odt``.
+ """
+ return tika_samples_dir / "multi-part-broken.odt"
+
+
+# ------------------------------------------------------------------
+# Tika parser instance
+# ------------------------------------------------------------------
+
+
+@pytest.fixture()
+def tika_parser() -> Generator[TikaDocumentParser, None, None]:
+ """Yield a TikaDocumentParser and clean up its temporary directory afterwards.
+
+ Yields
+ ------
+ TikaDocumentParser
+ A ready-to-use parser instance.
+ """
+ with TikaDocumentParser() as parser:
+ yield parser
diff --git a/src/paperless_tika/tests/test_live_tika.py b/src/paperless/tests/parsers/test_tika_liva.py
similarity index 77%
rename from src/paperless_tika/tests/test_live_tika.py
rename to src/paperless/tests/parsers/test_tika_liva.py
index 8275708b4..87cdd88a5 100644
--- a/src/paperless_tika/tests/test_live_tika.py
+++ b/src/paperless/tests/parsers/test_tika_liva.py
@@ -4,7 +4,7 @@ from pathlib import Path
import pytest
from documents.tests.utils import util_call_with_backoff
-from paperless_tika.parsers import TikaDocumentParser
+from paperless.parsers.tika import TikaDocumentParser
@pytest.mark.skipif(
@@ -42,14 +42,15 @@ class TestTikaParserAgainstServer:
)
assert (
- tika_parser.text
+ tika_parser.get_text()
== "This is an ODT test document, created September 14, 2022"
)
- assert tika_parser.archive_path is not None
- assert b"PDF-" in tika_parser.archive_path.read_bytes()[:10]
+ archive = tika_parser.get_archive_path()
+ assert archive is not None
+ assert b"PDF-" in archive.read_bytes()[:10]
# TODO: Unsure what can set the Creation-Date field in a document, enable when possible
- # self.assertEqual(tika_parser.date, datetime.datetime(2022, 9, 14))
+ # self.assertEqual(tika_parser.get_date(), datetime.datetime(2022, 9, 14))
def test_basic_parse_docx(
self,
@@ -74,14 +75,15 @@ class TestTikaParserAgainstServer:
)
assert (
- tika_parser.text
+ tika_parser.get_text()
== "This is an DOCX test document, also made September 14, 2022"
)
- assert tika_parser.archive_path is not None
- with Path(tika_parser.archive_path).open("rb") as f:
+ archive = tika_parser.get_archive_path()
+ assert archive is not None
+ with archive.open("rb") as f:
assert b"PDF-" in f.read()[:10]
- # self.assertEqual(tika_parser.date, datetime.datetime(2022, 9, 14))
+ # self.assertEqual(tika_parser.get_date(), datetime.datetime(2022, 9, 14))
def test_basic_parse_doc(
self,
@@ -102,13 +104,12 @@ class TestTikaParserAgainstServer:
[sample_doc_file, "application/msword"],
)
- assert tika_parser.text is not None
- assert (
- "This is a test document, saved in the older .doc format"
- in tika_parser.text
- )
- assert tika_parser.archive_path is not None
- with Path(tika_parser.archive_path).open("rb") as f:
+ text = tika_parser.get_text()
+ assert text is not None
+ assert "This is a test document, saved in the older .doc format" in text
+ archive = tika_parser.get_archive_path()
+ assert archive is not None
+ with archive.open("rb") as f:
assert b"PDF-" in f.read()[:10]
def test_tika_fails_multi_part(
@@ -133,6 +134,7 @@ class TestTikaParserAgainstServer:
[sample_broken_odt, "application/vnd.oasis.opendocument.text"],
)
- assert tika_parser.archive_path is not None
- with Path(tika_parser.archive_path).open("rb") as f:
+ archive = tika_parser.get_archive_path()
+ assert archive is not None
+ with archive.open("rb") as f:
assert b"PDF-" in f.read()[:10]
diff --git a/src/paperless_tika/tests/test_tika_parser.py b/src/paperless/tests/parsers/test_tika_parser.py
similarity index 63%
rename from src/paperless_tika/tests/test_tika_parser.py
rename to src/paperless/tests/parsers/test_tika_parser.py
index e1c71c131..d18d178e6 100644
--- a/src/paperless_tika/tests/test_tika_parser.py
+++ b/src/paperless/tests/parsers/test_tika_parser.py
@@ -9,7 +9,56 @@ from pytest_django.fixtures import SettingsWrapper
from pytest_httpx import HTTPXMock
from documents.parsers import ParseError
-from paperless_tika.parsers import TikaDocumentParser
+from paperless.parsers import ParserProtocol
+from paperless.parsers.tika import TikaDocumentParser
+
+
+class TestTikaParserRegistryInterface:
+ """Verify that TikaDocumentParser satisfies the ParserProtocol contract."""
+
+ def test_satisfies_parser_protocol(self) -> None:
+ assert isinstance(TikaDocumentParser(), ParserProtocol)
+
+ def test_supported_mime_types_is_classmethod(self) -> None:
+ mime_types = TikaDocumentParser.supported_mime_types()
+ assert isinstance(mime_types, dict)
+ assert len(mime_types) > 0
+
+ def test_score_returns_none_when_tika_disabled(
+ self,
+ settings: SettingsWrapper,
+ ) -> None:
+ settings.TIKA_ENABLED = False
+ result = TikaDocumentParser.score(
+ "application/vnd.oasis.opendocument.text",
+ "sample.odt",
+ )
+ assert result is None
+
+ def test_score_returns_int_when_tika_enabled(
+ self,
+ settings: SettingsWrapper,
+ ) -> None:
+ settings.TIKA_ENABLED = True
+ result = TikaDocumentParser.score(
+ "application/vnd.oasis.opendocument.text",
+ "sample.odt",
+ )
+ assert isinstance(result, int)
+
+ def test_score_returns_none_for_unsupported_mime(
+ self,
+ settings: SettingsWrapper,
+ ) -> None:
+ settings.TIKA_ENABLED = True
+ result = TikaDocumentParser.score("application/pdf", "doc.pdf")
+ assert result is None
+
+ def test_can_produce_archive_is_false(self) -> None:
+ assert TikaDocumentParser().can_produce_archive is False
+
+ def test_requires_pdf_rendition_is_true(self) -> None:
+ assert TikaDocumentParser().requires_pdf_rendition is True
@pytest.mark.django_db()
@@ -36,12 +85,12 @@ class TestTikaParser:
tika_parser.parse(sample_odt_file, "application/vnd.oasis.opendocument.text")
- assert tika_parser.text == "the content"
- assert tika_parser.archive_path is not None
- with Path(tika_parser.archive_path).open("rb") as f:
+ assert tika_parser.get_text() == "the content"
+ assert tika_parser.get_archive_path() is not None
+ with Path(tika_parser.get_archive_path()).open("rb") as f:
assert f.read() == b"PDF document"
- assert tika_parser.date == datetime.datetime(
+ assert tika_parser.get_date() == datetime.datetime(
2020,
11,
21,
@@ -89,7 +138,7 @@ class TestTikaParser:
httpx_mock.add_response(status_code=HTTPStatus.INTERNAL_SERVER_ERROR)
with pytest.raises(ParseError):
- tika_parser.convert_to_pdf(sample_odt_file, None)
+ tika_parser._convert_to_pdf(sample_odt_file)
@pytest.mark.parametrize(
("setting_value", "expected_form_value"),
@@ -106,7 +155,6 @@ class TestTikaParser:
expected_form_value: str,
httpx_mock: HTTPXMock,
settings: SettingsWrapper,
- tika_parser: TikaDocumentParser,
sample_odt_file: Path,
) -> None:
"""
@@ -117,6 +165,8 @@ class TestTikaParser:
THEN:
- Request to Gotenberg contains the expected PDF/A format string
"""
+ # Parser must be created after the setting is changed so that
+ # OutputTypeConfig reads the correct value at __init__ time.
settings.OCR_OUTPUT_TYPE = setting_value
httpx_mock.add_response(
status_code=codes.OK,
@@ -124,7 +174,8 @@ class TestTikaParser:
method="POST",
)
- tika_parser.convert_to_pdf(sample_odt_file, None)
+ with TikaDocumentParser() as parser:
+ parser._convert_to_pdf(sample_odt_file)
request = httpx_mock.get_request()
diff --git a/src/paperless_tika/tests/samples/multi-part-broken.odt b/src/paperless/tests/samples/tika/multi-part-broken.odt
similarity index 100%
rename from src/paperless_tika/tests/samples/multi-part-broken.odt
rename to src/paperless/tests/samples/tika/multi-part-broken.odt
diff --git a/src/paperless_tika/tests/samples/sample.doc b/src/paperless/tests/samples/tika/sample.doc
similarity index 100%
rename from src/paperless_tika/tests/samples/sample.doc
rename to src/paperless/tests/samples/tika/sample.doc
diff --git a/src/paperless_tika/tests/samples/sample.docx b/src/paperless/tests/samples/tika/sample.docx
similarity index 100%
rename from src/paperless_tika/tests/samples/sample.docx
rename to src/paperless/tests/samples/tika/sample.docx
diff --git a/src/paperless_tika/tests/samples/sample.odt b/src/paperless/tests/samples/tika/sample.odt
similarity index 100%
rename from src/paperless_tika/tests/samples/sample.odt
rename to src/paperless/tests/samples/tika/sample.odt
diff --git a/src/paperless_text/signals.py b/src/paperless_text/signals.py
index cf74d1c0e..bfdabc601 100644
--- a/src/paperless_text/signals.py
+++ b/src/paperless_text/signals.py
@@ -1,10 +1,12 @@
def get_parser(*args, **kwargs):
from paperless.parsers.text import TextDocumentParser
- # The new TextDocumentParser does not accept the legacy logging_group /
- # progress_callback kwargs injected by the old signal-based consumer.
- # These are dropped here; Phase 4 will replace this signal path with the
- # new ParserRegistry so the shim can be removed at that point.
+ # TextDocumentParser accepts logging_group for constructor compatibility but
+ # does not store or use it (no legacy DocumentParser base class).
+ # progress_callback is also not used. Both may arrive as a positional arg
+ # (consumer) or a keyword arg (views); *args absorbs the positional form,
+ # kwargs.pop handles the keyword form. Phase 4 will replace this signal
+ # path with the new ParserRegistry so the shim can be removed at that point.
kwargs.pop("logging_group", None)
kwargs.pop("progress_callback", None)
return TextDocumentParser()
diff --git a/src/paperless_tika/parsers.py b/src/paperless_tika/parsers.py
deleted file mode 100644
index 22a5bc1c6..000000000
--- a/src/paperless_tika/parsers.py
+++ /dev/null
@@ -1,136 +0,0 @@
-from pathlib import Path
-
-import httpx
-from django.conf import settings
-from django.utils import timezone
-from gotenberg_client import GotenbergClient
-from gotenberg_client.options import PdfAFormat
-from tika_client import TikaClient
-
-from documents.parsers import DocumentParser
-from documents.parsers import ParseError
-from documents.parsers import make_thumbnail_from_pdf
-from paperless.config import OutputTypeConfig
-from paperless.models import OutputTypeChoices
-
-
-class TikaDocumentParser(DocumentParser):
- """
- This parser sends documents to a local tika server
- """
-
- logging_name = "paperless.parsing.tika"
-
- def get_thumbnail(self, document_path, mime_type, file_name=None):
- if not self.archive_path:
- self.archive_path = self.convert_to_pdf(document_path, file_name)
-
- return make_thumbnail_from_pdf(
- self.archive_path,
- self.tempdir,
- self.logging_group,
- )
-
- def extract_metadata(self, document_path, mime_type):
- try:
- with TikaClient(
- tika_url=settings.TIKA_ENDPOINT,
- timeout=settings.CELERY_TASK_TIME_LIMIT,
- ) as client:
- parsed = client.metadata.from_file(document_path, mime_type)
- return [
- {
- "namespace": "",
- "prefix": "",
- "key": key,
- "value": parsed.data[key],
- }
- for key in parsed.data
- ]
- except Exception as e:
- self.log.warning(
- f"Error while fetching document metadata for {document_path}: {e}",
- )
- return []
-
- def parse(self, document_path: Path, mime_type: str, file_name=None) -> None:
- self.log.info(f"Sending {document_path} to Tika server")
-
- try:
- with TikaClient(
- tika_url=settings.TIKA_ENDPOINT,
- timeout=settings.CELERY_TASK_TIME_LIMIT,
- ) as client:
- try:
- parsed = client.tika.as_text.from_file(document_path, mime_type)
- except httpx.HTTPStatusError as err:
- # Workaround https://issues.apache.org/jira/browse/TIKA-4110
- # Tika fails with some files as multi-part form data
- if err.response.status_code == httpx.codes.INTERNAL_SERVER_ERROR:
- parsed = client.tika.as_text.from_buffer(
- document_path.read_bytes(),
- mime_type,
- )
- else: # pragma: no cover
- raise
- except Exception as err:
- raise ParseError(
- f"Could not parse {document_path} with tika server at "
- f"{settings.TIKA_ENDPOINT}: {err}",
- ) from err
-
- self.text = parsed.content
- if self.text is not None:
- self.text = self.text.strip()
-
- self.date = parsed.created
- if self.date is not None and timezone.is_naive(self.date):
- self.date = timezone.make_aware(self.date)
-
- self.archive_path = self.convert_to_pdf(document_path, file_name)
-
- def convert_to_pdf(self, document_path: Path, file_name):
- pdf_path = Path(self.tempdir) / "convert.pdf"
-
- self.log.info(f"Converting {document_path} to PDF as {pdf_path}")
-
- with (
- GotenbergClient(
- host=settings.TIKA_GOTENBERG_ENDPOINT,
- timeout=settings.CELERY_TASK_TIME_LIMIT,
- ) as client,
- client.libre_office.to_pdf() as route,
- ):
- # Set the output format of the resulting PDF
- if settings.OCR_OUTPUT_TYPE in {
- OutputTypeChoices.PDF_A,
- OutputTypeChoices.PDF_A2,
- }:
- route.pdf_format(PdfAFormat.A2b)
- elif settings.OCR_OUTPUT_TYPE == OutputTypeChoices.PDF_A1:
- self.log.warning(
- "Gotenberg does not support PDF/A-1a, choosing PDF/A-2b instead",
- )
- route.pdf_format(PdfAFormat.A2b)
- elif settings.OCR_OUTPUT_TYPE == OutputTypeChoices.PDF_A3:
- route.pdf_format(PdfAFormat.A3b)
-
- route.convert(document_path)
-
- try:
- response = route.run()
-
- pdf_path.write_bytes(response.content)
-
- return pdf_path
-
- except Exception as err:
- raise ParseError(
- f"Error while converting document to PDF: {err}",
- ) from err
-
- def get_settings(self) -> OutputTypeConfig:
- """
- This parser only uses the PDF output type configuration currently
- """
- return OutputTypeConfig()
diff --git a/src/paperless_tika/signals.py b/src/paperless_tika/signals.py
index 2b7495e35..f1fd17ef6 100644
--- a/src/paperless_tika/signals.py
+++ b/src/paperless_tika/signals.py
@@ -1,7 +1,15 @@
def get_parser(*args, **kwargs):
- from paperless_tika.parsers import TikaDocumentParser
+ from paperless.parsers.tika import TikaDocumentParser
- return TikaDocumentParser(*args, **kwargs)
+ # TikaDocumentParser accepts logging_group for constructor compatibility but
+ # does not store or use it (no legacy DocumentParser base class).
+ # progress_callback is also not used. Both may arrive as a positional arg
+ # (consumer) or a keyword arg (views); *args absorbs the positional form,
+ # kwargs.pop handles the keyword form. Phase 4 will replace this signal
+ # path with the new ParserRegistry so the shim can be removed at that point.
+ kwargs.pop("logging_group", None)
+ kwargs.pop("progress_callback", None)
+ return TikaDocumentParser()
def tika_consumer_declaration(sender, **kwargs):
diff --git a/src/paperless_tika/tests/__init__.py b/src/paperless_tika/tests/__init__.py
deleted file mode 100644
index e69de29bb..000000000
diff --git a/src/paperless_tika/tests/conftest.py b/src/paperless_tika/tests/conftest.py
deleted file mode 100644
index 5a54dae95..000000000
--- a/src/paperless_tika/tests/conftest.py
+++ /dev/null
@@ -1,41 +0,0 @@
-from collections.abc import Generator
-from pathlib import Path
-
-import pytest
-
-from paperless_tika.parsers import TikaDocumentParser
-
-
-@pytest.fixture()
-def tika_parser() -> Generator[TikaDocumentParser, None, None]:
- try:
- parser = TikaDocumentParser(logging_group=None)
- yield parser
- finally:
- # TODO(stumpylog): Cleanup once all parsers are handled
- parser.cleanup()
-
-
-@pytest.fixture(scope="session")
-def sample_dir() -> Path:
- return (Path(__file__).parent / Path("samples")).resolve()
-
-
-@pytest.fixture(scope="session")
-def sample_odt_file(sample_dir: Path) -> Path:
- return sample_dir / "sample.odt"
-
-
-@pytest.fixture(scope="session")
-def sample_docx_file(sample_dir: Path) -> Path:
- return sample_dir / "sample.docx"
-
-
-@pytest.fixture(scope="session")
-def sample_doc_file(sample_dir: Path) -> Path:
- return sample_dir / "sample.doc"
-
-
-@pytest.fixture(scope="session")
-def sample_broken_odt(sample_dir: Path) -> Path:
- return sample_dir / "multi-part-broken.odt"
From 8d23d17ae87ee8661cf1ded71767a8257941e7c7 Mon Sep 17 00:00:00 2001
From: GitHub Actions <41898282+github-actions[bot]@users.noreply.github.com>
Date: Tue, 17 Mar 2026 22:44:54 +0000
Subject: [PATCH 25/38] Auto translate strings
---
src/locale/en_US/LC_MESSAGES/django.po | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/src/locale/en_US/LC_MESSAGES/django.po b/src/locale/en_US/LC_MESSAGES/django.po
index 053dd786a..f2f8a3ef7 100644
--- a/src/locale/en_US/LC_MESSAGES/django.po
+++ b/src/locale/en_US/LC_MESSAGES/django.po
@@ -2,7 +2,7 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2026-03-12 15:43+0000\n"
+"POT-Creation-Date: 2026-03-17 22:44+0000\n"
"PO-Revision-Date: 2022-02-17 04:17\n"
"Last-Translator: \n"
"Language-Team: English\n"
@@ -1339,7 +1339,7 @@ msgstr ""
msgid "Duplicate document identifiers are not allowed."
msgstr ""
-#: documents/serialisers.py:2556 documents/views.py:3565
+#: documents/serialisers.py:2556 documents/views.py:3569
#, python-format
msgid "Documents not found: %(ids)s"
msgstr ""
@@ -1603,20 +1603,20 @@ msgstr ""
msgid "Unable to parse URI {value}"
msgstr ""
-#: documents/views.py:3577
+#: documents/views.py:3581
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr ""
-#: documents/views.py:3620
+#: documents/views.py:3624
msgid "Bundle is already being processed."
msgstr ""
-#: documents/views.py:3677
+#: documents/views.py:3681
msgid "The share link bundle is still being prepared. Please try again later."
msgstr ""
-#: documents/views.py:3687
+#: documents/views.py:3691
msgid "The share link bundle is unavailable."
msgstr ""
From 2d46ed9692a736f707f50e9ac7e77841e2dd32de Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Wed, 18 Mar 2026 00:41:24 +0000
Subject: [PATCH 26/38] Chore(deps-dev): Bump the frontend-eslint-dependencies
group (#12375)
Bumps the frontend-eslint-dependencies group in /src-ui with 4 updates: [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin), [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser), [@typescript-eslint/utils](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/utils) and [eslint](https://github.com/eslint/eslint).
Updates `@typescript-eslint/eslint-plugin` from 8.54.0 to 8.57.0
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.57.0/packages/eslint-plugin)
Updates `@typescript-eslint/parser` from 8.54.0 to 8.57.0
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.57.0/packages/parser)
Updates `@typescript-eslint/utils` from 8.54.0 to 8.57.0
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/utils/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.57.0/packages/utils)
Updates `eslint` from 10.0.2 to 10.0.3
- [Release notes](https://github.com/eslint/eslint/releases)
- [Commits](https://github.com/eslint/eslint/compare/v10.0.2...v10.0.3)
---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
dependency-version: 8.57.0
dependency-type: direct:development
update-type: version-update:semver-minor
dependency-group: frontend-eslint-dependencies
- dependency-name: "@typescript-eslint/parser"
dependency-version: 8.57.0
dependency-type: direct:development
update-type: version-update:semver-minor
dependency-group: frontend-eslint-dependencies
- dependency-name: "@typescript-eslint/utils"
dependency-version: 8.57.0
dependency-type: direct:development
update-type: version-update:semver-minor
dependency-group: frontend-eslint-dependencies
- dependency-name: eslint
dependency-version: 10.0.3
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: frontend-eslint-dependencies
...
Signed-off-by: dependabot[bot]
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
---
src-ui/package.json | 8 +-
src-ui/pnpm-lock.yaml | 305 +++++++++++++++++++++---------------------
2 files changed, 159 insertions(+), 154 deletions(-)
diff --git a/src-ui/package.json b/src-ui/package.json
index 72784e86f..025a9ce71 100644
--- a/src-ui/package.json
+++ b/src-ui/package.json
@@ -56,10 +56,10 @@
"@playwright/test": "^1.58.2",
"@types/jest": "^30.0.0",
"@types/node": "^25.3.3",
- "@typescript-eslint/eslint-plugin": "^8.54.0",
- "@typescript-eslint/parser": "^8.54.0",
- "@typescript-eslint/utils": "^8.54.0",
- "eslint": "^10.0.2",
+ "@typescript-eslint/eslint-plugin": "^8.57.0",
+ "@typescript-eslint/parser": "^8.57.0",
+ "@typescript-eslint/utils": "^8.57.0",
+ "eslint": "^10.0.3",
"jest": "30.2.0",
"jest-environment-jsdom": "^30.2.0",
"jest-junit": "^16.0.0",
diff --git a/src-ui/pnpm-lock.yaml b/src-ui/pnpm-lock.yaml
index 342fbb8ba..7b8ba9a2f 100644
--- a/src-ui/pnpm-lock.yaml
+++ b/src-ui/pnpm-lock.yaml
@@ -104,19 +104,19 @@ importers:
version: 21.2.2(chokidar@5.0.0)
'@angular-eslint/builder':
specifier: 21.3.0
- version: 21.3.0(@angular/cli@21.2.2(@types/node@25.3.3)(chokidar@5.0.0))(chokidar@5.0.0)(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3)
+ version: 21.3.0(@angular/cli@21.2.2(@types/node@25.3.3)(chokidar@5.0.0))(chokidar@5.0.0)(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3)
'@angular-eslint/eslint-plugin':
specifier: 21.3.0
- version: 21.3.0(@typescript-eslint/utils@8.54.0(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3))(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3)
+ version: 21.3.0(@typescript-eslint/utils@8.57.0(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3))(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3)
'@angular-eslint/eslint-plugin-template':
specifier: 21.3.0
- version: 21.3.0(@angular-eslint/template-parser@21.3.0(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3))(@typescript-eslint/types@8.54.0)(@typescript-eslint/utils@8.54.0(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3))(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3)
+ version: 21.3.0(@angular-eslint/template-parser@21.3.0(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3))(@typescript-eslint/types@8.57.0)(@typescript-eslint/utils@8.57.0(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3))(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3)
'@angular-eslint/schematics':
specifier: 21.3.0
- version: 21.3.0(@angular-eslint/template-parser@21.3.0(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3))(@angular/cli@21.2.2(@types/node@25.3.3)(chokidar@5.0.0))(@typescript-eslint/types@8.54.0)(@typescript-eslint/utils@8.54.0(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3))(chokidar@5.0.0)(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3)
+ version: 21.3.0(@angular-eslint/template-parser@21.3.0(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3))(@angular/cli@21.2.2(@types/node@25.3.3)(chokidar@5.0.0))(@typescript-eslint/types@8.57.0)(@typescript-eslint/utils@8.57.0(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3))(chokidar@5.0.0)(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3)
'@angular-eslint/template-parser':
specifier: 21.3.0
- version: 21.3.0(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3)
+ version: 21.3.0(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3)
'@angular/build':
specifier: ^21.2.2
version: 21.2.2(@angular/compiler-cli@21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3))(@angular/compiler@21.2.4)(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(@angular/localize@21.2.4(@angular/compiler-cli@21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3))(@angular/compiler@21.2.4))(@angular/platform-browser@21.2.4(@angular/common@21.2.4(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(rxjs@7.8.2))(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1)))(@types/node@25.3.3)(chokidar@5.0.0)(jiti@2.6.1)(less@4.4.2)(postcss@8.5.6)(terser@5.44.1)(tslib@2.8.1)(typescript@5.9.3)(yaml@2.7.0)
@@ -139,17 +139,17 @@ importers:
specifier: ^25.3.3
version: 25.3.3
'@typescript-eslint/eslint-plugin':
- specifier: ^8.54.0
- version: 8.54.0(@typescript-eslint/parser@8.54.0(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3))(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3)
+ specifier: ^8.57.0
+ version: 8.57.0(@typescript-eslint/parser@8.57.0(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3))(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3)
'@typescript-eslint/parser':
- specifier: ^8.54.0
- version: 8.54.0(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3)
+ specifier: ^8.57.0
+ version: 8.57.0(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3)
'@typescript-eslint/utils':
- specifier: ^8.54.0
- version: 8.54.0(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3)
+ specifier: ^8.57.0
+ version: 8.57.0(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3)
eslint:
- specifier: ^10.0.2
- version: 10.0.2(jiti@2.6.1)
+ specifier: ^10.0.3
+ version: 10.0.3(jiti@2.6.1)
jest:
specifier: 30.2.0
version: 30.2.0(@types/node@25.3.3)(ts-node@10.9.2(@types/node@25.3.3)(typescript@5.9.3))
@@ -1593,24 +1593,24 @@ packages:
resolution: {integrity: sha512-EriSTlt5OC9/7SXkRSCAhfSxxoSUgBm33OH+IkwbdpgoqsSsUg7y3uh+IICI/Qg4BBWr3U2i39RpmycbxMq4ew==}
engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0}
- '@eslint/config-array@0.23.2':
- resolution: {integrity: sha512-YF+fE6LV4v5MGWRGj7G404/OZzGNepVF8fxk7jqmqo3lrza7a0uUcDnROGRBG1WFC1omYUS/Wp1f42i0M+3Q3A==}
+ '@eslint/config-array@0.23.3':
+ resolution: {integrity: sha512-j+eEWmB6YYLwcNOdlwQ6L2OsptI/LO6lNBuLIqe5R7RetD658HLoF+Mn7LzYmAWWNNzdC6cqP+L6r8ujeYXWLw==}
engines: {node: ^20.19.0 || ^22.13.0 || >=24}
- '@eslint/config-helpers@0.5.2':
- resolution: {integrity: sha512-a5MxrdDXEvqnIq+LisyCX6tQMPF/dSJpCfBgBauY+pNZ28yCtSsTvyTYrMhaI+LK26bVyCJfJkT0u8KIj2i1dQ==}
+ '@eslint/config-helpers@0.5.3':
+ resolution: {integrity: sha512-lzGN0onllOZCGroKJmRwY6QcEHxbjBw1gwB8SgRSqK8YbbtEXMvKynsXc3553ckIEBxsbMBU7oOZXKIPGZNeZw==}
engines: {node: ^20.19.0 || ^22.13.0 || >=24}
- '@eslint/core@1.1.0':
- resolution: {integrity: sha512-/nr9K9wkr3P1EzFTdFdMoLuo1PmIxjmwvPozwoSodjNBdefGujXQUF93u1DDZpEaTuDvMsIQddsd35BwtrW9Xw==}
+ '@eslint/core@1.1.1':
+ resolution: {integrity: sha512-QUPblTtE51/7/Zhfv8BDwO0qkkzQL7P/aWWbqcf4xWLEYn1oKjdO0gglQBB4GAsu7u6wjijbCmzsUTy6mnk6oQ==}
engines: {node: ^20.19.0 || ^22.13.0 || >=24}
- '@eslint/object-schema@3.0.2':
- resolution: {integrity: sha512-HOy56KJt48Bx8KmJ+XGQNSUMT/6dZee/M54XyUyuvTvPXJmsERRvBchsUVx1UMe1WwIH49XLAczNC7V2INsuUw==}
+ '@eslint/object-schema@3.0.3':
+ resolution: {integrity: sha512-iM869Pugn9Nsxbh/YHRqYiqd23AmIbxJOcpUMOuWCVNdoQJ5ZtwL6h3t0bcZzJUlC3Dq9jCFCESBZnX0GTv7iQ==}
engines: {node: ^20.19.0 || ^22.13.0 || >=24}
- '@eslint/plugin-kit@0.6.0':
- resolution: {integrity: sha512-bIZEUzOI1jkhviX2cp5vNyXQc6olzb2ohewQubuYlMXZ2Q/XjBO0x0XhGPvc9fjSIiUN0vw+0hq53BJ4eQSJKQ==}
+ '@eslint/plugin-kit@0.6.1':
+ resolution: {integrity: sha512-iH1B076HoAshH1mLpHMgwdGeTs0CYwL0SPMkGuSebZrwBp16v415e9NZXg2jtrqPVQjf6IANe2Vtlr5KswtcZQ==}
engines: {node: ^20.19.0 || ^22.13.0 || >=24}
'@fastify/busboy@2.1.1':
@@ -3041,63 +3041,63 @@ packages:
'@types/yargs@17.0.33':
resolution: {integrity: sha512-WpxBCKWPLr4xSsHgz511rFJAM+wS28w2zEO1QDNY5zM/S8ok70NNfztH0xwhqKyaK0OHCbN98LDAZuy1ctxDkA==}
- '@typescript-eslint/eslint-plugin@8.54.0':
- resolution: {integrity: sha512-hAAP5io/7csFStuOmR782YmTthKBJ9ND3WVL60hcOjvtGFb+HJxH4O5huAcmcZ9v9G8P+JETiZ/G1B8MALnWZQ==}
+ '@typescript-eslint/eslint-plugin@8.57.0':
+ resolution: {integrity: sha512-qeu4rTHR3/IaFORbD16gmjq9+rEs9fGKdX0kF6BKSfi+gCuG3RCKLlSBYzn/bGsY9Tj7KE/DAQStbp8AHJGHEQ==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
peerDependencies:
- '@typescript-eslint/parser': ^8.54.0
- eslint: ^8.57.0 || ^9.0.0
+ '@typescript-eslint/parser': ^8.57.0
+ eslint: ^8.57.0 || ^9.0.0 || ^10.0.0
typescript: '>=4.8.4 <6.0.0'
- '@typescript-eslint/parser@8.54.0':
- resolution: {integrity: sha512-BtE0k6cjwjLZoZixN0t5AKP0kSzlGu7FctRXYuPAm//aaiZhmfq1JwdYpYr1brzEspYyFeF+8XF5j2VK6oalrA==}
+ '@typescript-eslint/parser@8.57.0':
+ resolution: {integrity: sha512-XZzOmihLIr8AD1b9hL9ccNMzEMWt/dE2u7NyTY9jJG6YNiNthaD5XtUHVF2uCXZ15ng+z2hT3MVuxnUYhq6k1g==}
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
typescript: '>=4.8.4 <6.0.0'
- '@typescript-eslint/project-service@8.54.0':
- resolution: {integrity: sha512-YPf+rvJ1s7MyiWM4uTRhE4DvBXrEV+d8oC3P9Y2eT7S+HBS0clybdMIPnhiATi9vZOYDc7OQ1L/i6ga6NFYK/g==}
+ '@typescript-eslint/project-service@8.57.0':
+ resolution: {integrity: sha512-pR+dK0BlxCLxtWfaKQWtYr7MhKmzqZxuii+ZjuFlZlIGRZm22HnXFqa2eY+90MUz8/i80YJmzFGDUsi8dMOV5w==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
peerDependencies:
typescript: '>=4.8.4 <6.0.0'
- '@typescript-eslint/scope-manager@8.54.0':
- resolution: {integrity: sha512-27rYVQku26j/PbHYcVfRPonmOlVI6gihHtXFbTdB5sb6qA0wdAQAbyXFVarQ5t4HRojIz64IV90YtsjQSSGlQg==}
+ '@typescript-eslint/scope-manager@8.57.0':
+ resolution: {integrity: sha512-nvExQqAHF01lUM66MskSaZulpPL5pgy5hI5RfrxviLgzZVffB5yYzw27uK/ft8QnKXI2X0LBrHJFr1TaZtAibw==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
- '@typescript-eslint/tsconfig-utils@8.54.0':
- resolution: {integrity: sha512-dRgOyT2hPk/JwxNMZDsIXDgyl9axdJI3ogZ2XWhBPsnZUv+hPesa5iuhdYt2gzwA9t8RE5ytOJ6xB0moV0Ujvw==}
+ '@typescript-eslint/tsconfig-utils@8.57.0':
+ resolution: {integrity: sha512-LtXRihc5ytjJIQEH+xqjB0+YgsV4/tW35XKX3GTZHpWtcC8SPkT/d4tqdf1cKtesryHm2bgp6l555NYcT2NLvA==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
peerDependencies:
typescript: '>=4.8.4 <6.0.0'
- '@typescript-eslint/type-utils@8.54.0':
- resolution: {integrity: sha512-hiLguxJWHjjwL6xMBwD903ciAwd7DmK30Y9Axs/etOkftC3ZNN9K44IuRD/EB08amu+Zw6W37x9RecLkOo3pMA==}
+ '@typescript-eslint/type-utils@8.57.0':
+ resolution: {integrity: sha512-yjgh7gmDcJ1+TcEg8x3uWQmn8ifvSupnPfjP21twPKrDP/pTHlEQgmKcitzF/rzPSmv7QjJ90vRpN4U+zoUjwQ==}
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
typescript: '>=4.8.4 <6.0.0'
- '@typescript-eslint/types@8.54.0':
- resolution: {integrity: sha512-PDUI9R1BVjqu7AUDsRBbKMtwmjWcn4J3le+5LpcFgWULN3LvHC5rkc9gCVxbrsrGmO1jfPybN5s6h4Jy+OnkAA==}
+ '@typescript-eslint/types@8.57.0':
+ resolution: {integrity: sha512-dTLI8PEXhjUC7B9Kre+u0XznO696BhXcTlOn0/6kf1fHaQW8+VjJAVHJ3eTI14ZapTxdkOmc80HblPQLaEeJdg==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
- '@typescript-eslint/typescript-estree@8.54.0':
- resolution: {integrity: sha512-BUwcskRaPvTk6fzVWgDPdUndLjB87KYDrN5EYGetnktoeAvPtO4ONHlAZDnj5VFnUANg0Sjm7j4usBlnoVMHwA==}
+ '@typescript-eslint/typescript-estree@8.57.0':
+ resolution: {integrity: sha512-m7faHcyVg0BT3VdYTlX8GdJEM7COexXxS6KqGopxdtkQRvBanK377QDHr4W/vIPAR+ah9+B/RclSW5ldVniO1Q==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
peerDependencies:
typescript: '>=4.8.4 <6.0.0'
- '@typescript-eslint/utils@8.54.0':
- resolution: {integrity: sha512-9Cnda8GS57AQakvRyG0PTejJNlA2xhvyNtEVIMlDWOOeEyBkYWhGPnfrIAnqxLMTSTo6q8g12XVjjev5l1NvMA==}
+ '@typescript-eslint/utils@8.57.0':
+ resolution: {integrity: sha512-5iIHvpD3CZe06riAsbNxxreP+MuYgVUsV0n4bwLH//VJmgtt54sQeY2GszntJ4BjYCpMzrfVh2SBnUQTtys2lQ==}
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
typescript: '>=4.8.4 <6.0.0'
- '@typescript-eslint/visitor-keys@8.54.0':
- resolution: {integrity: sha512-VFlhGSl4opC0bprJiItPQ1RfUhGDIBokcPwaFH4yiBCaNPeld/9VeXbiPO1cLyorQi1G1vL+ecBk1x8o1axORA==}
+ '@typescript-eslint/visitor-keys@8.57.0':
+ resolution: {integrity: sha512-zm6xx8UT/Xy2oSr2ZXD0pZo7Jx2XsCoID2IUh9YSTFRu7z+WdwYTRk6LhUftm1crwqbuoF6I8zAFeCMw0YjwDg==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
'@ungap/structured-clone@1.3.0':
@@ -4034,20 +4034,20 @@ packages:
resolution: {integrity: sha512-GaUN0sWim5qc8KVErfPBWmc31LEsOkrUJbvJZV+xuL3u2phMUK4HIvXlWAakfC8W4nzlK+chPEAkYOYb5ZScIw==}
engines: {node: ^20.19.0 || ^22.13.0 || >=24}
+ eslint-scope@9.1.2:
+ resolution: {integrity: sha512-xS90H51cKw0jltxmvmHy2Iai1LIqrfbw57b79w/J7MfvDfkIkFZ+kj6zC3BjtUwh150HsSSdxXZcsuv72miDFQ==}
+ engines: {node: ^20.19.0 || ^22.13.0 || >=24}
+
eslint-visitor-keys@3.4.3:
resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
- eslint-visitor-keys@4.2.1:
- resolution: {integrity: sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==}
- engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
-
eslint-visitor-keys@5.0.1:
resolution: {integrity: sha512-tD40eHxA35h0PEIZNeIjkHoDR4YjjJp34biM0mDvplBe//mB+IHCqHDGV7pxF+7MklTvighcCPPZC7ynWyjdTA==}
engines: {node: ^20.19.0 || ^22.13.0 || >=24}
- eslint@10.0.2:
- resolution: {integrity: sha512-uYixubwmqJZH+KLVYIVKY1JQt7tysXhtj21WSvjcSmU5SVNzMus1bgLe+pAt816yQ8opKfheVVoPLqvVMGejYw==}
+ eslint@10.0.3:
+ resolution: {integrity: sha512-COV33RzXZkqhG9P2rZCFl9ZmJ7WL+gQSCRzE7RhkbclbQPtLAWReL7ysA0Sh4c8Im2U9ynybdR56PV0XcKvqaQ==}
engines: {node: ^20.19.0 || ^22.13.0 || >=24}
hasBin: true
peerDependencies:
@@ -4056,8 +4056,8 @@ packages:
jiti:
optional: true
- espree@11.1.1:
- resolution: {integrity: sha512-AVHPqQoZYc+RUM4/3Ly5udlZY/U4LS8pIG05jEjWM2lQMU/oaZ7qshzAl2YP1tfNmXfftH3ohurfwNAug+MnsQ==}
+ espree@11.2.0:
+ resolution: {integrity: sha512-7p3DrVEIopW1B1avAGLuCSh1jubc01H2JHc8B4qqGblmg5gI9yumBgACjWo4JlIc04ufug4xJ3SQI8HkS/Rgzw==}
engines: {node: ^20.19.0 || ^22.13.0 || >=24}
esprima@4.0.1:
@@ -4207,8 +4207,8 @@ packages:
resolution: {integrity: sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==}
hasBin: true
- flatted@3.3.3:
- resolution: {integrity: sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==}
+ flatted@3.4.2:
+ resolution: {integrity: sha512-PjDse7RzhcPkIJwy5t7KPWQSZ9cAbzQXcafsetQoD7sOJRQlGikNbx7yZp2OotDnJyrDcbyRq3Ttb18iYOqkxA==}
follow-redirects@1.15.11:
resolution: {integrity: sha512-deG2P0JfjrTxl50XGCDyfI97ZGVCxIpfKYmfyrQ54n5FO/0gfIES8C/Psl6kWVDolizcaaxZJnTS0QSMxvnsBQ==}
@@ -5112,8 +5112,8 @@ packages:
minimatch@3.1.5:
resolution: {integrity: sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w==}
- minimatch@9.0.5:
- resolution: {integrity: sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==}
+ minimatch@9.0.9:
+ resolution: {integrity: sha512-OBwBN9AL4dqmETlpS2zasx+vTeWclWzkblfZk7KTA5j3jeOONz/tRCnZomUyvNg83wL5Zv9Ss6HMJXAgL8R2Yg==}
engines: {node: '>=16 || 14 >=14.17'}
minimist@1.2.8:
@@ -5264,8 +5264,8 @@ packages:
'@angular/core': ^21.1.0
'@ng-bootstrap/ng-bootstrap': ^20.0.0
- node-abi@3.87.0:
- resolution: {integrity: sha512-+CGM1L1CgmtheLcBuleyYOn7NWPVu0s0EJH2C4puxgEZb9h8QpR9G2dBfZJOAUhi7VQxuBPMd0hiISWcTyiYyQ==}
+ node-abi@3.89.0:
+ resolution: {integrity: sha512-6u9UwL0HlAl21+agMN3YAMXcKByMqwGx+pq+P76vii5f7hTPtKDp08/H9py6DY+cfDw7kQNTGEj/rly3IgbNQA==}
engines: {node: '>=10'}
node-addon-api@6.1.0:
@@ -7137,45 +7137,45 @@ snapshots:
transitivePeerDependencies:
- chokidar
- '@angular-eslint/builder@21.3.0(@angular/cli@21.2.2(@types/node@25.3.3)(chokidar@5.0.0))(chokidar@5.0.0)(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3)':
+ '@angular-eslint/builder@21.3.0(@angular/cli@21.2.2(@types/node@25.3.3)(chokidar@5.0.0))(chokidar@5.0.0)(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3)':
dependencies:
'@angular-devkit/architect': 0.2102.0(chokidar@5.0.0)
'@angular-devkit/core': 21.2.2(chokidar@5.0.0)
'@angular/cli': 21.2.2(@types/node@25.3.3)(chokidar@5.0.0)
- eslint: 10.0.2(jiti@2.6.1)
+ eslint: 10.0.3(jiti@2.6.1)
typescript: 5.9.3
transitivePeerDependencies:
- chokidar
'@angular-eslint/bundled-angular-compiler@21.3.0': {}
- '@angular-eslint/eslint-plugin-template@21.3.0(@angular-eslint/template-parser@21.3.0(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3))(@typescript-eslint/types@8.54.0)(@typescript-eslint/utils@8.54.0(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3))(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3)':
+ '@angular-eslint/eslint-plugin-template@21.3.0(@angular-eslint/template-parser@21.3.0(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3))(@typescript-eslint/types@8.57.0)(@typescript-eslint/utils@8.57.0(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3))(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3)':
dependencies:
'@angular-eslint/bundled-angular-compiler': 21.3.0
- '@angular-eslint/template-parser': 21.3.0(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3)
- '@angular-eslint/utils': 21.3.0(@typescript-eslint/utils@8.54.0(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3))(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3)
- '@typescript-eslint/types': 8.54.0
- '@typescript-eslint/utils': 8.54.0(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3)
+ '@angular-eslint/template-parser': 21.3.0(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3)
+ '@angular-eslint/utils': 21.3.0(@typescript-eslint/utils@8.57.0(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3))(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3)
+ '@typescript-eslint/types': 8.57.0
+ '@typescript-eslint/utils': 8.57.0(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3)
aria-query: 5.3.2
axobject-query: 4.1.0
- eslint: 10.0.2(jiti@2.6.1)
+ eslint: 10.0.3(jiti@2.6.1)
typescript: 5.9.3
- '@angular-eslint/eslint-plugin@21.3.0(@typescript-eslint/utils@8.54.0(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3))(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3)':
+ '@angular-eslint/eslint-plugin@21.3.0(@typescript-eslint/utils@8.57.0(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3))(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3)':
dependencies:
'@angular-eslint/bundled-angular-compiler': 21.3.0
- '@angular-eslint/utils': 21.3.0(@typescript-eslint/utils@8.54.0(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3))(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3)
- '@typescript-eslint/utils': 8.54.0(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3)
- eslint: 10.0.2(jiti@2.6.1)
+ '@angular-eslint/utils': 21.3.0(@typescript-eslint/utils@8.57.0(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3))(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3)
+ '@typescript-eslint/utils': 8.57.0(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3)
+ eslint: 10.0.3(jiti@2.6.1)
ts-api-utils: 2.4.0(typescript@5.9.3)
typescript: 5.9.3
- '@angular-eslint/schematics@21.3.0(@angular-eslint/template-parser@21.3.0(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3))(@angular/cli@21.2.2(@types/node@25.3.3)(chokidar@5.0.0))(@typescript-eslint/types@8.54.0)(@typescript-eslint/utils@8.54.0(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3))(chokidar@5.0.0)(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3)':
+ '@angular-eslint/schematics@21.3.0(@angular-eslint/template-parser@21.3.0(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3))(@angular/cli@21.2.2(@types/node@25.3.3)(chokidar@5.0.0))(@typescript-eslint/types@8.57.0)(@typescript-eslint/utils@8.57.0(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3))(chokidar@5.0.0)(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3)':
dependencies:
'@angular-devkit/core': 21.2.2(chokidar@5.0.0)
'@angular-devkit/schematics': 21.2.2(chokidar@5.0.0)
- '@angular-eslint/eslint-plugin': 21.3.0(@typescript-eslint/utils@8.54.0(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3))(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3)
- '@angular-eslint/eslint-plugin-template': 21.3.0(@angular-eslint/template-parser@21.3.0(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3))(@typescript-eslint/types@8.54.0)(@typescript-eslint/utils@8.54.0(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3))(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3)
+ '@angular-eslint/eslint-plugin': 21.3.0(@typescript-eslint/utils@8.57.0(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3))(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3)
+ '@angular-eslint/eslint-plugin-template': 21.3.0(@angular-eslint/template-parser@21.3.0(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3))(@typescript-eslint/types@8.57.0)(@typescript-eslint/utils@8.57.0(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3))(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3)
'@angular/cli': 21.2.2(@types/node@25.3.3)(chokidar@5.0.0)
ignore: 7.0.5
semver: 7.7.4
@@ -7188,18 +7188,18 @@ snapshots:
- eslint
- typescript
- '@angular-eslint/template-parser@21.3.0(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3)':
+ '@angular-eslint/template-parser@21.3.0(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3)':
dependencies:
'@angular-eslint/bundled-angular-compiler': 21.3.0
- eslint: 10.0.2(jiti@2.6.1)
+ eslint: 10.0.3(jiti@2.6.1)
eslint-scope: 9.1.1
typescript: 5.9.3
- '@angular-eslint/utils@21.3.0(@typescript-eslint/utils@8.54.0(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3))(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3)':
+ '@angular-eslint/utils@21.3.0(@typescript-eslint/utils@8.57.0(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3))(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3)':
dependencies:
'@angular-eslint/bundled-angular-compiler': 21.3.0
- '@typescript-eslint/utils': 8.54.0(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3)
- eslint: 10.0.2(jiti@2.6.1)
+ '@typescript-eslint/utils': 8.57.0(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3)
+ eslint: 10.0.3(jiti@2.6.1)
typescript: 5.9.3
'@angular/build@21.1.2(@angular/compiler-cli@21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3))(@angular/compiler@21.2.4)(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(@angular/localize@21.2.4(@angular/compiler-cli@21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3))(@angular/compiler@21.2.4))(@angular/platform-browser@21.2.4(@angular/common@21.2.4(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(rxjs@7.8.2))(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1)))(@types/node@25.3.3)(chokidar@5.0.0)(jiti@2.6.1)(less@4.4.2)(postcss@8.5.6)(terser@5.44.1)(tslib@2.8.1)(typescript@5.9.3)(yaml@2.7.0)':
@@ -8436,34 +8436,34 @@ snapshots:
'@esbuild/win32-x64@0.27.3':
optional: true
- '@eslint-community/eslint-utils@4.9.1(eslint@10.0.2(jiti@2.6.1))':
+ '@eslint-community/eslint-utils@4.9.1(eslint@10.0.3(jiti@2.6.1))':
dependencies:
- eslint: 10.0.2(jiti@2.6.1)
+ eslint: 10.0.3(jiti@2.6.1)
eslint-visitor-keys: 3.4.3
'@eslint-community/regexpp@4.12.2': {}
- '@eslint/config-array@0.23.2':
+ '@eslint/config-array@0.23.3':
dependencies:
- '@eslint/object-schema': 3.0.2
+ '@eslint/object-schema': 3.0.3
debug: 4.4.3
minimatch: 10.2.4
transitivePeerDependencies:
- supports-color
- '@eslint/config-helpers@0.5.2':
+ '@eslint/config-helpers@0.5.3':
dependencies:
- '@eslint/core': 1.1.0
+ '@eslint/core': 1.1.1
- '@eslint/core@1.1.0':
+ '@eslint/core@1.1.1':
dependencies:
'@types/json-schema': 7.0.15
- '@eslint/object-schema@3.0.2': {}
+ '@eslint/object-schema@3.0.3': {}
- '@eslint/plugin-kit@0.6.0':
+ '@eslint/plugin-kit@0.6.1':
dependencies:
- '@eslint/core': 1.1.0
+ '@eslint/core': 1.1.1
levn: 0.4.1
'@fastify/busboy@2.1.1': {}
@@ -9842,15 +9842,15 @@ snapshots:
dependencies:
'@types/yargs-parser': 21.0.3
- '@typescript-eslint/eslint-plugin@8.54.0(@typescript-eslint/parser@8.54.0(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3))(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3)':
+ '@typescript-eslint/eslint-plugin@8.57.0(@typescript-eslint/parser@8.57.0(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3))(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3)':
dependencies:
'@eslint-community/regexpp': 4.12.2
- '@typescript-eslint/parser': 8.54.0(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3)
- '@typescript-eslint/scope-manager': 8.54.0
- '@typescript-eslint/type-utils': 8.54.0(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3)
- '@typescript-eslint/utils': 8.54.0(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3)
- '@typescript-eslint/visitor-keys': 8.54.0
- eslint: 10.0.2(jiti@2.6.1)
+ '@typescript-eslint/parser': 8.57.0(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3)
+ '@typescript-eslint/scope-manager': 8.57.0
+ '@typescript-eslint/type-utils': 8.57.0(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3)
+ '@typescript-eslint/utils': 8.57.0(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3)
+ '@typescript-eslint/visitor-keys': 8.57.0
+ eslint: 10.0.3(jiti@2.6.1)
ignore: 7.0.5
natural-compare: 1.4.0
ts-api-utils: 2.4.0(typescript@5.9.3)
@@ -9858,58 +9858,58 @@ snapshots:
transitivePeerDependencies:
- supports-color
- '@typescript-eslint/parser@8.54.0(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3)':
+ '@typescript-eslint/parser@8.57.0(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3)':
dependencies:
- '@typescript-eslint/scope-manager': 8.54.0
- '@typescript-eslint/types': 8.54.0
- '@typescript-eslint/typescript-estree': 8.54.0(typescript@5.9.3)
- '@typescript-eslint/visitor-keys': 8.54.0
+ '@typescript-eslint/scope-manager': 8.57.0
+ '@typescript-eslint/types': 8.57.0
+ '@typescript-eslint/typescript-estree': 8.57.0(typescript@5.9.3)
+ '@typescript-eslint/visitor-keys': 8.57.0
debug: 4.4.3
- eslint: 10.0.2(jiti@2.6.1)
+ eslint: 10.0.3(jiti@2.6.1)
typescript: 5.9.3
transitivePeerDependencies:
- supports-color
- '@typescript-eslint/project-service@8.54.0(typescript@5.9.3)':
+ '@typescript-eslint/project-service@8.57.0(typescript@5.9.3)':
dependencies:
- '@typescript-eslint/tsconfig-utils': 8.54.0(typescript@5.9.3)
- '@typescript-eslint/types': 8.54.0
+ '@typescript-eslint/tsconfig-utils': 8.57.0(typescript@5.9.3)
+ '@typescript-eslint/types': 8.57.0
debug: 4.4.3
typescript: 5.9.3
transitivePeerDependencies:
- supports-color
- '@typescript-eslint/scope-manager@8.54.0':
+ '@typescript-eslint/scope-manager@8.57.0':
dependencies:
- '@typescript-eslint/types': 8.54.0
- '@typescript-eslint/visitor-keys': 8.54.0
+ '@typescript-eslint/types': 8.57.0
+ '@typescript-eslint/visitor-keys': 8.57.0
- '@typescript-eslint/tsconfig-utils@8.54.0(typescript@5.9.3)':
+ '@typescript-eslint/tsconfig-utils@8.57.0(typescript@5.9.3)':
dependencies:
typescript: 5.9.3
- '@typescript-eslint/type-utils@8.54.0(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3)':
+ '@typescript-eslint/type-utils@8.57.0(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3)':
dependencies:
- '@typescript-eslint/types': 8.54.0
- '@typescript-eslint/typescript-estree': 8.54.0(typescript@5.9.3)
- '@typescript-eslint/utils': 8.54.0(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3)
+ '@typescript-eslint/types': 8.57.0
+ '@typescript-eslint/typescript-estree': 8.57.0(typescript@5.9.3)
+ '@typescript-eslint/utils': 8.57.0(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3)
debug: 4.4.3
- eslint: 10.0.2(jiti@2.6.1)
+ eslint: 10.0.3(jiti@2.6.1)
ts-api-utils: 2.4.0(typescript@5.9.3)
typescript: 5.9.3
transitivePeerDependencies:
- supports-color
- '@typescript-eslint/types@8.54.0': {}
+ '@typescript-eslint/types@8.57.0': {}
- '@typescript-eslint/typescript-estree@8.54.0(typescript@5.9.3)':
+ '@typescript-eslint/typescript-estree@8.57.0(typescript@5.9.3)':
dependencies:
- '@typescript-eslint/project-service': 8.54.0(typescript@5.9.3)
- '@typescript-eslint/tsconfig-utils': 8.54.0(typescript@5.9.3)
- '@typescript-eslint/types': 8.54.0
- '@typescript-eslint/visitor-keys': 8.54.0
+ '@typescript-eslint/project-service': 8.57.0(typescript@5.9.3)
+ '@typescript-eslint/tsconfig-utils': 8.57.0(typescript@5.9.3)
+ '@typescript-eslint/types': 8.57.0
+ '@typescript-eslint/visitor-keys': 8.57.0
debug: 4.4.3
- minimatch: 9.0.5
+ minimatch: 10.2.4
semver: 7.7.4
tinyglobby: 0.2.15
ts-api-utils: 2.4.0(typescript@5.9.3)
@@ -9917,21 +9917,21 @@ snapshots:
transitivePeerDependencies:
- supports-color
- '@typescript-eslint/utils@8.54.0(eslint@10.0.2(jiti@2.6.1))(typescript@5.9.3)':
+ '@typescript-eslint/utils@8.57.0(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3)':
dependencies:
- '@eslint-community/eslint-utils': 4.9.1(eslint@10.0.2(jiti@2.6.1))
- '@typescript-eslint/scope-manager': 8.54.0
- '@typescript-eslint/types': 8.54.0
- '@typescript-eslint/typescript-estree': 8.54.0(typescript@5.9.3)
- eslint: 10.0.2(jiti@2.6.1)
+ '@eslint-community/eslint-utils': 4.9.1(eslint@10.0.3(jiti@2.6.1))
+ '@typescript-eslint/scope-manager': 8.57.0
+ '@typescript-eslint/types': 8.57.0
+ '@typescript-eslint/typescript-estree': 8.57.0(typescript@5.9.3)
+ eslint: 10.0.3(jiti@2.6.1)
typescript: 5.9.3
transitivePeerDependencies:
- supports-color
- '@typescript-eslint/visitor-keys@8.54.0':
+ '@typescript-eslint/visitor-keys@8.57.0':
dependencies:
- '@typescript-eslint/types': 8.54.0
- eslint-visitor-keys: 4.2.1
+ '@typescript-eslint/types': 8.57.0
+ eslint-visitor-keys: 5.0.1
'@ungap/structured-clone@1.3.0': {}
@@ -10910,20 +10910,25 @@ snapshots:
esrecurse: 4.3.0
estraverse: 5.3.0
- eslint-visitor-keys@3.4.3: {}
+ eslint-scope@9.1.2:
+ dependencies:
+ '@types/esrecurse': 4.3.1
+ '@types/estree': 1.0.8
+ esrecurse: 4.3.0
+ estraverse: 5.3.0
- eslint-visitor-keys@4.2.1: {}
+ eslint-visitor-keys@3.4.3: {}
eslint-visitor-keys@5.0.1: {}
- eslint@10.0.2(jiti@2.6.1):
+ eslint@10.0.3(jiti@2.6.1):
dependencies:
- '@eslint-community/eslint-utils': 4.9.1(eslint@10.0.2(jiti@2.6.1))
+ '@eslint-community/eslint-utils': 4.9.1(eslint@10.0.3(jiti@2.6.1))
'@eslint-community/regexpp': 4.12.2
- '@eslint/config-array': 0.23.2
- '@eslint/config-helpers': 0.5.2
- '@eslint/core': 1.1.0
- '@eslint/plugin-kit': 0.6.0
+ '@eslint/config-array': 0.23.3
+ '@eslint/config-helpers': 0.5.3
+ '@eslint/core': 1.1.1
+ '@eslint/plugin-kit': 0.6.1
'@humanfs/node': 0.16.7
'@humanwhocodes/module-importer': 1.0.1
'@humanwhocodes/retry': 0.4.3
@@ -10932,9 +10937,9 @@ snapshots:
cross-spawn: 7.0.6
debug: 4.4.3
escape-string-regexp: 4.0.0
- eslint-scope: 9.1.1
+ eslint-scope: 9.1.2
eslint-visitor-keys: 5.0.1
- espree: 11.1.1
+ espree: 11.2.0
esquery: 1.7.0
esutils: 2.0.3
fast-deep-equal: 3.1.3
@@ -10953,7 +10958,7 @@ snapshots:
transitivePeerDependencies:
- supports-color
- espree@11.1.1:
+ espree@11.2.0:
dependencies:
acorn: 8.16.0
acorn-jsx: 5.3.2(acorn@8.16.0)
@@ -11165,12 +11170,12 @@ snapshots:
flat-cache@4.0.1:
dependencies:
- flatted: 3.3.3
+ flatted: 3.4.2
keyv: 4.5.4
flat@5.0.2: {}
- flatted@3.3.3: {}
+ flatted@3.4.2: {}
follow-redirects@1.15.11(debug@4.4.3):
optionalDependencies:
@@ -11255,7 +11260,7 @@ snapshots:
dependencies:
foreground-child: 3.3.1
jackspeak: 3.4.3
- minimatch: 9.0.5
+ minimatch: 9.0.9
minipass: 7.1.3
package-json-from-dist: 1.0.1
path-scurry: 1.11.1
@@ -12305,7 +12310,7 @@ snapshots:
dependencies:
brace-expansion: 1.1.12
- minimatch@9.0.5:
+ minimatch@9.0.9:
dependencies:
brace-expansion: 2.0.2
@@ -12450,7 +12455,7 @@ snapshots:
- '@angular/router'
- rxjs
- node-abi@3.87.0:
+ node-abi@3.89.0:
dependencies:
semver: 7.7.4
optional: true
@@ -12825,7 +12830,7 @@ snapshots:
minimist: 1.2.8
mkdirp-classic: 0.5.3
napi-build-utils: 2.0.0
- node-abi: 3.87.0
+ node-abi: 3.89.0
pump: 3.0.4
rc: 1.2.8
simple-get: 4.0.1
From 03e2c352c2eb2dace1d5ed390afaeaba05269ab1 Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Wed, 18 Mar 2026 00:56:32 +0000
Subject: [PATCH 27/38] Chore(deps-dev): Bump @types/node from 25.3.3 to 25.4.0
in /src-ui (#12376)
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 25.3.3 to 25.4.0.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)
---
updated-dependencies:
- dependency-name: "@types/node"
dependency-version: 25.4.0
dependency-type: direct:development
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot]
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
---
src-ui/package.json | 2 +-
src-ui/pnpm-lock.yaml | 334 +++++++++++++++++++++---------------------
2 files changed, 168 insertions(+), 168 deletions(-)
diff --git a/src-ui/package.json b/src-ui/package.json
index 025a9ce71..06268eb7e 100644
--- a/src-ui/package.json
+++ b/src-ui/package.json
@@ -55,7 +55,7 @@
"@codecov/webpack-plugin": "^1.9.1",
"@playwright/test": "^1.58.2",
"@types/jest": "^30.0.0",
- "@types/node": "^25.3.3",
+ "@types/node": "^25.4.0",
"@typescript-eslint/eslint-plugin": "^8.57.0",
"@typescript-eslint/parser": "^8.57.0",
"@typescript-eslint/utils": "^8.57.0",
diff --git a/src-ui/pnpm-lock.yaml b/src-ui/pnpm-lock.yaml
index 7b8ba9a2f..c24d4ee0b 100644
--- a/src-ui/pnpm-lock.yaml
+++ b/src-ui/pnpm-lock.yaml
@@ -92,10 +92,10 @@ importers:
devDependencies:
'@angular-builders/custom-webpack':
specifier: ^21.0.3
- version: 21.0.3(@angular/compiler-cli@21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3))(@angular/compiler@21.2.4)(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(@angular/localize@21.2.4(@angular/compiler-cli@21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3))(@angular/compiler@21.2.4))(@angular/platform-browser@21.2.4(@angular/common@21.2.4(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(rxjs@7.8.2))(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1)))(@types/node@25.3.3)(chokidar@5.0.0)(jest-environment-jsdom@30.2.0(canvas@3.0.0))(jest@30.2.0(@types/node@25.3.3)(ts-node@10.9.2(@types/node@25.3.3)(typescript@5.9.3)))(jiti@2.6.1)(less@4.4.2)(postcss@8.5.6)(terser@5.44.1)(tslib@2.8.1)(typescript@5.9.3)(yaml@2.7.0)
+ version: 21.0.3(@angular/compiler-cli@21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3))(@angular/compiler@21.2.4)(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(@angular/localize@21.2.4(@angular/compiler-cli@21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3))(@angular/compiler@21.2.4))(@angular/platform-browser@21.2.4(@angular/common@21.2.4(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(rxjs@7.8.2))(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1)))(@types/node@25.4.0)(chokidar@5.0.0)(jest-environment-jsdom@30.2.0(canvas@3.0.0))(jest@30.2.0(@types/node@25.4.0)(ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3)))(jiti@2.6.1)(less@4.4.2)(postcss@8.5.6)(terser@5.44.1)(tslib@2.8.1)(typescript@5.9.3)(yaml@2.7.0)
'@angular-builders/jest':
specifier: ^21.0.3
- version: 21.0.3(d3759a42701812e83e3b36381edcbc70)
+ version: 21.0.3(5a81d46f899dc9147bafdd7de7f725f5)
'@angular-devkit/core':
specifier: ^21.2.2
version: 21.2.2(chokidar@5.0.0)
@@ -104,7 +104,7 @@ importers:
version: 21.2.2(chokidar@5.0.0)
'@angular-eslint/builder':
specifier: 21.3.0
- version: 21.3.0(@angular/cli@21.2.2(@types/node@25.3.3)(chokidar@5.0.0))(chokidar@5.0.0)(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3)
+ version: 21.3.0(@angular/cli@21.2.2(@types/node@25.4.0)(chokidar@5.0.0))(chokidar@5.0.0)(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3)
'@angular-eslint/eslint-plugin':
specifier: 21.3.0
version: 21.3.0(@typescript-eslint/utils@8.57.0(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3))(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3)
@@ -113,16 +113,16 @@ importers:
version: 21.3.0(@angular-eslint/template-parser@21.3.0(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3))(@typescript-eslint/types@8.57.0)(@typescript-eslint/utils@8.57.0(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3))(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3)
'@angular-eslint/schematics':
specifier: 21.3.0
- version: 21.3.0(@angular-eslint/template-parser@21.3.0(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3))(@angular/cli@21.2.2(@types/node@25.3.3)(chokidar@5.0.0))(@typescript-eslint/types@8.57.0)(@typescript-eslint/utils@8.57.0(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3))(chokidar@5.0.0)(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3)
+ version: 21.3.0(@angular-eslint/template-parser@21.3.0(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3))(@angular/cli@21.2.2(@types/node@25.4.0)(chokidar@5.0.0))(@typescript-eslint/types@8.57.0)(@typescript-eslint/utils@8.57.0(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3))(chokidar@5.0.0)(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3)
'@angular-eslint/template-parser':
specifier: 21.3.0
version: 21.3.0(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3)
'@angular/build':
specifier: ^21.2.2
- version: 21.2.2(@angular/compiler-cli@21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3))(@angular/compiler@21.2.4)(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(@angular/localize@21.2.4(@angular/compiler-cli@21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3))(@angular/compiler@21.2.4))(@angular/platform-browser@21.2.4(@angular/common@21.2.4(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(rxjs@7.8.2))(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1)))(@types/node@25.3.3)(chokidar@5.0.0)(jiti@2.6.1)(less@4.4.2)(postcss@8.5.6)(terser@5.44.1)(tslib@2.8.1)(typescript@5.9.3)(yaml@2.7.0)
+ version: 21.2.2(@angular/compiler-cli@21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3))(@angular/compiler@21.2.4)(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(@angular/localize@21.2.4(@angular/compiler-cli@21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3))(@angular/compiler@21.2.4))(@angular/platform-browser@21.2.4(@angular/common@21.2.4(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(rxjs@7.8.2))(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1)))(@types/node@25.4.0)(chokidar@5.0.0)(jiti@2.6.1)(less@4.4.2)(postcss@8.5.6)(terser@5.44.1)(tslib@2.8.1)(typescript@5.9.3)(yaml@2.7.0)
'@angular/cli':
specifier: ~21.2.2
- version: 21.2.2(@types/node@25.3.3)(chokidar@5.0.0)
+ version: 21.2.2(@types/node@25.4.0)(chokidar@5.0.0)
'@angular/compiler-cli':
specifier: ~21.2.4
version: 21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3)
@@ -136,8 +136,8 @@ importers:
specifier: ^30.0.0
version: 30.0.0
'@types/node':
- specifier: ^25.3.3
- version: 25.3.3
+ specifier: ^25.4.0
+ version: 25.4.0
'@typescript-eslint/eslint-plugin':
specifier: ^8.57.0
version: 8.57.0(@typescript-eslint/parser@8.57.0(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3))(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3)
@@ -152,7 +152,7 @@ importers:
version: 10.0.3(jiti@2.6.1)
jest:
specifier: 30.2.0
- version: 30.2.0(@types/node@25.3.3)(ts-node@10.9.2(@types/node@25.3.3)(typescript@5.9.3))
+ version: 30.2.0(@types/node@25.4.0)(ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3))
jest-environment-jsdom:
specifier: ^30.2.0
version: 30.2.0(canvas@3.0.0)
@@ -161,7 +161,7 @@ importers:
version: 16.0.0
jest-preset-angular:
specifier: ^16.1.1
- version: 16.1.1(d878552686fd57cfb81e628ed4a9814b)
+ version: 16.1.1(cad993f8bb8f711cb7652a0c571fd9cf)
jest-websocket-mock:
specifier: ^2.5.0
version: 2.5.0
@@ -170,7 +170,7 @@ importers:
version: 4.3.0(prettier@3.4.2)(typescript@5.9.3)
ts-node:
specifier: ~10.9.1
- version: 10.9.2(@types/node@25.3.3)(typescript@5.9.3)
+ version: 10.9.2(@types/node@25.4.0)(typescript@5.9.3)
typescript:
specifier: ^5.9.3
version: 5.9.3
@@ -2999,8 +2999,8 @@ packages:
'@types/node-forge@1.3.14':
resolution: {integrity: sha512-mhVF2BnD4BO+jtOp7z1CdzaK4mbuK0LLQYAvdOLqHTavxFNq4zA1EmYkpnFjP8HOUzedfQkRnp0E2ulSAYSzAw==}
- '@types/node@25.3.3':
- resolution: {integrity: sha512-DpzbrH7wIcBaJibpKo9nnSQL0MTRdnWttGyE5haGwK86xgMOkFLp7vEyfQPGLOJh5wNYiJ3V9PmUMDhV9u8kkQ==}
+ '@types/node@25.4.0':
+ resolution: {integrity: sha512-9wLpoeWuBlcbBpOY3XmzSTG3oscB6xjBEEtn+pYXTfhyXhIxC5FsBer2KTopBlvKEiW9l13po9fq+SJY/5lkhw==}
'@types/qs@6.14.0':
resolution: {integrity: sha512-eOunJqu0K1923aExK6y8p6fsihYEn/BYuQ4g0CxAAgFc4b/ZLN4CrsRZ55srTdqoiLzU2B2evC+apEIxprEzkQ==}
@@ -6885,10 +6885,10 @@ snapshots:
'@jridgewell/gen-mapping': 0.3.13
'@jridgewell/trace-mapping': 0.3.31
- '@angular-builders/common@5.0.3(@types/node@25.3.3)(chokidar@5.0.0)(typescript@5.9.3)':
+ '@angular-builders/common@5.0.3(@types/node@25.4.0)(chokidar@5.0.0)(typescript@5.9.3)':
dependencies:
'@angular-devkit/core': 21.2.2(chokidar@5.0.0)
- ts-node: 10.9.2(@types/node@25.3.3)(typescript@5.9.3)
+ ts-node: 10.9.2(@types/node@25.4.0)(typescript@5.9.3)
tsconfig-paths: 4.2.0
transitivePeerDependencies:
- '@swc/core'
@@ -6897,13 +6897,13 @@ snapshots:
- chokidar
- typescript
- '@angular-builders/custom-webpack@21.0.3(@angular/compiler-cli@21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3))(@angular/compiler@21.2.4)(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(@angular/localize@21.2.4(@angular/compiler-cli@21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3))(@angular/compiler@21.2.4))(@angular/platform-browser@21.2.4(@angular/common@21.2.4(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(rxjs@7.8.2))(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1)))(@types/node@25.3.3)(chokidar@5.0.0)(jest-environment-jsdom@30.2.0(canvas@3.0.0))(jest@30.2.0(@types/node@25.3.3)(ts-node@10.9.2(@types/node@25.3.3)(typescript@5.9.3)))(jiti@2.6.1)(less@4.4.2)(postcss@8.5.6)(terser@5.44.1)(tslib@2.8.1)(typescript@5.9.3)(yaml@2.7.0)':
+ '@angular-builders/custom-webpack@21.0.3(@angular/compiler-cli@21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3))(@angular/compiler@21.2.4)(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(@angular/localize@21.2.4(@angular/compiler-cli@21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3))(@angular/compiler@21.2.4))(@angular/platform-browser@21.2.4(@angular/common@21.2.4(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(rxjs@7.8.2))(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1)))(@types/node@25.4.0)(chokidar@5.0.0)(jest-environment-jsdom@30.2.0(canvas@3.0.0))(jest@30.2.0(@types/node@25.4.0)(ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3)))(jiti@2.6.1)(less@4.4.2)(postcss@8.5.6)(terser@5.44.1)(tslib@2.8.1)(typescript@5.9.3)(yaml@2.7.0)':
dependencies:
- '@angular-builders/common': 5.0.3(@types/node@25.3.3)(chokidar@5.0.0)(typescript@5.9.3)
+ '@angular-builders/common': 5.0.3(@types/node@25.4.0)(chokidar@5.0.0)(typescript@5.9.3)
'@angular-devkit/architect': 0.2101.2(chokidar@5.0.0)
- '@angular-devkit/build-angular': 21.1.2(@angular/compiler-cli@21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3))(@angular/compiler@21.2.4)(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(@angular/localize@21.2.4(@angular/compiler-cli@21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3))(@angular/compiler@21.2.4))(@angular/platform-browser@21.2.4(@angular/common@21.2.4(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(rxjs@7.8.2))(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1)))(@types/node@25.3.3)(chokidar@5.0.0)(jest-environment-jsdom@30.2.0(canvas@3.0.0))(jest@30.2.0(@types/node@25.3.3)(ts-node@10.9.2(@types/node@25.3.3)(typescript@5.9.3)))(jiti@2.6.1)(typescript@5.9.3)(yaml@2.7.0)
+ '@angular-devkit/build-angular': 21.1.2(@angular/compiler-cli@21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3))(@angular/compiler@21.2.4)(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(@angular/localize@21.2.4(@angular/compiler-cli@21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3))(@angular/compiler@21.2.4))(@angular/platform-browser@21.2.4(@angular/common@21.2.4(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(rxjs@7.8.2))(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1)))(@types/node@25.4.0)(chokidar@5.0.0)(jest-environment-jsdom@30.2.0(canvas@3.0.0))(jest@30.2.0(@types/node@25.4.0)(ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3)))(jiti@2.6.1)(typescript@5.9.3)(yaml@2.7.0)
'@angular-devkit/core': 21.2.2(chokidar@5.0.0)
- '@angular/build': 21.2.2(@angular/compiler-cli@21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3))(@angular/compiler@21.2.4)(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(@angular/localize@21.2.4(@angular/compiler-cli@21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3))(@angular/compiler@21.2.4))(@angular/platform-browser@21.2.4(@angular/common@21.2.4(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(rxjs@7.8.2))(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1)))(@types/node@25.3.3)(chokidar@5.0.0)(jiti@2.6.1)(less@4.4.2)(postcss@8.5.6)(terser@5.44.1)(tslib@2.8.1)(typescript@5.9.3)(yaml@2.7.0)
+ '@angular/build': 21.2.2(@angular/compiler-cli@21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3))(@angular/compiler@21.2.4)(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(@angular/localize@21.2.4(@angular/compiler-cli@21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3))(@angular/compiler@21.2.4))(@angular/platform-browser@21.2.4(@angular/common@21.2.4(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(rxjs@7.8.2))(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1)))(@types/node@25.4.0)(chokidar@5.0.0)(jiti@2.6.1)(less@4.4.2)(postcss@8.5.6)(terser@5.44.1)(tslib@2.8.1)(typescript@5.9.3)(yaml@2.7.0)
'@angular/compiler-cli': 21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3)
lodash: 4.17.23
webpack-merge: 6.0.1
@@ -6950,17 +6950,17 @@ snapshots:
- webpack-cli
- yaml
- '@angular-builders/jest@21.0.3(d3759a42701812e83e3b36381edcbc70)':
+ '@angular-builders/jest@21.0.3(5a81d46f899dc9147bafdd7de7f725f5)':
dependencies:
- '@angular-builders/common': 5.0.3(@types/node@25.3.3)(chokidar@5.0.0)(typescript@5.9.3)
+ '@angular-builders/common': 5.0.3(@types/node@25.4.0)(chokidar@5.0.0)(typescript@5.9.3)
'@angular-devkit/architect': 0.2101.2(chokidar@5.0.0)
- '@angular-devkit/build-angular': 21.1.2(@angular/compiler-cli@21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3))(@angular/compiler@21.2.4)(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(@angular/localize@21.2.4(@angular/compiler-cli@21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3))(@angular/compiler@21.2.4))(@angular/platform-browser@21.2.4(@angular/common@21.2.4(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(rxjs@7.8.2))(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1)))(@types/node@25.3.3)(chokidar@5.0.0)(jest-environment-jsdom@30.2.0(canvas@3.0.0))(jest@30.2.0(@types/node@25.3.3)(ts-node@10.9.2(@types/node@25.3.3)(typescript@5.9.3)))(jiti@2.6.1)(typescript@5.9.3)(yaml@2.7.0)
+ '@angular-devkit/build-angular': 21.1.2(@angular/compiler-cli@21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3))(@angular/compiler@21.2.4)(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(@angular/localize@21.2.4(@angular/compiler-cli@21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3))(@angular/compiler@21.2.4))(@angular/platform-browser@21.2.4(@angular/common@21.2.4(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(rxjs@7.8.2))(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1)))(@types/node@25.4.0)(chokidar@5.0.0)(jest-environment-jsdom@30.2.0(canvas@3.0.0))(jest@30.2.0(@types/node@25.4.0)(ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3)))(jiti@2.6.1)(typescript@5.9.3)(yaml@2.7.0)
'@angular-devkit/core': 21.2.2(chokidar@5.0.0)
'@angular/compiler-cli': 21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3)
'@angular/core': 21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1)
'@angular/platform-browser-dynamic': 21.2.4(@angular/common@21.2.4(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(rxjs@7.8.2))(@angular/compiler@21.2.4)(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(@angular/platform-browser@21.2.4(@angular/common@21.2.4(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(rxjs@7.8.2))(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1)))
- jest: 30.2.0(@types/node@25.3.3)(ts-node@10.9.2(@types/node@25.3.3)(typescript@5.9.3))
- jest-preset-angular: 16.1.1(d878552686fd57cfb81e628ed4a9814b)
+ jest: 30.2.0(@types/node@25.4.0)(ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3))
+ jest-preset-angular: 16.1.1(cad993f8bb8f711cb7652a0c571fd9cf)
lodash: 4.17.23
transitivePeerDependencies:
- '@angular/platform-browser'
@@ -6997,13 +6997,13 @@ snapshots:
transitivePeerDependencies:
- chokidar
- '@angular-devkit/build-angular@21.1.2(@angular/compiler-cli@21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3))(@angular/compiler@21.2.4)(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(@angular/localize@21.2.4(@angular/compiler-cli@21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3))(@angular/compiler@21.2.4))(@angular/platform-browser@21.2.4(@angular/common@21.2.4(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(rxjs@7.8.2))(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1)))(@types/node@25.3.3)(chokidar@5.0.0)(jest-environment-jsdom@30.2.0(canvas@3.0.0))(jest@30.2.0(@types/node@25.3.3)(ts-node@10.9.2(@types/node@25.3.3)(typescript@5.9.3)))(jiti@2.6.1)(typescript@5.9.3)(yaml@2.7.0)':
+ '@angular-devkit/build-angular@21.1.2(@angular/compiler-cli@21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3))(@angular/compiler@21.2.4)(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(@angular/localize@21.2.4(@angular/compiler-cli@21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3))(@angular/compiler@21.2.4))(@angular/platform-browser@21.2.4(@angular/common@21.2.4(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(rxjs@7.8.2))(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1)))(@types/node@25.4.0)(chokidar@5.0.0)(jest-environment-jsdom@30.2.0(canvas@3.0.0))(jest@30.2.0(@types/node@25.4.0)(ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3)))(jiti@2.6.1)(typescript@5.9.3)(yaml@2.7.0)':
dependencies:
'@ampproject/remapping': 2.3.0
'@angular-devkit/architect': 0.2101.2(chokidar@5.0.0)
'@angular-devkit/build-webpack': 0.2101.2(chokidar@5.0.0)(webpack-dev-server@5.2.2(tslib@2.8.1)(webpack@5.105.3))(webpack@5.104.1(esbuild@0.27.2))
'@angular-devkit/core': 21.1.2(chokidar@5.0.0)
- '@angular/build': 21.1.2(@angular/compiler-cli@21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3))(@angular/compiler@21.2.4)(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(@angular/localize@21.2.4(@angular/compiler-cli@21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3))(@angular/compiler@21.2.4))(@angular/platform-browser@21.2.4(@angular/common@21.2.4(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(rxjs@7.8.2))(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1)))(@types/node@25.3.3)(chokidar@5.0.0)(jiti@2.6.1)(less@4.4.2)(postcss@8.5.6)(terser@5.44.1)(tslib@2.8.1)(typescript@5.9.3)(yaml@2.7.0)
+ '@angular/build': 21.1.2(@angular/compiler-cli@21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3))(@angular/compiler@21.2.4)(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(@angular/localize@21.2.4(@angular/compiler-cli@21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3))(@angular/compiler@21.2.4))(@angular/platform-browser@21.2.4(@angular/common@21.2.4(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(rxjs@7.8.2))(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1)))(@types/node@25.4.0)(chokidar@5.0.0)(jiti@2.6.1)(less@4.4.2)(postcss@8.5.6)(terser@5.44.1)(tslib@2.8.1)(typescript@5.9.3)(yaml@2.7.0)
'@angular/compiler-cli': 21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3)
'@babel/core': 7.28.5
'@babel/generator': 7.28.5
@@ -7060,7 +7060,7 @@ snapshots:
'@angular/localize': 21.2.4(@angular/compiler-cli@21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3))(@angular/compiler@21.2.4)
'@angular/platform-browser': 21.2.4(@angular/common@21.2.4(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(rxjs@7.8.2))(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))
esbuild: 0.27.2
- jest: 30.2.0(@types/node@25.3.3)(ts-node@10.9.2(@types/node@25.3.3)(typescript@5.9.3))
+ jest: 30.2.0(@types/node@25.4.0)(ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3))
jest-environment-jsdom: 30.2.0(canvas@3.0.0)
transitivePeerDependencies:
- '@angular/compiler'
@@ -7137,11 +7137,11 @@ snapshots:
transitivePeerDependencies:
- chokidar
- '@angular-eslint/builder@21.3.0(@angular/cli@21.2.2(@types/node@25.3.3)(chokidar@5.0.0))(chokidar@5.0.0)(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3)':
+ '@angular-eslint/builder@21.3.0(@angular/cli@21.2.2(@types/node@25.4.0)(chokidar@5.0.0))(chokidar@5.0.0)(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3)':
dependencies:
'@angular-devkit/architect': 0.2102.0(chokidar@5.0.0)
'@angular-devkit/core': 21.2.2(chokidar@5.0.0)
- '@angular/cli': 21.2.2(@types/node@25.3.3)(chokidar@5.0.0)
+ '@angular/cli': 21.2.2(@types/node@25.4.0)(chokidar@5.0.0)
eslint: 10.0.3(jiti@2.6.1)
typescript: 5.9.3
transitivePeerDependencies:
@@ -7170,13 +7170,13 @@ snapshots:
ts-api-utils: 2.4.0(typescript@5.9.3)
typescript: 5.9.3
- '@angular-eslint/schematics@21.3.0(@angular-eslint/template-parser@21.3.0(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3))(@angular/cli@21.2.2(@types/node@25.3.3)(chokidar@5.0.0))(@typescript-eslint/types@8.57.0)(@typescript-eslint/utils@8.57.0(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3))(chokidar@5.0.0)(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3)':
+ '@angular-eslint/schematics@21.3.0(@angular-eslint/template-parser@21.3.0(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3))(@angular/cli@21.2.2(@types/node@25.4.0)(chokidar@5.0.0))(@typescript-eslint/types@8.57.0)(@typescript-eslint/utils@8.57.0(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3))(chokidar@5.0.0)(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3)':
dependencies:
'@angular-devkit/core': 21.2.2(chokidar@5.0.0)
'@angular-devkit/schematics': 21.2.2(chokidar@5.0.0)
'@angular-eslint/eslint-plugin': 21.3.0(@typescript-eslint/utils@8.57.0(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3))(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3)
'@angular-eslint/eslint-plugin-template': 21.3.0(@angular-eslint/template-parser@21.3.0(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3))(@typescript-eslint/types@8.57.0)(@typescript-eslint/utils@8.57.0(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3))(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3)
- '@angular/cli': 21.2.2(@types/node@25.3.3)(chokidar@5.0.0)
+ '@angular/cli': 21.2.2(@types/node@25.4.0)(chokidar@5.0.0)
ignore: 7.0.5
semver: 7.7.4
strip-json-comments: 3.1.1
@@ -7202,7 +7202,7 @@ snapshots:
eslint: 10.0.3(jiti@2.6.1)
typescript: 5.9.3
- '@angular/build@21.1.2(@angular/compiler-cli@21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3))(@angular/compiler@21.2.4)(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(@angular/localize@21.2.4(@angular/compiler-cli@21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3))(@angular/compiler@21.2.4))(@angular/platform-browser@21.2.4(@angular/common@21.2.4(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(rxjs@7.8.2))(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1)))(@types/node@25.3.3)(chokidar@5.0.0)(jiti@2.6.1)(less@4.4.2)(postcss@8.5.6)(terser@5.44.1)(tslib@2.8.1)(typescript@5.9.3)(yaml@2.7.0)':
+ '@angular/build@21.1.2(@angular/compiler-cli@21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3))(@angular/compiler@21.2.4)(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(@angular/localize@21.2.4(@angular/compiler-cli@21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3))(@angular/compiler@21.2.4))(@angular/platform-browser@21.2.4(@angular/common@21.2.4(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(rxjs@7.8.2))(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1)))(@types/node@25.4.0)(chokidar@5.0.0)(jiti@2.6.1)(less@4.4.2)(postcss@8.5.6)(terser@5.44.1)(tslib@2.8.1)(typescript@5.9.3)(yaml@2.7.0)':
dependencies:
'@ampproject/remapping': 2.3.0
'@angular-devkit/architect': 0.2101.2(chokidar@5.0.0)
@@ -7211,8 +7211,8 @@ snapshots:
'@babel/core': 7.28.5
'@babel/helper-annotate-as-pure': 7.27.3
'@babel/helper-split-export-declaration': 7.24.7
- '@inquirer/confirm': 5.1.21(@types/node@25.3.3)
- '@vitejs/plugin-basic-ssl': 2.1.0(vite@7.3.0(@types/node@25.3.3)(jiti@2.6.1)(less@4.4.2)(sass@1.97.1)(terser@5.44.1)(yaml@2.7.0))
+ '@inquirer/confirm': 5.1.21(@types/node@25.4.0)
+ '@vitejs/plugin-basic-ssl': 2.1.0(vite@7.3.0(@types/node@25.4.0)(jiti@2.6.1)(less@4.4.2)(sass@1.97.1)(terser@5.44.1)(yaml@2.7.0))
beasties: 0.3.5
browserslist: 4.28.1
esbuild: 0.27.2
@@ -7233,7 +7233,7 @@ snapshots:
tslib: 2.8.1
typescript: 5.9.3
undici: 7.18.2
- vite: 7.3.0(@types/node@25.3.3)(jiti@2.6.1)(less@4.4.2)(sass@1.97.1)(terser@5.44.1)(yaml@2.7.0)
+ vite: 7.3.0(@types/node@25.4.0)(jiti@2.6.1)(less@4.4.2)(sass@1.97.1)(terser@5.44.1)(yaml@2.7.0)
watchpack: 2.5.0
optionalDependencies:
'@angular/core': 21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1)
@@ -7255,7 +7255,7 @@ snapshots:
- tsx
- yaml
- '@angular/build@21.2.2(@angular/compiler-cli@21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3))(@angular/compiler@21.2.4)(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(@angular/localize@21.2.4(@angular/compiler-cli@21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3))(@angular/compiler@21.2.4))(@angular/platform-browser@21.2.4(@angular/common@21.2.4(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(rxjs@7.8.2))(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1)))(@types/node@25.3.3)(chokidar@5.0.0)(jiti@2.6.1)(less@4.4.2)(postcss@8.5.6)(terser@5.44.1)(tslib@2.8.1)(typescript@5.9.3)(yaml@2.7.0)':
+ '@angular/build@21.2.2(@angular/compiler-cli@21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3))(@angular/compiler@21.2.4)(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(@angular/localize@21.2.4(@angular/compiler-cli@21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3))(@angular/compiler@21.2.4))(@angular/platform-browser@21.2.4(@angular/common@21.2.4(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(rxjs@7.8.2))(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1)))(@types/node@25.4.0)(chokidar@5.0.0)(jiti@2.6.1)(less@4.4.2)(postcss@8.5.6)(terser@5.44.1)(tslib@2.8.1)(typescript@5.9.3)(yaml@2.7.0)':
dependencies:
'@ampproject/remapping': 2.3.0
'@angular-devkit/architect': 0.2102.2(chokidar@5.0.0)
@@ -7264,8 +7264,8 @@ snapshots:
'@babel/core': 7.29.0
'@babel/helper-annotate-as-pure': 7.27.3
'@babel/helper-split-export-declaration': 7.24.7
- '@inquirer/confirm': 5.1.21(@types/node@25.3.3)
- '@vitejs/plugin-basic-ssl': 2.1.4(vite@7.3.1(@types/node@25.3.3)(jiti@2.6.1)(less@4.4.2)(sass@1.97.3)(terser@5.44.1)(yaml@2.7.0))
+ '@inquirer/confirm': 5.1.21(@types/node@25.4.0)
+ '@vitejs/plugin-basic-ssl': 2.1.4(vite@7.3.1(@types/node@25.4.0)(jiti@2.6.1)(less@4.4.2)(sass@1.97.3)(terser@5.44.1)(yaml@2.7.0))
beasties: 0.4.1
browserslist: 4.28.1
esbuild: 0.27.3
@@ -7286,7 +7286,7 @@ snapshots:
tslib: 2.8.1
typescript: 5.9.3
undici: 7.22.0
- vite: 7.3.1(@types/node@25.3.3)(jiti@2.6.1)(less@4.4.2)(sass@1.97.3)(terser@5.44.1)(yaml@2.7.0)
+ vite: 7.3.1(@types/node@25.4.0)(jiti@2.6.1)(less@4.4.2)(sass@1.97.3)(terser@5.44.1)(yaml@2.7.0)
watchpack: 2.5.1
optionalDependencies:
'@angular/core': 21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1)
@@ -7317,13 +7317,13 @@ snapshots:
rxjs: 7.8.2
tslib: 2.8.1
- '@angular/cli@21.2.2(@types/node@25.3.3)(chokidar@5.0.0)':
+ '@angular/cli@21.2.2(@types/node@25.4.0)(chokidar@5.0.0)':
dependencies:
'@angular-devkit/architect': 0.2102.2(chokidar@5.0.0)
'@angular-devkit/core': 21.2.2(chokidar@5.0.0)
'@angular-devkit/schematics': 21.2.2(chokidar@5.0.0)
- '@inquirer/prompts': 7.10.1(@types/node@25.3.3)
- '@listr2/prompt-adapter-inquirer': 3.0.5(@inquirer/prompts@7.10.1(@types/node@25.3.3))(@types/node@25.3.3)(listr2@9.0.5)
+ '@inquirer/prompts': 7.10.1(@types/node@25.4.0)
+ '@listr2/prompt-adapter-inquirer': 3.0.5(@inquirer/prompts@7.10.1(@types/node@25.4.0))(@types/node@25.4.0)(listr2@9.0.5)
'@modelcontextprotocol/sdk': 1.26.0(zod@4.3.6)
'@schematics/angular': 21.2.2(chokidar@5.0.0)
'@yarnpkg/lockfile': 1.1.0
@@ -8492,128 +8492,128 @@ snapshots:
'@inquirer/ansi@1.0.2': {}
- '@inquirer/checkbox@4.3.2(@types/node@25.3.3)':
+ '@inquirer/checkbox@4.3.2(@types/node@25.4.0)':
dependencies:
'@inquirer/ansi': 1.0.2
- '@inquirer/core': 10.3.2(@types/node@25.3.3)
+ '@inquirer/core': 10.3.2(@types/node@25.4.0)
'@inquirer/figures': 1.0.15
- '@inquirer/type': 3.0.10(@types/node@25.3.3)
+ '@inquirer/type': 3.0.10(@types/node@25.4.0)
yoctocolors-cjs: 2.1.3
optionalDependencies:
- '@types/node': 25.3.3
+ '@types/node': 25.4.0
- '@inquirer/confirm@5.1.21(@types/node@25.3.3)':
+ '@inquirer/confirm@5.1.21(@types/node@25.4.0)':
dependencies:
- '@inquirer/core': 10.3.2(@types/node@25.3.3)
- '@inquirer/type': 3.0.10(@types/node@25.3.3)
+ '@inquirer/core': 10.3.2(@types/node@25.4.0)
+ '@inquirer/type': 3.0.10(@types/node@25.4.0)
optionalDependencies:
- '@types/node': 25.3.3
+ '@types/node': 25.4.0
- '@inquirer/core@10.3.2(@types/node@25.3.3)':
+ '@inquirer/core@10.3.2(@types/node@25.4.0)':
dependencies:
'@inquirer/ansi': 1.0.2
'@inquirer/figures': 1.0.15
- '@inquirer/type': 3.0.10(@types/node@25.3.3)
+ '@inquirer/type': 3.0.10(@types/node@25.4.0)
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.3.3
+ '@types/node': 25.4.0
- '@inquirer/editor@4.2.23(@types/node@25.3.3)':
+ '@inquirer/editor@4.2.23(@types/node@25.4.0)':
dependencies:
- '@inquirer/core': 10.3.2(@types/node@25.3.3)
- '@inquirer/external-editor': 1.0.3(@types/node@25.3.3)
- '@inquirer/type': 3.0.10(@types/node@25.3.3)
+ '@inquirer/core': 10.3.2(@types/node@25.4.0)
+ '@inquirer/external-editor': 1.0.3(@types/node@25.4.0)
+ '@inquirer/type': 3.0.10(@types/node@25.4.0)
optionalDependencies:
- '@types/node': 25.3.3
+ '@types/node': 25.4.0
- '@inquirer/expand@4.0.23(@types/node@25.3.3)':
+ '@inquirer/expand@4.0.23(@types/node@25.4.0)':
dependencies:
- '@inquirer/core': 10.3.2(@types/node@25.3.3)
- '@inquirer/type': 3.0.10(@types/node@25.3.3)
+ '@inquirer/core': 10.3.2(@types/node@25.4.0)
+ '@inquirer/type': 3.0.10(@types/node@25.4.0)
yoctocolors-cjs: 2.1.3
optionalDependencies:
- '@types/node': 25.3.3
+ '@types/node': 25.4.0
- '@inquirer/external-editor@1.0.3(@types/node@25.3.3)':
+ '@inquirer/external-editor@1.0.3(@types/node@25.4.0)':
dependencies:
chardet: 2.1.1
iconv-lite: 0.7.2
optionalDependencies:
- '@types/node': 25.3.3
+ '@types/node': 25.4.0
'@inquirer/figures@1.0.15': {}
- '@inquirer/input@4.3.1(@types/node@25.3.3)':
+ '@inquirer/input@4.3.1(@types/node@25.4.0)':
dependencies:
- '@inquirer/core': 10.3.2(@types/node@25.3.3)
- '@inquirer/type': 3.0.10(@types/node@25.3.3)
+ '@inquirer/core': 10.3.2(@types/node@25.4.0)
+ '@inquirer/type': 3.0.10(@types/node@25.4.0)
optionalDependencies:
- '@types/node': 25.3.3
+ '@types/node': 25.4.0
- '@inquirer/number@3.0.23(@types/node@25.3.3)':
+ '@inquirer/number@3.0.23(@types/node@25.4.0)':
dependencies:
- '@inquirer/core': 10.3.2(@types/node@25.3.3)
- '@inquirer/type': 3.0.10(@types/node@25.3.3)
+ '@inquirer/core': 10.3.2(@types/node@25.4.0)
+ '@inquirer/type': 3.0.10(@types/node@25.4.0)
optionalDependencies:
- '@types/node': 25.3.3
+ '@types/node': 25.4.0
- '@inquirer/password@4.0.23(@types/node@25.3.3)':
+ '@inquirer/password@4.0.23(@types/node@25.4.0)':
dependencies:
'@inquirer/ansi': 1.0.2
- '@inquirer/core': 10.3.2(@types/node@25.3.3)
- '@inquirer/type': 3.0.10(@types/node@25.3.3)
+ '@inquirer/core': 10.3.2(@types/node@25.4.0)
+ '@inquirer/type': 3.0.10(@types/node@25.4.0)
optionalDependencies:
- '@types/node': 25.3.3
+ '@types/node': 25.4.0
- '@inquirer/prompts@7.10.1(@types/node@25.3.3)':
+ '@inquirer/prompts@7.10.1(@types/node@25.4.0)':
dependencies:
- '@inquirer/checkbox': 4.3.2(@types/node@25.3.3)
- '@inquirer/confirm': 5.1.21(@types/node@25.3.3)
- '@inquirer/editor': 4.2.23(@types/node@25.3.3)
- '@inquirer/expand': 4.0.23(@types/node@25.3.3)
- '@inquirer/input': 4.3.1(@types/node@25.3.3)
- '@inquirer/number': 3.0.23(@types/node@25.3.3)
- '@inquirer/password': 4.0.23(@types/node@25.3.3)
- '@inquirer/rawlist': 4.1.11(@types/node@25.3.3)
- '@inquirer/search': 3.2.2(@types/node@25.3.3)
- '@inquirer/select': 4.4.2(@types/node@25.3.3)
+ '@inquirer/checkbox': 4.3.2(@types/node@25.4.0)
+ '@inquirer/confirm': 5.1.21(@types/node@25.4.0)
+ '@inquirer/editor': 4.2.23(@types/node@25.4.0)
+ '@inquirer/expand': 4.0.23(@types/node@25.4.0)
+ '@inquirer/input': 4.3.1(@types/node@25.4.0)
+ '@inquirer/number': 3.0.23(@types/node@25.4.0)
+ '@inquirer/password': 4.0.23(@types/node@25.4.0)
+ '@inquirer/rawlist': 4.1.11(@types/node@25.4.0)
+ '@inquirer/search': 3.2.2(@types/node@25.4.0)
+ '@inquirer/select': 4.4.2(@types/node@25.4.0)
optionalDependencies:
- '@types/node': 25.3.3
+ '@types/node': 25.4.0
- '@inquirer/rawlist@4.1.11(@types/node@25.3.3)':
+ '@inquirer/rawlist@4.1.11(@types/node@25.4.0)':
dependencies:
- '@inquirer/core': 10.3.2(@types/node@25.3.3)
- '@inquirer/type': 3.0.10(@types/node@25.3.3)
+ '@inquirer/core': 10.3.2(@types/node@25.4.0)
+ '@inquirer/type': 3.0.10(@types/node@25.4.0)
yoctocolors-cjs: 2.1.3
optionalDependencies:
- '@types/node': 25.3.3
+ '@types/node': 25.4.0
- '@inquirer/search@3.2.2(@types/node@25.3.3)':
+ '@inquirer/search@3.2.2(@types/node@25.4.0)':
dependencies:
- '@inquirer/core': 10.3.2(@types/node@25.3.3)
+ '@inquirer/core': 10.3.2(@types/node@25.4.0)
'@inquirer/figures': 1.0.15
- '@inquirer/type': 3.0.10(@types/node@25.3.3)
+ '@inquirer/type': 3.0.10(@types/node@25.4.0)
yoctocolors-cjs: 2.1.3
optionalDependencies:
- '@types/node': 25.3.3
+ '@types/node': 25.4.0
- '@inquirer/select@4.4.2(@types/node@25.3.3)':
+ '@inquirer/select@4.4.2(@types/node@25.4.0)':
dependencies:
'@inquirer/ansi': 1.0.2
- '@inquirer/core': 10.3.2(@types/node@25.3.3)
+ '@inquirer/core': 10.3.2(@types/node@25.4.0)
'@inquirer/figures': 1.0.15
- '@inquirer/type': 3.0.10(@types/node@25.3.3)
+ '@inquirer/type': 3.0.10(@types/node@25.4.0)
yoctocolors-cjs: 2.1.3
optionalDependencies:
- '@types/node': 25.3.3
+ '@types/node': 25.4.0
- '@inquirer/type@3.0.10(@types/node@25.3.3)':
+ '@inquirer/type@3.0.10(@types/node@25.4.0)':
optionalDependencies:
- '@types/node': 25.3.3
+ '@types/node': 25.4.0
'@isaacs/cliui@8.0.2':
dependencies:
@@ -8641,13 +8641,13 @@ snapshots:
'@jest/console@30.2.0':
dependencies:
'@jest/types': 30.2.0
- '@types/node': 25.3.3
+ '@types/node': 25.4.0
chalk: 4.1.2
jest-message-util: 30.2.0
jest-util: 30.2.0
slash: 3.0.0
- '@jest/core@30.2.0(ts-node@10.9.2(@types/node@25.3.3)(typescript@5.9.3))':
+ '@jest/core@30.2.0(ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3))':
dependencies:
'@jest/console': 30.2.0
'@jest/pattern': 30.0.1
@@ -8655,14 +8655,14 @@ snapshots:
'@jest/test-result': 30.2.0
'@jest/transform': 30.2.0
'@jest/types': 30.2.0
- '@types/node': 25.3.3
+ '@types/node': 25.4.0
ansi-escapes: 4.3.2
chalk: 4.1.2
ci-info: 4.3.0
exit-x: 0.2.2
graceful-fs: 4.2.11
jest-changed-files: 30.2.0
- jest-config: 30.2.0(@types/node@25.3.3)(ts-node@10.9.2(@types/node@25.3.3)(typescript@5.9.3))
+ jest-config: 30.2.0(@types/node@25.4.0)(ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3))
jest-haste-map: 30.2.0
jest-message-util: 30.2.0
jest-regex-util: 30.0.1
@@ -8691,7 +8691,7 @@ snapshots:
'@jest/fake-timers': 30.2.0
'@jest/types': 30.2.0
'@types/jsdom': 21.1.7
- '@types/node': 25.3.3
+ '@types/node': 25.4.0
jest-mock: 30.2.0
jest-util: 30.2.0
jsdom: 26.1.0(canvas@3.0.0)
@@ -8702,7 +8702,7 @@ snapshots:
dependencies:
'@jest/fake-timers': 30.2.0
'@jest/types': 30.2.0
- '@types/node': 25.3.3
+ '@types/node': 25.4.0
jest-mock: 30.2.0
'@jest/expect-utils@30.0.5':
@@ -8724,7 +8724,7 @@ snapshots:
dependencies:
'@jest/types': 30.2.0
'@sinonjs/fake-timers': 13.0.5
- '@types/node': 25.3.3
+ '@types/node': 25.4.0
jest-message-util: 30.2.0
jest-mock: 30.2.0
jest-util: 30.2.0
@@ -8744,7 +8744,7 @@ snapshots:
'@jest/pattern@30.0.1':
dependencies:
- '@types/node': 25.3.3
+ '@types/node': 25.4.0
jest-regex-util: 30.0.1
'@jest/reporters@30.2.0':
@@ -8755,7 +8755,7 @@ snapshots:
'@jest/transform': 30.2.0
'@jest/types': 30.2.0
'@jridgewell/trace-mapping': 0.3.31
- '@types/node': 25.3.3
+ '@types/node': 25.4.0
chalk: 4.1.2
collect-v8-coverage: 1.0.2
exit-x: 0.2.2
@@ -8836,7 +8836,7 @@ snapshots:
'@jest/schemas': 30.0.5
'@types/istanbul-lib-coverage': 2.0.6
'@types/istanbul-reports': 3.0.4
- '@types/node': 25.3.3
+ '@types/node': 25.4.0
'@types/yargs': 17.0.33
chalk: 4.1.2
@@ -8846,7 +8846,7 @@ snapshots:
'@jest/schemas': 30.0.5
'@types/istanbul-lib-coverage': 2.0.6
'@types/istanbul-reports': 3.0.4
- '@types/node': 25.3.3
+ '@types/node': 25.4.0
'@types/yargs': 17.0.33
chalk: 4.1.2
@@ -9010,10 +9010,10 @@ snapshots:
'@leichtgewicht/ip-codec@2.0.5': {}
- '@listr2/prompt-adapter-inquirer@3.0.5(@inquirer/prompts@7.10.1(@types/node@25.3.3))(@types/node@25.3.3)(listr2@9.0.5)':
+ '@listr2/prompt-adapter-inquirer@3.0.5(@inquirer/prompts@7.10.1(@types/node@25.4.0))(@types/node@25.4.0)(listr2@9.0.5)':
dependencies:
- '@inquirer/prompts': 7.10.1(@types/node@25.3.3)
- '@inquirer/type': 3.0.10(@types/node@25.3.3)
+ '@inquirer/prompts': 7.10.1(@types/node@25.4.0)
+ '@inquirer/type': 3.0.10(@types/node@25.4.0)
listr2: 9.0.5
transitivePeerDependencies:
- '@types/node'
@@ -9717,20 +9717,20 @@ snapshots:
'@types/body-parser@1.19.6':
dependencies:
'@types/connect': 3.4.38
- '@types/node': 25.3.3
+ '@types/node': 25.4.0
'@types/bonjour@3.5.13':
dependencies:
- '@types/node': 25.3.3
+ '@types/node': 25.4.0
'@types/connect-history-api-fallback@1.5.4':
dependencies:
'@types/express-serve-static-core': 4.19.8
- '@types/node': 25.3.3
+ '@types/node': 25.4.0
'@types/connect@3.4.38':
dependencies:
- '@types/node': 25.3.3
+ '@types/node': 25.4.0
'@types/eslint-scope@3.7.7':
dependencies:
@@ -9748,7 +9748,7 @@ snapshots:
'@types/express-serve-static-core@4.19.8':
dependencies:
- '@types/node': 25.3.3
+ '@types/node': 25.4.0
'@types/qs': 6.14.0
'@types/range-parser': 1.2.7
'@types/send': 1.2.1
@@ -9764,7 +9764,7 @@ snapshots:
'@types/http-proxy@1.17.17':
dependencies:
- '@types/node': 25.3.3
+ '@types/node': 25.4.0
'@types/istanbul-lib-coverage@2.0.6': {}
@@ -9783,7 +9783,7 @@ snapshots:
'@types/jsdom@21.1.7':
dependencies:
- '@types/node': 25.3.3
+ '@types/node': 25.4.0
'@types/tough-cookie': 4.0.5
parse5: 7.3.0
@@ -9793,9 +9793,9 @@ snapshots:
'@types/node-forge@1.3.14':
dependencies:
- '@types/node': 25.3.3
+ '@types/node': 25.4.0
- '@types/node@25.3.3':
+ '@types/node@25.4.0':
dependencies:
undici-types: 7.18.2
@@ -9808,11 +9808,11 @@ snapshots:
'@types/send@0.17.6':
dependencies:
'@types/mime': 1.3.5
- '@types/node': 25.3.3
+ '@types/node': 25.4.0
'@types/send@1.2.1':
dependencies:
- '@types/node': 25.3.3
+ '@types/node': 25.4.0
'@types/serve-index@1.9.4':
dependencies:
@@ -9821,12 +9821,12 @@ snapshots:
'@types/serve-static@1.15.10':
dependencies:
'@types/http-errors': 2.0.5
- '@types/node': 25.3.3
+ '@types/node': 25.4.0
'@types/send': 0.17.6
'@types/sockjs@0.3.36':
dependencies:
- '@types/node': 25.3.3
+ '@types/node': 25.4.0
'@types/stack-utils@2.0.3': {}
@@ -9834,7 +9834,7 @@ snapshots:
'@types/ws@8.18.1':
dependencies:
- '@types/node': 25.3.3
+ '@types/node': 25.4.0
'@types/yargs-parser@21.0.3': {}
@@ -9994,13 +9994,13 @@ snapshots:
'@unrs/resolver-binding-win32-x64-msvc@1.11.1':
optional: true
- '@vitejs/plugin-basic-ssl@2.1.0(vite@7.3.0(@types/node@25.3.3)(jiti@2.6.1)(less@4.4.2)(sass@1.97.1)(terser@5.44.1)(yaml@2.7.0))':
+ '@vitejs/plugin-basic-ssl@2.1.0(vite@7.3.0(@types/node@25.4.0)(jiti@2.6.1)(less@4.4.2)(sass@1.97.1)(terser@5.44.1)(yaml@2.7.0))':
dependencies:
- vite: 7.3.0(@types/node@25.3.3)(jiti@2.6.1)(less@4.4.2)(sass@1.97.1)(terser@5.44.1)(yaml@2.7.0)
+ vite: 7.3.0(@types/node@25.4.0)(jiti@2.6.1)(less@4.4.2)(sass@1.97.1)(terser@5.44.1)(yaml@2.7.0)
- '@vitejs/plugin-basic-ssl@2.1.4(vite@7.3.1(@types/node@25.3.3)(jiti@2.6.1)(less@4.4.2)(sass@1.97.3)(terser@5.44.1)(yaml@2.7.0))':
+ '@vitejs/plugin-basic-ssl@2.1.4(vite@7.3.1(@types/node@25.4.0)(jiti@2.6.1)(less@4.4.2)(sass@1.97.3)(terser@5.44.1)(yaml@2.7.0))':
dependencies:
- vite: 7.3.1(@types/node@25.3.3)(jiti@2.6.1)(less@4.4.2)(sass@1.97.3)(terser@5.44.1)(yaml@2.7.0)
+ vite: 7.3.1(@types/node@25.4.0)(jiti@2.6.1)(less@4.4.2)(sass@1.97.3)(terser@5.44.1)(yaml@2.7.0)
'@webassemblyjs/ast@1.14.1':
dependencies:
@@ -11581,7 +11581,7 @@ snapshots:
'@jest/expect': 30.2.0
'@jest/test-result': 30.2.0
'@jest/types': 30.2.0
- '@types/node': 25.3.3
+ '@types/node': 25.4.0
chalk: 4.1.2
co: 4.6.0
dedent: 1.7.0
@@ -11601,15 +11601,15 @@ snapshots:
- babel-plugin-macros
- supports-color
- jest-cli@30.2.0(@types/node@25.3.3)(ts-node@10.9.2(@types/node@25.3.3)(typescript@5.9.3)):
+ jest-cli@30.2.0(@types/node@25.4.0)(ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3)):
dependencies:
- '@jest/core': 30.2.0(ts-node@10.9.2(@types/node@25.3.3)(typescript@5.9.3))
+ '@jest/core': 30.2.0(ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3))
'@jest/test-result': 30.2.0
'@jest/types': 30.2.0
chalk: 4.1.2
exit-x: 0.2.2
import-local: 3.2.0
- jest-config: 30.2.0(@types/node@25.3.3)(ts-node@10.9.2(@types/node@25.3.3)(typescript@5.9.3))
+ jest-config: 30.2.0(@types/node@25.4.0)(ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3))
jest-util: 30.2.0
jest-validate: 30.2.0
yargs: 17.7.2
@@ -11620,7 +11620,7 @@ snapshots:
- supports-color
- ts-node
- jest-config@30.2.0(@types/node@25.3.3)(ts-node@10.9.2(@types/node@25.3.3)(typescript@5.9.3)):
+ jest-config@30.2.0(@types/node@25.4.0)(ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3)):
dependencies:
'@babel/core': 7.29.0
'@jest/get-type': 30.1.0
@@ -11647,8 +11647,8 @@ snapshots:
slash: 3.0.0
strip-json-comments: 3.1.1
optionalDependencies:
- '@types/node': 25.3.3
- ts-node: 10.9.2(@types/node@25.3.3)(typescript@5.9.3)
+ '@types/node': 25.4.0
+ ts-node: 10.9.2(@types/node@25.4.0)(typescript@5.9.3)
transitivePeerDependencies:
- babel-plugin-macros
- supports-color
@@ -11691,7 +11691,7 @@ snapshots:
'@jest/environment': 30.2.0
'@jest/environment-jsdom-abstract': 30.2.0(canvas@3.0.0)(jsdom@26.1.0(canvas@3.0.0))
'@types/jsdom': 21.1.7
- '@types/node': 25.3.3
+ '@types/node': 25.4.0
jsdom: 26.1.0(canvas@3.0.0)
optionalDependencies:
canvas: 3.0.0
@@ -11705,7 +11705,7 @@ snapshots:
'@jest/environment': 30.2.0
'@jest/fake-timers': 30.2.0
'@jest/types': 30.2.0
- '@types/node': 25.3.3
+ '@types/node': 25.4.0
jest-mock: 30.2.0
jest-util: 30.2.0
jest-validate: 30.2.0
@@ -11715,7 +11715,7 @@ snapshots:
jest-haste-map@30.2.0:
dependencies:
'@jest/types': 30.2.0
- '@types/node': 25.3.3
+ '@types/node': 25.4.0
anymatch: 3.1.3
fb-watchman: 2.0.2
graceful-fs: 4.2.11
@@ -11780,20 +11780,20 @@ snapshots:
jest-mock@30.0.5:
dependencies:
'@jest/types': 30.0.5
- '@types/node': 25.3.3
+ '@types/node': 25.4.0
jest-util: 30.0.5
jest-mock@30.2.0:
dependencies:
'@jest/types': 30.2.0
- '@types/node': 25.3.3
+ '@types/node': 25.4.0
jest-util: 30.2.0
jest-pnp-resolver@1.2.3(jest-resolve@30.2.0):
optionalDependencies:
jest-resolve: 30.2.0
- jest-preset-angular@16.1.1(d878552686fd57cfb81e628ed4a9814b):
+ jest-preset-angular@16.1.1(cad993f8bb8f711cb7652a0c571fd9cf):
dependencies:
'@angular/compiler-cli': 21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3)
'@angular/core': 21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1)
@@ -11802,11 +11802,11 @@ snapshots:
'@jest/environment-jsdom-abstract': 30.2.0(canvas@3.0.0)(jsdom@26.1.0(canvas@3.0.0))
bs-logger: 0.2.6
esbuild-wasm: 0.27.3
- jest: 30.2.0(@types/node@25.3.3)(ts-node@10.9.2(@types/node@25.3.3)(typescript@5.9.3))
+ jest: 30.2.0(@types/node@25.4.0)(ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3))
jest-util: 30.2.0
jsdom: 26.1.0(canvas@3.0.0)
pretty-format: 30.2.0
- ts-jest: 29.4.6(@babel/core@7.29.0)(@jest/transform@30.2.0)(@jest/types@30.2.0)(babel-jest@30.2.0(@babel/core@7.29.0))(esbuild@0.27.3)(jest-util@30.2.0)(jest@30.2.0(@types/node@25.3.3)(ts-node@10.9.2(@types/node@25.3.3)(typescript@5.9.3)))(typescript@5.9.3)
+ ts-jest: 29.4.6(@babel/core@7.29.0)(@jest/transform@30.2.0)(@jest/types@30.2.0)(babel-jest@30.2.0(@babel/core@7.29.0))(esbuild@0.27.3)(jest-util@30.2.0)(jest@30.2.0(@types/node@25.4.0)(ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3)))(typescript@5.9.3)
typescript: 5.9.3
optionalDependencies:
esbuild: 0.27.3
@@ -11844,7 +11844,7 @@ snapshots:
'@jest/test-result': 30.2.0
'@jest/transform': 30.2.0
'@jest/types': 30.2.0
- '@types/node': 25.3.3
+ '@types/node': 25.4.0
chalk: 4.1.2
emittery: 0.13.1
exit-x: 0.2.2
@@ -11873,7 +11873,7 @@ snapshots:
'@jest/test-result': 30.2.0
'@jest/transform': 30.2.0
'@jest/types': 30.2.0
- '@types/node': 25.3.3
+ '@types/node': 25.4.0
chalk: 4.1.2
cjs-module-lexer: 2.1.0
collect-v8-coverage: 1.0.2
@@ -11920,7 +11920,7 @@ snapshots:
jest-util@30.0.5:
dependencies:
'@jest/types': 30.0.5
- '@types/node': 25.3.3
+ '@types/node': 25.4.0
chalk: 4.1.2
ci-info: 4.4.0
graceful-fs: 4.2.11
@@ -11929,7 +11929,7 @@ snapshots:
jest-util@30.2.0:
dependencies:
'@jest/types': 30.2.0
- '@types/node': 25.3.3
+ '@types/node': 25.4.0
chalk: 4.1.2
ci-info: 4.4.0
graceful-fs: 4.2.11
@@ -11948,7 +11948,7 @@ snapshots:
dependencies:
'@jest/test-result': 30.2.0
'@jest/types': 30.2.0
- '@types/node': 25.3.3
+ '@types/node': 25.4.0
ansi-escapes: 4.3.2
chalk: 4.1.2
emittery: 0.13.1
@@ -11962,24 +11962,24 @@ snapshots:
jest-worker@27.5.1:
dependencies:
- '@types/node': 25.3.3
+ '@types/node': 25.4.0
merge-stream: 2.0.0
supports-color: 8.1.1
jest-worker@30.2.0:
dependencies:
- '@types/node': 25.3.3
+ '@types/node': 25.4.0
'@ungap/structured-clone': 1.3.0
jest-util: 30.2.0
merge-stream: 2.0.0
supports-color: 8.1.1
- jest@30.2.0(@types/node@25.3.3)(ts-node@10.9.2(@types/node@25.3.3)(typescript@5.9.3)):
+ jest@30.2.0(@types/node@25.4.0)(ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3)):
dependencies:
- '@jest/core': 30.2.0(ts-node@10.9.2(@types/node@25.3.3)(typescript@5.9.3))
+ '@jest/core': 30.2.0(ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3))
'@jest/types': 30.2.0
import-local: 3.2.0
- jest-cli: 30.2.0(@types/node@25.3.3)(ts-node@10.9.2(@types/node@25.3.3)(typescript@5.9.3))
+ jest-cli: 30.2.0(@types/node@25.4.0)(ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3))
transitivePeerDependencies:
- '@types/node'
- babel-plugin-macros
@@ -13594,12 +13594,12 @@ snapshots:
dependencies:
typescript: 5.9.3
- ts-jest@29.4.6(@babel/core@7.29.0)(@jest/transform@30.2.0)(@jest/types@30.2.0)(babel-jest@30.2.0(@babel/core@7.29.0))(esbuild@0.27.3)(jest-util@30.2.0)(jest@30.2.0(@types/node@25.3.3)(ts-node@10.9.2(@types/node@25.3.3)(typescript@5.9.3)))(typescript@5.9.3):
+ ts-jest@29.4.6(@babel/core@7.29.0)(@jest/transform@30.2.0)(@jest/types@30.2.0)(babel-jest@30.2.0(@babel/core@7.29.0))(esbuild@0.27.3)(jest-util@30.2.0)(jest@30.2.0(@types/node@25.4.0)(ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3)))(typescript@5.9.3):
dependencies:
bs-logger: 0.2.6
fast-json-stable-stringify: 2.1.0
handlebars: 4.7.8
- jest: 30.2.0(@types/node@25.3.3)(ts-node@10.9.2(@types/node@25.3.3)(typescript@5.9.3))
+ jest: 30.2.0(@types/node@25.4.0)(ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3))
json5: 2.2.3
lodash.memoize: 4.1.2
make-error: 1.3.6
@@ -13615,14 +13615,14 @@ snapshots:
esbuild: 0.27.3
jest-util: 30.2.0
- ts-node@10.9.2(@types/node@25.3.3)(typescript@5.9.3):
+ ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3):
dependencies:
'@cspotcode/source-map-support': 0.8.1
'@tsconfig/node10': 1.0.9
'@tsconfig/node12': 1.0.11
'@tsconfig/node14': 1.0.3
'@tsconfig/node16': 1.0.4
- '@types/node': 25.3.3
+ '@types/node': 25.4.0
acorn: 8.14.0
acorn-walk: 8.3.1
arg: 4.1.3
@@ -13780,7 +13780,7 @@ snapshots:
vary@1.1.2: {}
- vite@7.3.0(@types/node@25.3.3)(jiti@2.6.1)(less@4.4.2)(sass@1.97.1)(terser@5.44.1)(yaml@2.7.0):
+ vite@7.3.0(@types/node@25.4.0)(jiti@2.6.1)(less@4.4.2)(sass@1.97.1)(terser@5.44.1)(yaml@2.7.0):
dependencies:
esbuild: 0.27.3
fdir: 6.5.0(picomatch@4.0.3)
@@ -13789,7 +13789,7 @@ snapshots:
rollup: 4.59.0
tinyglobby: 0.2.15
optionalDependencies:
- '@types/node': 25.3.3
+ '@types/node': 25.4.0
fsevents: 2.3.3
jiti: 2.6.1
less: 4.4.2
@@ -13797,7 +13797,7 @@ snapshots:
terser: 5.44.1
yaml: 2.7.0
- vite@7.3.1(@types/node@25.3.3)(jiti@2.6.1)(less@4.4.2)(sass@1.97.3)(terser@5.44.1)(yaml@2.7.0):
+ vite@7.3.1(@types/node@25.4.0)(jiti@2.6.1)(less@4.4.2)(sass@1.97.3)(terser@5.44.1)(yaml@2.7.0):
dependencies:
esbuild: 0.27.3
fdir: 6.5.0(picomatch@4.0.3)
@@ -13806,7 +13806,7 @@ snapshots:
rollup: 4.59.0
tinyglobby: 0.2.15
optionalDependencies:
- '@types/node': 25.3.3
+ '@types/node': 25.4.0
fsevents: 2.3.3
jiti: 2.6.1
less: 4.4.2
From ab4656692d83c1434e73367ec8467e16e2632e41 Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Wed, 18 Mar 2026 01:07:48 +0000
Subject: [PATCH 28/38] Chore(deps): Bump @ng-select/ng-select (#12373)
Bumps the frontend-angular-dependencies group in /src-ui with 1 update: [@ng-select/ng-select](https://github.com/ng-select/ng-select).
Updates `@ng-select/ng-select` from 21.4.1 to 21.5.2
- [Release notes](https://github.com/ng-select/ng-select/releases)
- [Changelog](https://github.com/ng-select/ng-select/blob/master/CHANGELOG.md)
- [Commits](https://github.com/ng-select/ng-select/compare/v21.4.1...v21.5.2)
---
updated-dependencies:
- dependency-name: "@ng-select/ng-select"
dependency-version: 21.5.2
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: frontend-angular-dependencies
...
Signed-off-by: dependabot[bot]
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
---
src-ui/package.json | 2 +-
src-ui/pnpm-lock.yaml | 10 +++++-----
2 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/src-ui/package.json b/src-ui/package.json
index 06268eb7e..c26b53bc5 100644
--- a/src-ui/package.json
+++ b/src-ui/package.json
@@ -21,7 +21,7 @@
"@angular/platform-browser-dynamic": "~21.2.4",
"@angular/router": "~21.2.4",
"@ng-bootstrap/ng-bootstrap": "^20.0.0",
- "@ng-select/ng-select": "^21.4.1",
+ "@ng-select/ng-select": "^21.5.2",
"@ngneat/dirty-check-forms": "^3.0.3",
"@popperjs/core": "^2.11.8",
"bootstrap": "^5.3.8",
diff --git a/src-ui/pnpm-lock.yaml b/src-ui/pnpm-lock.yaml
index c24d4ee0b..7b10e3065 100644
--- a/src-ui/pnpm-lock.yaml
+++ b/src-ui/pnpm-lock.yaml
@@ -39,8 +39,8 @@ importers:
specifier: ^20.0.0
version: 20.0.0(@angular/common@21.2.4(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(rxjs@7.8.2))(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(@angular/forms@21.2.4(@angular/common@21.2.4(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(rxjs@7.8.2))(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(@angular/platform-browser@21.2.4(@angular/common@21.2.4(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(rxjs@7.8.2))(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1)))(rxjs@7.8.2))(@angular/localize@21.2.4(@angular/compiler-cli@21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3))(@angular/compiler@21.2.4))(@popperjs/core@2.11.8)(rxjs@7.8.2)
'@ng-select/ng-select':
- specifier: ^21.4.1
- version: 21.4.1(@angular/common@21.2.4(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(rxjs@7.8.2))(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(@angular/forms@21.2.4(@angular/common@21.2.4(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(rxjs@7.8.2))(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(@angular/platform-browser@21.2.4(@angular/common@21.2.4(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(rxjs@7.8.2))(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1)))(rxjs@7.8.2))
+ specifier: ^21.5.2
+ version: 21.5.2(@angular/common@21.2.4(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(rxjs@7.8.2))(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(@angular/forms@21.2.4(@angular/common@21.2.4(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(rxjs@7.8.2))(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(@angular/platform-browser@21.2.4(@angular/common@21.2.4(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(rxjs@7.8.2))(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1)))(rxjs@7.8.2))
'@ngneat/dirty-check-forms':
specifier: ^3.0.3
version: 3.0.3(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(@angular/forms@21.2.4(@angular/common@21.2.4(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(rxjs@7.8.2))(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(@angular/platform-browser@21.2.4(@angular/common@21.2.4(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(rxjs@7.8.2))(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1)))(rxjs@7.8.2))(@angular/router@21.2.4(@angular/common@21.2.4(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(rxjs@7.8.2))(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(@angular/platform-browser@21.2.4(@angular/common@21.2.4(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(rxjs@7.8.2))(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1)))(rxjs@7.8.2))(lodash-es@4.17.21)(rxjs@7.8.2)
@@ -2362,8 +2362,8 @@ packages:
'@popperjs/core': ^2.11.8
rxjs: ^6.5.3 || ^7.4.0
- '@ng-select/ng-select@21.4.1':
- resolution: {integrity: sha512-CwAnzyY12WnjzkPe5p+Av7jU79ghHlK+dPSzeIjuI5eIA7XuOMBRL8KfV+bQ0IuoQfc3XDhsGwwm18vWvf83IA==}
+ '@ng-select/ng-select@21.5.2':
+ resolution: {integrity: sha512-QFfZ00Z/UfZikK3BCyl4rWpZGd7W5YE2ScTbRcC2jH6QN8E1pNgxH1bBS05p2YEYZIA6RZ5/HcJguj3ipPy5Jw==}
engines: {node: ^20.19.0 || ^22.12.0 || ^24.0.0}
peerDependencies:
'@angular/common': ^21.0.0
@@ -9244,7 +9244,7 @@ snapshots:
rxjs: 7.8.2
tslib: 2.8.1
- '@ng-select/ng-select@21.4.1(@angular/common@21.2.4(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(rxjs@7.8.2))(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(@angular/forms@21.2.4(@angular/common@21.2.4(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(rxjs@7.8.2))(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(@angular/platform-browser@21.2.4(@angular/common@21.2.4(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(rxjs@7.8.2))(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1)))(rxjs@7.8.2))':
+ '@ng-select/ng-select@21.5.2(@angular/common@21.2.4(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(rxjs@7.8.2))(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(@angular/forms@21.2.4(@angular/common@21.2.4(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(rxjs@7.8.2))(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(@angular/platform-browser@21.2.4(@angular/common@21.2.4(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(rxjs@7.8.2))(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1)))(rxjs@7.8.2))':
dependencies:
'@angular/common': 21.2.4(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(rxjs@7.8.2)
'@angular/core': 21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1)
From 0e2c191524118f4daaa77a35eacc26a50c0cc152 Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Wed, 18 Mar 2026 01:15:52 +0000
Subject: [PATCH 29/38] Chore(deps-dev): Bump the frontend-jest-dependencies
group (#12374)
Bumps the frontend-jest-dependencies group in /src-ui with 2 updates: [jest](https://github.com/jestjs/jest/tree/HEAD/packages/jest) and [jest-environment-jsdom](https://github.com/jestjs/jest/tree/HEAD/packages/jest-environment-jsdom).
Updates `jest` from 30.2.0 to 30.3.0
- [Release notes](https://github.com/jestjs/jest/releases)
- [Changelog](https://github.com/jestjs/jest/blob/main/CHANGELOG.md)
- [Commits](https://github.com/jestjs/jest/commits/v30.3.0/packages/jest)
Updates `jest-environment-jsdom` from 30.2.0 to 30.3.0
- [Release notes](https://github.com/jestjs/jest/releases)
- [Changelog](https://github.com/jestjs/jest/blob/main/CHANGELOG.md)
- [Commits](https://github.com/jestjs/jest/commits/v30.3.0/packages/jest-environment-jsdom)
---
updated-dependencies:
- dependency-name: jest
dependency-version: 30.3.0
dependency-type: direct:development
update-type: version-update:semver-minor
dependency-group: frontend-jest-dependencies
- dependency-name: jest-environment-jsdom
dependency-version: 30.3.0
dependency-type: direct:development
update-type: version-update:semver-minor
dependency-group: frontend-jest-dependencies
...
Signed-off-by: dependabot[bot]
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
---
src-ui/package.json | 4 +-
src-ui/pnpm-lock.yaml | 835 ++++++++++++++++++++++++------------------
2 files changed, 484 insertions(+), 355 deletions(-)
diff --git a/src-ui/package.json b/src-ui/package.json
index c26b53bc5..95602b934 100644
--- a/src-ui/package.json
+++ b/src-ui/package.json
@@ -60,8 +60,8 @@
"@typescript-eslint/parser": "^8.57.0",
"@typescript-eslint/utils": "^8.57.0",
"eslint": "^10.0.3",
- "jest": "30.2.0",
- "jest-environment-jsdom": "^30.2.0",
+ "jest": "30.3.0",
+ "jest-environment-jsdom": "^30.3.0",
"jest-junit": "^16.0.0",
"jest-preset-angular": "^16.1.1",
"jest-websocket-mock": "^2.5.0",
diff --git a/src-ui/pnpm-lock.yaml b/src-ui/pnpm-lock.yaml
index 7b10e3065..4cf6e9b36 100644
--- a/src-ui/pnpm-lock.yaml
+++ b/src-ui/pnpm-lock.yaml
@@ -92,10 +92,10 @@ importers:
devDependencies:
'@angular-builders/custom-webpack':
specifier: ^21.0.3
- version: 21.0.3(@angular/compiler-cli@21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3))(@angular/compiler@21.2.4)(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(@angular/localize@21.2.4(@angular/compiler-cli@21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3))(@angular/compiler@21.2.4))(@angular/platform-browser@21.2.4(@angular/common@21.2.4(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(rxjs@7.8.2))(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1)))(@types/node@25.4.0)(chokidar@5.0.0)(jest-environment-jsdom@30.2.0(canvas@3.0.0))(jest@30.2.0(@types/node@25.4.0)(ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3)))(jiti@2.6.1)(less@4.4.2)(postcss@8.5.6)(terser@5.44.1)(tslib@2.8.1)(typescript@5.9.3)(yaml@2.7.0)
+ version: 21.0.3(@angular/compiler-cli@21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3))(@angular/compiler@21.2.4)(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(@angular/localize@21.2.4(@angular/compiler-cli@21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3))(@angular/compiler@21.2.4))(@angular/platform-browser@21.2.4(@angular/common@21.2.4(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(rxjs@7.8.2))(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1)))(@types/node@25.4.0)(chokidar@5.0.0)(jest-environment-jsdom@30.3.0(canvas@3.0.0))(jest@30.3.0(@types/node@25.4.0)(ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3)))(jiti@2.6.1)(less@4.4.2)(postcss@8.5.6)(terser@5.44.1)(tslib@2.8.1)(typescript@5.9.3)(yaml@2.7.0)
'@angular-builders/jest':
specifier: ^21.0.3
- version: 21.0.3(5a81d46f899dc9147bafdd7de7f725f5)
+ version: 21.0.3(e6176eac41f0cffc5e05b8a4d945a538)
'@angular-devkit/core':
specifier: ^21.2.2
version: 21.2.2(chokidar@5.0.0)
@@ -151,17 +151,17 @@ importers:
specifier: ^10.0.3
version: 10.0.3(jiti@2.6.1)
jest:
- specifier: 30.2.0
- version: 30.2.0(@types/node@25.4.0)(ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3))
+ specifier: 30.3.0
+ version: 30.3.0(@types/node@25.4.0)(ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3))
jest-environment-jsdom:
- specifier: ^30.2.0
- version: 30.2.0(canvas@3.0.0)
+ specifier: ^30.3.0
+ version: 30.3.0(canvas@3.0.0)
jest-junit:
specifier: ^16.0.0
version: 16.0.0
jest-preset-angular:
specifier: ^16.1.1
- version: 16.1.1(cad993f8bb8f711cb7652a0c571fd9cf)
+ version: 16.1.1(135ea37d5312db3eeddee262c6eb1d13)
jest-websocket-mock:
specifier: ^2.5.0
version: 2.5.0
@@ -810,8 +810,8 @@ packages:
peerDependencies:
'@babel/core': ^7.0.0-0
- '@babel/plugin-syntax-jsx@7.27.1':
- resolution: {integrity: sha512-y8YTNIeKoyhGd9O0Jiyzyyqk8gdjnumGTQPsz0xOZOQ2RmkVJeZ1vmmfIvFEKqucBG6axJGBZDE/7iI5suUI/w==}
+ '@babel/plugin-syntax-jsx@7.28.6':
+ resolution: {integrity: sha512-wgEmr06G6sIpqr8YDwA2dSRTE3bJ+V0IfpzfSY3Lfgd7YWOaAdlykvJi13ZKBt8cZHfgH1IXN+CL656W3uUa4w==}
engines: {node: '>=6.9.0'}
peerDependencies:
'@babel/core': ^7.0.0-0
@@ -858,8 +858,8 @@ packages:
peerDependencies:
'@babel/core': ^7.0.0-0
- '@babel/plugin-syntax-typescript@7.27.1':
- resolution: {integrity: sha512-xfYCBMxveHrRMnAWl1ZlPXOZjzkN82THFvLhQhFXFt81Z5HnN+EtUkZhv/zcKpmT3fzmWZB0ywiBrbC3vogbwQ==}
+ '@babel/plugin-syntax-typescript@7.28.6':
+ resolution: {integrity: sha512-+nDNmQye7nlnuuHDboPbGm00Vqg3oO8niRRL27/4LYHUsHYh0zJ1xWOz0uRwNFmM1Avzk8wZbc6rdiYhomzv/A==}
engines: {node: '>=6.9.0'}
peerDependencies:
'@babel/core': ^7.0.0-0
@@ -1265,12 +1265,21 @@ packages:
'@emnapi/core@1.8.1':
resolution: {integrity: sha512-AvT9QFpxK0Zd8J0jopedNm+w/2fIzvtPKPjqyw9jwvBaReTTqPBk9Hixaz7KbjimP+QNz605/XnjFcDAL2pqBg==}
+ '@emnapi/core@1.9.0':
+ resolution: {integrity: sha512-0DQ98G9ZQZOxfUcQn1waV2yS8aWdZ6kJMbYCJB3oUBecjWYO1fqJ+a1DRfPF3O5JEkwqwP1A9QEN/9mYm2Yd0w==}
+
'@emnapi/runtime@1.8.1':
resolution: {integrity: sha512-mehfKSMWjjNol8659Z8KxEMrdSJDDot5SXMq00dM8BN4o+CLNXQ0xH2V7EchNHV4RmbZLmmPdEaXZc5H2FXmDg==}
+ '@emnapi/runtime@1.9.0':
+ resolution: {integrity: sha512-QN75eB0IH2ywSpRpNddCRfQIhmJYBCJ1x5Lb3IscKAL8bMnVAKnRg8dCoXbHzVLLH7P38N2Z3mtulB7W0J0FKw==}
+
'@emnapi/wasi-threads@1.1.0':
resolution: {integrity: sha512-WI0DdZ8xFSbgMjR1sFsKABJ/C5OnRrjT06JXbZKexJGrDuPTzZdDYfFlsgcCXCyf+suG5QU2e/y1Wo2V/OapLQ==}
+ '@emnapi/wasi-threads@1.2.0':
+ resolution: {integrity: sha512-N10dEJNSsUx41Z6pZsXU8FjPjpBEplgH24sfkmITrBED1/U2Esum9F3lfLrMjKHHjmi557zQn7kR9R+XWXu5Rg==}
+
'@esbuild/aix-ppc64@0.27.2':
resolution: {integrity: sha512-GZMB+a0mOMZs4MpDbj8RJp4cw+w1WV5NYD6xzgvzUJ5Ek2jerwfO2eADyI6ExDSUED+1X8aMbegahsJi+8mgpw==}
engines: {node: '>=18'}
@@ -1796,12 +1805,12 @@ packages:
resolution: {integrity: sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==}
engines: {node: '>=8'}
- '@jest/console@30.2.0':
- resolution: {integrity: sha512-+O1ifRjkvYIkBqASKWgLxrpEhQAAE7hY77ALLUufSk5717KfOShg6IbqLmdsLMPdUiFvA2kTs0R7YZy+l0IzZQ==}
+ '@jest/console@30.3.0':
+ resolution: {integrity: sha512-PAwCvFJ4696XP2qZj+LAn1BWjZaJ6RjG6c7/lkMaUJnkyMS34ucuIsfqYvfskVNvUI27R/u4P1HMYFnlVXG/Ww==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
- '@jest/core@30.2.0':
- resolution: {integrity: sha512-03W6IhuhjqTlpzh/ojut/pDB2LPRygyWX8ExpgHtQA8H/3K7+1vKmcINx5UzeOX1se6YEsBsOHQ1CRzf3fOwTQ==}
+ '@jest/core@30.3.0':
+ resolution: {integrity: sha512-U5mVPsBxLSO6xYbf+tgkymLx+iAhvZX43/xI1+ej2ZOPnPdkdO1CzDmFKh2mZBn2s4XZixszHeQnzp1gm/DIxw==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
peerDependencies:
node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0
@@ -1813,6 +1822,10 @@ packages:
resolution: {integrity: sha512-n5H8QLDJ47QqbCNn5SuFjCRDrOLEZ0h8vAHCK5RL9Ls7Xa8AQLa/YxAc9UjFqoEDM48muwtBGjtMY5cr0PLDCw==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
+ '@jest/diff-sequences@30.3.0':
+ resolution: {integrity: sha512-cG51MVnLq1ecVUaQ3fr6YuuAOitHK1S4WUJHnsPFE/quQr33ADUx1FfrTCpMCRxvy0Yr9BThKpDjSlcTi91tMA==}
+ engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
+
'@jest/environment-jsdom-abstract@30.2.0':
resolution: {integrity: sha512-kazxw2L9IPuZpQ0mEt9lu9Z98SqR74xcagANmMBU16X0lS23yPc0+S6hGLUz8kVRlomZEs/5S/Zlpqwf5yu6OQ==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
@@ -1823,26 +1836,44 @@ packages:
canvas:
optional: true
+ '@jest/environment-jsdom-abstract@30.3.0':
+ resolution: {integrity: sha512-0hNFs5N6We3DMCwobzI0ydhkY10sT1tZSC0AAiy+0g2Dt/qEWgrcV5BrMxPczhe41cxW4qm6X+jqZaUdpZIajA==}
+ engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
+ peerDependencies:
+ canvas: ^3.0.0
+ jsdom: '*'
+ peerDependenciesMeta:
+ canvas:
+ optional: true
+
'@jest/environment@30.2.0':
resolution: {integrity: sha512-/QPTL7OBJQ5ac09UDRa3EQes4gt1FTEG/8jZ/4v5IVzx+Cv7dLxlVIvfvSVRiiX2drWyXeBjkMSR8hvOWSog5g==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
+ '@jest/environment@30.3.0':
+ resolution: {integrity: sha512-SlLSF4Be735yQXyh2+mctBOzNDx5s5uLv88/j8Qn1wH679PDcwy67+YdADn8NJnGjzlXtN62asGH/T4vWOkfaw==}
+ engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
+
'@jest/expect-utils@30.0.5':
resolution: {integrity: sha512-F3lmTT7CXWYywoVUGTCmom0vXq3HTTkaZyTAzIy+bXSBizB7o5qzlC9VCtq0arOa8GqmNsbg/cE9C6HLn7Szew==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
- '@jest/expect-utils@30.2.0':
- resolution: {integrity: sha512-1JnRfhqpD8HGpOmQp180Fo9Zt69zNtC+9lR+kT7NVL05tNXIi+QC8Csz7lfidMoVLPD3FnOtcmp0CEFnxExGEA==}
+ '@jest/expect-utils@30.3.0':
+ resolution: {integrity: sha512-j0+W5iQQ8hBh7tHZkTQv3q2Fh/M7Je72cIsYqC4OaktgtO7v1So9UTjp6uPBHIaB6beoF/RRsCgMJKvti0wADA==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
- '@jest/expect@30.2.0':
- resolution: {integrity: sha512-V9yxQK5erfzx99Sf+7LbhBwNWEZ9eZay8qQ9+JSC0TrMR1pMDHLMY+BnVPacWU6Jamrh252/IKo4F1Xn/zfiqA==}
+ '@jest/expect@30.3.0':
+ resolution: {integrity: sha512-76Nlh4xJxk2D/9URCn3wFi98d2hb19uWE1idLsTt2ywhvdOldbw3S570hBgn25P4ICUZ/cBjybrBex2g17IDbg==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
'@jest/fake-timers@30.2.0':
resolution: {integrity: sha512-HI3tRLjRxAbBy0VO8dqqm7Hb2mIa8d5bg/NJkyQcOk7V118ObQML8RC5luTF/Zsg4474a+gDvhce7eTnP4GhYw==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
+ '@jest/fake-timers@30.3.0':
+ resolution: {integrity: sha512-WUQDs8SOP9URStX1DzhD425CqbN/HxUYCTwVrT8sTVBfMvFqYt/s61EK5T05qnHu0po6RitXIvP9otZxYDzTGQ==}
+ engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
+
'@jest/get-type@30.0.1':
resolution: {integrity: sha512-AyYdemXCptSRFirI5EPazNxyPwAL0jXt3zceFjaj8NFiKP9pOi0bfXonf6qkf82z2t3QWPeLCWWw4stPBzctLw==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
@@ -1851,16 +1882,16 @@ packages:
resolution: {integrity: sha512-eMbZE2hUnx1WV0pmURZY9XoXPkUYjpc55mb0CrhtdWLtzMQPFvu/rZkTLZFTsdaVQa+Tr4eWAteqcUzoawq/uA==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
- '@jest/globals@30.2.0':
- resolution: {integrity: sha512-b63wmnKPaK+6ZZfpYhz9K61oybvbI1aMcIs80++JI1O1rR1vaxHUCNqo3ITu6NU0d4V34yZFoHMn/uoKr/Rwfw==}
+ '@jest/globals@30.3.0':
+ resolution: {integrity: sha512-+owLCBBdfpgL3HU+BD5etr1SvbXpSitJK0is1kiYjJxAAJggYMRQz5hSdd5pq1sSggfxPbw2ld71pt4x5wwViA==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
'@jest/pattern@30.0.1':
resolution: {integrity: sha512-gWp7NfQW27LaBQz3TITS8L7ZCQ0TLvtmI//4OwlQRx4rnWxcPNIYjxZpDcN4+UlGxgm3jS5QPz8IPTCkb59wZA==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
- '@jest/reporters@30.2.0':
- resolution: {integrity: sha512-DRyW6baWPqKMa9CzeiBjHwjd8XeAyco2Vt8XbcLFjiwCOEKOvy82GJ8QQnJE9ofsxCMPjH4MfH8fCWIHHDKpAQ==}
+ '@jest/reporters@30.3.0':
+ resolution: {integrity: sha512-a09z89S+PkQnL055bVj8+pe2Caed2PBOaczHcXCykW5ngxX9EWx/1uAwncxc/HiU0oZqfwseMjyhxgRjS49qPw==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
peerDependencies:
node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0
@@ -1876,24 +1907,24 @@ packages:
resolution: {integrity: sha512-DmdYgtezMkh3cpU8/1uyXakv3tJRcmcXxBOcO0tbaozPwpmh4YMsnWrQm9ZmZMfa5ocbxzbFk6O4bDPEc/iAnA==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
- '@jest/snapshot-utils@30.2.0':
- resolution: {integrity: sha512-0aVxM3RH6DaiLcjj/b0KrIBZhSX1373Xci4l3cW5xiUWPctZ59zQ7jj4rqcJQ/Z8JuN/4wX3FpJSa3RssVvCug==}
+ '@jest/snapshot-utils@30.3.0':
+ resolution: {integrity: sha512-ORbRN9sf5PP82v3FXNSwmO1OTDR2vzR2YTaR+E3VkSBZ8zadQE6IqYdYEeFH1NIkeB2HIGdF02dapb6K0Mj05g==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
'@jest/source-map@30.0.1':
resolution: {integrity: sha512-MIRWMUUR3sdbP36oyNyhbThLHyJ2eEDClPCiHVbrYAe5g3CHRArIVpBw7cdSB5fr+ofSfIb2Tnsw8iEHL0PYQg==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
- '@jest/test-result@30.2.0':
- resolution: {integrity: sha512-RF+Z+0CCHkARz5HT9mcQCBulb1wgCP3FBvl9VFokMX27acKphwyQsNuWH3c+ojd1LeWBLoTYoxF0zm6S/66mjg==}
+ '@jest/test-result@30.3.0':
+ resolution: {integrity: sha512-e/52nJGuD74AKTSe0P4y5wFRlaXP0qmrS17rqOMHeSwm278VyNyXE3gFO/4DTGF9w+65ra3lo3VKj0LBrzmgdQ==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
- '@jest/test-sequencer@30.2.0':
- resolution: {integrity: sha512-wXKgU/lk8fKXMu/l5Hog1R61bL4q5GCdT6OJvdAFz1P+QrpoFuLU68eoKuVc4RbrTtNnTL5FByhWdLgOPSph+Q==}
+ '@jest/test-sequencer@30.3.0':
+ resolution: {integrity: sha512-dgbWy9b8QDlQeRZcv7LNF+/jFiiYHTKho1xirauZ7kVwY7avjFF6uTT0RqlgudB5OuIPagFdVtfFMosjVbk1eA==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
- '@jest/transform@30.2.0':
- resolution: {integrity: sha512-XsauDV82o5qXbhalKxD7p4TZYYdwcaEXC77PPD2HixEFF+6YGppjrAAQurTl2ECWcEomHBMMNS9AH3kcCFx8jA==}
+ '@jest/transform@30.3.0':
+ resolution: {integrity: sha512-TLKY33fSLVd/lKB2YI1pH69ijyUblO/BQvCj566YvnwuzoTNr648iE0j22vRvVNk2HsPwByPxATg3MleS3gf5A==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
'@jest/types@30.0.5':
@@ -1904,6 +1935,10 @@ packages:
resolution: {integrity: sha512-H9xg1/sfVvyfU7o3zMfBEjQ1gcsdeTMgqHoYdN79tuLqfTtuu7WckRA1R5whDwOzxaZAeMKTYWqP+WCAi0CHsg==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
+ '@jest/types@30.3.0':
+ resolution: {integrity: sha512-JHm87k7bA33hpBngtU8h6UBub/fqqA9uXfw+21j5Hmk7ooPHlboRNxHq0JcMtC+n8VJGP1mcfnD3Mk+XKe1oSw==}
+ engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
+
'@jridgewell/gen-mapping@0.3.13':
resolution: {integrity: sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==}
@@ -2901,6 +2936,9 @@ packages:
'@sinonjs/fake-timers@13.0.5':
resolution: {integrity: sha512-36/hTbH2uaWuGVERyC6da9YwGWnzUZXuPro/F2LfsdOsLnCojz/iSH8MxUt/FD2S5XBSVPhmArFUXcpCQ2Hkiw==}
+ '@sinonjs/fake-timers@15.1.1':
+ resolution: {integrity: sha512-cO5W33JgAPbOh07tvZjUOJ7oWhtaqGHiZw+11DPbyqh2kHTBc3eF/CjJDeQ4205RLQsX6rxCuYOroFQwl7JDRw==}
+
'@standard-schema/spec@1.1.0':
resolution: {integrity: sha512-l2aFy5jALhniG5HgqrD6jXLi/rUWrKvqN/qJx6yoJsgKhblVd+iqqU4RCXavm/jPityDo5TCvKMnpjKnOriy0w==}
@@ -3038,8 +3076,8 @@ packages:
'@types/yargs-parser@21.0.3':
resolution: {integrity: sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==}
- '@types/yargs@17.0.33':
- resolution: {integrity: sha512-WpxBCKWPLr4xSsHgz511rFJAM+wS28w2zEO1QDNY5zM/S8ok70NNfztH0xwhqKyaK0OHCbN98LDAZuy1ctxDkA==}
+ '@types/yargs@17.0.35':
+ resolution: {integrity: sha512-qUHkeCyQFxMXg79wQfTtfndEC+N9ZZg76HJftDJp+qH2tV7Gj4OJi7l+PiWwJ+pWtW8GwSmqsDj/oymhrTWXjg==}
'@typescript-eslint/eslint-plugin@8.57.0':
resolution: {integrity: sha512-qeu4rTHR3/IaFORbD16gmjq9+rEs9fGKdX0kF6BKSfi+gCuG3RCKLlSBYzn/bGsY9Tj7KE/DAQStbp8AHJGHEQ==}
@@ -3411,8 +3449,8 @@ packages:
resolution: {integrity: sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==}
engines: {node: '>= 0.4'}
- babel-jest@30.2.0:
- resolution: {integrity: sha512-0YiBEOxWqKkSQWL9nNGGEgndoeL0ZpWrbLMNL5u/Kaxrli3Eaxlt3ZtIDktEvXt4L/R9r3ODr2zKwGM/2BjxVw==}
+ babel-jest@30.3.0:
+ resolution: {integrity: sha512-gRpauEU2KRrCox5Z296aeVHR4jQ98BCnu0IO332D/xpHNOsIH/bgSRk9k6GbKIbBw8vFeN6ctuu6tV8WOyVfYQ==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
peerDependencies:
'@babel/core': ^7.11.0 || ^8.0.0-0
@@ -3428,8 +3466,8 @@ packages:
resolution: {integrity: sha512-D8Z6Qm8jCvVXtIRkBnqNHX0zJ37rQcFJ9u8WOS6tkYOsRdHBzypCstaxWiu5ZIlqQtviRYbgnRLSoCEvjqcqbA==}
engines: {node: '>=12'}
- babel-plugin-jest-hoist@30.2.0:
- resolution: {integrity: sha512-ftzhzSGMUnOzcCXd6WHdBGMyuwy15Wnn0iyyWGKgBDLxf9/s5ABuraCSpBX2uG0jUg4rqJnxsLc5+oYBqoxVaA==}
+ babel-plugin-jest-hoist@30.3.0:
+ resolution: {integrity: sha512-+TRkByhsws6sfPjVaitzadk1I0F5sPvOVUH5tyTSzhePpsGIVrdeunHSw/C36QeocS95OOk8lunc4rlu5Anwsg==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
babel-plugin-polyfill-corejs2@0.4.15:
@@ -3452,8 +3490,8 @@ packages:
peerDependencies:
'@babel/core': ^7.0.0 || ^8.0.0-0
- babel-preset-jest@30.2.0:
- resolution: {integrity: sha512-US4Z3NOieAQumwFnYdUWKvUKh8+YSnS/gB3t6YBiz0bskpu7Pine8pPCheNxlPEW4wnUkma2a94YuW2q3guvCQ==}
+ babel-preset-jest@30.3.0:
+ resolution: {integrity: sha512-6ZcUbWHC+dMz2vfzdNwi87Z1gQsLNK2uLuK1Q89R11xdvejcivlYYwDlEv0FHX3VwEXpbBQ9uufB/MUNpZGfhQ==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
peerDependencies:
'@babel/core': ^7.11.0 || ^8.0.0-beta.1
@@ -3625,16 +3663,12 @@ packages:
resolution: {integrity: sha512-rNjApaLzuwaOTjCiT8lSDdGN1APCiqkChLMJxJPWLunPAt5fy8xgU9/jNOchV84wfIxrA0lRQB7oCT8jrn/wrQ==}
engines: {node: '>=6.0'}
- ci-info@4.3.0:
- resolution: {integrity: sha512-l+2bNRMiQgcfILUi33labAZYIWlH1kWDp+ecNo5iisRKrbm0xcRyCww71/YU0Fkw0mAFpz9bJayXPjey6vkmaQ==}
- engines: {node: '>=8'}
-
ci-info@4.4.0:
resolution: {integrity: sha512-77PSwercCZU2Fc4sX94eF8k8Pxte6JAwL4/ICZLFjJLqegs7kCuAsqqj/70NQF6TvDpgFjkubQB2FW2ZZddvQg==}
engines: {node: '>=8'}
- cjs-module-lexer@2.1.0:
- resolution: {integrity: sha512-UX0OwmYRYQQetfrLEZeewIFFI+wSTofC+pMBLNuH3RUuu/xzG1oz84UCEDOSoQlN3fZ4+AzmV50ZYvGqkMh9yA==}
+ cjs-module-lexer@2.2.0:
+ resolution: {integrity: sha512-4bHTS2YuzUvtoLjdy+98ykbNB5jS0+07EvFNXerqZQJ89F7DI6ET7OQo/HJuW6K0aVsKA9hj9/RVb2kQVOrPDQ==}
cli-cursor@5.0.0:
resolution: {integrity: sha512-aCj4O5wKyszjMmDT4tZj93kxyydN/K5zPWSCe6/0AV/AA1pqe5ZBIw0a2ZfPQV7lL5/yb5HsUreJ6UFAF1tEQw==}
@@ -3668,8 +3702,8 @@ packages:
resolution: {integrity: sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==}
engines: {iojs: '>= 1.0.0', node: '>= 0.12.0'}
- collect-v8-coverage@1.0.2:
- resolution: {integrity: sha512-lHl4d5/ONEbLlJvaJNtsF/Lz+WvB07u2ycqTYbdrq7UypDXailES4valYb2eWiJFxZlVmpGekfqoxQhzyFdT4Q==}
+ collect-v8-coverage@1.0.3:
+ resolution: {integrity: sha512-1L5aqIkwPfiodaMgQunkF1zRhNqifHBmtbbbxcr6yVxxBnliw4TDOW6NxpO8DJLgJ16OT+Y4ztZqP6p/FtXnAw==}
color-convert@2.0.1:
resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==}
@@ -3823,8 +3857,8 @@ packages:
resolution: {integrity: sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==}
engines: {node: '>=10'}
- dedent@1.7.0:
- resolution: {integrity: sha512-HGFtf8yhuhGhqO07SV79tRp+br4MnbdjeVxotpn1QBl30pcLLCQjX5b2295ll0fv8RKDKsmWYrl05usHM9CewQ==}
+ dedent@1.7.2:
+ resolution: {integrity: sha512-WzMx3mW98SN+zn3hgemf4OzdmyNhhhKz5Ay0pUfQiMQ3e1g+xmTJWp/pKdwKVXhdSkAEGIIzqeuWrL3mV/AXbA==}
peerDependencies:
babel-plugin-macros: ^3.1.0
peerDependenciesMeta:
@@ -4123,8 +4157,8 @@ packages:
resolution: {integrity: sha512-P0te2pt+hHI5qLJkIR+iMvS+lYUZml8rKKsohVHAGY+uClp9XVbdyYNJOIjSRpHVp8s8YqxJCiHUkSYZGr8rtQ==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
- expect@30.2.0:
- resolution: {integrity: sha512-u/feCi0GPsI+988gU2FLcsHyAHTU0MX1Wg68NhAnN7z/+C5wqG+CY8J53N9ioe8RXgaoz0nBR/TYMf3AycUuPw==}
+ expect@30.3.0:
+ resolution: {integrity: sha512-1zQrciTiQfRdo7qJM1uG4navm8DayFa2TgCSRlzUyNkhcJ6XUZF3hjnpkyr3VhAqPH7i/9GkG7Tv5abz6fqz0Q==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
exponential-backoff@3.1.3:
@@ -4309,8 +4343,8 @@ packages:
glob-to-regexp@0.4.1:
resolution: {integrity: sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==}
- glob@10.4.5:
- resolution: {integrity: sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==}
+ glob@10.5.0:
+ resolution: {integrity: sha512-DfXN8DfhJ7NH3Oe7cFmu3NCu1wKbkReJ8TorzSAFbSKrlNaQSKfIzqYqVY8zlbs2NLBbWpRiU52GX2PbaBVNkg==}
deprecated: Old versions of glob are not supported, and contain widely publicized security vulnerabilities, which have been fixed in the current version. Please update. Support for old versions may be purchased (at exorbitant rates) by contacting i@izs.me
hasBin: true
@@ -4631,16 +4665,16 @@ packages:
jackspeak@3.4.3:
resolution: {integrity: sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==}
- jest-changed-files@30.2.0:
- resolution: {integrity: sha512-L8lR1ChrRnSdfeOvTrwZMlnWV8G/LLjQ0nG9MBclwWZidA2N5FviRki0Bvh20WRMOX31/JYvzdqTJrk5oBdydQ==}
+ jest-changed-files@30.3.0:
+ resolution: {integrity: sha512-B/7Cny6cV5At6M25EWDgf9S617lHivamL8vl6KEpJqkStauzcG4e+WPfDgMMF+H4FVH4A2PLRyvgDJan4441QA==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
- jest-circus@30.2.0:
- resolution: {integrity: sha512-Fh0096NC3ZkFx05EP2OXCxJAREVxj1BcW/i6EWqqymcgYKWjyyDpral3fMxVcHXg6oZM7iULer9wGRFvfpl+Tg==}
+ jest-circus@30.3.0:
+ resolution: {integrity: sha512-PyXq5szeSfR/4f1lYqCmmQjh0vqDkURUYi9N6whnHjlRz4IUQfMcXkGLeEoiJtxtyPqgUaUUfyQlApXWBSN1RA==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
- jest-cli@30.2.0:
- resolution: {integrity: sha512-Os9ukIvADX/A9sLt6Zse3+nmHtHaE6hqOsjQtNiugFTbKRHYIYtZXNGNK9NChseXy7djFPjndX1tL0sCTlfpAA==}
+ jest-cli@30.3.0:
+ resolution: {integrity: sha512-l6Tqx+j1fDXJEW5bqYykDQQ7mQg+9mhWXtnj+tQZrTWYHyHoi6Be8HPumDSA+UiX2/2buEgjA58iJzdj146uCw==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
hasBin: true
peerDependencies:
@@ -4649,8 +4683,8 @@ packages:
node-notifier:
optional: true
- jest-config@30.2.0:
- resolution: {integrity: sha512-g4WkyzFQVWHtu6uqGmQR4CQxz/CH3yDSlhzXMWzNjDx843gYjReZnMRanjRCq5XZFuQrGDxgUaiYWE8BRfVckA==}
+ jest-config@30.3.0:
+ resolution: {integrity: sha512-WPMAkMAtNDY9P/oKObtsRG/6KTrhtgPJoBTmk20uDn4Uy6/3EJnnaZJre/FMT1KVRx8cve1r7/FlMIOfRVWL4w==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
peerDependencies:
'@types/node': '*'
@@ -4672,20 +4706,20 @@ packages:
resolution: {integrity: sha512-1UIqE9PoEKaHcIKvq2vbibrCog4Y8G0zmOxgQUVEiTqwR5hJVMCoDsN1vFvI5JvwD37hjueZ1C4l2FyGnfpE0A==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
- jest-diff@30.2.0:
- resolution: {integrity: sha512-dQHFo3Pt4/NLlG5z4PxZ/3yZTZ1C7s9hveiOj+GCN+uT109NC2QgsoVZsVOAvbJ3RgKkvyLGXZV9+piDpWbm6A==}
+ jest-diff@30.3.0:
+ resolution: {integrity: sha512-n3q4PDQjS4LrKxfWB3Z5KNk1XjXtZTBwQp71OP0Jo03Z6V60x++K5L8k6ZrW8MY8pOFylZvHM0zsjS1RqlHJZQ==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
jest-docblock@30.2.0:
resolution: {integrity: sha512-tR/FFgZKS1CXluOQzZvNH3+0z9jXr3ldGSD8bhyuxvlVUwbeLOGynkunvlTMxchC5urrKndYiwCFC0DLVjpOCA==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
- jest-each@30.2.0:
- resolution: {integrity: sha512-lpWlJlM7bCUf1mfmuqTA8+j2lNURW9eNafOy99knBM01i5CQeY5UH1vZjgT9071nDJac1M4XsbyI44oNOdhlDQ==}
+ jest-each@30.3.0:
+ resolution: {integrity: sha512-V8eMndg/aZ+3LnCJgSm13IxS5XSBM22QSZc9BtPK8Dek6pm+hfUNfwBdvsB3d342bo1q7wnSkC38zjX259qZNA==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
- jest-environment-jsdom@30.2.0:
- resolution: {integrity: sha512-zbBTiqr2Vl78pKp/laGBREYzbZx9ZtqPjOK4++lL4BNDhxRnahg51HtoDrk9/VjIy9IthNEWdKVd7H5bqBhiWQ==}
+ jest-environment-jsdom@30.3.0:
+ resolution: {integrity: sha512-RLEOJy6ip1lpw0yqJ8tB3i88FC7VBz7i00Zvl2qF71IdxjS98gC9/0SPWYIBVXHm5hgCYK0PAlSlnHGGy9RoMg==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
peerDependencies:
canvas: ^3.0.0
@@ -4693,32 +4727,32 @@ packages:
canvas:
optional: true
- jest-environment-node@30.2.0:
- resolution: {integrity: sha512-ElU8v92QJ9UrYsKrxDIKCxu6PfNj4Hdcktcn0JX12zqNdqWHB0N+hwOnnBBXvjLd2vApZtuLUGs1QSY+MsXoNA==}
+ jest-environment-node@30.3.0:
+ resolution: {integrity: sha512-4i6HItw/JSiJVsC5q0hnKIe/hbYfZLVG9YJ/0pU9Hz2n/9qZe3Rhn5s5CUZA5ORZlcdT/vmAXRMyONXJwPrmYQ==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
jest-get-type@29.6.3:
resolution: {integrity: sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw==}
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
- jest-haste-map@30.2.0:
- resolution: {integrity: sha512-sQA/jCb9kNt+neM0anSj6eZhLZUIhQgwDt7cPGjumgLM4rXsfb9kpnlacmvZz3Q5tb80nS+oG/if+NBKrHC+Xw==}
+ jest-haste-map@30.3.0:
+ resolution: {integrity: sha512-mMi2oqG4KRU0R9QEtscl87JzMXfUhbKaFqOxmjb2CKcbHcUGFrJCBWHmnTiUqi6JcnzoBlO4rWfpdl2k/RfLCA==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
jest-junit@16.0.0:
resolution: {integrity: sha512-A94mmw6NfJab4Fg/BlvVOUXzXgF0XIH6EmTgJ5NDPp4xoKq0Kr7sErb+4Xs9nZvu58pJojz5RFGpqnZYJTrRfQ==}
engines: {node: '>=10.12.0'}
- jest-leak-detector@30.2.0:
- resolution: {integrity: sha512-M6jKAjyzjHG0SrQgwhgZGy9hFazcudwCNovY/9HPIicmNSBuockPSedAP9vlPK6ONFJ1zfyH/M2/YYJxOz5cdQ==}
+ jest-leak-detector@30.3.0:
+ resolution: {integrity: sha512-cuKmUUGIjfXZAiGJ7TbEMx0bcqNdPPI6P1V+7aF+m/FUJqFDxkFR4JqkTu8ZOiU5AaX/x0hZ20KaaIPXQzbMGQ==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
jest-matcher-utils@30.0.5:
resolution: {integrity: sha512-uQgGWt7GOrRLP1P7IwNWwK1WAQbq+m//ZY0yXygyfWp0rJlksMSLQAA4wYQC3b6wl3zfnchyTx+k3HZ5aPtCbQ==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
- jest-matcher-utils@30.2.0:
- resolution: {integrity: sha512-dQ94Nq4dbzmUWkQ0ANAWS9tBRfqCrn0bV9AMYdOi/MHW726xn7eQmMeRTpX2ViC00bpNaWXq+7o4lIQ3AX13Hg==}
+ jest-matcher-utils@30.3.0:
+ resolution: {integrity: sha512-HEtc9uFQgaUHkC7nLSlQL3Tph4Pjxt/yiPvkIrrDCt9jhoLIgxaubo1G+CFOnmHYMxHwwdaSN7mkIFs6ZK8OhA==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
jest-message-util@30.0.5:
@@ -4729,6 +4763,10 @@ packages:
resolution: {integrity: sha512-y4DKFLZ2y6DxTWD4cDe07RglV88ZiNEdlRfGtqahfbIjfsw1nMCPx49Uev4IA/hWn3sDKyAnSPwoYSsAEdcimw==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
+ jest-message-util@30.3.0:
+ resolution: {integrity: sha512-Z/j4Bo+4ySJ+JPJN3b2Qbl9hDq3VrXmnjjGEWD/x0BCXeOXPTV1iZYYzl2X8c1MaCOL+ewMyNBcm88sboE6YWw==}
+ engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
+
jest-mock@30.0.5:
resolution: {integrity: sha512-Od7TyasAAQX/6S+QCbN6vZoWOMwlTtzzGuxJku1GhGanAjz9y+QsQkpScDmETvdc9aSXyJ/Op4rhpMYBWW91wQ==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
@@ -4737,6 +4775,10 @@ packages:
resolution: {integrity: sha512-JNNNl2rj4b5ICpmAcq+WbLH83XswjPbjH4T7yvGzfAGCPh1rw+xVNbtk+FnRslvt9lkCcdn9i1oAoKUuFsOxRw==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
+ jest-mock@30.3.0:
+ resolution: {integrity: sha512-OTzICK8CpE+t4ndhKrwlIdbM6Pn8j00lvmSmq5ejiO+KxukbLjgOflKWMn3KE34EZdQm5RqTuKj+5RIEniYhog==}
+ engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
+
jest-pnp-resolver@1.2.3:
resolution: {integrity: sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==}
engines: {node: '>=6'}
@@ -4762,24 +4804,24 @@ packages:
resolution: {integrity: sha512-jHEQgBXAgc+Gh4g0p3bCevgRCVRkB4VB70zhoAE48gxeSr1hfUOsM/C2WoJgVL7Eyg//hudYENbm3Ne+/dRVVA==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
- jest-resolve-dependencies@30.2.0:
- resolution: {integrity: sha512-xTOIGug/0RmIe3mmCqCT95yO0vj6JURrn1TKWlNbhiAefJRWINNPgwVkrVgt/YaerPzY3iItufd80v3lOrFJ2w==}
+ jest-resolve-dependencies@30.3.0:
+ resolution: {integrity: sha512-9ev8s3YN6Hsyz9LV75XUwkCVFlwPbaFn6Wp75qnI0wzAINYWY8Fb3+6y59Rwd3QaS3kKXffHXsZMziMavfz/nw==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
- jest-resolve@30.2.0:
- resolution: {integrity: sha512-TCrHSxPlx3tBY3hWNtRQKbtgLhsXa1WmbJEqBlTBrGafd5fiQFByy2GNCEoGR+Tns8d15GaL9cxEzKOO3GEb2A==}
+ jest-resolve@30.3.0:
+ resolution: {integrity: sha512-NRtTAHQlpd15F9rUR36jqwelbrDV/dY4vzNte3S2kxCKUJRYNd5/6nTSbYiak1VX5g8IoFF23Uj5TURkUW8O5g==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
- jest-runner@30.2.0:
- resolution: {integrity: sha512-PqvZ2B2XEyPEbclp+gV6KO/F1FIFSbIwewRgmROCMBo/aZ6J1w8Qypoj2pEOcg3G2HzLlaP6VUtvwCI8dM3oqQ==}
+ jest-runner@30.3.0:
+ resolution: {integrity: sha512-gDv6C9LGKWDPLia9TSzZwf4h3kMQCqyTpq+95PODnTRDO0g9os48XIYYkS6D236vjpBir2fF63YmJFtqkS5Duw==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
- jest-runtime@30.2.0:
- resolution: {integrity: sha512-p1+GVX/PJqTucvsmERPMgCPvQJpFt4hFbM+VN3n8TMo47decMUcJbt+rgzwrEme0MQUA/R+1de2axftTHkKckg==}
+ jest-runtime@30.3.0:
+ resolution: {integrity: sha512-CgC+hIBJbuh78HEffkhNKcbXAytQViplcl8xupqeIWyKQF50kCQA8J7GeJCkjisC6hpnC9Muf8jV5RdtdFbGng==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
- jest-snapshot@30.2.0:
- resolution: {integrity: sha512-5WEtTy2jXPFypadKNpbNkZ72puZCa6UjSr/7djeecHWOu7iYhSXSnHScT8wBz3Rn8Ena5d5RYRcsyKIeqG1IyA==}
+ jest-snapshot@30.3.0:
+ resolution: {integrity: sha512-f14c7atpb4O2DeNhwcvS810Y63wEn8O1HqK/luJ4F6M4NjvxmAKQwBUWjbExUtMxWJQ0wVgmCKymeJK6NZMnfQ==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
jest-util@30.0.5:
@@ -4790,12 +4832,16 @@ packages:
resolution: {integrity: sha512-QKNsM0o3Xe6ISQU869e+DhG+4CK/48aHYdJZGlFQVTjnbvgpcKyxpzk29fGiO7i/J8VENZ+d2iGnSsvmuHywlA==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
- jest-validate@30.2.0:
- resolution: {integrity: sha512-FBGWi7dP2hpdi8nBoWxSsLvBFewKAg0+uSQwBaof4Y4DPgBabXgpSYC5/lR7VmnIlSpASmCi/ntRWPbv7089Pw==}
+ jest-util@30.3.0:
+ resolution: {integrity: sha512-/jZDa00a3Sz7rdyu55NLrQCIrbyIkbBxareejQI315f/i8HjYN+ZWsDLLpoQSiUIEIyZF/R8fDg3BmB8AtHttg==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
- jest-watcher@30.2.0:
- resolution: {integrity: sha512-PYxa28dxJ9g777pGm/7PrbnMeA0Jr7osHP9bS7eJy9DuAjMgdGtxgf0uKMyoIsTWAkIbUW5hSDdJ3urmgXBqxg==}
+ jest-validate@30.3.0:
+ resolution: {integrity: sha512-I/xzC8h5G+SHCb2P2gWkJYrNiTbeL47KvKeW5EzplkyxzBRBw1ssSHlI/jXec0ukH2q7x2zAWQm7015iusg62Q==}
+ engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
+
+ jest-watcher@30.3.0:
+ resolution: {integrity: sha512-PJ1d9ThtTR8aMiBWUdcownq9mDdLXsQzJayTk4kmaBRHKvwNQn+ANveuhEBUyNI2hR1TVhvQ8D5kHubbzBHR/w==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
jest-websocket-mock@2.5.0:
@@ -4805,12 +4851,12 @@ packages:
resolution: {integrity: sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==}
engines: {node: '>= 10.13.0'}
- jest-worker@30.2.0:
- resolution: {integrity: sha512-0Q4Uk8WF7BUwqXHuAjc23vmopWJw5WH7w2tqBoUOZpOjW/ZnR44GXXd1r82RvnmI2GZge3ivrYXk/BE2+VtW2g==}
+ jest-worker@30.3.0:
+ resolution: {integrity: sha512-DrCKkaQwHexjRUFTmPzs7sHQe0TSj9nvDALKGdwmK5mW9v7j90BudWirKAJHt3QQ9Dhrg1F7DogPzhChppkJpQ==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
- jest@30.2.0:
- resolution: {integrity: sha512-F26gjC0yWN8uAA5m5Ss8ZQf5nDHWGlN/xWZIh8S5SRbsEKBovwZhxGd6LJlbZYxBgCYOtreSUyb8hpXyGC5O4A==}
+ jest@30.3.0:
+ resolution: {integrity: sha512-AkXIIFcaazymvey2i/+F94XRnM6TsVLZDhBMLsd1Sf/W0wzsvvpjeyUrCZD6HGG4SDYPgDJDBKeiJTBb10WzMg==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
hasBin: true
peerDependencies:
@@ -4994,6 +5040,10 @@ packages:
resolution: {integrity: sha512-ESL2CrkS/2wTPfuend7Zhkzo2u0daGJ/A2VucJOgQ/C48S/zB8MMeMHSGKYpXhIjbPxfuezITkaBH1wqv00DDQ==}
engines: {node: 20 || >=22}
+ lru-cache@11.2.7:
+ resolution: {integrity: sha512-aY/R+aEsRelme17KGQa/1ZSIpLpNYYrhcrepKTZgE+W3WM16YMCaPwOHLHsmopZHELU0Ojin1lPVxKR0MihncA==}
+ engines: {node: 20 || >=22}
+
lru-cache@5.1.1:
resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==}
@@ -5196,8 +5246,8 @@ packages:
napi-build-utils@2.0.0:
resolution: {integrity: sha512-GEbrYkbfF7MoNaoh2iGG84Mnf/WZfB0GdGEsM8wz7Expx/LlWf5U8t9nvJKXSp3qr5IsEbK04cBGhol/KwOsWA==}
- napi-postinstall@0.3.3:
- resolution: {integrity: sha512-uTp172LLXSxuSYHv/kou+f6KW3SMppU9ivthaVTXian9sOt3XM/zHYHpRZiLgQoxeWfYUnslNWQHF1+G71xcow==}
+ napi-postinstall@0.3.4:
+ resolution: {integrity: sha512-PHI5f1O0EP5xJ9gQmFGMS6IZcrVvTjpXjz7Na41gTE7eE2hK11lg04CECCYEEjdc17EV4DO+fkGEtt7TpTaTiQ==}
engines: {node: ^12.20.0 || ^14.18.0 || >=16.0.0}
hasBin: true
@@ -5340,8 +5390,8 @@ packages:
nth-check@2.1.1:
resolution: {integrity: sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==}
- nwsapi@2.2.22:
- resolution: {integrity: sha512-ujSMe1OWVn55euT1ihwCI1ZcAaAU3nxUiDwfDQldc51ZXaB9m2AyOn6/jh1BLe2t/G8xd6uKG1UBF2aZJeg2SQ==}
+ nwsapi@2.2.23:
+ resolution: {integrity: sha512-7wfH4sLbt4M0gCDzGE6vzQBo0bfTKjU7Sfpqy/7gs1qBfYz2vEJH6vXcBKpO3+6Yu1telwd0t9HpyOoLEQQbIQ==}
object-assign@4.1.1:
resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==}
@@ -5635,6 +5685,10 @@ packages:
resolution: {integrity: sha512-9uBdv/B4EefsuAL+pWqueZyZS2Ba+LxfFeQ9DN14HU4bN8bhaxKdkpjpB6fs9+pSjIBu+FXQHImEg8j/Lw0+vA==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
+ pretty-format@30.3.0:
+ resolution: {integrity: sha512-oG4T3wCbfeuvljnyAzhBvpN45E8iOTXCU/TD3zXW80HA3dQ4ahdqMkWGiPWZvjpQwlbyHrPTWUAqUzGzv4l1JQ==}
+ engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
+
proc-log@6.1.0:
resolution: {integrity: sha512-iG+GYldRf2BQ0UDUAd6JQ/RwzaQy6mXmsk/IzlYyal4A4SNFw54MeH4/tLkF4I5WoWG9SQwuqWzS99jaFQHBuQ==}
engines: {node: ^20.17.0 || >=22.9.0}
@@ -6134,8 +6188,8 @@ packages:
symbol-tree@3.2.4:
resolution: {integrity: sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==}
- synckit@0.11.11:
- resolution: {integrity: sha512-MeQTA1r0litLUf0Rp/iisCaL8761lKAZHaimlbGK4j0HysC4PLfqygQj9srcs0m2RdtDYnF8UuYyKpbjHYp7Jw==}
+ synckit@0.11.12:
+ resolution: {integrity: sha512-Bh7QjT8/SuKUIfObSXNHNSK6WHo6J1tHCqJsuaFDP7gP0fkzSfTxI8y85JrppZ0h8l0maIgc2tfuZQ6/t3GtnQ==}
engines: {node: ^14.18.0 || >=16.0.0}
tapable@2.3.0:
@@ -6661,18 +6715,6 @@ packages:
resolution: {integrity: sha512-+QU2zd6OTD8XWIJCbffaiQeH9U73qIqafo1x6V1snCWYGJf6cVE0cDR4D8xRzcEnfI21IFrUPzPGtcPf8AC+Rw==}
engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0}
- ws@8.18.3:
- resolution: {integrity: sha512-PEIGCY5tSlUt50cqyMXfCzX+oOPqN0vuGqWzbcJ2xvnkzkq46oOpz7dQaTDBdfICb4N14+GARUDw2XV2N4tvzg==}
- 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
-
ws@8.19.0:
resolution: {integrity: sha512-blAT2mjOEIi0ZzruJfIhb3nps74PRWTCz1IjglWEEpQl5XS/UNama6u2/rjFkDDouqr4L67ry+1aGIALViWjDg==}
engines: {node: '>=10.0.0'}
@@ -6897,11 +6939,11 @@ snapshots:
- chokidar
- typescript
- '@angular-builders/custom-webpack@21.0.3(@angular/compiler-cli@21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3))(@angular/compiler@21.2.4)(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(@angular/localize@21.2.4(@angular/compiler-cli@21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3))(@angular/compiler@21.2.4))(@angular/platform-browser@21.2.4(@angular/common@21.2.4(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(rxjs@7.8.2))(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1)))(@types/node@25.4.0)(chokidar@5.0.0)(jest-environment-jsdom@30.2.0(canvas@3.0.0))(jest@30.2.0(@types/node@25.4.0)(ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3)))(jiti@2.6.1)(less@4.4.2)(postcss@8.5.6)(terser@5.44.1)(tslib@2.8.1)(typescript@5.9.3)(yaml@2.7.0)':
+ '@angular-builders/custom-webpack@21.0.3(@angular/compiler-cli@21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3))(@angular/compiler@21.2.4)(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(@angular/localize@21.2.4(@angular/compiler-cli@21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3))(@angular/compiler@21.2.4))(@angular/platform-browser@21.2.4(@angular/common@21.2.4(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(rxjs@7.8.2))(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1)))(@types/node@25.4.0)(chokidar@5.0.0)(jest-environment-jsdom@30.3.0(canvas@3.0.0))(jest@30.3.0(@types/node@25.4.0)(ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3)))(jiti@2.6.1)(less@4.4.2)(postcss@8.5.6)(terser@5.44.1)(tslib@2.8.1)(typescript@5.9.3)(yaml@2.7.0)':
dependencies:
'@angular-builders/common': 5.0.3(@types/node@25.4.0)(chokidar@5.0.0)(typescript@5.9.3)
'@angular-devkit/architect': 0.2101.2(chokidar@5.0.0)
- '@angular-devkit/build-angular': 21.1.2(@angular/compiler-cli@21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3))(@angular/compiler@21.2.4)(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(@angular/localize@21.2.4(@angular/compiler-cli@21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3))(@angular/compiler@21.2.4))(@angular/platform-browser@21.2.4(@angular/common@21.2.4(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(rxjs@7.8.2))(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1)))(@types/node@25.4.0)(chokidar@5.0.0)(jest-environment-jsdom@30.2.0(canvas@3.0.0))(jest@30.2.0(@types/node@25.4.0)(ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3)))(jiti@2.6.1)(typescript@5.9.3)(yaml@2.7.0)
+ '@angular-devkit/build-angular': 21.1.2(@angular/compiler-cli@21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3))(@angular/compiler@21.2.4)(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(@angular/localize@21.2.4(@angular/compiler-cli@21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3))(@angular/compiler@21.2.4))(@angular/platform-browser@21.2.4(@angular/common@21.2.4(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(rxjs@7.8.2))(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1)))(@types/node@25.4.0)(chokidar@5.0.0)(jest-environment-jsdom@30.3.0(canvas@3.0.0))(jest@30.3.0(@types/node@25.4.0)(ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3)))(jiti@2.6.1)(typescript@5.9.3)(yaml@2.7.0)
'@angular-devkit/core': 21.2.2(chokidar@5.0.0)
'@angular/build': 21.2.2(@angular/compiler-cli@21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3))(@angular/compiler@21.2.4)(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(@angular/localize@21.2.4(@angular/compiler-cli@21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3))(@angular/compiler@21.2.4))(@angular/platform-browser@21.2.4(@angular/common@21.2.4(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(rxjs@7.8.2))(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1)))(@types/node@25.4.0)(chokidar@5.0.0)(jiti@2.6.1)(less@4.4.2)(postcss@8.5.6)(terser@5.44.1)(tslib@2.8.1)(typescript@5.9.3)(yaml@2.7.0)
'@angular/compiler-cli': 21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3)
@@ -6950,17 +6992,17 @@ snapshots:
- webpack-cli
- yaml
- '@angular-builders/jest@21.0.3(5a81d46f899dc9147bafdd7de7f725f5)':
+ '@angular-builders/jest@21.0.3(e6176eac41f0cffc5e05b8a4d945a538)':
dependencies:
'@angular-builders/common': 5.0.3(@types/node@25.4.0)(chokidar@5.0.0)(typescript@5.9.3)
'@angular-devkit/architect': 0.2101.2(chokidar@5.0.0)
- '@angular-devkit/build-angular': 21.1.2(@angular/compiler-cli@21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3))(@angular/compiler@21.2.4)(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(@angular/localize@21.2.4(@angular/compiler-cli@21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3))(@angular/compiler@21.2.4))(@angular/platform-browser@21.2.4(@angular/common@21.2.4(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(rxjs@7.8.2))(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1)))(@types/node@25.4.0)(chokidar@5.0.0)(jest-environment-jsdom@30.2.0(canvas@3.0.0))(jest@30.2.0(@types/node@25.4.0)(ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3)))(jiti@2.6.1)(typescript@5.9.3)(yaml@2.7.0)
+ '@angular-devkit/build-angular': 21.1.2(@angular/compiler-cli@21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3))(@angular/compiler@21.2.4)(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(@angular/localize@21.2.4(@angular/compiler-cli@21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3))(@angular/compiler@21.2.4))(@angular/platform-browser@21.2.4(@angular/common@21.2.4(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(rxjs@7.8.2))(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1)))(@types/node@25.4.0)(chokidar@5.0.0)(jest-environment-jsdom@30.3.0(canvas@3.0.0))(jest@30.3.0(@types/node@25.4.0)(ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3)))(jiti@2.6.1)(typescript@5.9.3)(yaml@2.7.0)
'@angular-devkit/core': 21.2.2(chokidar@5.0.0)
'@angular/compiler-cli': 21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3)
'@angular/core': 21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1)
'@angular/platform-browser-dynamic': 21.2.4(@angular/common@21.2.4(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(rxjs@7.8.2))(@angular/compiler@21.2.4)(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(@angular/platform-browser@21.2.4(@angular/common@21.2.4(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(rxjs@7.8.2))(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1)))
- jest: 30.2.0(@types/node@25.4.0)(ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3))
- jest-preset-angular: 16.1.1(cad993f8bb8f711cb7652a0c571fd9cf)
+ jest: 30.3.0(@types/node@25.4.0)(ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3))
+ jest-preset-angular: 16.1.1(135ea37d5312db3eeddee262c6eb1d13)
lodash: 4.17.23
transitivePeerDependencies:
- '@angular/platform-browser'
@@ -6997,7 +7039,7 @@ snapshots:
transitivePeerDependencies:
- chokidar
- '@angular-devkit/build-angular@21.1.2(@angular/compiler-cli@21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3))(@angular/compiler@21.2.4)(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(@angular/localize@21.2.4(@angular/compiler-cli@21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3))(@angular/compiler@21.2.4))(@angular/platform-browser@21.2.4(@angular/common@21.2.4(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(rxjs@7.8.2))(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1)))(@types/node@25.4.0)(chokidar@5.0.0)(jest-environment-jsdom@30.2.0(canvas@3.0.0))(jest@30.2.0(@types/node@25.4.0)(ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3)))(jiti@2.6.1)(typescript@5.9.3)(yaml@2.7.0)':
+ '@angular-devkit/build-angular@21.1.2(@angular/compiler-cli@21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3))(@angular/compiler@21.2.4)(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(@angular/localize@21.2.4(@angular/compiler-cli@21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3))(@angular/compiler@21.2.4))(@angular/platform-browser@21.2.4(@angular/common@21.2.4(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(rxjs@7.8.2))(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1)))(@types/node@25.4.0)(chokidar@5.0.0)(jest-environment-jsdom@30.3.0(canvas@3.0.0))(jest@30.3.0(@types/node@25.4.0)(ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3)))(jiti@2.6.1)(typescript@5.9.3)(yaml@2.7.0)':
dependencies:
'@ampproject/remapping': 2.3.0
'@angular-devkit/architect': 0.2101.2(chokidar@5.0.0)
@@ -7060,8 +7102,8 @@ snapshots:
'@angular/localize': 21.2.4(@angular/compiler-cli@21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3))(@angular/compiler@21.2.4)
'@angular/platform-browser': 21.2.4(@angular/common@21.2.4(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))(rxjs@7.8.2))(@angular/core@21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1))
esbuild: 0.27.2
- jest: 30.2.0(@types/node@25.4.0)(ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3))
- jest-environment-jsdom: 30.2.0(canvas@3.0.0)
+ jest: 30.3.0(@types/node@25.4.0)(ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3))
+ jest-environment-jsdom: 30.3.0(canvas@3.0.0)
transitivePeerDependencies:
- '@angular/compiler'
- '@rspack/core'
@@ -7710,7 +7752,7 @@ snapshots:
'@babel/core': 7.29.0
'@babel/helper-plugin-utils': 7.28.6
- '@babel/plugin-syntax-jsx@7.27.1(@babel/core@7.29.0)':
+ '@babel/plugin-syntax-jsx@7.28.6(@babel/core@7.29.0)':
dependencies:
'@babel/core': 7.29.0
'@babel/helper-plugin-utils': 7.28.6
@@ -7755,7 +7797,7 @@ snapshots:
'@babel/core': 7.29.0
'@babel/helper-plugin-utils': 7.28.6
- '@babel/plugin-syntax-typescript@7.27.1(@babel/core@7.29.0)':
+ '@babel/plugin-syntax-typescript@7.28.6(@babel/core@7.29.0)':
dependencies:
'@babel/core': 7.29.0
'@babel/helper-plugin-utils': 7.28.6
@@ -8270,16 +8312,32 @@ snapshots:
tslib: 2.8.1
optional: true
+ '@emnapi/core@1.9.0':
+ dependencies:
+ '@emnapi/wasi-threads': 1.2.0
+ tslib: 2.8.1
+ optional: true
+
'@emnapi/runtime@1.8.1':
dependencies:
tslib: 2.8.1
optional: true
+ '@emnapi/runtime@1.9.0':
+ dependencies:
+ tslib: 2.8.1
+ optional: true
+
'@emnapi/wasi-threads@1.1.0':
dependencies:
tslib: 2.8.1
optional: true
+ '@emnapi/wasi-threads@1.2.0':
+ dependencies:
+ tslib: 2.8.1
+ optional: true
+
'@esbuild/aix-ppc64@0.27.2':
optional: true
@@ -8638,44 +8696,43 @@ snapshots:
'@istanbuljs/schema@0.1.3': {}
- '@jest/console@30.2.0':
+ '@jest/console@30.3.0':
dependencies:
- '@jest/types': 30.2.0
+ '@jest/types': 30.3.0
'@types/node': 25.4.0
chalk: 4.1.2
- jest-message-util: 30.2.0
- jest-util: 30.2.0
+ jest-message-util: 30.3.0
+ jest-util: 30.3.0
slash: 3.0.0
- '@jest/core@30.2.0(ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3))':
+ '@jest/core@30.3.0(ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3))':
dependencies:
- '@jest/console': 30.2.0
+ '@jest/console': 30.3.0
'@jest/pattern': 30.0.1
- '@jest/reporters': 30.2.0
- '@jest/test-result': 30.2.0
- '@jest/transform': 30.2.0
- '@jest/types': 30.2.0
+ '@jest/reporters': 30.3.0
+ '@jest/test-result': 30.3.0
+ '@jest/transform': 30.3.0
+ '@jest/types': 30.3.0
'@types/node': 25.4.0
ansi-escapes: 4.3.2
chalk: 4.1.2
- ci-info: 4.3.0
+ ci-info: 4.4.0
exit-x: 0.2.2
graceful-fs: 4.2.11
- jest-changed-files: 30.2.0
- jest-config: 30.2.0(@types/node@25.4.0)(ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3))
- jest-haste-map: 30.2.0
- jest-message-util: 30.2.0
+ jest-changed-files: 30.3.0
+ jest-config: 30.3.0(@types/node@25.4.0)(ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3))
+ jest-haste-map: 30.3.0
+ jest-message-util: 30.3.0
jest-regex-util: 30.0.1
- jest-resolve: 30.2.0
- jest-resolve-dependencies: 30.2.0
- jest-runner: 30.2.0
- jest-runtime: 30.2.0
- jest-snapshot: 30.2.0
- jest-util: 30.2.0
- jest-validate: 30.2.0
- jest-watcher: 30.2.0
- micromatch: 4.0.8
- pretty-format: 30.2.0
+ jest-resolve: 30.3.0
+ jest-resolve-dependencies: 30.3.0
+ jest-runner: 30.3.0
+ jest-runtime: 30.3.0
+ jest-snapshot: 30.3.0
+ jest-util: 30.3.0
+ jest-validate: 30.3.0
+ jest-watcher: 30.3.0
+ pretty-format: 30.3.0
slash: 3.0.0
transitivePeerDependencies:
- babel-plugin-macros
@@ -8685,6 +8742,8 @@ snapshots:
'@jest/diff-sequences@30.0.1': {}
+ '@jest/diff-sequences@30.3.0': {}
+
'@jest/environment-jsdom-abstract@30.2.0(canvas@3.0.0)(jsdom@26.1.0(canvas@3.0.0))':
dependencies:
'@jest/environment': 30.2.0
@@ -8698,6 +8757,19 @@ snapshots:
optionalDependencies:
canvas: 3.0.0
+ '@jest/environment-jsdom-abstract@30.3.0(canvas@3.0.0)(jsdom@26.1.0(canvas@3.0.0))':
+ dependencies:
+ '@jest/environment': 30.3.0
+ '@jest/fake-timers': 30.3.0
+ '@jest/types': 30.3.0
+ '@types/jsdom': 21.1.7
+ '@types/node': 25.4.0
+ jest-mock: 30.3.0
+ jest-util: 30.3.0
+ jsdom: 26.1.0(canvas@3.0.0)
+ optionalDependencies:
+ canvas: 3.0.0
+
'@jest/environment@30.2.0':
dependencies:
'@jest/fake-timers': 30.2.0
@@ -8705,18 +8777,25 @@ snapshots:
'@types/node': 25.4.0
jest-mock: 30.2.0
+ '@jest/environment@30.3.0':
+ dependencies:
+ '@jest/fake-timers': 30.3.0
+ '@jest/types': 30.3.0
+ '@types/node': 25.4.0
+ jest-mock: 30.3.0
+
'@jest/expect-utils@30.0.5':
dependencies:
'@jest/get-type': 30.0.1
- '@jest/expect-utils@30.2.0':
+ '@jest/expect-utils@30.3.0':
dependencies:
'@jest/get-type': 30.1.0
- '@jest/expect@30.2.0':
+ '@jest/expect@30.3.0':
dependencies:
- expect: 30.2.0
- jest-snapshot: 30.2.0
+ expect: 30.3.0
+ jest-snapshot: 30.3.0
transitivePeerDependencies:
- supports-color
@@ -8729,16 +8808,25 @@ snapshots:
jest-mock: 30.2.0
jest-util: 30.2.0
+ '@jest/fake-timers@30.3.0':
+ dependencies:
+ '@jest/types': 30.3.0
+ '@sinonjs/fake-timers': 15.1.1
+ '@types/node': 25.4.0
+ jest-message-util: 30.3.0
+ jest-mock: 30.3.0
+ jest-util: 30.3.0
+
'@jest/get-type@30.0.1': {}
'@jest/get-type@30.1.0': {}
- '@jest/globals@30.2.0':
+ '@jest/globals@30.3.0':
dependencies:
- '@jest/environment': 30.2.0
- '@jest/expect': 30.2.0
- '@jest/types': 30.2.0
- jest-mock: 30.2.0
+ '@jest/environment': 30.3.0
+ '@jest/expect': 30.3.0
+ '@jest/types': 30.3.0
+ jest-mock: 30.3.0
transitivePeerDependencies:
- supports-color
@@ -8747,28 +8835,28 @@ snapshots:
'@types/node': 25.4.0
jest-regex-util: 30.0.1
- '@jest/reporters@30.2.0':
+ '@jest/reporters@30.3.0':
dependencies:
'@bcoe/v8-coverage': 0.2.3
- '@jest/console': 30.2.0
- '@jest/test-result': 30.2.0
- '@jest/transform': 30.2.0
- '@jest/types': 30.2.0
+ '@jest/console': 30.3.0
+ '@jest/test-result': 30.3.0
+ '@jest/transform': 30.3.0
+ '@jest/types': 30.3.0
'@jridgewell/trace-mapping': 0.3.31
'@types/node': 25.4.0
chalk: 4.1.2
- collect-v8-coverage: 1.0.2
+ collect-v8-coverage: 1.0.3
exit-x: 0.2.2
- glob: 10.4.5
+ glob: 10.5.0
graceful-fs: 4.2.11
istanbul-lib-coverage: 3.2.2
istanbul-lib-instrument: 6.0.3
istanbul-lib-report: 3.0.1
istanbul-lib-source-maps: 5.0.6
istanbul-reports: 3.2.0
- jest-message-util: 30.2.0
- jest-util: 30.2.0
- jest-worker: 30.2.0
+ jest-message-util: 30.3.0
+ jest-util: 30.3.0
+ jest-worker: 30.3.0
slash: 3.0.0
string-length: 4.0.2
v8-to-istanbul: 9.3.0
@@ -8783,9 +8871,9 @@ snapshots:
dependencies:
'@sinclair/typebox': 0.34.48
- '@jest/snapshot-utils@30.2.0':
+ '@jest/snapshot-utils@30.3.0':
dependencies:
- '@jest/types': 30.2.0
+ '@jest/types': 30.3.0
chalk: 4.1.2
graceful-fs: 4.2.11
natural-compare: 1.4.0
@@ -8796,34 +8884,33 @@ snapshots:
callsites: 3.1.0
graceful-fs: 4.2.11
- '@jest/test-result@30.2.0':
+ '@jest/test-result@30.3.0':
dependencies:
- '@jest/console': 30.2.0
- '@jest/types': 30.2.0
+ '@jest/console': 30.3.0
+ '@jest/types': 30.3.0
'@types/istanbul-lib-coverage': 2.0.6
- collect-v8-coverage: 1.0.2
+ collect-v8-coverage: 1.0.3
- '@jest/test-sequencer@30.2.0':
+ '@jest/test-sequencer@30.3.0':
dependencies:
- '@jest/test-result': 30.2.0
+ '@jest/test-result': 30.3.0
graceful-fs: 4.2.11
- jest-haste-map: 30.2.0
+ jest-haste-map: 30.3.0
slash: 3.0.0
- '@jest/transform@30.2.0':
+ '@jest/transform@30.3.0':
dependencies:
'@babel/core': 7.29.0
- '@jest/types': 30.2.0
+ '@jest/types': 30.3.0
'@jridgewell/trace-mapping': 0.3.31
babel-plugin-istanbul: 7.0.1
chalk: 4.1.2
convert-source-map: 2.0.0
fast-json-stable-stringify: 2.1.0
graceful-fs: 4.2.11
- jest-haste-map: 30.2.0
+ jest-haste-map: 30.3.0
jest-regex-util: 30.0.1
- jest-util: 30.2.0
- micromatch: 4.0.8
+ jest-util: 30.3.0
pirates: 4.0.7
slash: 3.0.0
write-file-atomic: 5.0.1
@@ -8837,7 +8924,7 @@ snapshots:
'@types/istanbul-lib-coverage': 2.0.6
'@types/istanbul-reports': 3.0.4
'@types/node': 25.4.0
- '@types/yargs': 17.0.33
+ '@types/yargs': 17.0.35
chalk: 4.1.2
'@jest/types@30.2.0':
@@ -8847,7 +8934,17 @@ snapshots:
'@types/istanbul-lib-coverage': 2.0.6
'@types/istanbul-reports': 3.0.4
'@types/node': 25.4.0
- '@types/yargs': 17.0.33
+ '@types/yargs': 17.0.35
+ chalk: 4.1.2
+
+ '@jest/types@30.3.0':
+ dependencies:
+ '@jest/pattern': 30.0.1
+ '@jest/schemas': 30.0.5
+ '@types/istanbul-lib-coverage': 2.0.6
+ '@types/istanbul-reports': 3.0.4
+ '@types/node': 25.4.0
+ '@types/yargs': 17.0.35
chalk: 4.1.2
'@jridgewell/gen-mapping@0.3.13':
@@ -9222,8 +9319,8 @@ snapshots:
'@napi-rs/wasm-runtime@0.2.12':
dependencies:
- '@emnapi/core': 1.8.1
- '@emnapi/runtime': 1.8.1
+ '@emnapi/core': 1.9.0
+ '@emnapi/runtime': 1.9.0
'@tybys/wasm-util': 0.10.1
optional: true
@@ -9271,7 +9368,7 @@ snapshots:
agent-base: 7.1.4
http-proxy-agent: 7.0.2
https-proxy-agent: 7.0.6
- lru-cache: 11.2.6
+ lru-cache: 11.2.7
socks-proxy-agent: 8.0.5
transitivePeerDependencies:
- supports-color
@@ -9671,6 +9768,10 @@ snapshots:
dependencies:
'@sinonjs/commons': 3.0.1
+ '@sinonjs/fake-timers@15.1.1':
+ dependencies:
+ '@sinonjs/commons': 3.0.1
+
'@standard-schema/spec@1.1.0': {}
'@tsconfig/node10@1.0.9': {}
@@ -9838,7 +9939,7 @@ snapshots:
'@types/yargs-parser@21.0.3': {}
- '@types/yargs@17.0.33':
+ '@types/yargs@17.0.35':
dependencies:
'@types/yargs-parser': 21.0.3
@@ -10224,13 +10325,13 @@ snapshots:
axobject-query@4.1.0: {}
- babel-jest@30.2.0(@babel/core@7.29.0):
+ babel-jest@30.3.0(@babel/core@7.29.0):
dependencies:
'@babel/core': 7.29.0
- '@jest/transform': 30.2.0
+ '@jest/transform': 30.3.0
'@types/babel__core': 7.20.5
babel-plugin-istanbul: 7.0.1
- babel-preset-jest: 30.2.0(@babel/core@7.29.0)
+ babel-preset-jest: 30.3.0(@babel/core@7.29.0)
chalk: 4.1.2
graceful-fs: 4.2.11
slash: 3.0.0
@@ -10253,7 +10354,7 @@ snapshots:
transitivePeerDependencies:
- supports-color
- babel-plugin-jest-hoist@30.2.0:
+ babel-plugin-jest-hoist@30.3.0:
dependencies:
'@types/babel__core': 7.20.5
@@ -10300,10 +10401,10 @@ snapshots:
'@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.29.0)
'@babel/plugin-syntax-top-level-await': 7.14.5(@babel/core@7.29.0)
- babel-preset-jest@30.2.0(@babel/core@7.29.0):
+ babel-preset-jest@30.3.0(@babel/core@7.29.0):
dependencies:
'@babel/core': 7.29.0
- babel-plugin-jest-hoist: 30.2.0
+ babel-plugin-jest-hoist: 30.3.0
babel-preset-current-node-syntax: 1.2.0(@babel/core@7.29.0)
balanced-match@1.0.2: {}
@@ -10519,11 +10620,9 @@ snapshots:
chrome-trace-event@1.0.4: {}
- ci-info@4.3.0: {}
-
ci-info@4.4.0: {}
- cjs-module-lexer@2.1.0: {}
+ cjs-module-lexer@2.2.0: {}
cli-cursor@5.0.0:
dependencies:
@@ -10558,7 +10657,7 @@ snapshots:
co@4.6.0: {}
- collect-v8-coverage@1.0.2: {}
+ collect-v8-coverage@1.0.3: {}
color-convert@2.0.1:
dependencies:
@@ -10704,7 +10803,7 @@ snapshots:
mimic-response: 3.1.0
optional: true
- dedent@1.7.0: {}
+ dedent@1.7.2: {}
deep-extend@0.6.0:
optional: true
@@ -11020,14 +11119,14 @@ snapshots:
jest-mock: 30.0.5
jest-util: 30.0.5
- expect@30.2.0:
+ expect@30.3.0:
dependencies:
- '@jest/expect-utils': 30.2.0
+ '@jest/expect-utils': 30.3.0
'@jest/get-type': 30.1.0
- jest-matcher-utils: 30.2.0
- jest-message-util: 30.2.0
- jest-mock: 30.2.0
- jest-util: 30.2.0
+ jest-matcher-utils: 30.3.0
+ jest-message-util: 30.3.0
+ jest-mock: 30.3.0
+ jest-util: 30.3.0
exponential-backoff@3.1.3: {}
@@ -11256,7 +11355,7 @@ snapshots:
glob-to-regexp@0.4.1: {}
- glob@10.4.5:
+ glob@10.5.0:
dependencies:
foreground-child: 3.3.1
jackspeak: 3.4.3
@@ -11569,31 +11668,31 @@ snapshots:
optionalDependencies:
'@pkgjs/parseargs': 0.11.0
- jest-changed-files@30.2.0:
+ jest-changed-files@30.3.0:
dependencies:
execa: 5.1.1
- jest-util: 30.2.0
+ jest-util: 30.3.0
p-limit: 3.1.0
- jest-circus@30.2.0:
+ jest-circus@30.3.0:
dependencies:
- '@jest/environment': 30.2.0
- '@jest/expect': 30.2.0
- '@jest/test-result': 30.2.0
- '@jest/types': 30.2.0
+ '@jest/environment': 30.3.0
+ '@jest/expect': 30.3.0
+ '@jest/test-result': 30.3.0
+ '@jest/types': 30.3.0
'@types/node': 25.4.0
chalk: 4.1.2
co: 4.6.0
- dedent: 1.7.0
+ dedent: 1.7.2
is-generator-fn: 2.1.0
- jest-each: 30.2.0
- jest-matcher-utils: 30.2.0
- jest-message-util: 30.2.0
- jest-runtime: 30.2.0
- jest-snapshot: 30.2.0
- jest-util: 30.2.0
+ jest-each: 30.3.0
+ jest-matcher-utils: 30.3.0
+ jest-message-util: 30.3.0
+ jest-runtime: 30.3.0
+ jest-snapshot: 30.3.0
+ jest-util: 30.3.0
p-limit: 3.1.0
- pretty-format: 30.2.0
+ pretty-format: 30.3.0
pure-rand: 7.0.1
slash: 3.0.0
stack-utils: 2.0.6
@@ -11601,17 +11700,17 @@ snapshots:
- babel-plugin-macros
- supports-color
- jest-cli@30.2.0(@types/node@25.4.0)(ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3)):
+ jest-cli@30.3.0(@types/node@25.4.0)(ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3)):
dependencies:
- '@jest/core': 30.2.0(ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3))
- '@jest/test-result': 30.2.0
- '@jest/types': 30.2.0
+ '@jest/core': 30.3.0(ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3))
+ '@jest/test-result': 30.3.0
+ '@jest/types': 30.3.0
chalk: 4.1.2
exit-x: 0.2.2
import-local: 3.2.0
- jest-config: 30.2.0(@types/node@25.4.0)(ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3))
- jest-util: 30.2.0
- jest-validate: 30.2.0
+ jest-config: 30.3.0(@types/node@25.4.0)(ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3))
+ jest-util: 30.3.0
+ jest-validate: 30.3.0
yargs: 17.7.2
transitivePeerDependencies:
- '@types/node'
@@ -11620,30 +11719,29 @@ snapshots:
- supports-color
- ts-node
- jest-config@30.2.0(@types/node@25.4.0)(ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3)):
+ jest-config@30.3.0(@types/node@25.4.0)(ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3)):
dependencies:
'@babel/core': 7.29.0
'@jest/get-type': 30.1.0
'@jest/pattern': 30.0.1
- '@jest/test-sequencer': 30.2.0
- '@jest/types': 30.2.0
- babel-jest: 30.2.0(@babel/core@7.29.0)
+ '@jest/test-sequencer': 30.3.0
+ '@jest/types': 30.3.0
+ babel-jest: 30.3.0(@babel/core@7.29.0)
chalk: 4.1.2
- ci-info: 4.3.0
+ ci-info: 4.4.0
deepmerge: 4.3.1
- glob: 10.4.5
+ glob: 10.5.0
graceful-fs: 4.2.11
- jest-circus: 30.2.0
+ jest-circus: 30.3.0
jest-docblock: 30.2.0
- jest-environment-node: 30.2.0
+ jest-environment-node: 30.3.0
jest-regex-util: 30.0.1
- jest-resolve: 30.2.0
- jest-runner: 30.2.0
- jest-util: 30.2.0
- jest-validate: 30.2.0
- micromatch: 4.0.8
+ jest-resolve: 30.3.0
+ jest-runner: 30.3.0
+ jest-util: 30.3.0
+ jest-validate: 30.3.0
parse-json: 5.2.0
- pretty-format: 30.2.0
+ pretty-format: 30.3.0
slash: 3.0.0
strip-json-comments: 3.1.1
optionalDependencies:
@@ -11667,31 +11765,29 @@ snapshots:
chalk: 4.1.2
pretty-format: 30.0.5
- jest-diff@30.2.0:
+ jest-diff@30.3.0:
dependencies:
- '@jest/diff-sequences': 30.0.1
+ '@jest/diff-sequences': 30.3.0
'@jest/get-type': 30.1.0
chalk: 4.1.2
- pretty-format: 30.2.0
+ pretty-format: 30.3.0
jest-docblock@30.2.0:
dependencies:
detect-newline: 3.1.0
- jest-each@30.2.0:
+ jest-each@30.3.0:
dependencies:
'@jest/get-type': 30.1.0
- '@jest/types': 30.2.0
+ '@jest/types': 30.3.0
chalk: 4.1.2
- jest-util: 30.2.0
- pretty-format: 30.2.0
+ jest-util: 30.3.0
+ pretty-format: 30.3.0
- jest-environment-jsdom@30.2.0(canvas@3.0.0):
+ jest-environment-jsdom@30.3.0(canvas@3.0.0):
dependencies:
- '@jest/environment': 30.2.0
- '@jest/environment-jsdom-abstract': 30.2.0(canvas@3.0.0)(jsdom@26.1.0(canvas@3.0.0))
- '@types/jsdom': 21.1.7
- '@types/node': 25.4.0
+ '@jest/environment': 30.3.0
+ '@jest/environment-jsdom-abstract': 30.3.0(canvas@3.0.0)(jsdom@26.1.0(canvas@3.0.0))
jsdom: 26.1.0(canvas@3.0.0)
optionalDependencies:
canvas: 3.0.0
@@ -11700,29 +11796,29 @@ snapshots:
- supports-color
- utf-8-validate
- jest-environment-node@30.2.0:
+ jest-environment-node@30.3.0:
dependencies:
- '@jest/environment': 30.2.0
- '@jest/fake-timers': 30.2.0
- '@jest/types': 30.2.0
+ '@jest/environment': 30.3.0
+ '@jest/fake-timers': 30.3.0
+ '@jest/types': 30.3.0
'@types/node': 25.4.0
- jest-mock: 30.2.0
- jest-util: 30.2.0
- jest-validate: 30.2.0
+ jest-mock: 30.3.0
+ jest-util: 30.3.0
+ jest-validate: 30.3.0
jest-get-type@29.6.3: {}
- jest-haste-map@30.2.0:
+ jest-haste-map@30.3.0:
dependencies:
- '@jest/types': 30.2.0
+ '@jest/types': 30.3.0
'@types/node': 25.4.0
anymatch: 3.1.3
fb-watchman: 2.0.2
graceful-fs: 4.2.11
jest-regex-util: 30.0.1
- jest-util: 30.2.0
- jest-worker: 30.2.0
- micromatch: 4.0.8
+ jest-util: 30.3.0
+ jest-worker: 30.3.0
+ picomatch: 4.0.3
walker: 1.0.8
optionalDependencies:
fsevents: 2.3.3
@@ -11734,10 +11830,10 @@ snapshots:
uuid: 8.3.2
xml: 1.0.1
- jest-leak-detector@30.2.0:
+ jest-leak-detector@30.3.0:
dependencies:
'@jest/get-type': 30.1.0
- pretty-format: 30.2.0
+ pretty-format: 30.3.0
jest-matcher-utils@30.0.5:
dependencies:
@@ -11746,12 +11842,12 @@ snapshots:
jest-diff: 30.0.5
pretty-format: 30.0.5
- jest-matcher-utils@30.2.0:
+ jest-matcher-utils@30.3.0:
dependencies:
'@jest/get-type': 30.1.0
chalk: 4.1.2
- jest-diff: 30.2.0
- pretty-format: 30.2.0
+ jest-diff: 30.3.0
+ pretty-format: 30.3.0
jest-message-util@30.0.5:
dependencies:
@@ -11777,6 +11873,18 @@ snapshots:
slash: 3.0.0
stack-utils: 2.0.6
+ jest-message-util@30.3.0:
+ dependencies:
+ '@babel/code-frame': 7.29.0
+ '@jest/types': 30.3.0
+ '@types/stack-utils': 2.0.3
+ chalk: 4.1.2
+ graceful-fs: 4.2.11
+ picomatch: 4.0.3
+ pretty-format: 30.3.0
+ slash: 3.0.0
+ stack-utils: 2.0.6
+
jest-mock@30.0.5:
dependencies:
'@jest/types': 30.0.5
@@ -11789,11 +11897,17 @@ snapshots:
'@types/node': 25.4.0
jest-util: 30.2.0
- jest-pnp-resolver@1.2.3(jest-resolve@30.2.0):
- optionalDependencies:
- jest-resolve: 30.2.0
+ jest-mock@30.3.0:
+ dependencies:
+ '@jest/types': 30.3.0
+ '@types/node': 25.4.0
+ jest-util: 30.3.0
- jest-preset-angular@16.1.1(cad993f8bb8f711cb7652a0c571fd9cf):
+ jest-pnp-resolver@1.2.3(jest-resolve@30.3.0):
+ optionalDependencies:
+ jest-resolve: 30.3.0
+
+ jest-preset-angular@16.1.1(135ea37d5312db3eeddee262c6eb1d13):
dependencies:
'@angular/compiler-cli': 21.2.4(@angular/compiler@21.2.4)(typescript@5.9.3)
'@angular/core': 21.2.4(@angular/compiler@21.2.4)(rxjs@7.8.2)(zone.js@0.16.1)
@@ -11802,11 +11916,11 @@ snapshots:
'@jest/environment-jsdom-abstract': 30.2.0(canvas@3.0.0)(jsdom@26.1.0(canvas@3.0.0))
bs-logger: 0.2.6
esbuild-wasm: 0.27.3
- jest: 30.2.0(@types/node@25.4.0)(ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3))
+ jest: 30.3.0(@types/node@25.4.0)(ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3))
jest-util: 30.2.0
jsdom: 26.1.0(canvas@3.0.0)
pretty-format: 30.2.0
- ts-jest: 29.4.6(@babel/core@7.29.0)(@jest/transform@30.2.0)(@jest/types@30.2.0)(babel-jest@30.2.0(@babel/core@7.29.0))(esbuild@0.27.3)(jest-util@30.2.0)(jest@30.2.0(@types/node@25.4.0)(ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3)))(typescript@5.9.3)
+ ts-jest: 29.4.6(@babel/core@7.29.0)(@jest/transform@30.3.0)(@jest/types@30.3.0)(babel-jest@30.3.0(@babel/core@7.29.0))(esbuild@0.27.3)(jest-util@30.2.0)(jest@30.3.0(@types/node@25.4.0)(ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3)))(typescript@5.9.3)
typescript: 5.9.3
optionalDependencies:
esbuild: 0.27.3
@@ -11819,101 +11933,101 @@ snapshots:
jest-regex-util@30.0.1: {}
- jest-resolve-dependencies@30.2.0:
+ jest-resolve-dependencies@30.3.0:
dependencies:
jest-regex-util: 30.0.1
- jest-snapshot: 30.2.0
+ jest-snapshot: 30.3.0
transitivePeerDependencies:
- supports-color
- jest-resolve@30.2.0:
+ jest-resolve@30.3.0:
dependencies:
chalk: 4.1.2
graceful-fs: 4.2.11
- jest-haste-map: 30.2.0
- jest-pnp-resolver: 1.2.3(jest-resolve@30.2.0)
- jest-util: 30.2.0
- jest-validate: 30.2.0
+ jest-haste-map: 30.3.0
+ jest-pnp-resolver: 1.2.3(jest-resolve@30.3.0)
+ jest-util: 30.3.0
+ jest-validate: 30.3.0
slash: 3.0.0
unrs-resolver: 1.11.1
- jest-runner@30.2.0:
+ jest-runner@30.3.0:
dependencies:
- '@jest/console': 30.2.0
- '@jest/environment': 30.2.0
- '@jest/test-result': 30.2.0
- '@jest/transform': 30.2.0
- '@jest/types': 30.2.0
+ '@jest/console': 30.3.0
+ '@jest/environment': 30.3.0
+ '@jest/test-result': 30.3.0
+ '@jest/transform': 30.3.0
+ '@jest/types': 30.3.0
'@types/node': 25.4.0
chalk: 4.1.2
emittery: 0.13.1
exit-x: 0.2.2
graceful-fs: 4.2.11
jest-docblock: 30.2.0
- jest-environment-node: 30.2.0
- jest-haste-map: 30.2.0
- jest-leak-detector: 30.2.0
- jest-message-util: 30.2.0
- jest-resolve: 30.2.0
- jest-runtime: 30.2.0
- jest-util: 30.2.0
- jest-watcher: 30.2.0
- jest-worker: 30.2.0
+ jest-environment-node: 30.3.0
+ jest-haste-map: 30.3.0
+ jest-leak-detector: 30.3.0
+ jest-message-util: 30.3.0
+ jest-resolve: 30.3.0
+ jest-runtime: 30.3.0
+ jest-util: 30.3.0
+ jest-watcher: 30.3.0
+ jest-worker: 30.3.0
p-limit: 3.1.0
source-map-support: 0.5.13
transitivePeerDependencies:
- supports-color
- jest-runtime@30.2.0:
+ jest-runtime@30.3.0:
dependencies:
- '@jest/environment': 30.2.0
- '@jest/fake-timers': 30.2.0
- '@jest/globals': 30.2.0
+ '@jest/environment': 30.3.0
+ '@jest/fake-timers': 30.3.0
+ '@jest/globals': 30.3.0
'@jest/source-map': 30.0.1
- '@jest/test-result': 30.2.0
- '@jest/transform': 30.2.0
- '@jest/types': 30.2.0
+ '@jest/test-result': 30.3.0
+ '@jest/transform': 30.3.0
+ '@jest/types': 30.3.0
'@types/node': 25.4.0
chalk: 4.1.2
- cjs-module-lexer: 2.1.0
- collect-v8-coverage: 1.0.2
- glob: 10.4.5
+ cjs-module-lexer: 2.2.0
+ collect-v8-coverage: 1.0.3
+ glob: 10.5.0
graceful-fs: 4.2.11
- jest-haste-map: 30.2.0
- jest-message-util: 30.2.0
- jest-mock: 30.2.0
+ jest-haste-map: 30.3.0
+ jest-message-util: 30.3.0
+ jest-mock: 30.3.0
jest-regex-util: 30.0.1
- jest-resolve: 30.2.0
- jest-snapshot: 30.2.0
- jest-util: 30.2.0
+ jest-resolve: 30.3.0
+ jest-snapshot: 30.3.0
+ jest-util: 30.3.0
slash: 3.0.0
strip-bom: 4.0.0
transitivePeerDependencies:
- supports-color
- jest-snapshot@30.2.0:
+ jest-snapshot@30.3.0:
dependencies:
'@babel/core': 7.29.0
'@babel/generator': 7.29.1
- '@babel/plugin-syntax-jsx': 7.27.1(@babel/core@7.29.0)
- '@babel/plugin-syntax-typescript': 7.27.1(@babel/core@7.29.0)
+ '@babel/plugin-syntax-jsx': 7.28.6(@babel/core@7.29.0)
+ '@babel/plugin-syntax-typescript': 7.28.6(@babel/core@7.29.0)
'@babel/types': 7.29.0
- '@jest/expect-utils': 30.2.0
+ '@jest/expect-utils': 30.3.0
'@jest/get-type': 30.1.0
- '@jest/snapshot-utils': 30.2.0
- '@jest/transform': 30.2.0
- '@jest/types': 30.2.0
+ '@jest/snapshot-utils': 30.3.0
+ '@jest/transform': 30.3.0
+ '@jest/types': 30.3.0
babel-preset-current-node-syntax: 1.2.0(@babel/core@7.29.0)
chalk: 4.1.2
- expect: 30.2.0
+ expect: 30.3.0
graceful-fs: 4.2.11
- jest-diff: 30.2.0
- jest-matcher-utils: 30.2.0
- jest-message-util: 30.2.0
- jest-util: 30.2.0
- pretty-format: 30.2.0
+ jest-diff: 30.3.0
+ jest-matcher-utils: 30.3.0
+ jest-message-util: 30.3.0
+ jest-util: 30.3.0
+ pretty-format: 30.3.0
semver: 7.7.4
- synckit: 0.11.11
+ synckit: 0.11.12
transitivePeerDependencies:
- supports-color
@@ -11935,24 +12049,33 @@ snapshots:
graceful-fs: 4.2.11
picomatch: 4.0.3
- jest-validate@30.2.0:
+ jest-util@30.3.0:
+ dependencies:
+ '@jest/types': 30.3.0
+ '@types/node': 25.4.0
+ chalk: 4.1.2
+ ci-info: 4.4.0
+ graceful-fs: 4.2.11
+ picomatch: 4.0.3
+
+ jest-validate@30.3.0:
dependencies:
'@jest/get-type': 30.1.0
- '@jest/types': 30.2.0
+ '@jest/types': 30.3.0
camelcase: 6.3.0
chalk: 4.1.2
leven: 3.1.0
- pretty-format: 30.2.0
+ pretty-format: 30.3.0
- jest-watcher@30.2.0:
+ jest-watcher@30.3.0:
dependencies:
- '@jest/test-result': 30.2.0
- '@jest/types': 30.2.0
+ '@jest/test-result': 30.3.0
+ '@jest/types': 30.3.0
'@types/node': 25.4.0
ansi-escapes: 4.3.2
chalk: 4.1.2
emittery: 0.13.1
- jest-util: 30.2.0
+ jest-util: 30.3.0
string-length: 4.0.2
jest-websocket-mock@2.5.0:
@@ -11966,20 +12089,20 @@ snapshots:
merge-stream: 2.0.0
supports-color: 8.1.1
- jest-worker@30.2.0:
+ jest-worker@30.3.0:
dependencies:
'@types/node': 25.4.0
'@ungap/structured-clone': 1.3.0
- jest-util: 30.2.0
+ jest-util: 30.3.0
merge-stream: 2.0.0
supports-color: 8.1.1
- jest@30.2.0(@types/node@25.4.0)(ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3)):
+ jest@30.3.0(@types/node@25.4.0)(ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3)):
dependencies:
- '@jest/core': 30.2.0(ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3))
- '@jest/types': 30.2.0
+ '@jest/core': 30.3.0(ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3))
+ '@jest/types': 30.3.0
import-local: 3.2.0
- jest-cli: 30.2.0(@types/node@25.4.0)(ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3))
+ jest-cli: 30.3.0(@types/node@25.4.0)(ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3))
transitivePeerDependencies:
- '@types/node'
- babel-plugin-macros
@@ -12011,7 +12134,7 @@ snapshots:
http-proxy-agent: 7.0.2
https-proxy-agent: 7.0.6
is-potential-custom-element-name: 1.0.1
- nwsapi: 2.2.22
+ nwsapi: 2.2.23
parse5: 7.3.0
rrweb-cssom: 0.8.0
saxes: 6.0.0
@@ -12022,7 +12145,7 @@ snapshots:
whatwg-encoding: 3.1.1
whatwg-mimetype: 4.0.0
whatwg-url: 14.2.0
- ws: 8.18.3
+ ws: 8.19.0
xml-name-validator: 5.0.0
optionalDependencies:
canvas: 3.0.0
@@ -12190,6 +12313,8 @@ snapshots:
lru-cache@11.2.6: {}
+ lru-cache@11.2.7: {}
+
lru-cache@5.1.1:
dependencies:
yallist: 3.1.1
@@ -12392,7 +12517,7 @@ snapshots:
napi-build-utils@2.0.0:
optional: true
- napi-postinstall@0.3.3: {}
+ napi-postinstall@0.3.4: {}
natural-compare@1.4.0: {}
@@ -12551,7 +12676,7 @@ snapshots:
dependencies:
boolbase: 1.0.0
- nwsapi@2.2.22: {}
+ nwsapi@2.2.23: {}
object-assign@4.1.1: {}
@@ -12865,6 +12990,12 @@ snapshots:
ansi-styles: 5.2.0
react-is: 18.3.1
+ pretty-format@30.3.0:
+ dependencies:
+ '@jest/schemas': 30.0.5
+ ansi-styles: 5.2.0
+ react-is: 18.3.1
+
proc-log@6.1.0: {}
process-nextick-args@2.0.1: {}
@@ -13480,7 +13611,7 @@ snapshots:
symbol-tree@3.2.4: {}
- synckit@0.11.11:
+ synckit@0.11.12:
dependencies:
'@pkgr/core': 0.2.9
@@ -13594,12 +13725,12 @@ snapshots:
dependencies:
typescript: 5.9.3
- ts-jest@29.4.6(@babel/core@7.29.0)(@jest/transform@30.2.0)(@jest/types@30.2.0)(babel-jest@30.2.0(@babel/core@7.29.0))(esbuild@0.27.3)(jest-util@30.2.0)(jest@30.2.0(@types/node@25.4.0)(ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3)))(typescript@5.9.3):
+ ts-jest@29.4.6(@babel/core@7.29.0)(@jest/transform@30.3.0)(@jest/types@30.3.0)(babel-jest@30.3.0(@babel/core@7.29.0))(esbuild@0.27.3)(jest-util@30.2.0)(jest@30.3.0(@types/node@25.4.0)(ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3)))(typescript@5.9.3):
dependencies:
bs-logger: 0.2.6
fast-json-stable-stringify: 2.1.0
handlebars: 4.7.8
- jest: 30.2.0(@types/node@25.4.0)(ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3))
+ jest: 30.3.0(@types/node@25.4.0)(ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3))
json5: 2.2.3
lodash.memoize: 4.1.2
make-error: 1.3.6
@@ -13609,9 +13740,9 @@ snapshots:
yargs-parser: 21.1.1
optionalDependencies:
'@babel/core': 7.29.0
- '@jest/transform': 30.2.0
- '@jest/types': 30.2.0
- babel-jest: 30.2.0(@babel/core@7.29.0)
+ '@jest/transform': 30.3.0
+ '@jest/types': 30.3.0
+ babel-jest: 30.3.0(@babel/core@7.29.0)
esbuild: 0.27.3
jest-util: 30.2.0
@@ -13724,7 +13855,7 @@ snapshots:
unrs-resolver@1.11.1:
dependencies:
- napi-postinstall: 0.3.3
+ napi-postinstall: 0.3.4
optionalDependencies:
'@unrs/resolver-binding-android-arm-eabi': 1.11.1
'@unrs/resolver-binding-android-arm64': 1.11.1
@@ -14088,8 +14219,6 @@ snapshots:
imurmurhash: 0.1.4
signal-exit: 4.1.0
- ws@8.18.3: {}
-
ws@8.19.0: {}
wsl-utils@0.1.0:
From 261ae9d8ce1400267e213c0d4c83717c2110922d Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Wed, 18 Mar 2026 03:55:03 +0000
Subject: [PATCH 30/38] Chore(deps): Update django-allauth[mfa,socialaccount]
requirement (#12381)
Updates the requirements on [django-allauth[mfa,socialaccount]](https://github.com/sponsors/pennersr) to permit the latest version.
- [Commits](https://github.com/sponsors/pennersr/commits)
---
updated-dependencies:
- dependency-name: django-allauth[mfa,socialaccount]
dependency-version: 65.15.0
dependency-type: direct:production
...
Signed-off-by: dependabot[bot]
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
---
pyproject.toml | 2 +-
uv.lock | 8 ++++----
2 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/pyproject.toml b/pyproject.toml
index a62ad51fa..43ad1e1cc 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -26,7 +26,7 @@ dependencies = [
# WARNING: django does not use semver.
# Only patch versions are guaranteed to not introduce breaking changes.
"django~=5.2.10",
- "django-allauth[mfa,socialaccount]~=65.14.0",
+ "django-allauth[mfa,socialaccount]~=65.15.0",
"django-auditlog~=3.4.1",
"django-cachalot~=2.9.0",
"django-celery-results~=2.6.0",
diff --git a/uv.lock b/uv.lock
index d7a56fe5a..1bab7f323 100644
--- a/uv.lock
+++ b/uv.lock
@@ -897,15 +897,15 @@ wheels = [
[[package]]
name = "django-allauth"
-version = "65.14.1"
+version = "65.15.0"
source = { registry = "https://pypi.org/simple" }
dependencies = [
{ name = "asgiref", marker = "sys_platform == 'darwin' or sys_platform == 'linux'" },
{ name = "django", marker = "sys_platform == 'darwin' or sys_platform == 'linux'" },
]
-sdist = { url = "https://files.pythonhosted.org/packages/fb/02/549b6f41ba3e55d4e2cf8e181cdf57b50035a3c0bdddb710a7df0b24efb0/django_allauth-65.14.1.tar.gz", hash = "sha256:2467656d0adc835607e407847054979ab5a943778f6eb8980ed2a29eee6c5790", size = 1993088, upload-time = "2026-02-07T22:36:52.279Z" }
+sdist = { url = "https://files.pythonhosted.org/packages/84/c1/d3385f4c3169c1d6eea3c63aed0f36af51478c1d72e46db12bb1a08f8034/django_allauth-65.15.0.tar.gz", hash = "sha256:b404d48cf0c3ee14dacc834c541f30adedba2ff1c433980ecc494d6cb0b395a8", size = 2215709, upload-time = "2026-03-09T13:51:28.675Z" }
wheels = [
- { url = "https://files.pythonhosted.org/packages/28/80/05e2b3fffb80260af2dbb179d186929d7531bc9331974ba774d1d8eb3e38/django_allauth-65.14.1-py3-none-any.whl", hash = "sha256:204d8a07f217c41769a62aa4c7ae7afeb2886c841bebda6964e613e5be72e8b3", size = 1793120, upload-time = "2026-02-07T22:37:03.486Z" },
+ { url = "https://files.pythonhosted.org/packages/75/b8/c8411339171bd8bc075c09ef190fb42195e9a2149e5c5026e094fe62fce0/django_allauth-65.15.0-py3-none-any.whl", hash = "sha256:ad9fc49c49a9368eaa5bb95456b76e2a4f377b3c6862ee8443507816578c098d", size = 2022994, upload-time = "2026-03-09T13:51:19.711Z" },
]
[package.optional-dependencies]
@@ -3008,7 +3008,7 @@ requires-dist = [
{ name = "concurrent-log-handler", specifier = "~=0.9.25" },
{ name = "dateparser", specifier = "~=1.2" },
{ name = "django", specifier = "~=5.2.10" },
- { name = "django-allauth", extras = ["mfa", "socialaccount"], specifier = "~=65.14.0" },
+ { name = "django-allauth", extras = ["mfa", "socialaccount"], specifier = "~=65.15.0" },
{ name = "django-auditlog", specifier = "~=3.4.1" },
{ name = "django-cachalot", specifier = "~=2.9.0" },
{ name = "django-celery-results", specifier = "~=2.6.0" },
From 79da72f69c6f1b8aee54b18bed380d0494f262fa Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Wed, 18 Mar 2026 04:07:06 +0000
Subject: [PATCH 31/38] Chore(deps-dev): Bump types-python-dateutil (#12380)
Bumps [types-python-dateutil](https://github.com/typeshed-internal/stub_uploader) from 2.9.0.20260124 to 2.9.0.20260305.
- [Commits](https://github.com/typeshed-internal/stub_uploader/commits)
---
updated-dependencies:
- dependency-name: types-python-dateutil
dependency-version: 2.9.0.20260305
dependency-type: direct:development
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot]
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
---
uv.lock | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/uv.lock b/uv.lock
index 1bab7f323..636c2588b 100644
--- a/uv.lock
+++ b/uv.lock
@@ -5104,11 +5104,11 @@ wheels = [
[[package]]
name = "types-python-dateutil"
-version = "2.9.0.20260124"
+version = "2.9.0.20260305"
source = { registry = "https://pypi.org/simple" }
-sdist = { url = "https://files.pythonhosted.org/packages/fe/41/4f8eb1ce08688a9e3e23709ed07089ccdeaf95b93745bfb768c6da71197d/types_python_dateutil-2.9.0.20260124.tar.gz", hash = "sha256:7d2db9f860820c30e5b8152bfe78dbdf795f7d1c6176057424e8b3fdd1f581af", size = 16596, upload-time = "2026-01-24T03:18:42.975Z" }
+sdist = { url = "https://files.pythonhosted.org/packages/1d/c7/025c624f347e10476b439a6619a95f1d200250ea88e7ccea6e09e48a7544/types_python_dateutil-2.9.0.20260305.tar.gz", hash = "sha256:389717c9f64d8f769f36d55a01873915b37e97e52ce21928198d210fbd393c8b", size = 16885, upload-time = "2026-03-05T04:00:47.409Z" }
wheels = [
- { url = "https://files.pythonhosted.org/packages/5a/c2/aa5e3f4103cc8b1dcf92432415dde75d70021d634ecfd95b2e913cf43e17/types_python_dateutil-2.9.0.20260124-py3-none-any.whl", hash = "sha256:f802977ae08bf2260142e7ca1ab9d4403772a254409f7bbdf652229997124951", size = 18266, upload-time = "2026-01-24T03:18:42.155Z" },
+ { url = "https://files.pythonhosted.org/packages/0a/77/8c0d1ec97f0d9707ad3d8fa270ab8964e7b31b076d2f641c94987395cc75/types_python_dateutil-2.9.0.20260305-py3-none-any.whl", hash = "sha256:a3be9ca444d38cadabd756cfbb29780d8b338ae2a3020e73c266a83cc3025dd7", size = 18419, upload-time = "2026-03-05T04:00:46.392Z" },
]
[[package]]
From 7e94dd8208772c99b25b2dbe0d281739ec5bdcf5 Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Wed, 18 Mar 2026 04:29:01 +0000
Subject: [PATCH 32/38] Chore(deps): Bump openai in the utilities-minor group
(#12379)
Bumps the utilities-minor group with 1 update: [openai](https://github.com/openai/openai-python).
Updates `openai` from 2.24.0 to 2.26.0
- [Release notes](https://github.com/openai/openai-python/releases)
- [Changelog](https://github.com/openai/openai-python/blob/main/CHANGELOG.md)
- [Commits](https://github.com/openai/openai-python/compare/v2.24.0...v2.26.0)
---
updated-dependencies:
- dependency-name: openai
dependency-version: 2.26.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: utilities-minor
...
Signed-off-by: dependabot[bot]
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
---
uv.lock | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/uv.lock b/uv.lock
index 636c2588b..5e9199f30 100644
--- a/uv.lock
+++ b/uv.lock
@@ -2821,7 +2821,7 @@ wheels = [
[[package]]
name = "openai"
-version = "2.24.0"
+version = "2.26.0"
source = { registry = "https://pypi.org/simple" }
dependencies = [
{ name = "anyio", marker = "sys_platform == 'darwin' or sys_platform == 'linux'" },
@@ -2833,9 +2833,9 @@ dependencies = [
{ name = "tqdm", marker = "sys_platform == 'darwin' or sys_platform == 'linux'" },
{ name = "typing-extensions", marker = "sys_platform == 'darwin' or sys_platform == 'linux'" },
]
-sdist = { url = "https://files.pythonhosted.org/packages/55/13/17e87641b89b74552ed408a92b231283786523edddc95f3545809fab673c/openai-2.24.0.tar.gz", hash = "sha256:1e5769f540dbd01cb33bc4716a23e67b9d695161a734aff9c5f925e2bf99a673", size = 658717, upload-time = "2026-02-24T20:02:07.958Z" }
+sdist = { url = "https://files.pythonhosted.org/packages/d7/91/2a06c4e9597c338cac1e5e5a8dd6f29e1836fc229c4c523529dca387fda8/openai-2.26.0.tar.gz", hash = "sha256:b41f37c140ae0034a6e92b0c509376d907f3a66109935fba2c1b471a7c05a8fb", size = 666702, upload-time = "2026-03-05T23:17:35.874Z" }
wheels = [
- { url = "https://files.pythonhosted.org/packages/c9/30/844dc675ee6902579b8eef01ed23917cc9319a1c9c0c14ec6e39340c96d0/openai-2.24.0-py3-none-any.whl", hash = "sha256:fed30480d7d6c884303287bde864980a4b137b60553ffbcf9ab4a233b7a73d94", size = 1120122, upload-time = "2026-02-24T20:02:05.669Z" },
+ { url = "https://files.pythonhosted.org/packages/c6/2e/3f73e8ca53718952222cacd0cf7eecc9db439d020f0c1fe7ae717e4e199a/openai-2.26.0-py3-none-any.whl", hash = "sha256:6151bf8f83802f036117f06cc8a57b3a4da60da9926826cc96747888b57f394f", size = 1136409, upload-time = "2026-03-05T23:17:34.072Z" },
]
[[package]]
From b98697ab8bd2e0124acd7093a55a18e2c7677960 Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Tue, 17 Mar 2026 22:31:04 -0700
Subject: [PATCH 33/38] Chore(deps): Bump the utilities-patch group across 1
directory with 2 updates (#12382)
Bumps the utilities-patch group with 2 updates in the / directory: [llama-index-core](https://github.com/run-llama/llama_index) and [zensical](https://github.com/zensical/zensical).
Updates `llama-index-core` from 0.14.15 to 0.14.16
- [Release notes](https://github.com/run-llama/llama_index/releases)
- [Changelog](https://github.com/run-llama/llama_index/blob/main/CHANGELOG.md)
- [Commits](https://github.com/run-llama/llama_index/compare/v0.14.15...v0.14.16)
Updates `zensical` from 0.0.24 to 0.0.25
- [Release notes](https://github.com/zensical/zensical/releases)
- [Commits](https://github.com/zensical/zensical/compare/v0.0.24...v0.0.25)
---
updated-dependencies:
- dependency-name: llama-index-core
dependency-version: 0.14.16
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: utilities-patch
- dependency-name: zensical
dependency-version: 0.0.25
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: utilities-patch
...
Signed-off-by: dependabot[bot]
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
---
uv.lock | 28 +++++++++++++---------------
1 file changed, 13 insertions(+), 15 deletions(-)
diff --git a/uv.lock b/uv.lock
index 5e9199f30..e06bc5e79 100644
--- a/uv.lock
+++ b/uv.lock
@@ -2148,7 +2148,7 @@ wheels = [
[[package]]
name = "llama-index-core"
-version = "0.14.15"
+version = "0.14.16"
source = { registry = "https://pypi.org/simple" }
dependencies = [
{ name = "aiohttp", marker = "sys_platform == 'darwin' or sys_platform == 'linux'" },
@@ -2180,9 +2180,9 @@ dependencies = [
{ name = "typing-inspect", marker = "sys_platform == 'darwin' or sys_platform == 'linux'" },
{ name = "wrapt", marker = "sys_platform == 'darwin' or sys_platform == 'linux'" },
]
-sdist = { url = "https://files.pythonhosted.org/packages/0c/4f/7c714bdf94dd229707b43e7f8cedf3aed0a99938fd46a9ad8a418c199988/llama_index_core-0.14.15.tar.gz", hash = "sha256:3766aeeb95921b3a2af8c2a51d844f75f404215336e1639098e3652db52c68ce", size = 11593505, upload-time = "2026-02-18T19:05:48.274Z" }
+sdist = { url = "https://files.pythonhosted.org/packages/13/cb/1d7383f9f4520bb1d921c34f18c147b4b270007135212cedfa240edcd4c3/llama_index_core-0.14.16.tar.gz", hash = "sha256:cf2b7e4b798cb5ebad19c935174c200595c7ecff84a83793540cc27b03636a52", size = 11599715, upload-time = "2026-03-10T19:19:52.476Z" }
wheels = [
- { url = "https://files.pythonhosted.org/packages/41/9e/262f6465ee4fffa40698b3cc2177e377ce7d945d3bd8b7d9c6b09448625d/llama_index_core-0.14.15-py3-none-any.whl", hash = "sha256:e02b321c10673871a38aaefdc4a93d5ae8ec324cad4408683189e5a1aa1e3d52", size = 11937002, upload-time = "2026-02-18T19:05:45.855Z" },
+ { url = "https://files.pythonhosted.org/packages/b4/f5/a33839bae0bd07e4030969bdba1ac90665e359ae88c56c296991ae16b8a8/llama_index_core-0.14.16-py3-none-any.whl", hash = "sha256:0cc273ebc44d51ad636217661a25f9cd02fb2d0440641430f105da3ae9f43a6b", size = 11944927, upload-time = "2026-03-10T19:19:48.043Z" },
]
[[package]]
@@ -5639,7 +5639,7 @@ wheels = [
[[package]]
name = "zensical"
-version = "0.0.24"
+version = "0.0.25"
source = { registry = "https://pypi.org/simple" }
dependencies = [
{ name = "click", marker = "sys_platform == 'darwin' or sys_platform == 'linux'" },
@@ -5649,18 +5649,16 @@ dependencies = [
{ name = "pymdown-extensions", marker = "sys_platform == 'darwin' or sys_platform == 'linux'" },
{ name = "pyyaml", marker = "sys_platform == 'darwin' or sys_platform == 'linux'" },
]
-sdist = { url = "https://files.pythonhosted.org/packages/3b/96/9c6cbdd7b351d1023cdbbcf7872d4cb118b0334cfe5821b99e0dd18e3f00/zensical-0.0.24.tar.gz", hash = "sha256:b5d99e225329bf4f98c8022bdf0a0ee9588c2fada7b4df1b7b896fcc62b37ec3", size = 3840688, upload-time = "2026-02-26T09:43:44.557Z" }
+sdist = { url = "https://files.pythonhosted.org/packages/18/69/4b49ce778059b4888ea854cf4db40e1b2080fe828b7280198999048d6fce/zensical-0.0.25.tar.gz", hash = "sha256:462808359d949469fa7209d367f2e38ed796744074e5dadeac9ddfef0c44be25", size = 3841318, upload-time = "2026-03-10T19:32:35.048Z" }
wheels = [
- { url = "https://files.pythonhosted.org/packages/8e/aa/b8201af30e376a67566f044a1c56210edac5ae923fd986a836d2cf593c9c/zensical-0.0.24-cp310-abi3-macosx_10_12_x86_64.whl", hash = "sha256:d390c5453a5541ca35d4f9e1796df942b6612c546e3153dd928236d3b758409a", size = 12263407, upload-time = "2026-02-26T09:43:14.716Z" },
- { url = "https://files.pythonhosted.org/packages/78/8e/3d910214471ade604fd39b080db3696864acc23678b5b4b8475c7dbfd2ce/zensical-0.0.24-cp310-abi3-macosx_11_0_arm64.whl", hash = "sha256:81ac072869cf4d280853765b2bfb688653da0dfb9408f3ab15aca96455ab8223", size = 12142610, upload-time = "2026-02-26T09:43:17.546Z" },
- { url = "https://files.pythonhosted.org/packages/cf/d7/eb0983640aa0419ddf670298cfbcf8b75629b6484925429b857851e00784/zensical-0.0.24-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b5eb1dfa84cae8e960bfa2c6851d2bc8e9710c4c4c683bd3aaf23185f646ae46", size = 12508380, upload-time = "2026-02-26T09:43:20.114Z" },
- { url = "https://files.pythonhosted.org/packages/a3/04/4405b9e6f937a75db19f0d875798a7eb70817d6a3bec2a2d289a2d5e8aea/zensical-0.0.24-cp310-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:57d7c9e589da99c1879a1c703e67c85eaa6be4661cdc6ce6534f7bb3575983f4", size = 12440807, upload-time = "2026-02-26T09:43:22.679Z" },
- { url = "https://files.pythonhosted.org/packages/12/dc/a7ca2a4224b3072a2c2998b6611ad7fd4f8f131ceae7aa23238d97d26e22/zensical-0.0.24-cp310-abi3-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:42fcc121c3095734b078a95a0dae4d4924fb8fbf16bf730456146ad6cab48ad0", size = 12782727, upload-time = "2026-02-26T09:43:25.347Z" },
- { url = "https://files.pythonhosted.org/packages/42/37/22f1727da356ed3fcbd31f68d4a477f15c232997c87e270cfffb927459ac/zensical-0.0.24-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:832d4a2a051b9f49561031a2986ace502326f82d9a401ddf125530d30025fdd4", size = 12547616, upload-time = "2026-02-26T09:43:28.031Z" },
- { url = "https://files.pythonhosted.org/packages/6d/ff/c75ff111b8e12157901d00752beef9d691dbb5a034b6a77359972262416a/zensical-0.0.24-cp310-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:e5fea3bb61238dba9f930f52669db67b0c26be98e1c8386a05eb2b1e3cb875dc", size = 12684883, upload-time = "2026-02-26T09:43:30.642Z" },
- { url = "https://files.pythonhosted.org/packages/b9/92/4f6ea066382e3d068d3cadbed99e9a71af25e46c84a403e0f747960472a2/zensical-0.0.24-cp310-abi3-musllinux_1_2_armv7l.whl", hash = "sha256:75eef0428eec2958590633fdc82dc2a58af124879e29573aa7e153b662978073", size = 12713825, upload-time = "2026-02-26T09:43:33.273Z" },
- { url = "https://files.pythonhosted.org/packages/bc/fb/bf735b19bce0034b1f3b8e1c50b2896ebbd0c5d92d462777e759e78bb083/zensical-0.0.24-cp310-abi3-musllinux_1_2_i686.whl", hash = "sha256:3c6b39659156394ff805b4831dac108c839483d9efa4c9b901eaa913efee1ac7", size = 12854318, upload-time = "2026-02-26T09:43:35.632Z" },
- { url = "https://files.pythonhosted.org/packages/7e/28/0ddab6c1237e3625e7763ff666806f31e5760bb36d18624135a6bb6e8643/zensical-0.0.24-cp310-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:9eef82865a18b3ca4c3cd13e245dff09a865d1da3c861e2fc86eaa9253a90f02", size = 12818270, upload-time = "2026-02-26T09:43:37.749Z" },
+ { url = "https://files.pythonhosted.org/packages/42/7c/f6f5eb1903b5a557d98f48d09e3d4bc33033ed78508986250dabe5387d91/zensical-0.0.25-cp310-abi3-macosx_10_12_x86_64.whl", hash = "sha256:3c481dd16a968f97d43f6b596e10e941d8294ed446b8b117235a6b149c0d6965", size = 12263809, upload-time = "2026-03-10T19:31:49.907Z" },
+ { url = "https://files.pythonhosted.org/packages/37/b2/3f8be43526a68c52c84f099887d1903c2526a22aa4344378a72671bf6070/zensical-0.0.25-cp310-abi3-macosx_11_0_arm64.whl", hash = "sha256:ae51751e8b11f50df04641b40c1e07d4b703fed9d9548b16dbcb0cf260da229a", size = 12146107, upload-time = "2026-03-10T19:31:53.576Z" },
+ { url = "https://files.pythonhosted.org/packages/16/59/89a3a715b1fe538b4b5ee382d71b86bd06d4f351383e36eefd36e824c150/zensical-0.0.25-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:56ccf88245bd0b3684bf313384164972f1890802d4a51dd9b7ae6ea126a810bc", size = 12505963, upload-time = "2026-03-10T19:31:57.517Z" },
+ { url = "https://files.pythonhosted.org/packages/ad/5b/cc0bada291818bdf36be777af9c16f655a021f16578a31e6fb233affca03/zensical-0.0.25-cp310-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:d2f4e58bcc06f3e50cc518666a0c9d8f82246255a42b37bb1d7c7343e214fbac", size = 12455496, upload-time = "2026-03-10T19:32:02.37Z" },
+ { url = "https://files.pythonhosted.org/packages/e9/16/ff91ee42d8b14a1b63e2e0d74922e6c4b0ec1da3819377f20b7ca2742f76/zensical-0.0.25-cp310-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:69895273b1319a45667abac543c3e5065ff2a646d9a698eae056b6a35b57e00a", size = 12683609, upload-time = "2026-03-10T19:32:06.144Z" },
+ { url = "https://files.pythonhosted.org/packages/01/fd/a85acc4234d31658f4bb54c4900edfc8d4227ad83e4c79de92cfdcd05c79/zensical-0.0.25-cp310-abi3-musllinux_1_2_armv7l.whl", hash = "sha256:c51a00ae1de2e9647bfd0ea1965b223fb3891111a00930416e1277e06f3ab3c4", size = 12725420, upload-time = "2026-03-10T19:32:09.938Z" },
+ { url = "https://files.pythonhosted.org/packages/37/c7/896c91e457af3d5769d8d70d2bd66a8a287ad129879b51ab5e985ac68889/zensical-0.0.25-cp310-abi3-musllinux_1_2_i686.whl", hash = "sha256:28e56ec1f06ea66227c1f5af9d7a6ed3bd4246e6af1e45d29e09f40251b52e1f", size = 12861970, upload-time = "2026-03-10T19:32:13.471Z" },
+ { url = "https://files.pythonhosted.org/packages/41/06/5d804cf19e4e093394674d9f213546dc1364a34fd85d81a1153b05733c5a/zensical-0.0.25-cp310-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:d2d5997baad148b65eb0de6baf81973110538e01a3f64467d06d0c5ac23b0d70", size = 12816321, upload-time = "2026-03-10T19:32:17.031Z" },
]
[[package]]
From 330ee696a8eec24496e87b77f0ded17f64583b61 Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Wed, 18 Mar 2026 06:18:11 +0000
Subject: [PATCH 34/38] Chore(deps): Bump the actions group with 2 updates
(#12377)
Bumps the actions group with 2 updates: [docker/metadata-action](https://github.com/docker/metadata-action) and [docker/build-push-action](https://github.com/docker/build-push-action).
Updates `docker/metadata-action` from 5.10.0 to 6.0.0
- [Release notes](https://github.com/docker/metadata-action/releases)
- [Commits](https://github.com/docker/metadata-action/compare/v5.10.0...v6.0.0)
Updates `docker/build-push-action` from 6.19.2 to 7.0.0
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](https://github.com/docker/build-push-action/compare/v6.19.2...v7.0.0)
---
updated-dependencies:
- dependency-name: docker/metadata-action
dependency-version: 6.0.0
dependency-type: direct:production
update-type: version-update:semver-major
dependency-group: actions
- dependency-name: docker/build-push-action
dependency-version: 7.0.0
dependency-type: direct:production
update-type: version-update:semver-major
dependency-group: actions
...
Signed-off-by: dependabot[bot]
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
---
.github/workflows/ci-docker.yml | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/.github/workflows/ci-docker.yml b/.github/workflows/ci-docker.yml
index 69fff92d4..2d6da2da9 100644
--- a/.github/workflows/ci-docker.yml
+++ b/.github/workflows/ci-docker.yml
@@ -119,7 +119,7 @@ jobs:
sudo rm -rf "$AGENT_TOOLSDIRECTORY"
- name: Docker metadata
id: docker-meta
- uses: docker/metadata-action@v5.10.0
+ uses: docker/metadata-action@v6.0.0
with:
images: |
${{ env.REGISTRY }}/${{ steps.repo.outputs.name }}
@@ -130,7 +130,7 @@ jobs:
type=semver,pattern={{major}}.{{minor}}
- name: Build and push by digest
id: build
- uses: docker/build-push-action@v6.19.2
+ uses: docker/build-push-action@v7.0.0
with:
context: .
file: ./Dockerfile
@@ -201,7 +201,7 @@ jobs:
password: ${{ secrets.QUAY_ROBOT_TOKEN }}
- name: Docker metadata
id: docker-meta
- uses: docker/metadata-action@v5.10.0
+ uses: docker/metadata-action@v6.0.0
with:
images: |
${{ env.REGISTRY }}/${{ needs.build-arch.outputs.repository }}
From 0a08499fc79b6204bb0c25fccb21dc9d9ed9680f Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Wed, 18 Mar 2026 06:25:40 +0000
Subject: [PATCH 35/38] Chore(deps): Bump
https://github.com/astral-sh/ruff-pre-commit (#12371)
Bumps the pre-commit-dependencies group with 1 update: [https://github.com/astral-sh/ruff-pre-commit](https://github.com/astral-sh/ruff-pre-commit).
Updates `https://github.com/astral-sh/ruff-pre-commit` from v0.15.5 to 0.15.6
- [Release notes](https://github.com/astral-sh/ruff-pre-commit/releases)
- [Commits](https://github.com/astral-sh/ruff-pre-commit/compare/v0.15.5...v0.15.6)
---
updated-dependencies:
- dependency-name: https://github.com/astral-sh/ruff-pre-commit
dependency-version: 0.15.6
dependency-type: direct:production
dependency-group: pre-commit-dependencies
...
Signed-off-by: dependabot[bot]
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
---
.pre-commit-config.yaml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml
index 073dbac1d..8d6456ff0 100644
--- a/.pre-commit-config.yaml
+++ b/.pre-commit-config.yaml
@@ -50,7 +50,7 @@ repos:
- 'prettier-plugin-organize-imports@4.3.0'
# Python hooks
- repo: https://github.com/astral-sh/ruff-pre-commit
- rev: v0.15.5
+ rev: v0.15.6
hooks:
- id: ruff-check
- id: ruff-format
From 3abff21d1fcbfdc13b4f83d2dba1167ce4c6a046 Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Wed, 18 Mar 2026 06:51:56 +0000
Subject: [PATCH 36/38] Chore(deps): Bump pyasn1 from 0.6.2 to 0.6.3 (#12370)
Bumps [pyasn1](https://github.com/pyasn1/pyasn1) from 0.6.2 to 0.6.3.
- [Release notes](https://github.com/pyasn1/pyasn1/releases)
- [Changelog](https://github.com/pyasn1/pyasn1/blob/main/CHANGES.rst)
- [Commits](https://github.com/pyasn1/pyasn1/compare/v0.6.2...v0.6.3)
---
updated-dependencies:
- dependency-name: pyasn1
dependency-version: 0.6.3
dependency-type: indirect
...
Signed-off-by: dependabot[bot]
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
---
uv.lock | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/uv.lock b/uv.lock
index e06bc5e79..236624b37 100644
--- a/uv.lock
+++ b/uv.lock
@@ -3548,11 +3548,11 @@ sdist = { url = "https://files.pythonhosted.org/packages/1d/c7/28220d37e041fe1df
[[package]]
name = "pyasn1"
-version = "0.6.2"
+version = "0.6.3"
source = { registry = "https://pypi.org/simple" }
-sdist = { url = "https://files.pythonhosted.org/packages/fe/b6/6e630dff89739fcd427e3f72b3d905ce0acb85a45d4ec3e2678718a3487f/pyasn1-0.6.2.tar.gz", hash = "sha256:9b59a2b25ba7e4f8197db7686c09fb33e658b98339fadb826e9512629017833b", size = 146586, upload-time = "2026-01-16T18:04:18.534Z" }
+sdist = { url = "https://files.pythonhosted.org/packages/5c/5f/6583902b6f79b399c9c40674ac384fd9cd77805f9e6205075f828ef11fb2/pyasn1-0.6.3.tar.gz", hash = "sha256:697a8ecd6d98891189184ca1fa05d1bb00e2f84b5977c481452050549c8a72cf", size = 148685, upload-time = "2026-03-17T01:06:53.382Z" }
wheels = [
- { url = "https://files.pythonhosted.org/packages/44/b5/a96872e5184f354da9c84ae119971a0a4c221fe9b27a4d94bd43f2596727/pyasn1-0.6.2-py3-none-any.whl", hash = "sha256:1eb26d860996a18e9b6ed05e7aae0e9fc21619fcee6af91cca9bad4fbea224bf", size = 83371, upload-time = "2026-01-16T18:04:17.174Z" },
+ { url = "https://files.pythonhosted.org/packages/5d/a0/7d793dce3fa811fe047d6ae2431c672364b462850c6235ae306c0efd025f/pyasn1-0.6.3-py3-none-any.whl", hash = "sha256:a80184d120f0864a52a073acc6fc642847d0be408e7c7252f31390c0f4eadcde", size = 83997, upload-time = "2026-03-17T01:06:52.036Z" },
]
[[package]]
From d3ac75741f553e7721287ab03aa76989e45e27f4 Mon Sep 17 00:00:00 2001
From: shamoon <4887959+shamoon@users.noreply.github.com>
Date: Wed, 18 Mar 2026 07:04:51 -0700
Subject: [PATCH 37/38] Update serialisers.py
---
src/paperless/serialisers.py | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/src/paperless/serialisers.py b/src/paperless/serialisers.py
index 495ae018a..4939bc1ba 100644
--- a/src/paperless/serialisers.py
+++ b/src/paperless/serialisers.py
@@ -248,7 +248,9 @@ class ApplicationConfigurationSerializer(serializers.ModelSerializer):
allow_internal=settings.LLM_ALLOW_INTERNAL_ENDPOINTS,
)
except ValueError as e:
- raise serializers.ValidationError(str(e)) from e
+ raise serializers.ValidationError(
+ f"Invalid LLM endpoint: {e.args[0]}, see logs for details",
+ ) from e
return value
From d162c83eb7cf857011b454acc1851fd1a868a1ca Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Wed, 18 Mar 2026 09:19:36 -0700
Subject: [PATCH 38/38] Chore(deps): Bump ujson from 5.11.0 to 5.12.0 (#12387)
Bumps [ujson](https://github.com/ultrajson/ultrajson) from 5.11.0 to 5.12.0.
- [Release notes](https://github.com/ultrajson/ultrajson/releases)
- [Commits](https://github.com/ultrajson/ultrajson/compare/5.11.0...5.12.0)
---
updated-dependencies:
- dependency-name: ujson
dependency-version: 5.12.0
dependency-type: indirect
...
Signed-off-by: dependabot[bot]
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
---
uv.lock | 98 ++++++++++++++++++++++++++++++---------------------------
1 file changed, 51 insertions(+), 47 deletions(-)
diff --git a/uv.lock b/uv.lock
index 236624b37..c700b0339 100644
--- a/uv.lock
+++ b/uv.lock
@@ -5252,55 +5252,59 @@ wheels = [
[[package]]
name = "ujson"
-version = "5.11.0"
+version = "5.12.0"
source = { registry = "https://pypi.org/simple" }
-sdist = { url = "https://files.pythonhosted.org/packages/43/d9/3f17e3c5773fb4941c68d9a37a47b1a79c9649d6c56aefbed87cc409d18a/ujson-5.11.0.tar.gz", hash = "sha256:e204ae6f909f099ba6b6b942131cee359ddda2b6e4ea39c12eb8b991fe2010e0", size = 7156583, upload-time = "2025-08-20T11:57:02.452Z" }
+sdist = { url = "https://files.pythonhosted.org/packages/cb/3e/c35530c5ffc25b71c59ae0cd7b8f99df37313daa162ce1e2f7925f7c2877/ujson-5.12.0.tar.gz", hash = "sha256:14b2e1eb528d77bc0f4c5bd1a7ebc05e02b5b41beefb7e8567c9675b8b13bcf4", size = 7158451, upload-time = "2026-03-11T22:19:30.397Z" }
wheels = [
- { url = "https://files.pythonhosted.org/packages/da/ea/80346b826349d60ca4d612a47cdf3533694e49b45e9d1c07071bb867a184/ujson-5.11.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:d7c46cb0fe5e7056b9acb748a4c35aa1b428025853032540bb7e41f46767321f", size = 55248, upload-time = "2025-08-20T11:55:19.033Z" },
- { url = "https://files.pythonhosted.org/packages/57/df/b53e747562c89515e18156513cc7c8ced2e5e3fd6c654acaa8752ffd7cd9/ujson-5.11.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:d8951bb7a505ab2a700e26f691bdfacf395bc7e3111e3416d325b513eea03a58", size = 53156, upload-time = "2025-08-20T11:55:20.174Z" },
- { url = "https://files.pythonhosted.org/packages/41/b8/ab67ec8c01b8a3721fd13e5cb9d85ab2a6066a3a5e9148d661a6870d6293/ujson-5.11.0-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:952c0be400229940248c0f5356514123d428cba1946af6fa2bbd7503395fef26", size = 57657, upload-time = "2025-08-20T11:55:21.296Z" },
- { url = "https://files.pythonhosted.org/packages/7b/c7/fb84f27cd80a2c7e2d3c6012367aecade0da936790429801803fa8d4bffc/ujson-5.11.0-cp311-cp311-manylinux_2_24_i686.manylinux_2_28_i686.whl", hash = "sha256:94fcae844f1e302f6f8095c5d1c45a2f0bfb928cccf9f1b99e3ace634b980a2a", size = 59779, upload-time = "2025-08-20T11:55:22.772Z" },
- { url = "https://files.pythonhosted.org/packages/5d/7c/48706f7c1e917ecb97ddcfb7b1d756040b86ed38290e28579d63bd3fcc48/ujson-5.11.0-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:7e0ec1646db172beb8d3df4c32a9d78015e671d2000af548252769e33079d9a6", size = 57284, upload-time = "2025-08-20T11:55:24.01Z" },
- { url = "https://files.pythonhosted.org/packages/ec/ce/48877c6eb4afddfd6bd1db6be34456538c07ca2d6ed233d3f6c6efc2efe8/ujson-5.11.0-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:da473b23e3a54448b008d33f742bcd6d5fb2a897e42d1fc6e7bf306ea5d18b1b", size = 1036395, upload-time = "2025-08-20T11:55:25.725Z" },
- { url = "https://files.pythonhosted.org/packages/8b/7a/2c20dc97ad70cd7c31ad0596ba8e2cf8794d77191ba4d1e0bded69865477/ujson-5.11.0-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:aa6b3d4f1c0d3f82930f4cbd7fe46d905a4a9205a7c13279789c1263faf06dba", size = 1195731, upload-time = "2025-08-20T11:55:27.915Z" },
- { url = "https://files.pythonhosted.org/packages/15/f5/ca454f2f6a2c840394b6f162fff2801450803f4ff56c7af8ce37640b8a2a/ujson-5.11.0-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:4843f3ab4fe1cc596bb7e02228ef4c25d35b4bb0809d6a260852a4bfcab37ba3", size = 1088710, upload-time = "2025-08-20T11:55:29.426Z" },
- { url = "https://files.pythonhosted.org/packages/b9/ef/a9cb1fce38f699123ff012161599fb9f2ff3f8d482b4b18c43a2dc35073f/ujson-5.11.0-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:7895f0d2d53bd6aea11743bd56e3cb82d729980636cd0ed9b89418bf66591702", size = 55434, upload-time = "2025-08-20T11:55:34.987Z" },
- { url = "https://files.pythonhosted.org/packages/b1/05/dba51a00eb30bd947791b173766cbed3492269c150a7771d2750000c965f/ujson-5.11.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:12b5e7e22a1fe01058000d1b317d3b65cc3daf61bd2ea7a2b76721fe160fa74d", size = 53190, upload-time = "2025-08-20T11:55:36.384Z" },
- { url = "https://files.pythonhosted.org/packages/03/3c/fd11a224f73fbffa299fb9644e425f38b38b30231f7923a088dd513aabb4/ujson-5.11.0-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:0180a480a7d099082501cad1fe85252e4d4bf926b40960fb3d9e87a3a6fbbc80", size = 57600, upload-time = "2025-08-20T11:55:37.692Z" },
- { url = "https://files.pythonhosted.org/packages/55/b9/405103cae24899df688a3431c776e00528bd4799e7d68820e7ebcf824f92/ujson-5.11.0-cp312-cp312-manylinux_2_24_i686.manylinux_2_28_i686.whl", hash = "sha256:fa79fdb47701942c2132a9dd2297a1a85941d966d8c87bfd9e29b0cf423f26cc", size = 59791, upload-time = "2025-08-20T11:55:38.877Z" },
- { url = "https://files.pythonhosted.org/packages/17/7b/2dcbc2bbfdbf68f2368fb21ab0f6735e872290bb604c75f6e06b81edcb3f/ujson-5.11.0-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:8254e858437c00f17cb72e7a644fc42dad0ebb21ea981b71df6e84b1072aaa7c", size = 57356, upload-time = "2025-08-20T11:55:40.036Z" },
- { url = "https://files.pythonhosted.org/packages/d1/71/fea2ca18986a366c750767b694430d5ded6b20b6985fddca72f74af38a4c/ujson-5.11.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:1aa8a2ab482f09f6c10fba37112af5f957689a79ea598399c85009f2f29898b5", size = 1036313, upload-time = "2025-08-20T11:55:41.408Z" },
- { url = "https://files.pythonhosted.org/packages/a3/bb/d4220bd7532eac6288d8115db51710fa2d7d271250797b0bfba9f1e755af/ujson-5.11.0-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:a638425d3c6eed0318df663df44480f4a40dc87cc7c6da44d221418312f6413b", size = 1195782, upload-time = "2025-08-20T11:55:43.357Z" },
- { url = "https://files.pythonhosted.org/packages/80/47/226e540aa38878ce1194454385701d82df538ccb5ff8db2cf1641dde849a/ujson-5.11.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:7e3cff632c1d78023b15f7e3a81c3745cd3f94c044d1e8fa8efbd6b161997bbc", size = 1088817, upload-time = "2025-08-20T11:55:45.262Z" },
- { url = "https://files.pythonhosted.org/packages/1c/ec/2de9dd371d52c377abc05d2b725645326c4562fc87296a8907c7bcdf2db7/ujson-5.11.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:109f59885041b14ee9569bf0bb3f98579c3fa0652317b355669939e5fc5ede53", size = 55435, upload-time = "2025-08-20T11:55:50.243Z" },
- { url = "https://files.pythonhosted.org/packages/5b/a4/f611f816eac3a581d8a4372f6967c3ed41eddbae4008d1d77f223f1a4e0a/ujson-5.11.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:a31c6b8004438e8c20fc55ac1c0e07dad42941db24176fe9acf2815971f8e752", size = 53193, upload-time = "2025-08-20T11:55:51.373Z" },
- { url = "https://files.pythonhosted.org/packages/e9/c5/c161940967184de96f5cbbbcce45b562a4bf851d60f4c677704b1770136d/ujson-5.11.0-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:78c684fb21255b9b90320ba7e199780f653e03f6c2528663768965f4126a5b50", size = 57603, upload-time = "2025-08-20T11:55:52.583Z" },
- { url = "https://files.pythonhosted.org/packages/2b/d6/c7b2444238f5b2e2d0e3dab300b9ddc3606e4b1f0e4bed5a48157cebc792/ujson-5.11.0-cp313-cp313-manylinux_2_24_i686.manylinux_2_28_i686.whl", hash = "sha256:4c9f5d6a27d035dd90a146f7761c2272cf7103de5127c9ab9c4cd39ea61e878a", size = 59794, upload-time = "2025-08-20T11:55:53.69Z" },
- { url = "https://files.pythonhosted.org/packages/fe/a3/292551f936d3d02d9af148f53e1bc04306b00a7cf1fcbb86fa0d1c887242/ujson-5.11.0-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:837da4d27fed5fdc1b630bd18f519744b23a0b5ada1bbde1a36ba463f2900c03", size = 57363, upload-time = "2025-08-20T11:55:54.843Z" },
- { url = "https://files.pythonhosted.org/packages/90/a6/82cfa70448831b1a9e73f882225980b5c689bf539ec6400b31656a60ea46/ujson-5.11.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:787aff4a84da301b7f3bac09bc696e2e5670df829c6f8ecf39916b4e7e24e701", size = 1036311, upload-time = "2025-08-20T11:55:56.197Z" },
- { url = "https://files.pythonhosted.org/packages/84/5c/96e2266be50f21e9b27acaee8ca8f23ea0b85cb998c33d4f53147687839b/ujson-5.11.0-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:6dd703c3e86dc6f7044c5ac0b3ae079ed96bf297974598116aa5fb7f655c3a60", size = 1195783, upload-time = "2025-08-20T11:55:58.081Z" },
- { url = "https://files.pythonhosted.org/packages/8d/20/78abe3d808cf3bb3e76f71fca46cd208317bf461c905d79f0d26b9df20f1/ujson-5.11.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:3772e4fe6b0c1e025ba3c50841a0ca4786825a4894c8411bf8d3afe3a8061328", size = 1088822, upload-time = "2025-08-20T11:55:59.469Z" },
- { url = "https://files.pythonhosted.org/packages/28/08/4518146f4984d112764b1dfa6fb7bad691c44a401adadaa5e23ccd930053/ujson-5.11.0-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:65724738c73645db88f70ba1f2e6fb678f913281804d5da2fd02c8c5839af302", size = 55462, upload-time = "2025-08-20T11:56:04.873Z" },
- { url = "https://files.pythonhosted.org/packages/29/37/2107b9a62168867a692654d8766b81bd2fd1e1ba13e2ec90555861e02b0c/ujson-5.11.0-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:29113c003ca33ab71b1b480bde952fbab2a0b6b03a4ee4c3d71687cdcbd1a29d", size = 53246, upload-time = "2025-08-20T11:56:06.054Z" },
- { url = "https://files.pythonhosted.org/packages/9b/f8/25583c70f83788edbe3ca62ce6c1b79eff465d78dec5eb2b2b56b3e98b33/ujson-5.11.0-cp314-cp314-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:c44c703842024d796b4c78542a6fcd5c3cb948b9fc2a73ee65b9c86a22ee3638", size = 57631, upload-time = "2025-08-20T11:56:07.374Z" },
- { url = "https://files.pythonhosted.org/packages/ed/ca/19b3a632933a09d696f10dc1b0dfa1d692e65ad507d12340116ce4f67967/ujson-5.11.0-cp314-cp314-manylinux_2_24_i686.manylinux_2_28_i686.whl", hash = "sha256:e750c436fb90edf85585f5c62a35b35082502383840962c6983403d1bd96a02c", size = 59877, upload-time = "2025-08-20T11:56:08.534Z" },
- { url = "https://files.pythonhosted.org/packages/55/7a/4572af5324ad4b2bfdd2321e898a527050290147b4ea337a79a0e4e87ec7/ujson-5.11.0-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:f278b31a7c52eb0947b2db55a5133fbc46b6f0ef49972cd1a80843b72e135aba", size = 57363, upload-time = "2025-08-20T11:56:09.758Z" },
- { url = "https://files.pythonhosted.org/packages/7b/71/a2b8c19cf4e1efe53cf439cdf7198ac60ae15471d2f1040b490c1f0f831f/ujson-5.11.0-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:ab2cb8351d976e788669c8281465d44d4e94413718af497b4e7342d7b2f78018", size = 1036394, upload-time = "2025-08-20T11:56:11.168Z" },
- { url = "https://files.pythonhosted.org/packages/7a/3e/7b98668cba3bb3735929c31b999b374ebc02c19dfa98dfebaeeb5c8597ca/ujson-5.11.0-cp314-cp314-musllinux_1_2_i686.whl", hash = "sha256:090b4d11b380ae25453100b722d0609d5051ffe98f80ec52853ccf8249dfd840", size = 1195837, upload-time = "2025-08-20T11:56:12.6Z" },
- { url = "https://files.pythonhosted.org/packages/a1/ea/8870f208c20b43571a5c409ebb2fe9b9dba5f494e9e60f9314ac01ea8f78/ujson-5.11.0-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:80017e870d882d5517d28995b62e4e518a894f932f1e242cbc802a2fd64d365c", size = 1088837, upload-time = "2025-08-20T11:56:14.15Z" },
- { url = "https://files.pythonhosted.org/packages/6e/cd/e9809b064a89fe5c4184649adeb13c1b98652db3f8518980b04227358574/ujson-5.11.0-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:de6e88f62796372fba1de973c11138f197d3e0e1d80bcb2b8aae1e826096d433", size = 55759, upload-time = "2025-08-20T11:56:18.882Z" },
- { url = "https://files.pythonhosted.org/packages/1b/be/ae26a6321179ebbb3a2e2685b9007c71bcda41ad7a77bbbe164005e956fc/ujson-5.11.0-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:49e56ef8066f11b80d620985ae36869a3ff7e4b74c3b6129182ec5d1df0255f3", size = 53634, upload-time = "2025-08-20T11:56:20.012Z" },
- { url = "https://files.pythonhosted.org/packages/ae/e9/fb4a220ee6939db099f4cfeeae796ecb91e7584ad4d445d4ca7f994a9135/ujson-5.11.0-cp314-cp314t-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:1a325fd2c3a056cf6c8e023f74a0c478dd282a93141356ae7f16d5309f5ff823", size = 58547, upload-time = "2025-08-20T11:56:21.175Z" },
- { url = "https://files.pythonhosted.org/packages/bd/f8/fc4b952b8f5fea09ea3397a0bd0ad019e474b204cabcb947cead5d4d1ffc/ujson-5.11.0-cp314-cp314t-manylinux_2_24_i686.manylinux_2_28_i686.whl", hash = "sha256:a0af6574fc1d9d53f4ff371f58c96673e6d988ed2b5bf666a6143c782fa007e9", size = 60489, upload-time = "2025-08-20T11:56:22.342Z" },
- { url = "https://files.pythonhosted.org/packages/2e/e5/af5491dfda4f8b77e24cf3da68ee0d1552f99a13e5c622f4cef1380925c3/ujson-5.11.0-cp314-cp314t-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:10f29e71ecf4ecd93a6610bd8efa8e7b6467454a363c3d6416db65de883eb076", size = 58035, upload-time = "2025-08-20T11:56:23.92Z" },
- { url = "https://files.pythonhosted.org/packages/c4/09/0945349dd41f25cc8c38d78ace49f14c5052c5bbb7257d2f466fa7bdb533/ujson-5.11.0-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:1a0a9b76a89827a592656fe12e000cf4f12da9692f51a841a4a07aa4c7ecc41c", size = 1037212, upload-time = "2025-08-20T11:56:25.274Z" },
- { url = "https://files.pythonhosted.org/packages/49/44/8e04496acb3d5a1cbee3a54828d9652f67a37523efa3d3b18a347339680a/ujson-5.11.0-cp314-cp314t-musllinux_1_2_i686.whl", hash = "sha256:b16930f6a0753cdc7d637b33b4e8f10d5e351e1fb83872ba6375f1e87be39746", size = 1196500, upload-time = "2025-08-20T11:56:27.517Z" },
- { url = "https://files.pythonhosted.org/packages/64/ae/4bc825860d679a0f208a19af2f39206dfd804ace2403330fdc3170334a2f/ujson-5.11.0-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:04c41afc195fd477a59db3a84d5b83a871bd648ef371cf8c6f43072d89144eef", size = 1089487, upload-time = "2025-08-20T11:56:29.07Z" },
- { url = "https://files.pythonhosted.org/packages/50/17/30275aa2933430d8c0c4ead951cc4fdb922f575a349aa0b48a6f35449e97/ujson-5.11.0-pp311-pypy311_pp73-macosx_10_15_x86_64.whl", hash = "sha256:abae0fb58cc820092a0e9e8ba0051ac4583958495bfa5262a12f628249e3b362", size = 51206, upload-time = "2025-08-20T11:56:48.797Z" },
- { url = "https://files.pythonhosted.org/packages/c3/15/42b3924258eac2551f8f33fa4e35da20a06a53857ccf3d4deb5e5d7c0b6c/ujson-5.11.0-pp311-pypy311_pp73-macosx_11_0_arm64.whl", hash = "sha256:fac6c0649d6b7c3682a0a6e18d3de6857977378dce8d419f57a0b20e3d775b39", size = 48907, upload-time = "2025-08-20T11:56:50.136Z" },
- { url = "https://files.pythonhosted.org/packages/94/7e/0519ff7955aba581d1fe1fb1ca0e452471250455d182f686db5ac9e46119/ujson-5.11.0-pp311-pypy311_pp73-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:4b42c115c7c6012506e8168315150d1e3f76e7ba0f4f95616f4ee599a1372bbc", size = 50319, upload-time = "2025-08-20T11:56:51.63Z" },
- { url = "https://files.pythonhosted.org/packages/74/cf/209d90506b7d6c5873f82c5a226d7aad1a1da153364e9ebf61eff0740c33/ujson-5.11.0-pp311-pypy311_pp73-manylinux_2_24_i686.manylinux_2_28_i686.whl", hash = "sha256:86baf341d90b566d61a394869ce77188cc8668f76d7bb2c311d77a00f4bdf844", size = 56584, upload-time = "2025-08-20T11:56:52.89Z" },
- { url = "https://files.pythonhosted.org/packages/e9/97/bd939bb76943cb0e1d2b692d7e68629f51c711ef60425fa5bb6968037ecd/ujson-5.11.0-pp311-pypy311_pp73-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:4598bf3965fc1a936bd84034312bcbe00ba87880ef1ee33e33c1e88f2c398b49", size = 51588, upload-time = "2025-08-20T11:56:54.054Z" },
+ { url = "https://files.pythonhosted.org/packages/10/22/fd22e2f6766bae934d3050517ca47d463016bd8688508d1ecc1baa18a7ad/ujson-5.12.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:58a11cb49482f1a095a2bd9a1d81dd7c8fb5d2357f959ece85db4e46a825fd00", size = 56139, upload-time = "2026-03-11T22:18:04.591Z" },
+ { url = "https://files.pythonhosted.org/packages/c6/fd/6839adff4fc0164cbcecafa2857ba08a6eaeedd7e098d6713cb899a91383/ujson-5.12.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:9b3cf13facf6f77c283af0e1713e5e8c47a0fe295af81326cb3cb4380212e797", size = 53836, upload-time = "2026-03-11T22:18:05.662Z" },
+ { url = "https://files.pythonhosted.org/packages/f9/b0/0c19faac62d68ceeffa83a08dc3d71b8462cf5064d0e7e0b15ba19898dad/ujson-5.12.0-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:fb94245a715b4d6e24689de12772b85329a1f9946cbf6187923a64ecdea39e65", size = 57851, upload-time = "2026-03-11T22:18:06.744Z" },
+ { url = "https://files.pythonhosted.org/packages/04/f6/e7fd283788de73b86e99e08256726bb385923249c21dcd306e59d532a1a1/ujson-5.12.0-cp311-cp311-manylinux_2_24_i686.manylinux_2_28_i686.whl", hash = "sha256:0fe6b8b8968e11dd9b2348bd508f0f57cf49ab3512064b36bc4117328218718e", size = 59906, upload-time = "2026-03-11T22:18:07.791Z" },
+ { url = "https://files.pythonhosted.org/packages/d7/3a/b100735a2b43ee6e8fe4c883768e362f53576f964d4ea841991060aeaf35/ujson-5.12.0-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:89e302abd3749f6d6699691747969a5d85f7c73081d5ed7e2624c7bd9721a2ab", size = 57409, upload-time = "2026-03-11T22:18:08.79Z" },
+ { url = "https://files.pythonhosted.org/packages/5c/fa/f97cc20c99ca304662191b883ae13ae02912ca7244710016ba0cb8a5be34/ujson-5.12.0-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:0727363b05ab05ee737a28f6200dc4078bce6b0508e10bd8aab507995a15df61", size = 1037339, upload-time = "2026-03-11T22:18:10.424Z" },
+ { url = "https://files.pythonhosted.org/packages/10/7a/53ddeda0ffe1420db2f9999897b3cbb920fbcff1849d1f22b196d0f34785/ujson-5.12.0-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:b62cb9a7501e1f5c9ffe190485501349c33e8862dde4377df774e40b8166871f", size = 1196625, upload-time = "2026-03-11T22:18:11.82Z" },
+ { url = "https://files.pythonhosted.org/packages/0d/1a/4c64a6bef522e9baf195dd5be151bc815cd4896c50c6e2489599edcda85f/ujson-5.12.0-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:a6ec5bf6bc361f2f0f9644907a36ce527715b488988a8df534120e5c34eeda94", size = 1089669, upload-time = "2026-03-11T22:18:13.343Z" },
+ { url = "https://files.pythonhosted.org/packages/84/f6/ac763d2108d28f3a40bb3ae7d2fafab52ca31b36c2908a4ad02cd3ceba2a/ujson-5.12.0-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:09b4beff9cc91d445d5818632907b85fb06943b61cb346919ce202668bf6794a", size = 56326, upload-time = "2026-03-11T22:18:18.467Z" },
+ { url = "https://files.pythonhosted.org/packages/25/46/d0b3af64dcdc549f9996521c8be6d860ac843a18a190ffc8affeb7259687/ujson-5.12.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:ca0c7ce828bb76ab78b3991904b477c2fd0f711d7815c252d1ef28ff9450b052", size = 53910, upload-time = "2026-03-11T22:18:19.502Z" },
+ { url = "https://files.pythonhosted.org/packages/9a/10/853c723bcabc3e9825a079019055fc99e71b85c6bae600607a2b9d31d18d/ujson-5.12.0-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:a2d79c6635ccffcbfc1d5c045874ba36b594589be81d50d43472570bb8de9c57", size = 57754, upload-time = "2026-03-11T22:18:20.874Z" },
+ { url = "https://files.pythonhosted.org/packages/f9/c6/6e024830d988f521f144ead641981c1f7a82c17ad1927c22de3242565f5c/ujson-5.12.0-cp312-cp312-manylinux_2_24_i686.manylinux_2_28_i686.whl", hash = "sha256:7e07f6f644d2c44d53b7a320a084eef98063651912c1b9449b5f45fcbdc6ccd2", size = 59936, upload-time = "2026-03-11T22:18:21.924Z" },
+ { url = "https://files.pythonhosted.org/packages/34/c9/c5f236af5abe06b720b40b88819d00d10182d2247b1664e487b3ed9229cf/ujson-5.12.0-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:085b6ce182cdd6657481c7c4003a417e0655c4f6e58b76f26ee18f0ae21db827", size = 57463, upload-time = "2026-03-11T22:18:22.924Z" },
+ { url = "https://files.pythonhosted.org/packages/ae/04/41342d9ef68e793a87d84e4531a150c2b682f3bcedfe59a7a5e3f73e9213/ujson-5.12.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:16b4fe9c97dc605f5e1887a9e1224287291e35c56cbc379f8aa44b6b7bcfe2bb", size = 1037239, upload-time = "2026-03-11T22:18:24.04Z" },
+ { url = "https://files.pythonhosted.org/packages/d4/81/dc2b7617d5812670d4ff4a42f6dd77926430ee52df0dedb2aec7990b2034/ujson-5.12.0-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:0d2e8db5ade3736a163906154ca686203acc7d1d30736cbf577c730d13653d84", size = 1196713, upload-time = "2026-03-11T22:18:25.391Z" },
+ { url = "https://files.pythonhosted.org/packages/b6/9c/80acff0504f92459ed69e80a176286e32ca0147ac6a8252cd0659aad3227/ujson-5.12.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:93bc91fdadcf046da37a214eaa714574e7e9b1913568e93bb09527b2ceb7f759", size = 1089742, upload-time = "2026-03-11T22:18:26.738Z" },
+ { url = "https://files.pythonhosted.org/packages/3f/f1/0ef0eeab1db8493e1833c8b440fe32cf7538f7afa6e7f7c7e9f62cef464d/ujson-5.12.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:15d416440148f3e56b9b244fdaf8a09fcf5a72e4944b8e119f5bf60417a2bfc8", size = 56331, upload-time = "2026-03-11T22:18:31.539Z" },
+ { url = "https://files.pythonhosted.org/packages/b0/2f/9159f6f399b3f572d20847a2b80d133e3a03c14712b0da4971a36879fb64/ujson-5.12.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:e0dd3676ea0837cd70ea1879765e9e9f6be063be0436de9b3ea4b775caf83654", size = 53910, upload-time = "2026-03-11T22:18:32.829Z" },
+ { url = "https://files.pythonhosted.org/packages/e5/a9/f96376818d71495d1a4be19a0ab6acf0cc01dd8826553734c3d4dac685b2/ujson-5.12.0-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:7bbf05c38debc90d1a195b11340cc85cb43ab3e753dc47558a3a84a38cbc72da", size = 57757, upload-time = "2026-03-11T22:18:33.866Z" },
+ { url = "https://files.pythonhosted.org/packages/98/8d/dd4a151caac6fdcb77f024fbe7f09d465ebf347a628ed6dd581a0a7f6364/ujson-5.12.0-cp313-cp313-manylinux_2_24_i686.manylinux_2_28_i686.whl", hash = "sha256:3c2f947e55d3c7cfe124dd4521ee481516f3007d13c6ad4bf6aeb722e190eb1b", size = 59940, upload-time = "2026-03-11T22:18:35.276Z" },
+ { url = "https://files.pythonhosted.org/packages/c7/17/0d36c2fee0a8d8dc37b011ccd5bbdcfaff8b8ec2bcfc5be998661cdc935b/ujson-5.12.0-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:2ea6206043385343aff0b7da65cf73677f6f5e50de8f1c879e557f4298cac36a", size = 57465, upload-time = "2026-03-11T22:18:36.644Z" },
+ { url = "https://files.pythonhosted.org/packages/8c/04/b0ee4a4b643a01ba398441da1e357480595edb37c6c94c508dbe0eb9eb60/ujson-5.12.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:bb349dbba57c76eec25e5917e07f35aabaf0a33b9e67fc13d188002500106487", size = 1037236, upload-time = "2026-03-11T22:18:37.743Z" },
+ { url = "https://files.pythonhosted.org/packages/2d/08/0e7780d0bbb48fe57ded91f550144bcc99c03b5360bf2886dd0dae0ea8f5/ujson-5.12.0-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:937794042342006f707837f38d721426b11b0774d327a2a45c0bd389eb750a87", size = 1196717, upload-time = "2026-03-11T22:18:39.101Z" },
+ { url = "https://files.pythonhosted.org/packages/ba/4c/e0e34107715bb4dd2d4dcc1ce244d2f074638837adf38aff85a37506efe4/ujson-5.12.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:6ad57654570464eb1b040b5c353dee442608e06cff9102b8fcb105565a44c9ed", size = 1089748, upload-time = "2026-03-11T22:18:40.473Z" },
+ { url = "https://files.pythonhosted.org/packages/10/bd/9a8d693254bada62bfea75a507e014afcfdb6b9d047b6f8dd134bfefaf67/ujson-5.12.0-cp314-cp314-macosx_10_15_x86_64.whl", hash = "sha256:85833bca01aa5cae326ac759276dc175c5fa3f7b3733b7d543cf27f2df12d1ef", size = 56499, upload-time = "2026-03-11T22:18:45.431Z" },
+ { url = "https://files.pythonhosted.org/packages/bd/2d/285a83df8176e18dcd675d1a4cff8f7620f003f30903ea43929406e98986/ujson-5.12.0-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:d22cad98c2a10bbf6aa083a8980db6ed90d4285a841c4de892890c2b28286ef9", size = 53998, upload-time = "2026-03-11T22:18:47.184Z" },
+ { url = "https://files.pythonhosted.org/packages/bf/8b/e2f09e16dabfa91f6a84555df34a4329fa7621e92ed054d170b9054b9bb2/ujson-5.12.0-cp314-cp314-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:99cc80facad240b0c2fb5a633044420878aac87a8e7c348b9486450cba93f27c", size = 57783, upload-time = "2026-03-11T22:18:48.271Z" },
+ { url = "https://files.pythonhosted.org/packages/68/fb/ba1d06f3658a0c36d0ab3869ec3914f202bad0a9bde92654e41516c7bb13/ujson-5.12.0-cp314-cp314-manylinux_2_24_i686.manylinux_2_28_i686.whl", hash = "sha256:d1831c07bd4dce53c4b666fa846c7eba4b7c414f2e641a4585b7f50b72f502dc", size = 60011, upload-time = "2026-03-11T22:18:49.284Z" },
+ { url = "https://files.pythonhosted.org/packages/64/2b/3e322bf82d926d9857206cd5820438d78392d1f523dacecb8bd899952f73/ujson-5.12.0-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:0e00cec383eab2406c9e006bd4edb55d284e94bb943fda558326048178d26961", size = 57465, upload-time = "2026-03-11T22:18:50.584Z" },
+ { url = "https://files.pythonhosted.org/packages/e9/fd/af72d69603f9885e5136509a529a4f6d88bf652b457263ff96aefcd3ab7d/ujson-5.12.0-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:f19b3af31d02a2e79c5f9a6deaab0fb3c116456aeb9277d11720ad433de6dfc6", size = 1037275, upload-time = "2026-03-11T22:18:51.998Z" },
+ { url = "https://files.pythonhosted.org/packages/9c/a7/a2411ec81aef7872578e56304c3e41b3a544a9809e95c8e1df46923fc40b/ujson-5.12.0-cp314-cp314-musllinux_1_2_i686.whl", hash = "sha256:bacbd3c69862478cbe1c7ed4325caedec580d8acf31b8ee1b9a1e02a56295cad", size = 1196758, upload-time = "2026-03-11T22:18:53.548Z" },
+ { url = "https://files.pythonhosted.org/packages/ed/85/aa18ae175dd03a118555aa14304d4f466f9db61b924c97c6f84388ecacb1/ujson-5.12.0-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:94c5f1621cbcab83c03be46441f090b68b9f307b6c7ec44d4e3f6d5997383df4", size = 1089760, upload-time = "2026-03-11T22:18:55.336Z" },
+ { url = "https://files.pythonhosted.org/packages/c3/71/9b4dacb177d3509077e50497222d39eec04c8b41edb1471efc764d645237/ujson-5.12.0-cp314-cp314t-macosx_10_15_x86_64.whl", hash = "sha256:7ddb08b3c2f9213df1f2e3eb2fbea4963d80ec0f8de21f0b59898e34f3b3d96d", size = 56845, upload-time = "2026-03-11T22:18:59.629Z" },
+ { url = "https://files.pythonhosted.org/packages/24/c2/8abffa3be1f3d605c4a62445fab232b3e7681512ce941c6b23014f404d36/ujson-5.12.0-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:0a3ae28f0b209be5af50b54ca3e2123a3de3a57d87b75f1e5aa3d7961e041983", size = 54463, upload-time = "2026-03-11T22:19:00.697Z" },
+ { url = "https://files.pythonhosted.org/packages/db/2e/60114a35d1d6796eb428f7affcba00a921831ff604a37d9142c3d8bbe5c5/ujson-5.12.0-cp314-cp314t-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:d30ad4359413c8821cc7b3707f7ca38aa8bc852ba3b9c5a759ee2d7740157315", size = 58689, upload-time = "2026-03-11T22:19:01.739Z" },
+ { url = "https://files.pythonhosted.org/packages/c8/ad/010925c2116c21ce119f9c2ff18d01f48a19ade3ff4c5795da03ce5829fc/ujson-5.12.0-cp314-cp314t-manylinux_2_24_i686.manylinux_2_28_i686.whl", hash = "sha256:02f93da7a4115e24f886b04fd56df1ee8741c2ce4ea491b7ab3152f744ad8f8e", size = 60618, upload-time = "2026-03-11T22:19:03.101Z" },
+ { url = "https://files.pythonhosted.org/packages/9b/74/db7f638bf20282b1dccf454386cbd483faaaed3cdbb9cb27e06f74bb109e/ujson-5.12.0-cp314-cp314t-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:3ff4ede90ed771140caa7e1890de17431763a483c54b3c1f88bd30f0cc1affc0", size = 58151, upload-time = "2026-03-11T22:19:04.175Z" },
+ { url = "https://files.pythonhosted.org/packages/9c/7e/3ebaecfa70a2e8ce623db8e21bd5cb05d42a5ef943bcbb3309d71b5de68d/ujson-5.12.0-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:a7bf9cc97f05048ac8f3e02cd58f0fe62b901453c24345bfde287f4305dcc31c", size = 1038117, upload-time = "2026-03-11T22:19:05.558Z" },
+ { url = "https://files.pythonhosted.org/packages/2e/aa/e073eda7f0036c2973b28db7bb99faba17a932e7b52d801f9bb3e726271f/ujson-5.12.0-cp314-cp314t-musllinux_1_2_i686.whl", hash = "sha256:2324d9a0502317ffc35d38e153c1b2fa9610ae03775c9d0f8d0cca7b8572b04e", size = 1197434, upload-time = "2026-03-11T22:19:06.92Z" },
+ { url = "https://files.pythonhosted.org/packages/1c/01/b9a13f058fdd50c746b192c4447ca8d6352e696dcda912ccee10f032ff85/ujson-5.12.0-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:50524f4f6a1c839714dbaff5386a1afb245d2d5ec8213a01fbc99cea7307811e", size = 1090401, upload-time = "2026-03-11T22:19:08.383Z" },
+ { url = "https://files.pythonhosted.org/packages/95/3c/5ee154d505d1aad2debc4ba38b1a60ae1949b26cdb5fa070e85e320d6b64/ujson-5.12.0-graalpy312-graalpy250_312_native-macosx_10_13_x86_64.whl", hash = "sha256:bf85a00ac3b56a1e7a19c5be7b02b5180a0895ac4d3c234d717a55e86960691c", size = 54494, upload-time = "2026-03-11T22:19:13.035Z" },
+ { url = "https://files.pythonhosted.org/packages/ce/b3/9496ec399ec921e434a93b340bd5052999030b7ac364be4cbe5365ac6b20/ujson-5.12.0-graalpy312-graalpy250_312_native-macosx_11_0_arm64.whl", hash = "sha256:64df53eef4ac857eb5816a56e2885ccf0d7dff6333c94065c93b39c51063e01d", size = 57999, upload-time = "2026-03-11T22:19:14.385Z" },
+ { url = "https://files.pythonhosted.org/packages/0e/da/e9ae98133336e7c0d50b43626c3f2327937cecfa354d844e02ac17379ed1/ujson-5.12.0-graalpy312-graalpy250_312_native-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:6c0aed6a4439994c9666fb8a5b6c4eac94d4ef6ddc95f9b806a599ef83547e3b", size = 54518, upload-time = "2026-03-11T22:19:15.4Z" },
+ { url = "https://files.pythonhosted.org/packages/58/10/978d89dded6bb1558cd46ba78f4351198bd2346db8a8ee1a94119022ce40/ujson-5.12.0-graalpy312-graalpy250_312_native-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:efae5df7a8cc8bdb1037b0f786b044ce281081441df5418c3a0f0e1f86fe7bb3", size = 55736, upload-time = "2026-03-11T22:19:16.496Z" },
+ { url = "https://files.pythonhosted.org/packages/19/fa/f4a957dddb99bd68c8be91928c0b6fefa7aa8aafc92c93f5d1e8b32f6702/ujson-5.12.0-pp311-pypy311_pp73-macosx_10_15_x86_64.whl", hash = "sha256:871c0e5102e47995b0e37e8df7819a894a6c3da0d097545cd1f9f1f7d7079927", size = 52145, upload-time = "2026-03-11T22:19:18.566Z" },
+ { url = "https://files.pythonhosted.org/packages/55/6e/50b5cf612de1ca06c7effdc5a5d7e815774dee85a5858f1882c425553b82/ujson-5.12.0-pp311-pypy311_pp73-macosx_11_0_arm64.whl", hash = "sha256:56ba3f7abbd6b0bb282a544dc38406d1a188d8bb9164f49fdb9c2fee62cb29da", size = 49577, upload-time = "2026-03-11T22:19:19.627Z" },
+ { url = "https://files.pythonhosted.org/packages/6e/24/b6713fa9897774502cd4c2d6955bb4933349f7d84c3aa805531c382a4209/ujson-5.12.0-pp311-pypy311_pp73-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:9c5a52987a990eb1bae55f9000994f1afdb0326c154fb089992f839ab3c30688", size = 50807, upload-time = "2026-03-11T22:19:20.778Z" },
+ { url = "https://files.pythonhosted.org/packages/1f/b6/c0e0f7901180ef80d16f3a4bccb5dc8b01515a717336a62928963a07b80b/ujson-5.12.0-pp311-pypy311_pp73-manylinux_2_24_i686.manylinux_2_28_i686.whl", hash = "sha256:adf28d13a33f9d750fe7a78fb481cac298fa257d8863d8727b2ea4455ea41235", size = 56972, upload-time = "2026-03-11T22:19:21.84Z" },
+ { url = "https://files.pythonhosted.org/packages/02/a9/05d91b4295ea7239151eb08cf240e5a2ba969012fda50bc27bcb1ea9cd71/ujson-5.12.0-pp311-pypy311_pp73-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:51acc750ec7a2df786cdc868fb16fa04abd6269a01d58cf59bafc57978773d8e", size = 52045, upload-time = "2026-03-11T22:19:22.879Z" },
]
[[package]]