diff --git a/CHANGELOG.md b/CHANGELOG.md
index 186f3b94afa..ebe44874f3a 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -11,6 +11,23 @@ This project uses [*towncrier*](https://towncrier.readthedocs.io/) and the chang
+## [Infrahub - v1.10.6](https://github.com/opsmill/infrahub/tree/infrahub-v1.10.6) - 2026-07-28
+
+### Changed
+
+- Node creation no longer issues a redundant database query to resolve peers for empty many-cardinality relationships, since a newly created node has none stored yet. This removes hundreds of round-trips during the first-time database initialization and speeds up node creation.
+
+### Fixed
+
+- Deleting a repository now cascades to the objects it manages (transforms, checks, GraphQL queries, generators, and their artifact definitions, artifacts, and validators), so a repository can be removed in a single operation instead of deleting each dependent object by hand. ([#3076](https://github.com/opsmill/infrahub/issues/3076))
+- Following an IP prefix or address link from the relationship tabs of an IPAM namespace now keeps you in that namespace, instead of redirecting to the default namespace. ([#9892](https://github.com/opsmill/infrahub/issues/9892))
+- Fixed git-sync repository import getting stuck on the previous commit when a check definition removed from the repository was still referenced by a proposed change. ([#9934](https://github.com/opsmill/infrahub/issues/9934))
+- Fixed the branch and proposed change diff view not showing changed objects in the tree when their parent object had no changes of its own. ([#10010](https://github.com/opsmill/infrahub/issues/10010))
+- Fixed the object creation form when adding a component from its parent's tab (e.g. adding an interface from a device): the parent is now pre-selected and the create form opens directly, even when the component's parent relationship points to a generic rather than a concrete node.
+- The proposed changes list is now ordered by creation date with the newest first, on both the open and closed tabs.
+- Fixed schema updates that remove a node with an object template leaving the branch schema permanently out of sync across workers ([#10049](https://github.com/opsmill/infrahub/issues/10049))
+- Branch rebase and merge no longer validate schema constraints for attributes and relationships that were not actually modified on the branch. The query collecting the changed fields of a diff could match nodes belonging to other branches' diffs and to already-merged diffs, which would inflate the set of constraints to check.
+
## [Infrahub - v1.10.5](https://github.com/opsmill/infrahub/tree/infrahub-v1.10.5) - 2026-07-15
### Fixed
diff --git a/backend/infrahub/core/diff/query/field_summary.py b/backend/infrahub/core/diff/query/field_summary.py
index 8a19c793557..14c01395ad4 100644
--- a/backend/infrahub/core/diff/query/field_summary.py
+++ b/backend/infrahub/core/diff/query/field_summary.py
@@ -42,17 +42,17 @@ async def query_init(self, db: InfrahubDatabase, **kwargs: Any) -> None: # noqa
AND (diff_root.uuid = $diff_id OR $diff_id IS NULL)
OPTIONAL MATCH (diff_root)-[:DIFF_HAS_NODE]->(n:DiffNode)
WHERE n.action <> $unchanged_str
- WITH DISTINCT n.kind AS kind
- CALL (kind) {
- OPTIONAL MATCH (n:DiffNode {kind: kind})-[:DIFF_HAS_ATTRIBUTE]->(a:DiffAttribute)
+ WITH DISTINCT diff_root, n.kind AS kind
+ CALL (diff_root, kind) {
+ OPTIONAL MATCH (diff_root)-[:DIFF_HAS_NODE]->(n:DiffNode {kind: kind})-[:DIFF_HAS_ATTRIBUTE]->(a:DiffAttribute)
WHERE n.action <> $unchanged_str
AND a.action <> $unchanged_str
WITH DISTINCT a.name AS attr_name
RETURN collect(attr_name) AS attr_names
}
- WITH kind, attr_names
- CALL (kind) {
- OPTIONAL MATCH (n:DiffNode {kind: kind})-[:DIFF_HAS_RELATIONSHIP]->(r:DiffRelationship)
+ WITH diff_root, kind, attr_names
+ CALL (diff_root, kind) {
+ OPTIONAL MATCH (diff_root)-[:DIFF_HAS_NODE]->(n:DiffNode {kind: kind})-[:DIFF_HAS_RELATIONSHIP]->(r:DiffRelationship)
WHERE n.action <> $unchanged_str
AND r.action <> $unchanged_str
WITH DISTINCT r.name AS rel_name
diff --git a/backend/infrahub/core/schema/schema_branch.py b/backend/infrahub/core/schema/schema_branch.py
index 1b7a63c5c86..f3c935f557c 100644
--- a/backend/infrahub/core/schema/schema_branch.py
+++ b/backend/infrahub/core/schema/schema_branch.py
@@ -480,8 +480,10 @@ def get_node_or_generic_schema(self, name: str, duplicate: bool = True) -> NodeS
def delete(self, name: str) -> None:
if name in self.nodes:
del self.nodes[name]
+ self._delete_generated_kinds(node_kind=name)
elif name in self.generics:
del self.generics[name]
+ self._delete_generated_kinds(node_kind=name)
elif name in self.profiles:
del self.profiles[name]
elif name in self.templates:
@@ -491,6 +493,19 @@ def delete(self, name: str) -> None:
branch_name=self.name, identifier=name, message=f"Unable to find the schema {name!r} in the registry"
)
+ def _delete_generated_kinds(self, node_kind: str) -> None:
+ """Generated profile and template schemas must not outlive the node they derive from."""
+ profile_kind = self._get_profile_kind(node_kind=node_kind)
+ if profile_kind in self.profiles:
+ del self.profiles[profile_kind]
+
+ template_kind = self._get_object_template_kind(node_kind=node_kind)
+ if template_kind in self.templates:
+ del self.templates[template_kind]
+ elif template_kind in self.generics:
+ # The object template generated for a generic is itself a generic
+ del self.generics[template_kind]
+
def get_by_id(self, id: str, duplicate: bool = True) -> MainSchemaTypes:
for name in self.all_names:
node = self.get(name=name, duplicate=False)
@@ -2147,7 +2162,11 @@ def _generate_weight_templates(self) -> None:
"""
for name in self.template_names:
template = self.get(name=name, duplicate=True)
- node = self.get(name=template.name, duplicate=False)
+ try:
+ node = self.get(name=template.name, duplicate=False)
+ except SchemaNotFoundError:
+ # An orphaned template is removed when the template schemas are managed
+ continue
node_weights = {
item.name: item.order_weight
diff --git a/backend/infrahub/git/repository.py b/backend/infrahub/git/repository.py
index 9cf408981f1..2cd0ed974bb 100644
--- a/backend/infrahub/git/repository.py
+++ b/backend/infrahub/git/repository.py
@@ -14,6 +14,7 @@
from pydantic import Field
from infrahub import config
+from infrahub.core.branch.enums import TERMINAL_BRANCH_STATUSES
from infrahub.core.constants import InfrahubKind, RepositoryInternalStatus, RepositoryOperationalStatus
from infrahub.exceptions import (
CommitNotFoundError,
@@ -159,6 +160,10 @@ async def collect_pending_imports(self, staging_branch: str | None = None) -> Co
# TODO need to handle properly the situation when a branch is not valid.
if self.internal_status == RepositoryInternalStatus.ACTIVE.value:
+ # A branch that has been merged (or is being deleted) is read-only: recording its commit
+ # would be rejected by the graph and abort the whole sync, so drop those branches here.
+ new_branches, updated_branches = await self._exclude_read_only_branches(new_branches, updated_branches)
+
for branch_name in new_branches:
is_valid = self.validate_remote_branch(branch_name=branch_name)
if not is_valid:
@@ -226,6 +231,22 @@ async def collect_pending_imports(self, staging_branch: str | None = None) -> Co
)
return CollectedImports(imports=imports, failed_imports=failed_imports)
+ async def _exclude_read_only_branches(
+ self, new_branches: list[str], updated_branches: list[str]
+ ) -> tuple[list[str], list[str]]:
+ """Drop branches whose Infrahub branch is in a terminal status (merged or being deleted).
+
+ Such branches are read-only, so recording their commit is rejected by the graph. The default
+ branch is never terminal, so filtering here does not affect the staging-import path.
+ """
+ terminal_status_values = {status.value for status in TERMINAL_BRANCH_STATUSES}
+ graph_branches = await self.sdk.branch.all()
+ read_only = {name for name, branch in graph_branches.items() if branch.status.value in terminal_status_values}
+ return (
+ [name for name in new_branches if self._get_mapped_target_branch(branch_name=name) not in read_only],
+ [name for name in updated_branches if self._get_mapped_target_branch(branch_name=name) not in read_only],
+ )
+
async def _collect_staging_imports(
self, staging_branch: str | None, updated_branches: list[str]
) -> list[PendingObjectImport]:
diff --git a/backend/tests/component/core/diff/repository/test_diff_field_summaries.py b/backend/tests/component/core/diff/repository/test_diff_field_summaries.py
new file mode 100644
index 00000000000..dbad583ed96
--- /dev/null
+++ b/backend/tests/component/core/diff/repository/test_diff_field_summaries.py
@@ -0,0 +1,217 @@
+import random
+from typing import Generator
+
+import pytest
+
+from infrahub import config
+from infrahub.core.constants import DiffAction
+from infrahub.core.diff.model.path import (
+ BranchTrackingId,
+ EnrichedDiffNode,
+ NameTrackingId,
+ NodeDiffFieldSummary,
+)
+from infrahub.core.diff.parent_node_adder import DiffParentNodeAdder
+from infrahub.core.diff.repository.deserializer import EnrichedDiffDeserializer
+from infrahub.core.diff.repository.repository import DiffRepository
+from infrahub.core.timestamp import Timestamp
+from infrahub.database import InfrahubDatabase
+
+from ..factories import (
+ EnrichedAttributeFactory,
+ EnrichedNodeFactory,
+ EnrichedRelationshipGroupFactory,
+ EnrichedRootFactory,
+)
+from .base import DiffRepositoryTestBase
+
+
+class TestDiffNodeFieldSummaries(DiffRepositoryTestBase):
+ base_branch_name: str = "main"
+ diff_branch_name: str = "diff"
+ diff_from_time = Timestamp("2024-06-15T18:35:20Z")
+ diff_to_time = Timestamp("2024-06-15T18:49:40Z")
+
+ @pytest.fixture
+ def diff_repository(self, db: InfrahubDatabase) -> Generator[DiffRepository, None, None]:
+ original_depth = config.SETTINGS.database.max_depth_search_hierarchy
+ original_size = config.SETTINGS.database.query_size_limit
+ config.SETTINGS.database.max_depth_search_hierarchy = 10
+ config.SETTINGS.database.query_size_limit = 50
+ diff_repository = DiffRepository(
+ db=db, deserializer=EnrichedDiffDeserializer(DiffParentNodeAdder()), max_save_batch_size=30
+ )
+ yield diff_repository
+ config.SETTINGS.database.max_depth_search_hierarchy = original_depth
+ config.SETTINGS.database.query_size_limit = original_size
+
+ def _build_named_field_node(
+ self,
+ kind: str,
+ node_action: DiffAction,
+ attribute_actions: dict[str, DiffAction],
+ relationship_actions: dict[str, DiffAction],
+ ) -> EnrichedDiffNode:
+ return EnrichedNodeFactory.build(
+ kind=kind,
+ action=node_action,
+ attributes={
+ EnrichedAttributeFactory.build(name=name, action=action, properties=set())
+ for name, action in attribute_actions.items()
+ },
+ relationships={
+ EnrichedRelationshipGroupFactory.build(name=name, action=action, relationships=set(), nodes=set())
+ for name, action in relationship_actions.items()
+ },
+ )
+
+ async def test_get_node_field_summaries(self, diff_repository: DiffRepository) -> None:
+ diff_nodes = self._build_nodes(num_nodes=5, num_sub_fields=2)
+ for diff_node in list(diff_nodes)[:3]:
+ same_kind_diff_node = self.build_diff_node(num_sub_fields=3, no_recurse=True)
+ same_kind_diff_node.identifier.kind = diff_node.identifier.kind
+ same_attr_names = random.sample([a.name for a in diff_node.attributes], k=min(len(diff_node.attributes), 2))
+ for attr_diff, attr_name in zip(list(same_kind_diff_node.attributes)[:2], same_attr_names, strict=False):
+ attr_diff.name = attr_name
+ same_rel_names = random.sample(
+ [r.name for r in diff_node.relationships], k=min(len(diff_node.relationships), 2)
+ )
+ for rel_diff, rel_name in zip(list(same_kind_diff_node.relationships)[:2], same_rel_names, strict=False):
+ rel_diff.name = rel_name
+ diff_nodes.add(same_kind_diff_node)
+ diff_root = EnrichedRootFactory.build(nodes=diff_nodes)
+ diff_root.tracking_id = BranchTrackingId(name=diff_root.diff_branch_name)
+ await self._save_single_diff(diff_repository=diff_repository, enriched_diff=diff_root, do_summary_counts=False)
+
+ expected_map: dict[str, NodeDiffFieldSummary] = {}
+ for node in diff_root.nodes:
+ if node.action is DiffAction.UNCHANGED:
+ continue
+ if node.kind not in expected_map:
+ expected_map[node.kind] = NodeDiffFieldSummary(kind=node.kind)
+ field_summary = expected_map[node.kind]
+ attr_names = {a.name for a in node.attributes if a.action is not DiffAction.UNCHANGED}
+ field_summary.attribute_names.update(attr_names)
+ rel_names = {r.name for r in node.relationships if r.action is not DiffAction.UNCHANGED}
+ field_summary.relationship_names.update(rel_names)
+ expected_map = {k: v for k, v in expected_map.items() if v.relationship_names or v.attribute_names}
+
+ retrieved_node_field_summaries = await diff_repository.get_node_field_summaries(
+ diff_branch_name=diff_root.diff_branch_name, tracking_id=diff_root.tracking_id
+ )
+ retrieved_map = {summary.kind: summary for summary in retrieved_node_field_summaries}
+ assert expected_map == retrieved_map
+
+ retrieved_node_field_summaries = await diff_repository.get_node_field_summaries(
+ diff_branch_name=diff_root.diff_branch_name, diff_id=diff_root.uuid
+ )
+ retrieved_map = {summary.kind: summary for summary in retrieved_node_field_summaries}
+ assert expected_map == retrieved_map
+
+ async def test_get_node_field_summaries_excludes_other_diffs(
+ self, diff_repository: DiffRepository, reset_database: None
+ ) -> None:
+ """Only the changed fields of the requested diff are summarized.
+
+ Other diffs covering the same node kind must not contribute field names, and must not make a field
+ name that is unchanged in the requested diff look changed.
+ """
+ shared_kind = "TestingSharedKind"
+ requested_branch_name = "requested-branch"
+ requested_tracking_id = BranchTrackingId(name=requested_branch_name)
+
+ requested_diff = EnrichedRootFactory.build(
+ base_branch_name=self.base_branch_name,
+ diff_branch_name=requested_branch_name,
+ from_time=self.diff_from_time,
+ to_time=self.diff_to_time,
+ nodes={
+ self._build_named_field_node(
+ kind=shared_kind,
+ node_action=DiffAction.UPDATED,
+ attribute_actions={"changed_attr": DiffAction.UPDATED, "quiet_attr": DiffAction.UNCHANGED},
+ relationship_actions={"changed_rel": DiffAction.ADDED, "quiet_rel": DiffAction.UNCHANGED},
+ ),
+ # an unchanged node of the same kind contributes nothing, even with changed fields of its own
+ self._build_named_field_node(
+ kind=shared_kind,
+ node_action=DiffAction.UNCHANGED,
+ attribute_actions={"quiet_node_attr": DiffAction.UPDATED},
+ relationship_actions={"quiet_node_rel": DiffAction.REMOVED},
+ ),
+ },
+ tracking_id=requested_tracking_id,
+ )
+ await self._save_single_diff(
+ diff_repository=diff_repository, enriched_diff=requested_diff, do_summary_counts=False
+ )
+
+ other_branch_diff = EnrichedRootFactory.build(
+ base_branch_name=self.base_branch_name,
+ diff_branch_name="other-branch",
+ from_time=self.diff_from_time,
+ to_time=self.diff_to_time,
+ nodes={
+ self._build_named_field_node(
+ kind=shared_kind,
+ node_action=DiffAction.UPDATED,
+ attribute_actions={
+ # changed here, unchanged in the requested diff
+ "quiet_attr": DiffAction.REMOVED,
+ # unchanged here, changed in the requested diff
+ "changed_attr": DiffAction.UNCHANGED,
+ "other_branch_attr": DiffAction.ADDED,
+ },
+ relationship_actions={
+ "quiet_rel": DiffAction.UPDATED,
+ "changed_rel": DiffAction.UNCHANGED,
+ "other_branch_rel": DiffAction.ADDED,
+ },
+ )
+ },
+ tracking_id=BranchTrackingId(name="other-branch"),
+ )
+ await self._save_single_diff(
+ diff_repository=diff_repository, enriched_diff=other_branch_diff, do_summary_counts=False
+ )
+
+ merged_tracking_id = NameTrackingId(name="already-merged")
+ merged_diff = EnrichedRootFactory.build(
+ base_branch_name=self.base_branch_name,
+ diff_branch_name=requested_branch_name,
+ from_time=self.diff_from_time,
+ to_time=self.diff_to_time,
+ nodes={
+ self._build_named_field_node(
+ kind=shared_kind,
+ node_action=DiffAction.UPDATED,
+ attribute_actions={
+ "quiet_node_attr": DiffAction.UPDATED,
+ "merged_attr": DiffAction.UPDATED,
+ },
+ relationship_actions={
+ "quiet_node_rel": DiffAction.UPDATED,
+ "merged_rel": DiffAction.UPDATED,
+ },
+ )
+ },
+ tracking_id=merged_tracking_id,
+ )
+ await self._save_single_diff(
+ diff_repository=diff_repository, enriched_diff=merged_diff, do_summary_counts=False
+ )
+ await diff_repository.mark_tracking_ids_merged(tracking_ids=[merged_tracking_id])
+
+ expected_summaries = [
+ NodeDiffFieldSummary(kind=shared_kind, attribute_names={"changed_attr"}, relationship_names={"changed_rel"})
+ ]
+
+ retrieved_by_tracking_id = await diff_repository.get_node_field_summaries(
+ diff_branch_name=requested_branch_name, tracking_id=requested_tracking_id
+ )
+ assert retrieved_by_tracking_id == expected_summaries
+
+ retrieved_by_diff_id = await diff_repository.get_node_field_summaries(
+ diff_branch_name=requested_branch_name, diff_id=requested_diff.uuid
+ )
+ assert retrieved_by_diff_id == expected_summaries
diff --git a/backend/tests/component/core/diff/repository/test_diff_repository.py b/backend/tests/component/core/diff/repository/test_diff_repository.py
index 67b6d8ea664..e9dc399c397 100644
--- a/backend/tests/component/core/diff/repository/test_diff_repository.py
+++ b/backend/tests/component/core/diff/repository/test_diff_repository.py
@@ -15,7 +15,6 @@
EnrichedDiffs,
FrozenTrackingId,
NameTrackingId,
- NodeDiffFieldSummary,
)
from infrahub.core.diff.parent_node_adder import DiffParentNodeAdder
from infrahub.core.diff.repository.deserializer import EnrichedDiffDeserializer
@@ -605,49 +604,6 @@ async def test_get_one_multiple_results_raises_distinct_error(
await diff_repository.get_one(diff_branch_name=self.diff_branch_name)
assert not issubclass(ResourceMultipleFoundError, ResourceNotFoundError)
- async def test_get_node_field_summaries(self, diff_repository: DiffRepository) -> None:
- diff_nodes = self._build_nodes(num_nodes=5, num_sub_fields=2)
- for diff_node in list(diff_nodes)[:3]:
- same_kind_diff_node = self.build_diff_node(num_sub_fields=3, no_recurse=True)
- same_kind_diff_node.identifier.kind = diff_node.identifier.kind
- same_attr_names = random.sample([a.name for a in diff_node.attributes], k=min(len(diff_node.attributes), 2))
- for attr_diff, attr_name in zip(list(same_kind_diff_node.attributes)[:2], same_attr_names, strict=False):
- attr_diff.name = attr_name
- same_rel_names = random.sample(
- [r.name for r in diff_node.relationships], k=min(len(diff_node.relationships), 2)
- )
- for rel_diff, rel_name in zip(list(same_kind_diff_node.relationships)[:2], same_rel_names, strict=False):
- rel_diff.name = rel_name
- diff_nodes.add(same_kind_diff_node)
- diff_root = EnrichedRootFactory.build(nodes=diff_nodes)
- diff_root.tracking_id = BranchTrackingId(name=diff_root.diff_branch_name)
- await self._save_single_diff(diff_repository=diff_repository, enriched_diff=diff_root, do_summary_counts=False)
-
- expected_map: dict[str, NodeDiffFieldSummary] = {}
- for node in diff_root.nodes:
- if node.action is DiffAction.UNCHANGED:
- continue
- if node.kind not in expected_map:
- expected_map[node.kind] = NodeDiffFieldSummary(kind=node.kind)
- field_summary = expected_map[node.kind]
- attr_names = {a.name for a in node.attributes if a.action is not DiffAction.UNCHANGED}
- field_summary.attribute_names.update(attr_names)
- rel_names = {r.name for r in node.relationships if r.action is not DiffAction.UNCHANGED}
- field_summary.relationship_names.update(rel_names)
- expected_map = {k: v for k, v in expected_map.items() if v.relationship_names or v.attribute_names}
-
- retrieved_node_field_summaries = await diff_repository.get_node_field_summaries(
- diff_branch_name=diff_root.diff_branch_name, tracking_id=diff_root.tracking_id
- )
- retrieved_map = {summary.kind: summary for summary in retrieved_node_field_summaries}
- assert expected_map == retrieved_map
-
- retrieved_node_field_summaries = await diff_repository.get_node_field_summaries(
- diff_branch_name=diff_root.diff_branch_name, diff_id=diff_root.uuid
- )
- retrieved_map = {summary.kind: summary for summary in retrieved_node_field_summaries}
- assert expected_map == retrieved_map
-
async def test_merge_tracking_ids(self, diff_repository: DiffRepository, reset_database: None) -> None:
base_branch_name = "main"
tracking_id_diff_1 = EnrichedRootFactory.build(base_branch_name=base_branch_name)
diff --git a/backend/tests/component/core/schema/schema_branch/test_process_idempotency.py b/backend/tests/component/core/schema/schema_branch/test_process_idempotency.py
index c28b067b5b3..df0f2fc4ef6 100644
--- a/backend/tests/component/core/schema/schema_branch/test_process_idempotency.py
+++ b/backend/tests/component/core/schema/schema_branch/test_process_idempotency.py
@@ -2,6 +2,8 @@
from infrahub.core.branch import Branch
from infrahub.core.constants import RelationshipCardinality, RelationshipKind
+from infrahub.core.initialization import create_branch
+from infrahub.core.models import HashableModelDiff, SchemaDiff
from infrahub.core.registry import registry
from infrahub.core.schema import AttributeSchema, GenericSchema, NodeSchema, SchemaRoot
from infrahub.core.schema.relationship_schema import RelationshipSchema
@@ -135,6 +137,35 @@
)
+# Standalone nodes carrying generated kinds, one per schema change so no change touches
+# a kind another change depends on
+GADGET_NODE = NodeSchema(
+ name="Gadget",
+ namespace="Test",
+ label="Gadget",
+ include_in_menu=True,
+ default_filter="name__value",
+ generate_profile=True,
+ generate_template=True,
+ attributes=[
+ AttributeSchema(name="name", kind="Text", unique=True),
+ ],
+)
+
+DOODAD_NODE = NodeSchema(
+ name="Doodad",
+ namespace="Test",
+ label="Doodad",
+ include_in_menu=True,
+ default_filter="name__value",
+ generate_profile=True,
+ generate_template=True,
+ attributes=[
+ AttributeSchema(name="name", kind="Text", unique=True),
+ ],
+)
+
+
@pytest.fixture
def idempotency_schema() -> SchemaRoot:
return SchemaRoot(
@@ -222,34 +253,128 @@ def test_process_idempotency(register_core_models_schema: SchemaBranch, idempote
assert templates_after_first == templates_after_second, "template names changed after second process()"
-async def test_process_idempotency_after_db_roundtrip(
- db: InfrahubDatabase,
- default_branch: Branch,
- register_core_models_schema: SchemaBranch,
- register_builtin_models_schema: SchemaBranch,
- idempotency_schema: SchemaRoot,
-) -> None:
- """Schema loaded, saved to DB, reloaded, and processed produces the same hash."""
- schema_after_register = registry.schema.register_schema(schema=idempotency_schema, branch=default_branch.name)
-
- # load_schema_to_db mutates schema_after_register in-place (assigns DB ids),
- # so capture the hash after the save, not before.
- await registry.schema.load_schema_to_db(schema=schema_after_register, db=db, branch=default_branch)
- hash_after_save = schema_after_register.get_hash()
-
- # load_schema_from_db calls process() internally
- schema_branch = registry.schema.get_schema_branch(name=default_branch.name)
- loaded_schema = schema_branch.duplicate()
- await registry.schema.load_schema_from_db(db=db, branch=default_branch, schema=loaded_schema)
-
- hash_after_reload = loaded_schema.get_hash()
-
- assert hash_after_save == hash_after_reload, (
- f"Hash mismatch after DB roundtrip.\n"
- f" After save: {hash_after_save}\n"
- f" After reload: {hash_after_reload}\n"
- f"{_describe_hash_diff(schema_after_register, loaded_schema)}"
- )
+class TestSchemaBranchDbRoundtrip:
+ """Schema changes saved to the database must reload into the schema that produced them.
+
+ The base schema is saved once for the whole class; each test applies its own change on its
+ own branch, so only the changed kind is written and the changes stay independent of each
+ other and of the order they run in.
+ """
+
+ @pytest.fixture(scope="class")
+ async def saved_schema(
+ self,
+ db: InfrahubDatabase,
+ default_branch_scope_class: Branch,
+ register_core_models_schema_scope_class: SchemaBranch,
+ ) -> SchemaBranch:
+ """Register and persist the base schema once, and return it as saved."""
+ schema_root = SchemaRoot(
+ nodes=[CONTINENT_NODE, COUNTRY_NODE, SITE_NODE, DEVICE_NODE, INTERFACE_NODE, GADGET_NODE, DOODAD_NODE],
+ generics=[LOCATION_GENERIC, NETWORK_ELEMENT_GENERIC],
+ )
+ schema = registry.schema.register_schema(schema=schema_root, branch=default_branch_scope_class.name)
+ # load_schema_to_db mutates the schema in place to assign DB ids, so the saved state is
+ # only final once it returns
+ await registry.schema.load_schema_to_db(schema=schema, db=db, branch=default_branch_scope_class)
+ return schema
+
+ async def test_reload_matches_saved_schema(
+ self, db: InfrahubDatabase, default_branch_scope_class: Branch, saved_schema: SchemaBranch
+ ) -> None:
+ """Loading the saved schema into an empty branch reproduces it exactly."""
+ loaded_schema = await registry.schema.load_schema_from_db(
+ db=db,
+ branch=default_branch_scope_class,
+ schema=SchemaBranch(cache={}, name=default_branch_scope_class.name),
+ )
+
+ assert loaded_schema.get_hash() == saved_schema.get_hash(), (
+ f"Hash mismatch after DB roundtrip.\n{_describe_hash_diff(saved_schema, loaded_schema)}"
+ )
+ assert sorted(loaded_schema.node_names) == sorted(saved_schema.node_names)
+ assert sorted(loaded_schema.generic_names) == sorted(saved_schema.generic_names)
+ assert sorted(loaded_schema.profile_names) == sorted(saved_schema.profile_names)
+ assert sorted(loaded_schema.template_names) == sorted(saved_schema.template_names)
+ assert not saved_schema.diff(other=loaded_schema).all
+
+ async def test_disabling_generate_template_drops_template(
+ self, db: InfrahubDatabase, default_branch_scope_class: Branch, saved_schema: SchemaBranch
+ ) -> None:
+ """Turning generate_template off drops the template on a schema that still holds it.
+
+ The stale schema stands in for a worker that has not yet seen the change.
+ """
+ branch = await create_branch(branch_name="disable-generate-template", db=db)
+ stale_schema = registry.schema.get_schema_branch(name=branch.name).duplicate()
+ assert "TemplateTestDoodad" in stale_schema.template_names
+
+ candidate_schema = registry.schema.get_schema_branch(name=branch.name)
+ doodad = candidate_schema.get_node(name="TestDoodad", duplicate=True)
+ doodad.generate_template = False
+ candidate_schema.set(name="TestDoodad", schema=doodad)
+ await registry.schema.update_schema_branch(
+ schema=candidate_schema,
+ db=db,
+ branch=branch,
+ diff=SchemaDiff(changed={"TestDoodad": HashableModelDiff(changed={"generate_template": None})}),
+ )
+ updated_schema = registry.schema.get_schema_branch(name=branch.name)
+
+ assert "TestDoodad" in updated_schema.node_names
+ assert "TemplateTestDoodad" not in updated_schema.template_names
+ assert "ProfileTestDoodad" in updated_schema.profile_names
+
+ schema_diff = stale_schema.get_hash_full().compare(updated_schema.get_hash_full())
+ assert schema_diff is not None
+ assert schema_diff.changed_nodes == ["TestDoodad"]
+
+ refreshed_schema = await registry.schema.load_schema_from_db(
+ db=db, branch=branch, schema=stale_schema, schema_diff=schema_diff
+ )
+
+ assert refreshed_schema.get_hash() == updated_schema.get_hash(), (
+ f"Hash mismatch after disabling generate_template.\n{_describe_hash_diff(updated_schema, refreshed_schema)}"
+ )
+ assert "TemplateTestDoodad" not in refreshed_schema.template_names
+ assert sorted(refreshed_schema.template_names) == sorted(updated_schema.template_names)
+ assert sorted(refreshed_schema.profile_names) == sorted(updated_schema.profile_names)
+
+ async def test_removing_node_drops_its_generated_kinds(
+ self, db: InfrahubDatabase, default_branch_scope_class: Branch, saved_schema: SchemaBranch
+ ) -> None:
+ """Removing a node with generated kinds reloads into a schema without any of them.
+
+ Removing the kind leaves the template and profile generated from it without an owner
+ until the schema is reprocessed, which is the state a refreshing worker starts from.
+ """
+ branch = await create_branch(branch_name="remove-generated-kinds", db=db)
+ candidate_schema = registry.schema.get_schema_branch(name=branch.name)
+ assert "TemplateTestGadget" in candidate_schema.template_names
+ assert "ProfileTestGadget" in candidate_schema.profile_names
+
+ await registry.schema.update_schema_branch(
+ schema=candidate_schema,
+ db=db,
+ branch=branch,
+ diff=SchemaDiff(removed={"TestGadget": HashableModelDiff()}),
+ )
+ updated_schema = registry.schema.get_schema_branch(name=branch.name)
+
+ assert "TestGadget" not in updated_schema.node_names
+ assert "TemplateTestGadget" not in updated_schema.template_names
+ assert "ProfileTestGadget" not in updated_schema.profile_names
+
+ reloaded_schema = await registry.schema.load_schema_from_db(
+ db=db, branch=branch, schema=SchemaBranch(cache={}, name=branch.name)
+ )
- diff = schema_after_register.diff(other=loaded_schema)
- assert not diff.all, f"Unexpected diff after DB roundtrip: {diff.all}"
+ assert reloaded_schema.get_hash() == updated_schema.get_hash(), (
+ f"Hash mismatch after removing a node with generated kinds.\n"
+ f"{_describe_hash_diff(updated_schema, reloaded_schema)}"
+ )
+ assert sorted(reloaded_schema.node_names) == sorted(updated_schema.node_names)
+ assert sorted(reloaded_schema.generic_names) == sorted(updated_schema.generic_names)
+ assert sorted(reloaded_schema.profile_names) == sorted(updated_schema.profile_names)
+ assert sorted(reloaded_schema.template_names) == sorted(updated_schema.template_names)
+ assert not updated_schema.diff(other=reloaded_schema).all
diff --git a/backend/tests/component/git/conftest.py b/backend/tests/component/git/conftest.py
index f8bd462af8b..2e2c7ad1bb6 100644
--- a/backend/tests/component/git/conftest.py
+++ b/backend/tests/component/git/conftest.py
@@ -2,6 +2,7 @@
import shutil
from pathlib import Path
from typing import Any, Generator
+from unittest.mock import AsyncMock, patch
import anyio
import pytest
@@ -33,6 +34,13 @@ def client() -> InfrahubClient:
return InfrahubClient(config=Config(address="http://mock", insert_tracker=True))
+@pytest.fixture
+def mock_branch_all() -> Generator[AsyncMock]:
+ """Git sync queries all branches to skip merged/read-only ones; stub the SDK call with no such branches."""
+ with patch("infrahub_sdk.branch.InfrahubBranchManager.all", new_callable=AsyncMock, return_value={}) as mock:
+ yield mock
+
+
@pytest.fixture
def git_upstream_repo_02(git_upstream_repo_01: dict[str, str | Path]) -> dict[str, str | Path]:
"""Delete all the branches but the main branch from git_upstream_repo_01"""
diff --git a/backend/tests/component/git/test_git_repository.py b/backend/tests/component/git/test_git_repository.py
index a590df5087e..9489feebba4 100644
--- a/backend/tests/component/git/test_git_repository.py
+++ b/backend/tests/component/git/test_git_repository.py
@@ -560,6 +560,7 @@ async def test_sync_new_branch(
git_repo_03: InfrahubRepository,
httpx_mock: HTTPXMock,
mock_add_branch01_query: HTTPXMock,
+ mock_branch_all: AsyncMock,
) -> None:
repo = git_repo_03
@@ -598,7 +599,9 @@ async def test_sync_new_branch(
assert len(worktrees) == 4
-async def test_sync_updated_branch(prefect_test_fixture: None, git_repo_04: InfrahubRepository) -> None:
+async def test_sync_updated_branch(
+ prefect_test_fixture: None, git_repo_04: InfrahubRepository, mock_branch_all: AsyncMock
+) -> None:
repo = git_repo_04
branch = Branch(name="branch01", uuid=uuid4())
@@ -621,7 +624,7 @@ async def test_sync_updated_branch(prefect_test_fixture: None, git_repo_04: Infr
async def test_sync_continues_after_branch_pull_failure(
- prefect_test_fixture: None, git_repo_07: InfrahubRepository
+ prefect_test_fixture: None, git_repo_07: InfrahubRepository, mock_branch_all: AsyncMock
) -> None:
"""A branch whose pull fails must not prevent the synchronization of the remaining branches."""
repo = git_repo_07
diff --git a/backend/tests/component/git/test_sync_lock_scope.py b/backend/tests/component/git/test_sync_lock_scope.py
index e4fd1e7f314..9627099f587 100644
--- a/backend/tests/component/git/test_sync_lock_scope.py
+++ b/backend/tests/component/git/test_sync_lock_scope.py
@@ -1,3 +1,4 @@
+from unittest.mock import AsyncMock
from uuid import uuid4
from infrahub.core.branch import Branch
@@ -8,7 +9,7 @@
async def test_repository_lock_scopes_import_build_and_apply(
- prefect_test_fixture: None, git_repo_04: InfrahubRepository
+ prefect_test_fixture: None, git_repo_04: InfrahubRepository, mock_branch_all: AsyncMock
) -> None:
"""The build phase of an import must run outside the lock and the apply phase inside it.
diff --git a/backend/tests/component/graph_traversal/test_path_traversal_query.py b/backend/tests/component/graph_traversal/test_path_traversal_query.py
index 4cfcd070af7..1ebecb66644 100644
--- a/backend/tests/component/graph_traversal/test_path_traversal_query.py
+++ b/backend/tests/component/graph_traversal/test_path_traversal_query.py
@@ -266,6 +266,8 @@ async def test_exhaustive_handles_same_uuid_vertices_after_kind_migration(
candidate_schema.delete(name="TestHub")
hub_schema.inherit_from = ["TestGrouping"]
candidate_schema.set(name="TestHub", schema=hub_schema)
+ # Reprocess to remove generated schemas based on the deleted kind
+ candidate_schema.process()
migration_at = Timestamp()
migration = NodeKindUpdateMigration(
diff --git a/backend/tests/integration/git/test_sync_merged_branch.py b/backend/tests/integration/git/test_sync_merged_branch.py
new file mode 100644
index 00000000000..de63cdb53ab
--- /dev/null
+++ b/backend/tests/integration/git/test_sync_merged_branch.py
@@ -0,0 +1,66 @@
+from __future__ import annotations
+
+from typing import TYPE_CHECKING
+
+from git.repo import Repo
+
+from infrahub.core.branch.enums import BranchStatus
+from infrahub.core.constants import InfrahubKind
+from infrahub.core.initialization import create_branch
+from infrahub.core.node import Node
+from infrahub.git import InfrahubRepository
+from tests.helpers.test_app import TestInfrahubApp
+
+if TYPE_CHECKING:
+ from pathlib import Path
+
+ from infrahub_sdk import InfrahubClient
+
+ from infrahub.database import InfrahubDatabase
+ from tests.helpers.file_repo import FileRepo
+
+MERGED_BRANCH = "description-field"
+
+
+class TestSyncMergedBranch(TestInfrahubApp):
+ async def test_sync_skips_merged_branch(
+ self,
+ db: InfrahubDatabase,
+ client: InfrahubClient,
+ git_repo_car_dealership: FileRepo,
+ git_repos_dir: Path,
+ ) -> None:
+ """A merged (read-only) branch lingering on the remote must be skipped by the sync.
+
+ Recording its commit issues CoreRepositoryUpdate, which is rejected for a merged branch. That
+ rejection is not isolated per branch, so it aborts the whole sync instead of skipping the one
+ branch.
+ """
+ obj = await Node.init(schema=InfrahubKind.REPOSITORY, db=db)
+ await obj.new(
+ db=db,
+ name=git_repo_car_dealership.name,
+ description="test repository",
+ location=git_repo_car_dealership.path,
+ )
+ await obj.save(db=db)
+
+ repo = await InfrahubRepository.new(
+ id=obj.id,
+ name=git_repo_car_dealership.name,
+ location=git_repo_car_dealership.path,
+ client=client,
+ )
+
+ # The branch has been merged: it is read-only but its branch object persists in the graph.
+ branch = await create_branch(branch_name=MERGED_BRANCH, db=db)
+ branch.status = BranchStatus.MERGED
+ await branch.save(db=db)
+
+ # The corresponding git branch is not deleted on merge, so it lingers on the remote and the
+ # local clone does not have it, making the sync treat it as a new branch to record.
+ Repo(git_repo_car_dealership.path).git.branch(MERGED_BRANCH, "main")
+
+ collected = await repo.collect_pending_imports()
+
+ assert MERGED_BRANCH not in [pending.infrahub_branch_name for pending in collected.imports]
diff --git a/backend/tests/unit/core/schema/test_schema_branch.py b/backend/tests/unit/core/schema/test_schema_branch.py
index 247891bb34a..705f7e42de9 100644
--- a/backend/tests/unit/core/schema/test_schema_branch.py
+++ b/backend/tests/unit/core/schema/test_schema_branch.py
@@ -140,6 +140,124 @@ def test_identical_hierarchical_branches_diff_empty(self) -> None:
assert dest_schema.diff(other=candidate_schema).all == []
+class TestDeleteRemovesGeneratedKinds:
+ """The profile and template generated from a kind must not outlive it in the schema maps.
+
+ Between the delete and the next process() any reader would otherwise see a generated kind
+ whose backing schema is gone, and reprocessing has to land on the schema that never held it.
+ """
+
+ @staticmethod
+ def _gadget_and_widget_schema(with_gadget: bool) -> SchemaRoot:
+ nodes = [
+ NodeSchema(
+ name="Widget",
+ namespace="Testing",
+ attributes=[AttributeSchema(name="name", kind="Text", unique=True)],
+ ),
+ ]
+ if with_gadget:
+ nodes.append(
+ NodeSchema(
+ name="Gadget",
+ namespace="Testing",
+ generate_template=True,
+ attributes=[AttributeSchema(name="name", kind="Text", unique=True)],
+ )
+ )
+ return SchemaRoot(nodes=nodes)
+
+ def test_reprocessing_after_delete_matches_schema_without_the_node(self) -> None:
+ baseline = _load_processed_branch(schema_root=self._gadget_and_widget_schema(with_gadget=False))
+ branch = _load_processed_branch(schema_root=self._gadget_and_widget_schema(with_gadget=True))
+
+ branch.delete(name="TestingGadget")
+ branch.process()
+
+ assert branch.get_hash() == baseline.get_hash()
+ assert sorted(branch.node_names) == sorted(baseline.node_names)
+ assert sorted(branch.generic_names) == sorted(baseline.generic_names)
+ assert sorted(branch.profile_names) == sorted(baseline.profile_names)
+ assert sorted(branch.template_names) == sorted(baseline.template_names)
+
+ hash_after_removal = branch.get_hash()
+ branch.process()
+
+ assert branch.get_hash() == hash_after_removal
+
+ def test_delete_node_removes_its_template_and_profile(self) -> None:
+ branch = _load_processed_branch(schema_root=self._gadget_and_widget_schema(with_gadget=True))
+ assert "TemplateTestingGadget" in branch.template_names
+ assert "ProfileTestingGadget" in branch.profile_names
+
+ branch.delete(name="TestingGadget")
+
+ assert "TemplateTestingGadget" not in branch.template_names
+ assert "ProfileTestingGadget" not in branch.profile_names
+
+ def test_delete_generic_removes_its_template(self) -> None:
+ schema_root = SchemaRoot(
+ generics=[
+ GenericSchema(
+ name="Part",
+ namespace="Testing",
+ attributes=[AttributeSchema(name="name", kind="Text")],
+ ),
+ ],
+ nodes=[
+ NodeSchema(
+ name="Gadget",
+ namespace="Testing",
+ generate_template=True,
+ inherit_from=["TestingPart"],
+ attributes=[
+ AttributeSchema(name="name", kind="Text", unique=True),
+ ],
+ ),
+ ],
+ )
+ branch = _load_processed_branch(schema_root=schema_root)
+ assert "TemplateTestingPart" in branch.generic_names
+
+ branch.delete(name="TestingPart")
+
+ assert "TemplateTestingPart" not in branch.generic_names
+
+
+class TestProcessWithOrphanedTemplate:
+ """A schema holding a generated template whose backing node is gone must reprocess cleanly.
+
+ A registry can hold such an orphan when the node was removed without cleaning up the
+ kinds generated from it; reprocessing must drop the orphan instead of failing.
+ """
+
+ def test_process_removes_orphaned_template_and_profile(self) -> None:
+ schema_root = SchemaRoot(
+ nodes=[
+ NodeSchema(
+ name="Gadget",
+ namespace="Testing",
+ generate_template=True,
+ attributes=[
+ AttributeSchema(name="name", kind="Text", unique=True),
+ ],
+ ),
+ ],
+ )
+ branch = _load_processed_branch(schema_root=schema_root)
+ assert "TemplateTestingGadget" in branch.template_names
+ assert "ProfileTestingGadget" in branch.profile_names
+
+ # Drop the node from the map directly, bypassing the delete() cascade, to mirror
+ # a registry that already holds an orphaned template
+ del branch.nodes["TestingGadget"]
+
+ branch.process()
+
+ assert "TemplateTestingGadget" not in branch.template_names
+ assert "ProfileTestingGadget" not in branch.profile_names
+
+
class TestHierarchySchemaProcessingSetsCorrectPeerAndHierarchical:
"""Proves that schema processing produces the peer/hierarchical values in an expected manner."""
diff --git a/changelog/+common-parent-relationship-filter.fixed.md b/changelog/+common-parent-relationship-filter.fixed.md
new file mode 100644
index 00000000000..b5cb214e4b0
--- /dev/null
+++ b/changelog/+common-parent-relationship-filter.fixed.md
@@ -0,0 +1 @@
+Fixed relationship selectors in object forms not honoring the `common_parent` schema property. The options are now filtered to peers that share the same parent as the value picked for the referenced relationship in the same form, instead of listing every peer. Changing that parent clears a now-invalid selection, and the inline "Add new" form pre-fills the parent when one is already selected so a created peer stays valid.
diff --git a/changelog/+faster-node-creation-empty-relationships.changed.md b/changelog/+faster-node-creation-empty-relationships.changed.md
deleted file mode 100644
index a25df8add6c..00000000000
--- a/changelog/+faster-node-creation-empty-relationships.changed.md
+++ /dev/null
@@ -1 +0,0 @@
-Node creation no longer issues a redundant database query to resolve peers for empty many-cardinality relationships, since a newly created node has none stored yet. This removes hundreds of round-trips during the first-time database initialization and speeds up node creation.
diff --git a/changelog/+generic-parent-preselect.fixed.md b/changelog/+generic-parent-preselect.fixed.md
deleted file mode 100644
index 4c2aea03c6b..00000000000
--- a/changelog/+generic-parent-preselect.fixed.md
+++ /dev/null
@@ -1 +0,0 @@
-Fixed the object creation form when adding a component from its parent's tab (e.g. adding an interface from a device): the parent is now pre-selected and the create form opens directly, even when the component's parent relationship points to a generic rather than a concrete node.
diff --git a/changelog/+proposed-changes-list-order.fixed.md b/changelog/+proposed-changes-list-order.fixed.md
deleted file mode 100644
index 15054556bae..00000000000
--- a/changelog/+proposed-changes-list-order.fixed.md
+++ /dev/null
@@ -1 +0,0 @@
-The proposed changes list is now ordered by creation date with the newest first, on both the open and closed tabs.
diff --git a/changelog/10010.fixed.md b/changelog/10010.fixed.md
deleted file mode 100644
index 434f2f1f782..00000000000
--- a/changelog/10010.fixed.md
+++ /dev/null
@@ -1 +0,0 @@
-Fixed the branch and proposed change diff view not showing changed objects in the tree when their parent object had no changes of its own.
diff --git a/changelog/3076.fixed.md b/changelog/3076.fixed.md
deleted file mode 100644
index 8e0e7c4dd25..00000000000
--- a/changelog/3076.fixed.md
+++ /dev/null
@@ -1 +0,0 @@
-Deleting a repository now cascades to the objects it manages (transforms, checks, GraphQL queries, generators, and their artifact definitions, artifacts, and validators), so a repository can be removed in a single operation instead of deleting each dependent object by hand.
diff --git a/changelog/9892.fixed.md b/changelog/9892.fixed.md
deleted file mode 100644
index 3330a8bd45e..00000000000
--- a/changelog/9892.fixed.md
+++ /dev/null
@@ -1 +0,0 @@
-Following an IP prefix or address link from the relationship tabs of an IPAM namespace now keeps you in that namespace, instead of redirecting to the default namespace.
diff --git a/changelog/9931.fixed.md b/changelog/9931.fixed.md
new file mode 100644
index 00000000000..9301e913e57
--- /dev/null
+++ b/changelog/9931.fixed.md
@@ -0,0 +1 @@
+Fixed git repository synchronization halting when a branch that had been merged still existed on the remote.
diff --git a/changelog/9934.fixed.md b/changelog/9934.fixed.md
deleted file mode 100644
index cd17d017c20..00000000000
--- a/changelog/9934.fixed.md
+++ /dev/null
@@ -1 +0,0 @@
-Fixed git-sync repository import getting stuck on the previous commit when a check definition removed from the repository was still referenced by a proposed change.
diff --git a/docker-compose.yml b/docker-compose.yml
index 19490ce875d..f1c5b89d8b0 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -244,7 +244,7 @@ services:
- 6362:6362
task-manager:
- image: "${INFRAHUB_DOCKER_IMAGE:-registry.opsmill.io/opsmill/infrahub}:${VERSION:-1.10.5}"
+ image: "${INFRAHUB_DOCKER_IMAGE:-registry.opsmill.io/opsmill/infrahub}:${VERSION:-1.10.6}"
command: uvicorn --host 0.0.0.0 --port 4200 --factory infrahub.prefect_server.app:create_infrahub_prefect
restart: unless-stopped
depends_on:
@@ -277,7 +277,7 @@ services:
retries: 5
infrahub-server:
- image: "${INFRAHUB_DOCKER_IMAGE:-registry.opsmill.io/opsmill/infrahub}:${VERSION:-1.10.5}"
+ image: "${INFRAHUB_DOCKER_IMAGE:-registry.opsmill.io/opsmill/infrahub}:${VERSION:-1.10.6}"
restart: unless-stopped
command: >
gunicorn --config backend/infrahub/serve/gunicorn_config.py
@@ -323,7 +323,7 @@ services:
deploy:
mode: replicated
replicas: 2
- image: "${INFRAHUB_DOCKER_IMAGE:-registry.opsmill.io/opsmill/infrahub}:${VERSION:-1.10.5}"
+ image: "${INFRAHUB_DOCKER_IMAGE:-registry.opsmill.io/opsmill/infrahub}:${VERSION:-1.10.6}"
command: prefect worker start --type infrahubasync --pool infrahub-worker --with-healthcheck
restart: unless-stopped
depends_on:
diff --git a/docs/docs/release-notes/infrahub/release-1_10_6.mdx b/docs/docs/release-notes/infrahub/release-1_10_6.mdx
new file mode 100644
index 00000000000..906832c4a2c
--- /dev/null
+++ b/docs/docs/release-notes/infrahub/release-1_10_6.mdx
@@ -0,0 +1,37 @@
+---
+title: Release 1.10.6
+release_date: 2026-07-28
+release_type: patch
+description: "Speeds up node creation by avoiding a redundant peer query for empty relationships, and fixes repository cascade deletion, IPAM namespace link navigation, git-sync import, and diff-tree rendering."
+---
+
+
+
+ | Release Number |
+ 1.10.6 |
+
+
+ | Release Date |
+ July 28th, 2026 |
+
+
+ | Tag |
+ [infrahub-v1.10.6](https://github.com/opsmill/infrahub/releases/tag/infrahub-v1.10.6) |
+
+
+
+
+### Changed
+
+- Node creation no longer issues a redundant database query to resolve peers for empty many-cardinality relationships, since a newly created node has none stored yet. This removes hundreds of round-trips during the first-time database initialization and speeds up node creation.
+
+### Fixed
+
+- Deleting a repository now cascades to the objects it manages (transforms, checks, GraphQL queries, generators, and their artifact definitions, artifacts, and validators), so a repository can be removed in a single operation instead of deleting each dependent object by hand. ([#3076](https://github.com/opsmill/infrahub/issues/3076))
+- Following an IP prefix or address link from the relationship tabs of an IPAM namespace now keeps you in that namespace, instead of redirecting to the default namespace. ([#9892](https://github.com/opsmill/infrahub/issues/9892))
+- Fixed git-sync repository import getting stuck on the previous commit when a check definition removed from the repository was still referenced by a proposed change. ([#9934](https://github.com/opsmill/infrahub/issues/9934))
+- Fixed the branch and proposed change diff view not showing changed objects in the tree when their parent object had no changes of its own. ([#10010](https://github.com/opsmill/infrahub/issues/10010))
+- Fixed the object creation form when adding a component from its parent's tab (e.g. adding an interface from a device): the parent is now pre-selected and the create form opens directly, even when the component's parent relationship points to a generic rather than a concrete node.
+- The proposed changes list is now ordered by creation date with the newest first, on both the open and closed tabs.
+- Fixed schema updates that remove a node with an object template leaving the branch schema permanently out of sync across workers ([#10049](https://github.com/opsmill/infrahub/issues/10049))
+- Branch rebase and merge no longer validate schema constraints for attributes and relationships that were not actually modified on the branch. The query collecting the changed fields of a diff could match nodes belonging to other branches' diffs and to already-merged diffs, which would inflate the set of constraints to check.
\ No newline at end of file
diff --git a/docs/package-lock.json b/docs/package-lock.json
index 24335e46178..a8aa77ea04d 100644
--- a/docs/package-lock.json
+++ b/docs/package-lock.json
@@ -16758,9 +16758,9 @@
}
},
"node_modules/postcss": {
- "version": "8.5.19",
- "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.19.tgz",
- "integrity": "sha512-Mz8SaolMd8nB+G13WkORcxQKHZ/NE4xXevtkJHVuG+guo9/wYKlIMTKAqGdEmYOXR2ijPjTYNHssizdaVSUNdQ==",
+ "version": "8.5.23",
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.23.tgz",
+ "integrity": "sha512-g50586zr4bZmwFiTlflMu8E0bDTb5I5gertgwAKmsdUlTQIhZtunzUlD1WSzwcVWPoAVpsrA6vlfCD7oXvRwgg==",
"funding": [
{
"type": "opencollective",
@@ -16777,7 +16777,7 @@
],
"license": "MIT",
"dependencies": {
- "nanoid": "^3.3.12",
+ "nanoid": "^3.3.16",
"picocolors": "^1.1.1",
"source-map-js": "^1.2.1"
},
diff --git a/frontend/app/.betterer.results b/frontend/app/.betterer.results
index ac4f652d51d..0d429602f86 100644
--- a/frontend/app/.betterer.results
+++ b/frontend/app/.betterer.results
@@ -125,9 +125,9 @@ exports[`fix ts error`] = {
"src/entities/nodes/relationships/ui/queries/get-default-parent.query.ts:2275135453": [
[18, 34, 2, "tsc: Property \'id\' does not exist on type \'NodeCore | NodeCore[] | { from_pool: { id: string; }; }\'.\\n Property \'id\' does not exist on type \'NodeCore[]\'.", "5861160"]
],
- "src/entities/nodes/relationships/ui/relationship-combobox-list.tsx:1067691755": [
- [69, 59, 10, "tsc: No overload matches this call.\\n Overload 1 of 2, \'(predicate: (value: NodeCore, index: number, array: NodeCore[]) => value is NodeCore, thisArg?: any): NodeCore[]\', gave the following error.\\n Argument of type \'(relationshipNode: RelationshipNode) => boolean\' is not assignable to parameter of type \'(value: NodeCore, index: number, array: NodeCore[]) => value is NodeCore\'.\\n Types of parameters \'relationshipNode\' and \'value\' are incompatible.\\n Type \'NodeCore\' is not assignable to type \'RelationshipNode\'.\\n Types of property \'display_label\' are incompatible.\\n Type \'null | string | undefined\' is not assignable to type \'string\'.\\n Type \'undefined\' is not assignable to type \'string\'.\\n Overload 2 of 2, \'(predicate: (value: NodeCore, index: number, array: NodeCore[]) => unknown, thisArg?: any): NodeCore[]\', gave the following error.\\n Argument of type \'(relationshipNode: RelationshipNode) => boolean\' is not assignable to parameter of type \'(value: NodeCore, index: number, array: NodeCore[]) => unknown\'.\\n Types of parameters \'relationshipNode\' and \'value\' are incompatible.\\n Type \'NodeCore\' is not assignable to type \'RelationshipNode\'.\\n Types of property \'display_label\' are incompatible.\\n Type \'null | string | undefined\' is not assignable to type \'string\'.\\n Type \'undefined\' is not assignable to type \'string\'.", "2021508816"],
- [76, 41, 4, "tsc: Argument of type \'NodeCore\' is not assignable to parameter of type \'RelationshipNode\'.\\n Types of property \'display_label\' are incompatible.\\n Type \'null | string | undefined\' is not assignable to type \'string\'.\\n Type \'undefined\' is not assignable to type \'string\'.", "2087865285"]
+ "src/entities/nodes/relationships/ui/relationship-combobox-list.tsx:2789186293": [
+ [76, 59, 10, "tsc: No overload matches this call.\\n Overload 1 of 2, \'(predicate: (value: NodeCore, index: number, array: NodeCore[]) => value is NodeCore, thisArg?: any): NodeCore[]\', gave the following error.\\n Argument of type \'(relationshipNode: RelationshipNode) => boolean\' is not assignable to parameter of type \'(value: NodeCore, index: number, array: NodeCore[]) => value is NodeCore\'.\\n Types of parameters \'relationshipNode\' and \'value\' are incompatible.\\n Type \'NodeCore\' is not assignable to type \'RelationshipNode\'.\\n Types of property \'display_label\' are incompatible.\\n Type \'null | string | undefined\' is not assignable to type \'string\'.\\n Type \'undefined\' is not assignable to type \'string\'.\\n Overload 2 of 2, \'(predicate: (value: NodeCore, index: number, array: NodeCore[]) => unknown, thisArg?: any): NodeCore[]\', gave the following error.\\n Argument of type \'(relationshipNode: RelationshipNode) => boolean\' is not assignable to parameter of type \'(value: NodeCore, index: number, array: NodeCore[]) => unknown\'.\\n Types of parameters \'relationshipNode\' and \'value\' are incompatible.\\n Type \'NodeCore\' is not assignable to type \'RelationshipNode\'.\\n Types of property \'display_label\' are incompatible.\\n Type \'null | string | undefined\' is not assignable to type \'string\'.\\n Type \'undefined\' is not assignable to type \'string\'.", "2021508816"],
+ [83, 41, 4, "tsc: Argument of type \'NodeCore\' is not assignable to parameter of type \'RelationshipNode\'.\\n Types of property \'display_label\' are incompatible.\\n Type \'null | string | undefined\' is not assignable to type \'string\'.\\n Type \'undefined\' is not assignable to type \'string\'.", "2087865285"]
],
"src/entities/nodes/relationships/ui/relationship-hierarchical-combobox-list.tsx:3738094152": [
[156, 61, 10, "tsc: No overload matches this call.\\n Overload 1 of 2, \'(predicate: (value: NodeCore, index: number, array: NodeCore[]) => value is NodeCore, thisArg?: any): NodeCore[]\', gave the following error.\\n Argument of type \'(relationshipNode: RelationshipNode) => boolean\' is not assignable to parameter of type \'(value: NodeCore, index: number, array: NodeCore[]) => value is NodeCore\'.\\n Types of parameters \'relationshipNode\' and \'value\' are incompatible.\\n Type \'NodeCore\' is not assignable to type \'RelationshipNode\'.\\n Types of property \'display_label\' are incompatible.\\n Type \'null | string | undefined\' is not assignable to type \'string\'.\\n Type \'undefined\' is not assignable to type \'string\'.\\n Overload 2 of 2, \'(predicate: (value: NodeCore, index: number, array: NodeCore[]) => unknown, thisArg?: any): NodeCore[]\', gave the following error.\\n Argument of type \'(relationshipNode: RelationshipNode) => boolean\' is not assignable to parameter of type \'(value: NodeCore, index: number, array: NodeCore[]) => unknown\'.\\n Types of parameters \'relationshipNode\' and \'value\' are incompatible.\\n Type \'NodeCore\' is not assignable to type \'RelationshipNode\'.\\n Types of property \'display_label\' are incompatible.\\n Type \'null | string | undefined\' is not assignable to type \'string\'.\\n Type \'undefined\' is not assignable to type \'string\'.", "2021508816"],
@@ -320,8 +320,8 @@ exports[`fix ts error`] = {
[74, 9, 21, "tsc: Property \'type\' is missing in type \'\\"Attribute\\" | \\"Component\\" | \\"Group\\" | \\"Hierarchy\\" | \\"Parent\\" | \\"Profile\\" | \\"Template\\"; label?: string | \\"absent\\"; name: string; peer: string; kind: \\"Generic\\" | \\"agnostic\\" | \\"any\\"; read_only: boolean; deprecation?: string | \\"aware\\" | \\"cascade\\" | \\"extra\\"; }; filterQuery?: Record | \\"valueAsNumber\\" | boolean | null | null | null | null | null | null | null | null | null | null | null | number | string[]> | undefined; allow_override: \\"none\\" | undefined; cardinality: \\"one\\" | undefined; common_relatives?: string[] | undefined; description?: string | undefined; description?: string | undefined; disabled?: boolean | undefined; display: \\"default\\" | undefined; identifier?: string | undefined; inherited: boolean; direction: \\"bidirectional\\" | undefined; isBulkUpdate?: boolean | undefined; name: string; label?: string | undefined; onChange?: ((value: FormFieldValue) => void) | undefined; on_delete?: \\"no-action\\" | undefined; optional: boolean; branch?: \\"local\\" | undefined; options?: SelectOption[] | undefined; order_weight?: number | undefined; parent?: string | undefined; peer?: string | undefined; peerField?: string | undefined; placeholder?: string | undefined; pool?: { kind: string; defaultAllocatedObjectKind: string; fromPoolRelationshipName?: string | undefined; relationship: { id?: string | undefined; rules?: Omit, \\"disabled\\" | undefined; shouldUnregister?: boolean | undefined; state: \\"present\\" | undefined; } | undefined; } | { unique: true; defaultValue?: FormRelationshipValue\' but required in type \'DynamicRelationshipFieldProps\'.", "2975306552"],
[86, 9, 21, "tsc: Property \'type\' is missing in type \'\\"Attribute\\" | \\"Component\\" | \\"Group\\" | \\"Hierarchy\\" | \\"Parent\\" | \\"Profile\\" | \\"Template\\"; label?: string | \\"absent\\"; name: string; peer: string; kind: \\"Generic\\" | \\"agnostic\\" | \\"any\\"; read_only: boolean; deprecation?: string | \\"aware\\" | \\"cascade\\" | \\"extra\\"; }; filterQuery?: Record | undefined; allow_override: \\"none\\" | undefined; cardinality: \\"one\\" | undefined; common_relatives?: string[] | undefined; description?: string | undefined; description?: string | undefined; disabled?: boolean | undefined; display: \\"default\\" | undefined; identifier?: string | undefined; inherited: boolean; direction: \\"bidirectional\\" | undefined; isBulkUpdate?: boolean | undefined; name: string; label?: string | undefined; onChange?: ((value: FormFieldValue) => void) | undefined; on_delete?: \\"no-action\\" | undefined; optional: boolean; branch?: \\"local\\" | undefined; options?: SelectOption[] | undefined; order_weight?: number | undefined; parent?: string | undefined; peer?: string | undefined; peerField?: string | undefined; placeholder?: string | undefined; pool?: { kind: string; defaultAllocatedObjectKind: string; fromPoolRelationshipName?: string | undefined; relationship: { id?: string | undefined; shouldUnregister?: boolean | undefined; state: \\"present\\" | undefined; unique?: boolean | undefined; } | undefined; } | { rules: { required: true; }; defaultValue?: FormRelationshipValue\' but required in type \'DynamicRelationshipFieldProps\'.", "2975306552"]
],
- "src/shared/components/form/fields/relationships/generic-relationship.field.tsx:3433690233": [
- [222, 56, 4, "tsc: Property \'name\' does not exist on type \'\\"\\" | \\"Attribute\\" | \\"Component\\" | \\"Group\\" | \\"Hierarchy\\" | \\"Parent\\" | \\"Profile\\" | \\"Template\\"; label?: string | \\"absent\\"; name: string; peer: string; kind: \\"Generic\\" | \\"agnostic\\" | \\"any\\"; read_only: boolean; deprecation?: string | \\"aware\\" | \\"cascade\\" | \\"extra\\"; } | \\"inbound\\"; hierarchical?: string | \\"many\\"; min_count: number; max_count: number; common_parent?: string | \\"outbound\\" | null | null | null | null | null | null | null | null | null | null | null | undefined; allow_override: \\"none\\" | undefined; cardinality: \\"one\\" | undefined; common_relatives?: string[] | undefined; description?: string | undefined; display: \\"default\\" | undefined; identifier?: string | undefined; inherited: boolean; direction: \\"bidirectional\\" | undefined; on_delete?: \\"no-action\\" | undefined; optional: boolean; branch?: \\"local\\" | undefined; order_weight?: number | undefined; state: \\"present\\" | { id?: string\'.\\n Property \'name\' does not exist on type \'\\"\\"\'.", "2087876002"]
+ "src/shared/components/form/fields/relationships/generic-relationship.field.tsx:39778637": [
+ [231, 54, 4, "tsc: Property \'name\' does not exist on type \'\\"\\" | \\"Attribute\\" | \\"Component\\" | \\"Group\\" | \\"Hierarchy\\" | \\"Parent\\" | \\"Profile\\" | \\"Template\\"; label?: string | \\"absent\\"; name: string; peer: string; kind: \\"Generic\\" | \\"agnostic\\" | \\"any\\"; read_only: boolean; deprecation?: string | \\"aware\\" | \\"cascade\\" | \\"extra\\"; } | \\"inbound\\"; hierarchical?: string | \\"many\\"; min_count: number; max_count: number; common_parent?: string | \\"outbound\\" | null | null | null | null | null | null | null | null | null | null | null | undefined; allow_override: \\"none\\" | undefined; cardinality: \\"one\\" | undefined; common_relatives?: string[] | undefined; description?: string | undefined; display: \\"default\\" | undefined; identifier?: string | undefined; inherited: boolean; direction: \\"bidirectional\\" | undefined; on_delete?: \\"no-action\\" | undefined; optional: boolean; branch?: \\"local\\" | undefined; order_weight?: number | undefined; state: \\"present\\" | { id?: string\'.\\n Property \'name\' does not exist on type \'\\"\\"\'.", "2087876002"]
],
"src/shared/components/form/file-with-profile-form.tsx:3973907063": [
[13, 8, 6, "tsc: Type \'\\"Attribute\\" | \\"Attribute\\" | \\"Component\\" | \\"Component\\" | \\"Group\\" | \\"Group\\" | \\"Hierarchy\\" | \\"Hierarchy\\" | \\"Parent\\" | \\"Parent\\" | \\"Profile\\" | \\"Profile\\" | \\"Template\\"; label?: string | \\"Template\\"; label?: string | \\"absent\\"; end_range: number; start_range: number; number_pool_id?: string | \\"absent\\"; end_range: number; start_range: number; number_pool_id?: string | \\"absent\\"; min_value?: number | \\"absent\\"; min_value?: number | \\"absent\\"; name: string; description?: string | \\"absent\\"; name: string; description?: string | \\"absent\\"; name: string; kind: string; enum?: unknown[] | \\"absent\\"; name: string; kind: string; enum?: unknown[] | \\"absent\\"; name: string; namespace: string; description?: string | \\"absent\\"; name: string; namespace: string; description?: string | \\"absent\\"; name: string; peer: string; kind: \\"Generic\\" | \\"absent\\"; name: string; peer: string; kind: \\"Generic\\" | \\"absent\\"; regex?: string | \\"absent\\"; regex?: string | \\"absent\\"; regex?: string | \\"absent\\"; regex?: string | \\"absent\\"; } | \\"absent\\"; } | \\"agnostic\\" | \\"agnostic\\" | \\"agnostic\\" | \\"agnostic\\" | \\"agnostic\\"; default_filter?: string | \\"agnostic\\"; default_filter?: string | \\"any\\"; parameters?: { id?: string | \\"any\\"; parameters?: { id?: string | \\"any\\"; read_only: boolean; deprecation?: string | \\"any\\"; read_only: boolean; deprecation?: string | \\"aware\\" | \\"aware\\" | \\"aware\\" | \\"aware\\" | \\"aware\\" | \\"aware\\" | \\"cascade\\" | \\"cascade\\" | \\"extra\\"; }[] | \\"extra\\"; }[] | \\"extra\\"; }[] | \\"extra\\"; }[] | \\"inbound\\"; hierarchical?: string | \\"inbound\\"; hierarchical?: string | \\"many\\"; min_count: number; max_count: number; common_parent?: string | \\"many\\"; min_count: number; max_count: number; common_parent?: string | \\"outbound\\" | \\"outbound\\" | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | undefined; allow_override: \\"none\\" | undefined; allow_override: \\"none\\" | undefined; attributes?: { id?: string | undefined; attributes?: { id?: string | undefined; branch: \\"local\\" | undefined; branch: \\"local\\" | undefined; cardinality: \\"one\\" | undefined; cardinality: \\"one\\" | undefined; children?: string | undefined; choices?: { id?: string | undefined; choices?: { id?: string | undefined; color?: string | undefined; color?: string | undefined; common_relatives?: string[] | undefined; common_relatives?: string[] | undefined; computed_attribute?: { [key: string]: unknown; } | undefined; computed_attribute?: { [key: string]: unknown; } | undefined; default_value?: unknown; inherited: boolean; allow_override: \\"none\\" | undefined; default_value?: unknown; inherited: boolean; allow_override: \\"none\\" | undefined; deprecation?: string | undefined; deprecation?: string | undefined; description?: string | undefined; description?: string | undefined; description?: string | undefined; description?: string | undefined; display: \\"default\\" | undefined; display: \\"default\\" | undefined; display: \\"default\\" | undefined; display: \\"default\\" | undefined; display_label?: string | undefined; display_label?: string | undefined; display_labels?: string[] | undefined; display_labels?: string[] | undefined; documentation?: string | undefined; documentation?: string | undefined; excluded_values?: string | undefined; excluded_values?: string | undefined; generate_profile: boolean; generate_template: boolean; hierarchy?: string | undefined; hash: string; } | undefined; hash: string; } | undefined; human_friendly_id?: string[] | undefined; human_friendly_id?: string[] | undefined; icon?: string | undefined; icon?: string | undefined; identifier?: string | undefined; identifier?: string | undefined; include_in_menu?: boolean | undefined; include_in_menu?: boolean | undefined; inherit_from?: string[] | undefined; inherit_from?: string[] | undefined; inherited: boolean; direction: \\"bidirectional\\" | undefined; inherited: boolean; direction: \\"bidirectional\\" | undefined; kind?: string | undefined; kind?: string | undefined; label?: string | undefined; label?: string | undefined; label?: string | undefined; label?: string | undefined; label?: string | undefined; label?: string | undefined; max_length?: number | undefined; max_length?: number | undefined; max_length?: number | undefined; max_length?: number | undefined; max_value?: number | undefined; max_value?: number | undefined; menu_placement?: string | undefined; menu_placement?: string | undefined; min_length?: number | undefined; min_length?: number | undefined; min_length?: number | undefined; min_length?: number | undefined; on_delete?: \\"no-action\\" | undefined; on_delete?: \\"no-action\\" | undefined; optional: boolean; branch?: \\"local\\" | undefined; optional: boolean; branch?: \\"local\\" | undefined; order_by?: string[] | undefined; order_by?: string[] | undefined; order_weight?: number | undefined; order_weight?: number | undefined; order_weight?: number | undefined; order_weight?: number | undefined; parent?: string | undefined; read_only: boolean; unique: boolean; optional: boolean; branch?: \\"local\\" | undefined; read_only: boolean; unique: boolean; optional: boolean; branch?: \\"local\\" | undefined; regex?: string | undefined; regex?: string | undefined; relationships?: { id?: string | undefined; relationships?: { id?: string | undefined; state: \\"present\\" | undefined; state: \\"present\\" | undefined; state: \\"present\\" | undefined; state: \\"present\\" | undefined; state: \\"present\\" | undefined; state: \\"present\\" | undefined; state: \\"present\\" | undefined; state: \\"present\\" | undefined; state: \\"present\\" | undefined; state: \\"present\\" | undefined; state: \\"present\\" | undefined; state: \\"present\\" | undefined; state: \\"present\\" | undefined; state: \\"present\\" | undefined; state: \\"present\\" | undefined; state: \\"present\\" | undefined; state: \\"present\\" | undefined; state: \\"present\\" | undefined; uniqueness_constraints?: string[][] | undefined; uniqueness_constraints?: string[][] | undefined; } | undefined; } | undefined; } | undefined; } | undefined; } | undefined; } | undefined; } | undefined; } | undefined; }[] | undefined; }[] | { id?: string | { id?: string | { id?: string | { id?: string | { id?: string | { id?: string | { id?: string | { id?: string | { id?: string | { id?: string\' is not assignable to type \'\\"Attribute\\" | \\"Component\\" | \\"Group\\" | \\"Hierarchy\\" | \\"Parent\\" | \\"Profile\\" | \\"Template\\"; label?: string | \\"absent\\"; end_range: number; start_range: number; number_pool_id?: string | \\"absent\\"; min_value?: number | \\"absent\\"; name: string; description?: string | \\"absent\\"; name: string; kind: string; enum?: unknown[] | \\"absent\\"; name: string; namespace: string; description?: string | \\"absent\\"; name: string; peer: string; kind: \\"Generic\\" | \\"absent\\"; regex?: string | \\"absent\\"; regex?: string | \\"absent\\"; } | \\"agnostic\\" | \\"agnostic\\" | \\"agnostic\\"; default_filter?: string | \\"any\\"; parameters?: { id?: string | \\"any\\"; read_only: boolean; deprecation?: string | \\"aware\\" | \\"aware\\" | \\"aware\\" | \\"cascade\\" | \\"extra\\"; }[] | \\"extra\\"; }[] | \\"inbound\\"; hierarchical?: string | \\"many\\"; min_count: number; max_count: number; common_parent?: string | \\"outbound\\" | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | undefined; allow_override: \\"none\\" | undefined; attributes?: { id?: string | undefined; branch: \\"local\\" | undefined; cardinality: \\"one\\" | undefined; children?: string | undefined; choices?: { id?: string | undefined; color?: string | undefined; common_relatives?: string[] | undefined; computed_attribute?: { [key: string]: unknown; } | undefined; default_value?: unknown; inherited: boolean; allow_override: \\"none\\" | undefined; deprecation?: string | undefined; description?: string | undefined; description?: string | undefined; display: \\"default\\" | undefined; display: \\"default\\" | undefined; display_label?: string | undefined; display_labels?: string[] | undefined; documentation?: string | undefined; excluded_values?: string | undefined; generate_profile: boolean; generate_template: boolean; hierarchy?: string | undefined; hash: string; } | undefined; human_friendly_id?: string[] | undefined; icon?: string | undefined; identifier?: string | undefined; include_in_menu?: boolean | undefined; inherit_from?: string[] | undefined; inherited: boolean; direction: \\"bidirectional\\" | undefined; kind?: string | undefined; label?: string | undefined; label?: string | undefined; label?: string | undefined; max_length?: number | undefined; max_length?: number | undefined; max_value?: number | undefined; menu_placement?: string | undefined; min_length?: number | undefined; min_length?: number | undefined; on_delete?: \\"no-action\\" | undefined; optional: boolean; branch?: \\"local\\" | undefined; order_by?: string[] | undefined; order_weight?: number | undefined; order_weight?: number | undefined; parent?: string | undefined; read_only: boolean; unique: boolean; optional: boolean; branch?: \\"local\\" | undefined; regex?: string | undefined; relationships?: { id?: string | undefined; state: \\"present\\" | undefined; state: \\"present\\" | undefined; state: \\"present\\" | undefined; state: \\"present\\" | undefined; state: \\"present\\" | undefined; state: \\"present\\" | undefined; state: \\"present\\" | undefined; state: \\"present\\" | undefined; state: \\"present\\" | undefined; uniqueness_constraints?: string[][] | undefined; } | undefined; } | undefined; } | undefined; } | undefined; }[] | { id?: string | { id?: string | { id?: string | { id?: string | { id?: string\'.\\n Type \'\\"Attribute\\" | \\"Component\\" | \\"Group\\" | \\"Hierarchy\\" | \\"Parent\\" | \\"Profile\\" | \\"Template\\"; label?: string | \\"absent\\"; end_range: number; start_range: number; number_pool_id?: string | \\"absent\\"; min_value?: number | \\"absent\\"; name: string; description?: string | \\"absent\\"; name: string; kind: string; enum?: unknown[] | \\"absent\\"; name: string; namespace: string; description?: string | \\"absent\\"; name: string; peer: string; kind: \\"Generic\\" | \\"absent\\"; regex?: string | \\"absent\\"; regex?: string | \\"absent\\"; } | \\"agnostic\\" | \\"agnostic\\" | \\"agnostic\\"; default_filter?: string | \\"any\\"; parameters?: { id?: string | \\"any\\"; read_only: boolean; deprecation?: string | \\"aware\\" | \\"aware\\" | \\"aware\\" | \\"cascade\\" | \\"extra\\"; }[] | \\"extra\\"; }[] | \\"inbound\\"; hierarchical?: string | \\"many\\"; min_count: number; max_count: number; common_parent?: string | \\"outbound\\" | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | undefined; allow_override: \\"none\\" | undefined; attributes?: { id?: string | undefined; branch: \\"local\\" | undefined; cardinality: \\"one\\" | undefined; choices?: { id?: string | undefined; color?: string | undefined; common_relatives?: string[] | undefined; computed_attribute?: { [key: string]: unknown; } | undefined; default_value?: unknown; inherited: boolean; allow_override: \\"none\\" | undefined; deprecation?: string | undefined; description?: string | undefined; description?: string | undefined; display: \\"default\\" | undefined; display: \\"default\\" | undefined; display_label?: string | undefined; display_labels?: string[] | undefined; documentation?: string | undefined; excluded_values?: string | undefined; hash: string; } | undefined; human_friendly_id?: string[] | undefined; icon?: string | undefined; identifier?: string | undefined; include_in_menu?: boolean | undefined; inherit_from?: string[] | undefined; inherited: boolean; direction: \\"bidirectional\\" | undefined; kind?: string | undefined; label?: string | undefined; label?: string | undefined; label?: string | undefined; max_length?: number | undefined; max_length?: number | undefined; max_value?: number | undefined; menu_placement?: string | undefined; min_length?: number | undefined; min_length?: number | undefined; on_delete?: \\"no-action\\" | undefined; optional: boolean; branch?: \\"local\\" | undefined; order_by?: string[] | undefined; order_weight?: number | undefined; order_weight?: number | undefined; read_only: boolean; unique: boolean; optional: boolean; branch?: \\"local\\" | undefined; regex?: string | undefined; relationships?: { id?: string | undefined; state: \\"present\\" | undefined; state: \\"present\\" | undefined; state: \\"present\\" | undefined; state: \\"present\\" | undefined; state: \\"present\\" | undefined; state: \\"present\\" | undefined; state: \\"present\\" | undefined; state: \\"present\\" | undefined; state: \\"present\\" | undefined; uniqueness_constraints?: string[][] | undefined; } | undefined; } | undefined; } | undefined; } | undefined; }[] | { id?: string | { id?: string | { id?: string | { id?: string | { id?: string\' is missing 2 properties from type \'\\"Attribute\\" | \\"Component\\" | \\"Group\\" | \\"Hierarchy\\" | \\"Parent\\" | \\"Profile\\" | \\"Template\\"; label?: string | \\"absent\\"; end_range: number; start_range: number; number_pool_id?: string | \\"absent\\"; min_value?: number | \\"absent\\"; name: string; description?: string | \\"absent\\"; name: string; kind: string; enum?: unknown[] | \\"absent\\"; name: string; namespace: string; description?: string | \\"absent\\"; name: string; peer: string; kind: \\"Generic\\" | \\"absent\\"; regex?: string | \\"absent\\"; regex?: string | \\"absent\\"; } | \\"agnostic\\" | \\"agnostic\\" | \\"agnostic\\"; default_filter?: string | \\"any\\"; parameters?: { id?: string | \\"any\\"; read_only: boolean; deprecation?: string | \\"aware\\" | \\"aware\\" | \\"aware\\" | \\"cascade\\" | \\"extra\\"; }[] | \\"extra\\"; }[] | \\"inbound\\"; hierarchical?: string | \\"many\\"; min_count: number; max_count: number; common_parent?: string | \\"outbound\\" | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | null | undefined; allow_override: \\"none\\" | undefined; attributes?: { id?: string | undefined; branch: \\"local\\" | undefined; cardinality: \\"one\\" | undefined; children?: string | undefined; choices?: { id?: string | undefined; color?: string | undefined; common_relatives?: string[] | undefined; computed_attribute?: { [key: string]: unknown; } | undefined; default_value?: unknown; inherited: boolean; allow_override: \\"none\\" | undefined; deprecation?: string | undefined; description?: string | undefined; description?: string | undefined; display: \\"default\\" | undefined; display: \\"default\\" | undefined; display_label?: string | undefined; display_labels?: string[] | undefined; documentation?: string | undefined; excluded_values?: string | undefined; generate_profile: boolean; generate_template: boolean; hierarchy?: string | undefined; hash: string; } | undefined; human_friendly_id?: string[] | undefined; icon?: string | undefined; identifier?: string | undefined; include_in_menu?: boolean | undefined; inherit_from?: string[] | undefined; inherited: boolean; direction: \\"bidirectional\\" | undefined; kind?: string | undefined; label?: string | undefined; label?: string | undefined; label?: string | undefined; max_length?: number | undefined; max_length?: number | undefined; max_value?: number | undefined; menu_placement?: string | undefined; min_length?: number | undefined; min_length?: number | undefined; on_delete?: \\"no-action\\" | undefined; optional: boolean; branch?: \\"local\\" | undefined; order_by?: string[] | undefined; order_weight?: number | undefined; order_weight?: number | undefined; parent?: string | undefined; read_only: boolean; unique: boolean; optional: boolean; branch?: \\"local\\" | undefined; regex?: string | undefined; relationships?: { id?: string | undefined; state: \\"present\\" | undefined; state: \\"present\\" | undefined; state: \\"present\\" | undefined; state: \\"present\\" | undefined; state: \\"present\\" | undefined; state: \\"present\\" | undefined; state: \\"present\\" | undefined; state: \\"present\\" | undefined; state: \\"present\\" | undefined; uniqueness_constraints?: string[][] | undefined; } | undefined; } | undefined; } | undefined; } | undefined; }[] | { id?: string | { id?: string | { id?: string | { id?: string | { id?: string\'", "2166186324"]
@@ -363,10 +363,10 @@ exports[`fix ts error`] = {
"src/shared/components/inputs/peer.tsx:3616063315": [
[66, 23, 5, "tsc: Argument of type \'NodeCore\' is not assignable to parameter of type \'Node\'.\\n Types of property \'display_label\' are incompatible.\\n Type \'null | string | undefined\' is not assignable to type \'string\'.\\n Type \'undefined\' is not assignable to type \'string\'.", "189936718"]
],
- "src/shared/components/inputs/relationship-one.tsx:3286424152": [
- [97, 38, 2, "tsc: Property \'id\' does not exist on type \'Node | PoolValue\'.\\n Property \'id\' does not exist on type \'PoolValue\'.", "5861160"],
- [99, 54, 2, "tsc: Property \'id\' does not exist on type \'Node | PoolValue\'.\\n Property \'id\' does not exist on type \'PoolValue\'.", "5861160"],
- [146, 23, 5, "tsc: Argument of type \'NodeCore\' is not assignable to parameter of type \'Node | PoolValue | null\'.\\n Type \'NodeCore\' is not assignable to type \'Node\'.\\n Types of property \'display_label\' are incompatible.\\n Type \'null | string | undefined\' is not assignable to type \'string\'.\\n Type \'undefined\' is not assignable to type \'string\'.", "189936718"]
+ "src/shared/components/inputs/relationship-one.tsx:3115716616": [
+ [100, 38, 2, "tsc: Property \'id\' does not exist on type \'Node | PoolValue\'.\\n Property \'id\' does not exist on type \'PoolValue\'.", "5861160"],
+ [102, 54, 2, "tsc: Property \'id\' does not exist on type \'Node | PoolValue\'.\\n Property \'id\' does not exist on type \'PoolValue\'.", "5861160"],
+ [150, 23, 5, "tsc: Argument of type \'NodeCore\' is not assignable to parameter of type \'Node | PoolValue | null\'.\\n Type \'NodeCore\' is not assignable to type \'Node\'.\\n Types of property \'display_label\' are incompatible.\\n Type \'null | string | undefined\' is not assignable to type \'string\'.\\n Type \'undefined\' is not assignable to type \'string\'.", "189936718"]
],
"src/shared/components/table/table.tsx:2590261269": [
[80, 40, 23, "tsc: Argument of type \'number | string | tRowValue | undefined\' is not assignable to parameter of type \'number | string | tRowValue\'.\\n Type \'undefined\' is not assignable to type \'number | string | tRowValue\'.", "1426455104"],
diff --git a/frontend/app/package.json b/frontend/app/package.json
index a6a5cd39e16..e271514619f 100644
--- a/frontend/app/package.json
+++ b/frontend/app/package.json
@@ -91,7 +91,7 @@
"react-hook-form": "^7.73.1",
"react-markdown": "^10.1.0",
"react-paginate": "^8.3.0",
- "react-router": "^7.18.0",
+ "react-router": "^8.3.0",
"react-scan": "^0.5.7",
"react-simple-code-editor": "^0.14.1",
"react-syntax-highlighter": "^16.1.1",
diff --git a/frontend/app/pnpm-lock.yaml b/frontend/app/pnpm-lock.yaml
index c8ee776d61c..ad2c95a939a 100644
--- a/frontend/app/pnpm-lock.yaml
+++ b/frontend/app/pnpm-lock.yaml
@@ -155,7 +155,7 @@ importers:
version: 1.8.0(graphql@16.14.2)(monaco-editor@0.52.2)(prettier@3.8.4)
nuqs:
specifier: ^2.8.9
- version: 2.8.9(react-router@7.18.0(react-dom@19.2.7(react@19.2.7))(react@19.2.7))(react@19.2.7)
+ version: 2.8.9(react-router@8.3.0(react-dom@19.2.7(react@19.2.7))(react@19.2.7))(react@19.2.7)
openapi-fetch:
specifier: ^0.17.0
version: 0.17.0
@@ -190,11 +190,11 @@ importers:
specifier: ^8.3.0
version: 8.3.0(react@19.2.7)
react-router:
- specifier: ^7.18.0
- version: 7.18.0(react-dom@19.2.7(react@19.2.7))(react@19.2.7)
+ specifier: ^8.3.0
+ version: 8.3.0(react-dom@19.2.7(react@19.2.7))(react@19.2.7)
react-scan:
specifier: ^0.5.7
- version: 0.5.7(@opentelemetry/core@2.8.0(@opentelemetry/api@1.9.1))(esbuild@0.28.0)(eslint@10.4.1(jiti@2.7.0))(react-dom@19.2.7(react@19.2.7))(react@19.2.7)
+ version: 0.5.7(@opentelemetry/core@2.10.0(@opentelemetry/api@1.9.1))(@types/react@19.2.17)(esbuild@0.28.0)(eslint@10.4.1(jiti@2.7.0))(react-dom@19.2.7(react@19.2.7))(react@19.2.7)
react-simple-code-editor:
specifier: ^0.14.1
version: 0.14.1(react-dom@19.2.7(react@19.2.7))(react@19.2.7)
@@ -306,7 +306,7 @@ importers:
version: 5.9.3
ultracite:
specifier: ^7.8.3
- version: 7.8.3(oxlint@1.68.0)
+ version: 7.8.3(oxlint@1.74.0)
vitest:
specifier: ^4.1.9
version: 4.1.9(@opentelemetry/api@1.9.1)(@types/node@26.0.1)(@vitest/browser-playwright@4.1.9)(@vitest/coverage-v8@4.1.9)(vite@8.1.0(@types/node@26.0.1)(esbuild@0.28.0)(jiti@2.7.0)(tsx@4.22.4)(yaml@2.9.0))
@@ -330,16 +330,20 @@ packages:
graphql: ^15.5.0 || ^16.0.0 || ^17.0.0
typescript: ^5.0.0 || ^6.0.0
- '@apm-js-collab/code-transformer-bundler-plugins@0.5.0':
- resolution: {integrity: sha512-YxLBY5nGlurL7QeJLq6e5g0ouBpAp0pwgyA/5rHXEXwhiPLn9ZHbT+Y2LlP90GT872cSocfjWRYu/fnpuBudNQ==}
+ '@alcalzone/ansi-tokenize@0.3.0':
+ resolution: {integrity: sha512-p+CMKJ93HFmLkjXKlXiVGlMQEuRb6H0MokBSwUsX+S6BRX8eV5naFZpQJFfJHjRZY0Hmnqy1/r6UWl3x+19zYA==}
+ engines: {node: '>=18'}
+
+ '@apm-js-collab/code-transformer-bundler-plugins@0.7.1':
+ resolution: {integrity: sha512-Yidf5GOl60db80UxUtNdKK3pnY7obU/gs0xOfA0SCdnvVLMCvfYIer/egC3TqpPiT0Jg22eg3RlzcO+zKfPMcA==}
engines: {node: '>=18.0.0'}
- '@apm-js-collab/code-transformer@0.15.0':
- resolution: {integrity: sha512-XmXYVs8CzJ1Aj79noVbn2weUO/XWtRyURpGqx7aU7DOXlUQhR0WKOQNF0okh7PCeY37vxf7kU3v57OAkEPm3ww==}
+ '@apm-js-collab/code-transformer@0.18.1':
+ resolution: {integrity: sha512-u1Hb6bHjWtkSpiprwVP6YaHC1DTN4RAU3zYkUDUe7WMnJwdyU1pwTL9dFKiSJB9IiLue/EQovmyx6xhU7FFtAQ==}
hasBin: true
- '@apm-js-collab/tracing-hooks@0.10.0':
- resolution: {integrity: sha512-2/Z3NTewJTruUkmsSnBC5bJlLNUd9keuD1OLlTEpim4FyLhm6m2Rnfv+wrFdUvFfhmH8CRdiDZBqBrn+wyaGuA==}
+ '@apm-js-collab/tracing-hooks@0.13.0':
+ resolution: {integrity: sha512-mTvWz9rnQwx1U3h0XPTHaX7bgfkpipLLTQyjlC2cdhQpQEuoLT0AGzoydeoq2NxfEVv6fWOOETcSbb2nptleyw==}
'@apollo/client@3.13.8':
resolution: {integrity: sha512-YM9lQpm0VfVco4DSyKooHS/fDTiKQcCHfxr7i3iL6a0kP/jNO5+4NFK6vtRDxaYisd5BrwOZHLJpPBnvRVpKPg==}
@@ -628,17 +632,14 @@ packages:
resolution: {integrity: sha512-mepCf/e9+SKYy1d02/UkvSy6+6MoyXhVxP8lLDfA7BPE1X1d4dR0sZznmbM8/XVJ1GPM+Svnx7Xj6ZweByWUkw==}
engines: {node: '>17.0.0'}
- '@emnapi/core@1.10.0':
- resolution: {integrity: sha512-yq6OkJ4p82CAfPl0u9mQebQHKPJkY7WrIuk205cTYnYe+k2Z8YBh11FrbRG/H6ihirqcacOgl2BIO8oyMQLeXw==}
-
'@emnapi/core@1.11.0':
resolution: {integrity: sha512-l9Oo58x0HOP5znGzVhYW9U3e5wVuA4LAZU2AGezTmkhO1CgQRFDhDg4nneHsu/t3WniXg9QrG2nIXL/ZS8ln8Q==}
'@emnapi/core@1.11.1':
resolution: {integrity: sha512-RSvbQmHzdKzNsLYa/wHrbc3KN4sYLKAdPZxqiM2HATqv/SBk2/ENSHpvXGaLOMcsAyz0poEGqkmmKYG3OWiJEQ==}
- '@emnapi/runtime@1.10.0':
- resolution: {integrity: sha512-ewvYlk86xUoGI0zQRNq/mC+16R1QeDlKQy21Ki3oSYXNgLb45GV1P6A0M+/s6nyCuNDqe5VpaY84BzXGwVbwFA==}
+ '@emnapi/core@1.11.2':
+ resolution: {integrity: sha512-TC8MkTuZUtcTSiFeuC0ksCh9QIJ5+F21MvZ4Wn4ORfYaFJ/0dsiudv5tVkejgwZlwQ39jL9WWDe2lz8x0WglOA==}
'@emnapi/runtime@1.11.0':
resolution: {integrity: sha512-55coeOFKHv1ywEcUXJtWU5f+Jr/W5tZDvZig8DLKSwUN1JpROQ4rk/SNOQiFWmaR/VKF4zuFyW1B8JduOSv6Pg==}
@@ -646,8 +647,8 @@ packages:
'@emnapi/runtime@1.11.1':
resolution: {integrity: sha512-vgj7R3y3Wgx24IQaGPA/R6YFXLHVMOZ0uVEyIQPaWs+rd1AzfEMXlAC22FYwO1XkKR6NPsq7mUandH8oIRdZFw==}
- '@emnapi/wasi-threads@1.2.1':
- resolution: {integrity: sha512-uTII7OYF+/Mes/MrcIOYp5yOtSMLBWSIoLPpcgwipoiKbli6k322tcoFsxoIIxPDqW01SQGAgko4EzZi2BNv2w==}
+ '@emnapi/runtime@1.11.2':
+ resolution: {integrity: sha512-kyOl3X0DuTiT1h2ft8r2fYO8JYtU9a9Xis/zBSiGArNaagCOWx90N1k2wxp18czFDH+OgcWGb5ZP/XMt3dcyPA==}
'@emnapi/wasi-threads@1.2.2':
resolution: {integrity: sha512-c95qOXkHdydNKhscBTebqEC1CVAZpyqOfVfBzQ1qgzyl3gfeldUjIggDbIZgDKsHLgnsM+igH7TJ/eAasaVuMA==}
@@ -820,8 +821,8 @@ packages:
cpu: [x64]
os: [win32]
- '@eslint-community/eslint-utils@4.9.1':
- resolution: {integrity: sha512-phrYmNiYppR7znFEdqgfWHXR6NCkZEK7hwWDHZUjit/2/U0r6XvkDl0SYnoM51Hq7FhCGdLDT6zxCCOY1hexsQ==}
+ '@eslint-community/eslint-utils@4.10.1':
+ resolution: {integrity: sha512-cuadcxVFE8sDK6iWJbs8Sn0av2Nrh2QSGQhVlBW9AaAHqHwjWsZHT8LJ4hFGPh7ASBV2deFdM7H/DPjulmh8rg==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
peerDependencies:
eslint: ^6.0.0 || ^7.0.0 || >=8.0.0
@@ -1441,53 +1442,47 @@ packages:
resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==}
engines: {node: '>= 8'}
- '@opentelemetry/api-logs@0.214.0':
- resolution: {integrity: sha512-40lSJeqYO8Uz2Yj7u94/SJWE/wONa7rmMKjI1ZcIjgf3MHNHv1OZUCrCETGuaRF62d5pQD1wKIW+L4lmSMTzZA==}
+ '@opentelemetry/api-logs@0.220.0':
+ resolution: {integrity: sha512-CmVa4ImJ+ynfrPMNaAXHET6Bhb44SwzmfyVJFq9ni2jgXJR/l7C6gfVFddNmHP+ZOkP9cf4f9DBe68qVLTHc9w==}
engines: {node: '>=8.0.0'}
'@opentelemetry/api@1.9.1':
resolution: {integrity: sha512-gLyJlPHPZYdAk1JENA9LeHejZe1Ti77/pTeFm/nMXmQH/HFZlcS/O2XJB+L8fkbrNSqhdtlvjBVjxwUYanNH5Q==}
engines: {node: '>=8.0.0'}
- '@opentelemetry/core@2.8.0':
- resolution: {integrity: sha512-hd1Lfh8p545nNz+jq1Ejfz+Mn1hyLuxYn1YzTfFNrxr8urEWMNQLPf1Th8kjOH+HxwawCrtgBp8JpBUR4ZSgww==}
+ '@opentelemetry/core@2.10.0':
+ resolution: {integrity: sha512-/wNZ8twnEQQA4HoHu22+vcsdru6pWPWxW+7w+FlxT6Id7PE/WIbZmVKkte+PF72e0F2dnImFeHD2syyE1Mw6MQ==}
engines: {node: ^18.19.0 || >=20.6.0}
peerDependencies:
'@opentelemetry/api': '>=1.0.0 <1.10.0'
- '@opentelemetry/instrumentation@0.214.0':
- resolution: {integrity: sha512-MHqEX5Dk59cqVah5LiARMACku7jXSVk9iVDWOea4x3cr7VfdByeDCURK6o1lntT1JS/Tsovw01UJrBhN3/uC5w==}
+ '@opentelemetry/instrumentation@0.220.0':
+ resolution: {integrity: sha512-xQx3E2WxP1mDvKzxLxX+CTCtNLa560YJZ3087qYHerl2YmiKpv7AH+dAy7vmx+eVrZ5BwhfWUAVoKOoxCNHcpw==}
engines: {node: ^18.19.0 || >=20.6.0}
peerDependencies:
'@opentelemetry/api': ^1.3.0
- '@opentelemetry/resources@2.8.0':
- resolution: {integrity: sha512-qmXQ27ilDbUK/vGMqwL8D4/rhn76C+sherM4wTbjlfknR8Nvfc/hCxjRJPhkzZzUsPiNg16SA31NxMabwttRjg==}
+ '@opentelemetry/resources@2.10.0':
+ resolution: {integrity: sha512-q6MMm2zhggzsHVNbabYwut+a6nbuQQe3URUoxaojM/8K1IBfwwPzvxIjNi2/lI1TFe+fMHMW9MWhrtDLEXEnkA==}
engines: {node: ^18.19.0 || >=20.6.0}
peerDependencies:
'@opentelemetry/api': '>=1.3.0 <1.10.0'
- '@opentelemetry/sdk-trace-base@2.8.0':
- resolution: {integrity: sha512-mhU4jp+vW0mGbFRd+GeXHvmfA4aDqWjBjLC3pE5XMpLs0IE2ryYb019Ts2AQrOq67gaTF25D91+fgvEHDZEnuQ==}
+ '@opentelemetry/sdk-trace-base@2.10.0':
+ resolution: {integrity: sha512-GuYQQT7QD2EeO8lcZLRQzcbOyhqAzL+6WWTKTU9mSUBYBazkEDl+VrQcXQhbB08OWM9anD1aHleVadzulpOaUQ==}
engines: {node: ^18.19.0 || >=20.6.0}
peerDependencies:
'@opentelemetry/api': '>=1.3.0 <1.10.0'
- '@opentelemetry/semantic-conventions@1.41.1':
- resolution: {integrity: sha512-/UhIkaZgPutTFmQ7RnIJGgDXZmtEJ7Dvi86xNTFWcnRxVRNk/aotsqDJYeEvDP+FSMB2SdW+pQzNMcWP0rwuNA==}
- engines: {node: '>=14'}
-
- '@oxc-parser/binding-android-arm-eabi@0.132.0':
- resolution: {integrity: sha512-KrLaPWa5c9Y7LkW+rKkaUE3y7DBDrQtaf7rlsSDfv6KAHUjgzAIRA761Lrrp6//Yd/Rlie/yEOt9YENCoJnOcw==}
- engines: {node: ^20.19.0 || >=22.12.0}
- cpu: [arm]
- os: [android]
+ '@opentelemetry/sdk-trace@2.10.0':
+ resolution: {integrity: sha512-MfQGq3GRmTh5fM/y+OjaO0vj6+luCB1XO2gfXCalKCfgKw0eHL++sm75DNweC6ohlp+aFvACqeE0fYayqdRaoQ==}
+ engines: {node: ^18.19.0 || >=20.6.0}
+ peerDependencies:
+ '@opentelemetry/api': '>=1.3.0 <1.10.0'
- '@oxc-parser/binding-android-arm-eabi@0.135.0':
- resolution: {integrity: sha512-sHeZItACNcA5WRAWqF6ixriR4GkZDyY10gVgnZU7pXku1DjHFATSqnwZM809jl0gXPHxb6fKzYQCK7bNK5cACQ==}
- engines: {node: ^20.19.0 || >=22.12.0}
- cpu: [arm]
- os: [android]
+ '@opentelemetry/semantic-conventions@1.43.0':
+ resolution: {integrity: sha512-eSYWTm620tTk45EKSedaUL8MFYI8hW164hIXsgIHyxu3VobUB3fFCu5t0hQby6OoWRPsG1KkKUG2M5UadiLiVg==}
+ engines: {node: '>=14'}
'@oxc-parser/binding-android-arm-eabi@0.137.0':
resolution: {integrity: sha512-KDs+0VPdEmasOkpuJHW9V5WCF+cvYdMQv2Jd+aJXt+cxIx12NToRQRbXaRwUEDsZw+/jMk81Ve8ZFbjUkJTOwA==}
@@ -1495,16 +1490,10 @@ packages:
cpu: [arm]
os: [android]
- '@oxc-parser/binding-android-arm64@0.132.0':
- resolution: {integrity: sha512-SThDrSeamB/kG2+NxcJ5/wSLcV6dUqDknrPLqFYQ0ST/55mtBP4M7Q/f3QbubH6aAd11wpzZn/nwbVRSdobOpg==}
+ '@oxc-parser/binding-android-arm-eabi@0.141.0':
+ resolution: {integrity: sha512-jk7086MFvR/T4DG9IY7MKBVt1PMxvSZoz/TvnifodvS0pjghVwJHRttnAExhlwdMOgHv1TmLdENnbNpYk2zjvA==}
engines: {node: ^20.19.0 || >=22.12.0}
- cpu: [arm64]
- os: [android]
-
- '@oxc-parser/binding-android-arm64@0.135.0':
- resolution: {integrity: sha512-wPte+SzgzWWFgMSF8YZDNM+tBXtJg0AXBi7+tU3yS2z1f2Af9kRLZLKuJojADmuD/cZexmnMHHC3SDItTW77Iw==}
- engines: {node: ^20.19.0 || >=22.12.0}
- cpu: [arm64]
+ cpu: [arm]
os: [android]
'@oxc-parser/binding-android-arm64@0.137.0':
@@ -1513,17 +1502,11 @@ packages:
cpu: [arm64]
os: [android]
- '@oxc-parser/binding-darwin-arm64@0.132.0':
- resolution: {integrity: sha512-Lc0f/TYoKBghE5/2Gsv7bLXk+TJZunx2Tf61X8hG4ARXdc8UYI26dCGccFSd1AyFbK3jfaNXtMnupggDbjPXdQ==}
+ '@oxc-parser/binding-android-arm64@0.141.0':
+ resolution: {integrity: sha512-a4XDQ27ZT7e7zwAlxJDTiCA7IBGWDuy2+MhFq85Of7XlBSmpkfcBFml11q0Zx6f7RMuI0B4xCtt2ytBS4yOptg==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm64]
- os: [darwin]
-
- '@oxc-parser/binding-darwin-arm64@0.135.0':
- resolution: {integrity: sha512-BmKz3lHIsqVos+9aPcdYCT9MG3APoUyM43KlEFhJMWNVDOGG8FKyiFz81Bc+mGz2o0hpuQ3PfXLfVWJrKXjo2g==}
- engines: {node: ^20.19.0 || >=22.12.0}
- cpu: [arm64]
- os: [darwin]
+ os: [android]
'@oxc-parser/binding-darwin-arm64@0.137.0':
resolution: {integrity: sha512-bFPr5hgmNMOMoyPTGtdsK4Ug21RovIPojRMgDDhSp1LtCnc/DkLwGONKjgRjszg677RlGnkYSviQ8hHaUPOVYA==}
@@ -1531,16 +1514,10 @@ packages:
cpu: [arm64]
os: [darwin]
- '@oxc-parser/binding-darwin-x64@0.132.0':
- resolution: {integrity: sha512-RG2eJIpf7C21z9HSSXFw1bTArdpKe7Y4fwcJTwRq1yCSe1vSavaN9GA1sm9KqzemTLAGVktQ+7qBTGp0vQeUZg==}
+ '@oxc-parser/binding-darwin-arm64@0.141.0':
+ resolution: {integrity: sha512-m/kVk6rzYmBeHYnz+1Y5fod00AVTTxMbC71azFfm/zjx1j9XxwKtA0+VfkKuVMC8rbghb9TtfevnuWZa9OuPEg==}
engines: {node: ^20.19.0 || >=22.12.0}
- cpu: [x64]
- os: [darwin]
-
- '@oxc-parser/binding-darwin-x64@0.135.0':
- resolution: {integrity: sha512-dM8BS+8+Br1fNvmh2QZbGiHaYttwLebRa6J4Uz9vuFzMNmvsdRYwf7993ptOaV0JTrR63AaoVLjX7nhWbijxjQ==}
- engines: {node: ^20.19.0 || >=22.12.0}
- cpu: [x64]
+ cpu: [arm64]
os: [darwin]
'@oxc-parser/binding-darwin-x64@0.137.0':
@@ -1549,17 +1526,11 @@ packages:
cpu: [x64]
os: [darwin]
- '@oxc-parser/binding-freebsd-x64@0.132.0':
- resolution: {integrity: sha512-wQIPntPLtJ8NcBpvKPbEv3NqzV6k8eP8tP/jE9Rg8HTg/j7urZGFSsTCPCW5k77Qfw2DM4vRvc9p3I4yq/Shvw==}
- engines: {node: ^20.19.0 || >=22.12.0}
- cpu: [x64]
- os: [freebsd]
-
- '@oxc-parser/binding-freebsd-x64@0.135.0':
- resolution: {integrity: sha512-xlZnvvJdR9bGu2pOhvR5hMuKPHCE6Sa9owK5A484mzjHdm75VRV5nCs5w/jkmGODMMTFc+KN7EnZqEieM813kw==}
+ '@oxc-parser/binding-darwin-x64@0.141.0':
+ resolution: {integrity: sha512-o0X+6KZlfucWU/v5oKRQPwdFXsXAjW8jmpo/Gpw/qyKsbKtlfkHoeH9Bjp/m13TwjewvJnCkwF0DWzgpC4HjTQ==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [x64]
- os: [freebsd]
+ os: [darwin]
'@oxc-parser/binding-freebsd-x64@0.137.0':
resolution: {integrity: sha512-79h8rYGnSlKPGWo7mHr2ixO6ea7aW8B0CT965SZ8SLbNnCOH5aOYBTeVXUY6eMvEaiLyWr8Skuiugr5pDYgLGw==}
@@ -1567,17 +1538,11 @@ packages:
cpu: [x64]
os: [freebsd]
- '@oxc-parser/binding-linux-arm-gnueabihf@0.132.0':
- resolution: {integrity: sha512-PixKEpeSe3yxQWqNyOCBALRYc72+Tj7ILDofUl3iXo25cVOzLA6jHUhmOINRtWIPh7dbUie3QNeabwaQpZTw6w==}
- engines: {node: ^20.19.0 || >=22.12.0}
- cpu: [arm]
- os: [linux]
-
- '@oxc-parser/binding-linux-arm-gnueabihf@0.135.0':
- resolution: {integrity: sha512-PSR8LmBK/H/PQRiN8g7RebQgZX/ntVCrdT/JBfNxE5ezdHG1s2i4rbazsRJYD83TTI1MmgTpC0MGL42PLtskQQ==}
+ '@oxc-parser/binding-freebsd-x64@0.141.0':
+ resolution: {integrity: sha512-W5KbTnNkTMMMylqj6dYqnsXvkmESVPodPKYLJ5zdzIPdl9fUJtolkpUeSzYEbGGYB4a4A4avl3EePnZ/wLIdJg==}
engines: {node: ^20.19.0 || >=22.12.0}
- cpu: [arm]
- os: [linux]
+ cpu: [x64]
+ os: [freebsd]
'@oxc-parser/binding-linux-arm-gnueabihf@0.137.0':
resolution: {integrity: sha512-ASgmlSimhGyr0lksgVIo6hibz1obnDq4qJbiMX/AzltfgPnanRrzG1Q+23g8ljOHOjv6dsznkUuCYL3gg0sY1Q==}
@@ -1585,14 +1550,8 @@ packages:
cpu: [arm]
os: [linux]
- '@oxc-parser/binding-linux-arm-musleabihf@0.132.0':
- resolution: {integrity: sha512-sCR+DzGHlyHKnbA2z9zWjTUhIo8Sy0enJl4RDsBwPmkxYynPatpwOAWe8W5127SlW0boqUWHGtr1NWn5UwIhXQ==}
- engines: {node: ^20.19.0 || >=22.12.0}
- cpu: [arm]
- os: [linux]
-
- '@oxc-parser/binding-linux-arm-musleabihf@0.135.0':
- resolution: {integrity: sha512-I85GJXzfUsigkkk7Ngdz95C217M4FdUi1Z2HrX5UyPmURobwQZ7m2bbUvwFkz4VGZd+lymFGKHvDZ3RQC9qOzA==}
+ '@oxc-parser/binding-linux-arm-gnueabihf@0.141.0':
+ resolution: {integrity: sha512-g3dtbJa8zeOGK36Sr9cQavsdi5H/ie2hVjrSjIxsNAR1qZA40ZYVXnfdfoMAlq8CmB9qFL1yhsSCUHeNmdmt8w==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm]
os: [linux]
@@ -1603,19 +1562,11 @@ packages:
cpu: [arm]
os: [linux]
- '@oxc-parser/binding-linux-arm64-gnu@0.132.0':
- resolution: {integrity: sha512-sQBix5P2cW+IpzTcCwYxnh9yALrKSIkKJThspBvMGcygSMnbzkSvhN7SfuX1hvBk8y1XEChsdkU3ET0V5DmzUw==}
- engines: {node: ^20.19.0 || >=22.12.0}
- cpu: [arm64]
- os: [linux]
- libc: [glibc]
-
- '@oxc-parser/binding-linux-arm64-gnu@0.135.0':
- resolution: {integrity: sha512-zqEY0npz0g0aGZj/8a5BclunjVDytsBQHYtIC10Gd26HcrLwbVF6YDbqRQjunMGYdSo97u6xOBl05aTDI2diDQ==}
+ '@oxc-parser/binding-linux-arm-musleabihf@0.141.0':
+ resolution: {integrity: sha512-e6hwQqd+3lvP13G2jxvFpoA7dzHcFLN+Mq47JCVMtdNHbbyBRo756JCtbbJH6ca8inTfyqZoqBmS3vhQlzAK2w==}
engines: {node: ^20.19.0 || >=22.12.0}
- cpu: [arm64]
+ cpu: [arm]
os: [linux]
- libc: [glibc]
'@oxc-parser/binding-linux-arm64-gnu@0.137.0':
resolution: {integrity: sha512-GdEtiG89yMr7XkUGxifgodXEEm2f+xW2f9CpDjlgAnBOwhTmrpQMvhOGobLVKUyzf/qHBXW16smk5zbF3nZU6w==}
@@ -1624,19 +1575,12 @@ packages:
os: [linux]
libc: [glibc]
- '@oxc-parser/binding-linux-arm64-musl@0.132.0':
- resolution: {integrity: sha512-WozHg3Kc//8Sk756HXXgMbEAvqtG+Lzb9JOojwQzIGDtN78Az2dLttkb71akWYUF/8IgYfDSlfKh4Uot8is5Vw==}
+ '@oxc-parser/binding-linux-arm64-gnu@0.141.0':
+ resolution: {integrity: sha512-vXz2BLAuypA+4MLyBg94pzEo6THVnzYnCtAjXoihIIQo0t2pnp/AmW+SH1EI+4VbuJnC//KplIJ5yyaCGua4jA==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm64]
os: [linux]
- libc: [musl]
-
- '@oxc-parser/binding-linux-arm64-musl@0.135.0':
- resolution: {integrity: sha512-mWAfprP819gQ2qYst1RxgTI8b/z0b29OpoKfRflIXLHde2dZLihQD4g47Onuvtpo5GPIkMYPRlX9QoeZfs/GnQ==}
- engines: {node: ^20.19.0 || >=22.12.0}
- cpu: [arm64]
- os: [linux]
- libc: [musl]
+ libc: [glibc]
'@oxc-parser/binding-linux-arm64-musl@0.137.0':
resolution: {integrity: sha512-EGJ+Bs8iXx8KBH8DQ5BLoEm5lnHaYjlh4/8j8vFhrr/6z4tqONy5BZDzLpKmmNWlN6Hlc5r8YOuBVHqZ9vRFEQ==}
@@ -1645,19 +1589,12 @@ packages:
os: [linux]
libc: [musl]
- '@oxc-parser/binding-linux-ppc64-gnu@0.132.0':
- resolution: {integrity: sha512-CmX/ulNBOEwWTyVRmcpYKAcAizW6+OjtLJgo7fXoL9OqQvjF4VER8tPomv44vwzfSCy1BHbsB0ZlZYzYJNj4cA==}
- engines: {node: ^20.19.0 || >=22.12.0}
- cpu: [ppc64]
- os: [linux]
- libc: [glibc]
-
- '@oxc-parser/binding-linux-ppc64-gnu@0.135.0':
- resolution: {integrity: sha512-gri8c2AOmJKJwOux2KTHFBfUaXoJURuVMKhmKEi/2hTF55cQteTDV2XNfTiE5oCC+Tnem1Y4/MWzcyDadtsSag==}
+ '@oxc-parser/binding-linux-arm64-musl@0.141.0':
+ resolution: {integrity: sha512-jMkS/EztNW34HKsXIaT/SoHcmtocq/vWhwFOVduF9kduuuRIVwfwQ6uxzIO+qPKSXdd2TXt54of0BJ2zFMXnmw==}
engines: {node: ^20.19.0 || >=22.12.0}
- cpu: [ppc64]
+ cpu: [arm64]
os: [linux]
- libc: [glibc]
+ libc: [musl]
'@oxc-parser/binding-linux-ppc64-gnu@0.137.0':
resolution: {integrity: sha512-vzFUQENy/fnbSe5DZWovq6tIBc1uhuMztanSW6rz1e9WdQE4gHwYuD7ZII6JnrJifd1R3RSoqiZbgRFlVL2tYQ==}
@@ -1666,17 +1603,10 @@ packages:
os: [linux]
libc: [glibc]
- '@oxc-parser/binding-linux-riscv64-gnu@0.132.0':
- resolution: {integrity: sha512-j9oQS+hM90SdhviNGWbPgT4+Rlq+ac++q/zjgwPD1mVHgxHzATvoRGtDx0sXGmFOQ9J9YkwAhYGb5MAHL6TAsA==}
+ '@oxc-parser/binding-linux-ppc64-gnu@0.141.0':
+ resolution: {integrity: sha512-vo+MR+n3zQJ6Mq92hiP084NZcgDv5iJlVR02gMf28neMvVT1tKVm7VeiW/DxhdqOi3QLeaXIk9cUcLL1qrkngw==}
engines: {node: ^20.19.0 || >=22.12.0}
- cpu: [riscv64]
- os: [linux]
- libc: [glibc]
-
- '@oxc-parser/binding-linux-riscv64-gnu@0.135.0':
- resolution: {integrity: sha512-Y2tkupCG5wo0SxH2rMLG4d4Kmv6DaM3sBp+GuM5lox0S8Za6VxKgQrY2Mut088QQxKkEE89n/4CCCgmw2o0e3Q==}
- engines: {node: ^20.19.0 || >=22.12.0}
- cpu: [riscv64]
+ cpu: [ppc64]
os: [linux]
libc: [glibc]
@@ -1687,19 +1617,12 @@ packages:
os: [linux]
libc: [glibc]
- '@oxc-parser/binding-linux-riscv64-musl@0.132.0':
- resolution: {integrity: sha512-bLz+Xi+Agnfmd7kWPEsSVwCn2k4EyIalZkNBcQ0OGIv9rqn8VgCPLNd03tM9mKX/5TdlvDXalz0q71BIrOPNqg==}
+ '@oxc-parser/binding-linux-riscv64-gnu@0.141.0':
+ resolution: {integrity: sha512-oh80w+7RuiO5gBp9Jnoa/H8Qlt3JsHL2MkW+0dwEdlDMdslVZX/YsekSK6EeyEenY66/mhCfypsNATQ7Ph3qlQ==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [riscv64]
os: [linux]
- libc: [musl]
-
- '@oxc-parser/binding-linux-riscv64-musl@0.135.0':
- resolution: {integrity: sha512-xDRJq6i6WTynjeP+ISbDpyH4p9BaJ0wuQcL0lCSDkt9qOXC9dmwpOu1VG/TlwmPI3KpYntmO9nJCuc3TMTsNBA==}
- engines: {node: ^20.19.0 || >=22.12.0}
- cpu: [riscv64]
- os: [linux]
- libc: [musl]
+ libc: [glibc]
'@oxc-parser/binding-linux-riscv64-musl@0.137.0':
resolution: {integrity: sha512-e7Ppy4FCIFNQxT/ikSeIWFoQ0l+N9vgtRBtLcyZXeolTzApyVoPqEXsYPrcdM/9i0Bwk8knvYd37vaEMxHyi6g==}
@@ -1708,19 +1631,12 @@ packages:
os: [linux]
libc: [musl]
- '@oxc-parser/binding-linux-s390x-gnu@0.132.0':
- resolution: {integrity: sha512-U6t2qbJU0ypTfyj9QV3W1Y6mITDTL8ai/OR6NUn85vyHthOvobKWgXzU4tu0EskSzlpuVFz1g0jFGulDIUKHxQ==}
+ '@oxc-parser/binding-linux-riscv64-musl@0.141.0':
+ resolution: {integrity: sha512-LOyEmFA8sCnYbEXP1+iQvCC/P1YXHMA/t6x1Ksp0Y9VwhLFsiBJFzV1zIxrOIE2LKaGGhDjQ29xq9cbq6omDXA==}
engines: {node: ^20.19.0 || >=22.12.0}
- cpu: [s390x]
- os: [linux]
- libc: [glibc]
-
- '@oxc-parser/binding-linux-s390x-gnu@0.135.0':
- resolution: {integrity: sha512-V4MoUuiCRNvihxhIufRxvK+ka013V4joTSK0FAGA1KEjLuNprfH6N/Qw2uxQEVIFuNYMhD/hV6xJ/ptbzlKdHg==}
- engines: {node: ^20.19.0 || >=22.12.0}
- cpu: [s390x]
+ cpu: [riscv64]
os: [linux]
- libc: [glibc]
+ libc: [musl]
'@oxc-parser/binding-linux-s390x-gnu@0.137.0':
resolution: {integrity: sha512-Bho5qFwdhqsIFR7gipYEUlqvi3SRrY8sugxXig380MIaakBB1PyU9+7dBiBVScfImTNWhijUxdBwqrprGdq5WA==}
@@ -1729,17 +1645,10 @@ packages:
os: [linux]
libc: [glibc]
- '@oxc-parser/binding-linux-x64-gnu@0.132.0':
- resolution: {integrity: sha512-WcEaSNHFk8yz5YFlQQAlhq6jOFmZBB/RKE7uzhyCIf+pF1Lmv9gUH4221mle2Gd9iHyWT3ySNph8yZgb1xYdWg==}
- engines: {node: ^20.19.0 || >=22.12.0}
- cpu: [x64]
- os: [linux]
- libc: [glibc]
-
- '@oxc-parser/binding-linux-x64-gnu@0.135.0':
- resolution: {integrity: sha512-JCFZ7zM7KXOKoPAbK/ZB4wY0M1jxRECiem2UQuiXLjzGqS9+hno7mtX+qyK2F7HWK2xPhyJb+frpcOtk5DKOtg==}
+ '@oxc-parser/binding-linux-s390x-gnu@0.141.0':
+ resolution: {integrity: sha512-3wnwk/l1CvszVE5TJR1wSl/zSEfydRqrNhn6s7Vr9IzSJpUQIroqVsIoPARHRFA+FQwkxAFDAHDAasa7v8OobQ==}
engines: {node: ^20.19.0 || >=22.12.0}
- cpu: [x64]
+ cpu: [s390x]
os: [linux]
libc: [glibc]
@@ -1750,71 +1659,48 @@ packages:
os: [linux]
libc: [glibc]
- '@oxc-parser/binding-linux-x64-musl@0.132.0':
- resolution: {integrity: sha512-iQrV4iJzQgRwK3BWRmQl1C3C6g3wYpXN2WLdQdyR+efoUnncdShZAVp9OgcojtlD3MDRbuOMGG3SjxF4fL4nlQ==}
+ '@oxc-parser/binding-linux-x64-gnu@0.141.0':
+ resolution: {integrity: sha512-qtyQVAAebFq57B2tifTlel3TgGqUtsYNI/e+p6aya9rN9lOZVTDvr215fGYSA9XWooxzMxDiVxkBLk2jQHbsOQ==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [x64]
os: [linux]
- libc: [musl]
+ libc: [glibc]
- '@oxc-parser/binding-linux-x64-musl@0.135.0':
- resolution: {integrity: sha512-9jSVS1b3hOV7sdKH4aA2DFfnTz0RgQd0v2BefR+LYbH8yIlmSM22JJZbAAjVeVXmFgUAk3zJQ1tpE/Nd+Vi2YQ==}
+ '@oxc-parser/binding-linux-x64-musl@0.137.0':
+ resolution: {integrity: sha512-/Jqx6+N7A44n2BdvUr7pXhVr2vFjs6WGH3unZRczwrfiH0H1zY0QwKQMG/dtRiTlKGDKGukznPT8lx84/oEsZg==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [x64]
os: [linux]
libc: [musl]
- '@oxc-parser/binding-linux-x64-musl@0.137.0':
- resolution: {integrity: sha512-/Jqx6+N7A44n2BdvUr7pXhVr2vFjs6WGH3unZRczwrfiH0H1zY0QwKQMG/dtRiTlKGDKGukznPT8lx84/oEsZg==}
+ '@oxc-parser/binding-linux-x64-musl@0.141.0':
+ resolution: {integrity: sha512-SkGV1nKw40roEc94pv5EaaeH2ay14G6+roe8Q0wIUC1LcEKxzKW921h7+ZuZX0D3q2Mb/7aSFmxEVqnko3lPRw==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [x64]
os: [linux]
libc: [musl]
- '@oxc-parser/binding-openharmony-arm64@0.132.0':
- resolution: {integrity: sha512-FWzmUGrZ6GUby4U7WIwcCtab6tdmlTO3xTRRKyb5kjIJVEiaUAT8animUG/nK8ZCA8gkRkPOTId4rl6uTqUmJQ==}
- engines: {node: ^20.19.0 || >=22.12.0}
- cpu: [arm64]
- os: [openharmony]
-
- '@oxc-parser/binding-openharmony-arm64@0.135.0':
- resolution: {integrity: sha512-M857ZLBSdn1Uy/SJJz5zh0qGu67B4P9omCgXGBU2LLqTzraX6ZjVNaKq5yW1PDw/LgJXDXR/dbZfgmB310f11Q==}
- engines: {node: ^20.19.0 || >=22.12.0}
- cpu: [arm64]
- os: [openharmony]
-
'@oxc-parser/binding-openharmony-arm64@0.137.0':
resolution: {integrity: sha512-9Uj0qHNNl+OgT1UTGwF7ixIXU6T1u2SbMidmgPy/h1h/fl2gRS6YpAxxY1gwHofcWjoTwkoMFd8xs5Vuj6GOFA==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm64]
os: [openharmony]
- '@oxc-parser/binding-wasm32-wasi@0.132.0':
- resolution: {integrity: sha512-TlbMppxJI5CjWDes0QaP6G3aneVg1yikBu5QYI+DUShF9WDL66ccgKFNNGmi/Wybtszw6hxwAvv76T4DaPKnHw==}
+ '@oxc-parser/binding-openharmony-arm64@0.141.0':
+ resolution: {integrity: sha512-cVgDM7n8QziQqOaP5hNgUYfMG7S/ZeuPxFWXnnHRv7rh025COk0rfQ6eEdKG3j/GaUuyvNZN4ifF1J8KmuXLLA==}
engines: {node: ^20.19.0 || >=22.12.0}
- cpu: [wasm32]
-
- '@oxc-parser/binding-wasm32-wasi@0.135.0':
- resolution: {integrity: sha512-2w6DVcntQZX9U5RhXtgiWb3FLWFB5EcwI1U8yr3htOCJUJjagN4BFUHz/Y/d9ZsumndZ6ByxxWEtbUZNE1bfFw==}
- engines: {node: ^20.19.0 || >=22.12.0}
- cpu: [wasm32]
+ cpu: [arm64]
+ os: [openharmony]
'@oxc-parser/binding-wasm32-wasi@0.137.0':
resolution: {integrity: sha512-gW2vfkytNGgMVADiuzdvOfw0mWG9za20F/1fCJsif5aBMAvWJTSbpIXbIe0XkOe0VENk+PadpQ7cZgUy2sUJcA==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [wasm32]
- '@oxc-parser/binding-win32-arm64-msvc@0.132.0':
- resolution: {integrity: sha512-RH/NbFjGKqdUAUi7Oh3LQPxUk2hsWFEEQ38HSnbRQT8QjBZFKqL1fMbmsB3N4jy/KPh9iX94+9dmkEMBBbambw==}
- engines: {node: ^20.19.0 || >=22.12.0}
- cpu: [arm64]
- os: [win32]
-
- '@oxc-parser/binding-win32-arm64-msvc@0.135.0':
- resolution: {integrity: sha512-rX1U8+IH2Z37EJjDXKa1iifvUQAdba+vZ4Ewj1iaG5eA/QaSybzclCOwtWa0/5BuUQnnK/T2JHUEFrwhL6Ck2Q==}
+ '@oxc-parser/binding-wasm32-wasi@0.141.0':
+ resolution: {integrity: sha512-HggH++Fkn3OilBn+bs3jpgIFQa34oMAyUUHy0vpGum+gt1Eb5nyLc8dNU/RAPSw6lsLrx7ncKtHSZE+3Sp0l2g==}
engines: {node: ^20.19.0 || >=22.12.0}
- cpu: [arm64]
- os: [win32]
+ cpu: [wasm32]
'@oxc-parser/binding-win32-arm64-msvc@0.137.0':
resolution: {integrity: sha512-x+pFANF0yL5uK/6T7lu6SlR5qid6sp//eZXKLq5iNsIE+EQg6EaS8/wsW7E91nXXjpnPhSoMOHXShSVhGRdn8w==}
@@ -1822,16 +1708,10 @@ packages:
cpu: [arm64]
os: [win32]
- '@oxc-parser/binding-win32-ia32-msvc@0.132.0':
- resolution: {integrity: sha512-JUr4jQY9jxoIB/YTLXr6XofSi5xikj6p5/Ns1h0VOBDT0j1jKU+kMsv2xxv51RwnETcXpA1Yw/9oUAfcqfaqEA==}
+ '@oxc-parser/binding-win32-arm64-msvc@0.141.0':
+ resolution: {integrity: sha512-KLSEH9GwgbrqbJOjtGHt9STw96s+78yDzp7IDN8Lno+7Ut9sNBfZ4jYZIz4mD50qmWUjoOI7i9I6UENbhNbMZQ==}
engines: {node: ^20.19.0 || >=22.12.0}
- cpu: [ia32]
- os: [win32]
-
- '@oxc-parser/binding-win32-ia32-msvc@0.135.0':
- resolution: {integrity: sha512-9FAisBbH1QICGAjlJobiuKGd/jOuVmyqniWdQMwTa5SkCl6hhuotBCJf1n46B0flYbSOR5TzfV9HZCWSyb3c/Q==}
- engines: {node: ^20.19.0 || >=22.12.0}
- cpu: [ia32]
+ cpu: [arm64]
os: [win32]
'@oxc-parser/binding-win32-ia32-msvc@0.137.0':
@@ -1840,376 +1720,354 @@ packages:
cpu: [ia32]
os: [win32]
- '@oxc-parser/binding-win32-x64-msvc@0.132.0':
- resolution: {integrity: sha512-2dapgHpA5X8DSXF4AU36hJWYf6zP0tKjMXFRAZFBD62pkevW/uhFDXoFH9Y/3Fd2EtDrw5ByNnR1wVE9X9y0SQ==}
+ '@oxc-parser/binding-win32-ia32-msvc@0.141.0':
+ resolution: {integrity: sha512-9UVWUOOCI/1YkiSSNjg2zyBJYM9E/t1A/8GNobd48JDn/fQ6mzxcVO3H08jb3rAaW/B1VBf8eCORTvSsO9T08g==}
engines: {node: ^20.19.0 || >=22.12.0}
- cpu: [x64]
+ cpu: [ia32]
os: [win32]
- '@oxc-parser/binding-win32-x64-msvc@0.135.0':
- resolution: {integrity: sha512-wYF+A2AzJ2n7ul6q+Z2G/ia0S2+8cUp0AgWZzoFvF4WmUcl1P7p+o6se1Gdr5wGnWuF0iAMIkGddrjCarNr2yA==}
+ '@oxc-parser/binding-win32-x64-msvc@0.137.0':
+ resolution: {integrity: sha512-2AsevxlvNN4WKxpEn3RtqD5zbqMaXF+T7JXblsP4gVuY+vC9dXS4ED/PwfRCliFqoeisYS3Iro4DHzxr0TEvVA==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [x64]
os: [win32]
- '@oxc-parser/binding-win32-x64-msvc@0.137.0':
- resolution: {integrity: sha512-2AsevxlvNN4WKxpEn3RtqD5zbqMaXF+T7JXblsP4gVuY+vC9dXS4ED/PwfRCliFqoeisYS3Iro4DHzxr0TEvVA==}
+ '@oxc-parser/binding-win32-x64-msvc@0.141.0':
+ resolution: {integrity: sha512-HI/wsvbWT5RHHw5c37D0fEgeTd8/1Q4OJs5jUmEBc17VZFG6SsCIe4barq7NsAPPks/JW+3ayi3Rp+PQI5h4Kg==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [x64]
os: [win32]
- '@oxc-project/types@0.132.0':
- resolution: {integrity: sha512-FESMOxil5Se014ui/Eq8fT5uHJo6nIRwH0PfJrZJXs6Gek3ZVFOrpUv3YIZT20m+extU98Hg1Ym72U58rlsxUQ==}
-
- '@oxc-project/types@0.135.0':
- resolution: {integrity: sha512-wR+xRdFkUBMvcAjBJ2q2kcZM6d+DKu2NgoOyxZgYwZdLhmiv6+rnO8PZ/P68kMiZtIKm+pW7zyEJ4kSOs0vo+Q==}
-
'@oxc-project/types@0.137.0':
resolution: {integrity: sha512-WT+Gb24i8hmvo85AIv2oEYouEXkRlKAlT9WaCa3TfLgNCN+GhrJOGZuIlMouAh38Qe4QOx26eUOVsq70qXrywA==}
+ '@oxc-project/types@0.141.0':
+ resolution: {integrity: sha512-S4as7z0j0xQkXcJlyY5ehntwK8/wRkQb9Cyqw+J/N2rkWGQGK0SxD6X6DhQTc7qsxVTBxXbxZtBJh3mr3PtIzQ==}
+
'@oxc-resolver/binding-android-arm-eabi@11.21.3':
resolution: {integrity: sha512-eNU11A2WNizh04v3uyaJCootrHIaS0B9aHYXvAvVnPNk4xYSjMUjHnhQ6dewPN2MRYDskV85d1N0Aw0WNWhcyg==}
cpu: [arm]
os: [android]
+ '@oxc-resolver/binding-android-arm-eabi@11.24.2':
+ resolution: {integrity: sha512-y09e0L0SRI2OA2tUIrjBgoV3eH5hvUKXNkJqXmNo5V2WxIjyC7I7aJfRLMEVpA8yi95f90gFDvO0VMgrDw+vwA==}
+ cpu: [arm]
+ os: [android]
+
'@oxc-resolver/binding-android-arm64@11.21.3':
resolution: {integrity: sha512-8Q+ZjTLvn2dIcWsrmhdrEihm7q+ag/k+mkry7Z+t0QbbHaVxXQfvH9AewyVMh/WrpEKhQ3DDgx9fYbqeCpeOEw==}
cpu: [arm64]
os: [android]
+ '@oxc-resolver/binding-android-arm64@11.24.2':
+ resolution: {integrity: sha512-cl4icWaZFnLdg8m6qtnh5rBMuGbxc/ptStFHLeCNwr+2cZjkjNwQu/jYRS0CHlnPecOJMpuS5M6/BH+0J/YkEg==}
+ cpu: [arm64]
+ os: [android]
+
'@oxc-resolver/binding-darwin-arm64@11.21.3':
resolution: {integrity: sha512-wkh0qKZGHXVUDxFw3oA1TXnU2BDYY/r775oJflGeIr8uDPPoN2pk8gijQIzYRT6hoql/lg3+Tx/SaTn9e2/aGg==}
cpu: [arm64]
os: [darwin]
+ '@oxc-resolver/binding-darwin-arm64@11.24.2':
+ resolution: {integrity: sha512-At29QEMF6HajbQvgY8K6OXnHD1x9rad74xBEfmCB6ZqCGsdq75aK7tOYcTbOanMy8qdIBrfL3SMr3p/lfSlb9w==}
+ cpu: [arm64]
+ os: [darwin]
+
'@oxc-resolver/binding-darwin-x64@11.21.3':
resolution: {integrity: sha512-HbNc23FAQYbuyDV2vBWMez4u4mrsm5RAkniGZAWqr6lYZ3N4beeqIb776jzwRl8qL2zRhHVXpUj97X0QgogVzg==}
cpu: [x64]
os: [darwin]
+ '@oxc-resolver/binding-darwin-x64@11.24.2':
+ resolution: {integrity: sha512-A5Kqr1EUj4oIL5CF4WRssq/o5P0Y11cwoFouMRmQ7YnC/A8V93nv1nb7aSU8HwcgmXropjLNkVTl4MN87cu28Q==}
+ cpu: [x64]
+ os: [darwin]
+
'@oxc-resolver/binding-freebsd-x64@11.21.3':
resolution: {integrity: sha512-K6xNsTUPEUdfrn0+kbMq5nOUB5w1C5pavPQngt4TM2FpN91lP0PBe2srSpamb4d69O7h86oAi/qWX/kZNRSjkw==}
cpu: [x64]
os: [freebsd]
+ '@oxc-resolver/binding-freebsd-x64@11.24.2':
+ resolution: {integrity: sha512-R5xkRBRRz7ceH/P5Jrc6G7FmdUdgpLYyESFAUDVTNQ9K0sGPxcp4ljiwEwEqsvNcQ4sYbMRrWcHHBCu7ksAJVw==}
+ cpu: [x64]
+ os: [freebsd]
+
'@oxc-resolver/binding-linux-arm-gnueabihf@11.21.3':
resolution: {integrity: sha512-VcFmOpcpWX1zoEy8M58tR2M9YxM+Z9RuQhqAx5q0CTmrruaP7Gveejg75hzd/5sg5nk9G3aLALEa3hE2FsmmTQ==}
cpu: [arm]
os: [linux]
+ '@oxc-resolver/binding-linux-arm-gnueabihf@11.24.2':
+ resolution: {integrity: sha512-k/RuYL4L/R58IBn3wT5ma3Wh4k62bp1eYCFRWCmMsasUOqL+H6sW0VGFadEzKWXFFlz+2uIMoeMk9ySSZJHgbg==}
+ cpu: [arm]
+ os: [linux]
+
'@oxc-resolver/binding-linux-arm-musleabihf@11.21.3':
resolution: {integrity: sha512-quVoxFLBy43hWaQbbDtQNRwAX5vX76mv7n64icAtQcJ3eNgVeblqmkupF/hAneNthdqSlnd1sTjb3aQSaDPaCQ==}
cpu: [arm]
os: [linux]
+ '@oxc-resolver/binding-linux-arm-musleabihf@11.24.2':
+ resolution: {integrity: sha512-bnHAak3ujYfH5pKk4NieFNbvYvernfoQDgwLddbZ3OtMYrem87/qjlA+u+aKG0oZcqSLGCful/6/CEA+aeAgaA==}
+ cpu: [arm]
+ os: [linux]
+
'@oxc-resolver/binding-linux-arm64-gnu@11.21.3':
resolution: {integrity: sha512-X0AqNZgcD07Q4V3RDK18/vYOj/HQT/FnmEFGYS2jTWqY7JO13ryE3TEs3eAIgUJhBnNkpEaiXqz3VK8M7qQhWQ==}
cpu: [arm64]
os: [linux]
libc: [glibc]
+ '@oxc-resolver/binding-linux-arm64-gnu@11.24.2':
+ resolution: {integrity: sha512-vDT3KHgzYp47gmtNOqL2VNhCyl5Zv643eyxm//A68J8DeUGXrvD1pZFiaT4jSfe+RInfnn1R2yVHye4enx6RnA==}
+ cpu: [arm64]
+ os: [linux]
+ libc: [glibc]
+
'@oxc-resolver/binding-linux-arm64-musl@11.21.3':
resolution: {integrity: sha512-YkaQnaKYdbuaXvRt5Qd0GpbihzVnyfR6z1SpYfIUC6RTu4NF7lDKPjVkYb+jRI2gedVO2rVpN35Y6akG6ud4Lw==}
cpu: [arm64]
os: [linux]
libc: [musl]
+ '@oxc-resolver/binding-linux-arm64-musl@11.24.2':
+ resolution: {integrity: sha512-+kMlQvbzfyEYtu5FcjE4p+ttBLpKW4d/AsAsuE69BxV6V4twZJeIQZFfD8gh/wqglY0MkPSezWXQH0jBV13MUw==}
+ cpu: [arm64]
+ os: [linux]
+ libc: [musl]
+
'@oxc-resolver/binding-linux-ppc64-gnu@11.21.3':
resolution: {integrity: sha512-gB9HwhrPiFqUzDeEq+y/CgAijz1YdI6BnXz5GaH2Pa9cWdutchlkGFAiAuGb/PjVQpiK6NFKzFuztxrweoit7A==}
cpu: [ppc64]
os: [linux]
libc: [glibc]
+ '@oxc-resolver/binding-linux-ppc64-gnu@11.24.2':
+ resolution: {integrity: sha512-shjfMhmZ3gq9fv/w7bi3PnZlgOPG+2QAOFf0BJF0EgBSIGZ6PMLN2zbGEblTUYB/NKVDRyYhE2ff3dJ1QqNPkA==}
+ cpu: [ppc64]
+ os: [linux]
+ libc: [glibc]
+
'@oxc-resolver/binding-linux-riscv64-gnu@11.21.3':
resolution: {integrity: sha512-zjDWBlYk8QGv0H8dsPUWqkfjYIIjG2TvspGkzXL0eImbgxtZorA/klKeHyolevoT3Kvbi+1iMr9Lhrh7jf54Og==}
cpu: [riscv64]
os: [linux]
libc: [glibc]
+ '@oxc-resolver/binding-linux-riscv64-gnu@11.24.2':
+ resolution: {integrity: sha512-zGelwFR5oRo+b69k8Lrzun86DyUHzfKN6cnjbR9l7Z7NIRznOE/2ZvPa1IUKqAL2PzAXOdwkfVqNvO1H2RlpAw==}
+ cpu: [riscv64]
+ os: [linux]
+ libc: [glibc]
+
'@oxc-resolver/binding-linux-riscv64-musl@11.21.3':
resolution: {integrity: sha512-4UfsQvacV388y1zpXL7C1x1FNYaV52JtuNRiuzrfQA2z1z6ElVrsidkGsrvQ5EgeSq1Pj7kaKqrgGkvFuxJ/tw==}
cpu: [riscv64]
os: [linux]
libc: [musl]
+ '@oxc-resolver/binding-linux-riscv64-musl@11.24.2':
+ resolution: {integrity: sha512-qxZ1SWCXJY0eyhAlP6Lmo9F2Nrtx7EkYj9oCgL8apDPCwXwCEDA2U697bbT81JIc2IrVjxO4KX6WU2N+oN9Z4w==}
+ cpu: [riscv64]
+ os: [linux]
+ libc: [musl]
+
'@oxc-resolver/binding-linux-s390x-gnu@11.21.3':
resolution: {integrity: sha512-b5uH+HKH0MP5mNBYaK75SKsJbw52URqrx2LavYdq6wb0l3ExAG5niYRP9DWUNHdKilpaBVM2bXk9HNWrH3ew7Q==}
cpu: [s390x]
os: [linux]
libc: [glibc]
+ '@oxc-resolver/binding-linux-s390x-gnu@11.24.2':
+ resolution: {integrity: sha512-sGCecF3cx2DFlH4t/z7ApnOnXqN48p5p5mlHDEnHTAukQa2P+qMVE4CwyWE9W+q/m3QJ7kKfGrIjax31f44oFQ==}
+ cpu: [s390x]
+ os: [linux]
+ libc: [glibc]
+
'@oxc-resolver/binding-linux-x64-gnu@11.21.3':
resolution: {integrity: sha512-PjYlmilBpNRh2ntXNYAK3Am5w/nPfEpnU/96iNx7CI8EzAn12J4JRiec63wHJTH31nLoCNxBg/829pN+3CfG3Q==}
cpu: [x64]
os: [linux]
libc: [glibc]
+ '@oxc-resolver/binding-linux-x64-gnu@11.24.2':
+ resolution: {integrity: sha512-k/VlMMcSzMlahb3/fENM4rTlsJ0s3fFROA0KXPBmKggqmTSaE383sl8F3KCOXPLmVsYfW6hCitMhXCEtNeZxxg==}
+ cpu: [x64]
+ os: [linux]
+ libc: [glibc]
+
'@oxc-resolver/binding-linux-x64-musl@11.21.3':
resolution: {integrity: sha512-QTBAb7JuHlZ7JUEyM8UiQi2f7m/L4swBhP2TNpYIDc9Wp/wRw1G/8sl6i13aIzQAXH7LKIm294LeOHd0lQR8zA==}
cpu: [x64]
os: [linux]
libc: [musl]
+ '@oxc-resolver/binding-linux-x64-musl@11.24.2':
+ resolution: {integrity: sha512-8hbnZyNi97b/8wapYaIF9+t9GmZKBW2vunaOc3h9HGJptH7b7XpvZqOTBSm/MpTjr7H497BlgOaSfLUdhmy2bw==}
+ cpu: [x64]
+ os: [linux]
+ libc: [musl]
+
'@oxc-resolver/binding-openharmony-arm64@11.21.3':
resolution: {integrity: sha512-4j1DFwjwv36ec9kds0jU/ucQ5Ha4ERO/H95BxR5JFf0kqUUAJ1kwII7XhTc1vZrkdJkvLGC9Q2MbpObpum8RBg==}
cpu: [arm64]
os: [openharmony]
+ '@oxc-resolver/binding-openharmony-arm64@11.24.2':
+ resolution: {integrity: sha512-MvyGik3a6pVgZ0t/kWlbmFxFLmXQJwgLsY2eYFHLpy0wGwRbfzeIGgDwQ3kXqE30z+kSXennRkCrT7TUvkptNg==}
+ cpu: [arm64]
+ os: [openharmony]
+
'@oxc-resolver/binding-wasm32-wasi@11.21.3':
resolution: {integrity: sha512-i8oluoel5kru/j1WNrjmQSiA3GQ7wvIYVR1IwIoZtKogAhya2iub+ZKIeSIkcJOrnzQ18Tzl/F+kL3fYOxZLvA==}
engines: {node: '>=14.0.0'}
cpu: [wasm32]
+ '@oxc-resolver/binding-wasm32-wasi@11.24.2':
+ resolution: {integrity: sha512-vHcssMPwO08RTvj/c0iOBz90attxyG3wQJ0dTcyEQK43LRpcdLWZlV5feBhv6Isn6ahbQIzHbCgfa81+RiML0Q==}
+ engines: {node: '>=14.0.0'}
+ cpu: [wasm32]
+
'@oxc-resolver/binding-win32-arm64-msvc@11.21.3':
resolution: {integrity: sha512-M/8dw8dD6aOs+NlPJax401CZB9I7Aut84isQLgALGGwke4Afvw+/7yYhZb94yXf6t2sPLhQLmSmtSV+2FhsOWg==}
cpu: [arm64]
os: [win32]
+ '@oxc-resolver/binding-win32-arm64-msvc@11.24.2':
+ resolution: {integrity: sha512-uokJqro2iBqkFvJdKQLP7d8/BUmFwESQFVmIJUQKj1Xn1a/LysJoe1vmeECLF5b3jsV8CAL5sEMJXX6SdK9Nhg==}
+ cpu: [arm64]
+ os: [win32]
+
'@oxc-resolver/binding-win32-x64-msvc@11.21.3':
resolution: {integrity: sha512-H7BCt/VnS9hnmMp42eGhZ99izSCRvlnWwy/N71K1/J8QoExwY4262Z8QiEkMDtduRJrztayDxETTckmUuAVL9Q==}
cpu: [x64]
os: [win32]
- '@oxlint/binding-android-arm-eabi@1.66.0':
- resolution: {integrity: sha512-f7kq8N51T4phpzqfBpA2qaVTI/KrkCmNwaj3t/97I/WLTDI+UhlP5GL9eER+zVxBhtlx5rKXWByJU1/zDAvyaw==}
- engines: {node: ^20.19.0 || >=22.12.0}
- cpu: [arm]
- os: [android]
+ '@oxc-resolver/binding-win32-x64-msvc@11.24.2':
+ resolution: {integrity: sha512-UqGPmo56KDfLlfXFAFIrNflHT8tFxWGEivWg3Zeyp4Uy2NlKN1FGPr6/BxcLGG3+kZ6Wp14g5Uj+n71boqZfiw==}
+ cpu: [x64]
+ os: [win32]
- '@oxlint/binding-android-arm-eabi@1.68.0':
- resolution: {integrity: sha512-wEdsIspexXLLMCPAEOcCuFLMt6aE3AzTuA/nQKLPRnoJ+EQTturmGheDkhHuuVHx0GbutjQ3JKmEn+Gz6Ag28Q==}
+ '@oxlint/binding-android-arm-eabi@1.74.0':
+ resolution: {integrity: sha512-+gHd12muVI9ZLBaWLPkHt3Fj7jihFjgQ1MGtBaRL8vWrWrI0P7dLUty/cHrHS0oqPYIRgQUJsPu2CExQuMcwNw==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm]
os: [android]
- '@oxlint/binding-android-arm64@1.66.0':
- resolution: {integrity: sha512-xu6QO71tdDS9mjmLZ3AqhtaVHBvdmsOKkYnReNNDgh+XiwnsipeQOIxbiYOOO0iAXycJ+GK0wdMSZP/2j/AmSg==}
- engines: {node: ^20.19.0 || >=22.12.0}
- cpu: [arm64]
- os: [android]
-
- '@oxlint/binding-android-arm64@1.68.0':
- resolution: {integrity: sha512-6aZRNNXQTsYtgaus8HTb9nuCcsrQTlKXGnktwvwW0n/SooRWNxNb3925grDkC63aEYZuCIyOVLV16IdYIoC2aQ==}
+ '@oxlint/binding-android-arm64@1.74.0':
+ resolution: {integrity: sha512-xjKdoMB+H+RCOByv/7l7nfIGW9mlOisqYdcyC75UqYuQecLpReAeEYUf2CNeDEI3KtmUgxpRw/+c63y4AeF/Bw==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm64]
os: [android]
- '@oxlint/binding-darwin-arm64@1.66.0':
- resolution: {integrity: sha512-HZ24VimSOC7mxuEA99e0H2FS0C1yO3+iW13jPRAk+e2njsUs3QeAXsafCDyaIrV/MirdOVez+etQNQsJE43zNQ==}
+ '@oxlint/binding-darwin-arm64@1.74.0':
+ resolution: {integrity: sha512-iUK7wvc6sejMKsC+Pt67mntoF5weFcyEunhZfLJceU6gL419mexz5wBkSx/EnkFBExMLNtOi9fnDSc5xfK0IzQ==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm64]
os: [darwin]
- '@oxlint/binding-darwin-arm64@1.68.0':
- resolution: {integrity: sha512-lVTbsE3kO4bLpZELgjRZuAJc8kP98wb83yMXWH8gaPaFZ+cM2IDeZto4ByoUAYj0Mxv2rvw+A1ssZequSepVSg==}
- engines: {node: ^20.19.0 || >=22.12.0}
- cpu: [arm64]
- os: [darwin]
-
- '@oxlint/binding-darwin-x64@1.66.0':
- resolution: {integrity: sha512-awhj8ZvJrrRSnXj7V++rpZvTmnl99L6mi0B7gg7Cp7BN6cKpzuI481bHNLvXGA9GB1/oEgA3ponuyoAc6Md12A==}
- engines: {node: ^20.19.0 || >=22.12.0}
- cpu: [x64]
- os: [darwin]
-
- '@oxlint/binding-darwin-x64@1.68.0':
- resolution: {integrity: sha512-nCmw2XrmQskjBUh/sfP5yKs93V68LijQgjd1cuuZ/q4SCARngLYs60/qqyzuMsg8QQ9KArDI98hxs/RDGE4KRQ==}
+ '@oxlint/binding-darwin-x64@1.74.0':
+ resolution: {integrity: sha512-ggKc/tn5SJ1u2yG2izC6VKODfYKV8MQ2AicJlNzOjuyrC29udvOef6/JzK2r32xqCnBDLFouR1VCkjzEI0/N9Q==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [x64]
os: [darwin]
- '@oxlint/binding-freebsd-x64@1.66.0':
- resolution: {integrity: sha512-KQF0oVV21/FjIqkRuL8Q1vh8ECsE5+ocdH5tcqTQ4ZnYuDVoYibQUNfqBjQaUsP6UIIda5Y75Wpm5p4RgQWiWw==}
+ '@oxlint/binding-freebsd-x64@1.74.0':
+ resolution: {integrity: sha512-u++dH/43jy9hTLbneaWlS0gla/Bp1JdwJ2zgevCl8nDFUh6qRCGMxcL0f0lb7By3A9p/LfFr+7cG4HU1hG856g==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [x64]
os: [freebsd]
- '@oxlint/binding-freebsd-x64@1.68.0':
- resolution: {integrity: sha512-TI4ovQJliYE9V6e06cEv+qEI9uj7Ao65fmif4er4HD+aouyYyh0P31q2jh3KtqsOHHcQqv2PZ61TjJFLpBDGWQ==}
- engines: {node: ^20.19.0 || >=22.12.0}
- cpu: [x64]
- os: [freebsd]
-
- '@oxlint/binding-linux-arm-gnueabihf@1.66.0':
- resolution: {integrity: sha512-9u1rgwZSEXWb30vbFZzQ78HVXBo0WCKNwJ3a2InRUTNMRng+PUDIoSFmA+m4HdUfBaIqftShq8J8qHc+eE/Vig==}
+ '@oxlint/binding-linux-arm-gnueabihf@1.74.0':
+ resolution: {integrity: sha512-Sj1zmtFDVTPeIbIz4ZfcXAbFHqCmKCXdCUlAJzvTF7I20NTH1RDpoF2PhkqNODutJzVhJYmm3oz0GwgY+tvE2g==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm]
os: [linux]
- '@oxlint/binding-linux-arm-gnueabihf@1.68.0':
- resolution: {integrity: sha512-LcNnEi9g71Cmry5ZpLbKT+oVv+/zYG3hYVAbBBB5X85nOQZSk8l92CnDkxJMcxUg0NCnMCOFZuaVDlMyv4tYJw==}
+ '@oxlint/binding-linux-arm-musleabihf@1.74.0':
+ resolution: {integrity: sha512-//PKyQb/tQXcHArx2f7z+oVI/eMS2Jpv+edNuAtOrgIhWdGcpHxogveAxzmF2rpH1AIHp4Hq04RF/rgJdiICnQ==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm]
os: [linux]
- '@oxlint/binding-linux-arm-musleabihf@1.66.0':
- resolution: {integrity: sha512-Ynot2HR1bHxUaNWoC280MVTDfZuaWuP3XfSMRDhyuZrVjhzoaBCVFlw8h8qeZjWKVUBhPWFIxB7AQTlK8Z2WWg==}
- engines: {node: ^20.19.0 || >=22.12.0}
- cpu: [arm]
- os: [linux]
-
- '@oxlint/binding-linux-arm-musleabihf@1.68.0':
- resolution: {integrity: sha512-OovHahL3FX4UaK+hgSf11llUx2vszqjSdQQ61Ck9InOEI/ptZoC4XSQJurITqItVvd53JSlmkLMeaNjM1PoQew==}
- engines: {node: ^20.19.0 || >=22.12.0}
- cpu: [arm]
- os: [linux]
-
- '@oxlint/binding-linux-arm64-gnu@1.66.0':
- resolution: {integrity: sha512-xCbgzciGgo+A4aQZEknsNrNiIwY7sU5SfRuMmRjPIvZAgdF34cIHiKvwOsS5XRLjlTVSFwitmq6YclTtHTfU+g==}
- engines: {node: ^20.19.0 || >=22.12.0}
- cpu: [arm64]
- os: [linux]
- libc: [glibc]
-
- '@oxlint/binding-linux-arm64-gnu@1.68.0':
- resolution: {integrity: sha512-YbzTglnHLzzi9zv5or8Ztz5fykAoZE8W9iM42/bOrF4HBSB6rJTqdLQWuoP76EHQw9DuKl76K1QmFlG29sPJXQ==}
+ '@oxlint/binding-linux-arm64-gnu@1.74.0':
+ resolution: {integrity: sha512-/k1Me+aX2tjuH10K62mLS0y8cLkJBHX6Ce0xPK+eWeel4bSdEGZ8dv4+hYMzg0GrSmjwy4yAYsDPeEeKBft/2w==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm64]
os: [linux]
libc: [glibc]
- '@oxlint/binding-linux-arm64-musl@1.66.0':
- resolution: {integrity: sha512-hmo+ZB/lHkR1HdDmnziNpzSLmulnUSu10VEqX2Yex7OwvoBAbjJQLvy4gIBRV3AAwWnCvAxKp5Nv1GE6LU1QMg==}
- engines: {node: ^20.19.0 || >=22.12.0}
- cpu: [arm64]
- os: [linux]
- libc: [musl]
-
- '@oxlint/binding-linux-arm64-musl@1.68.0':
- resolution: {integrity: sha512-qVKtCZNic+OoNnOr/hCQAu22HSQzflI7Fsq/Blzkw02SnLuv163k3kfmrVpZjSBlUHgsRKj6WgQiw30d3SX02Q==}
+ '@oxlint/binding-linux-arm64-musl@1.74.0':
+ resolution: {integrity: sha512-3tFSjBxc5D8/zvjEuLvOqcA8ZXKD0+6NuaVO/edeamNc49MoAsbfaC9s1UiwODwgF6slGaF8yJA2TPkukd77tg==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm64]
os: [linux]
libc: [musl]
- '@oxlint/binding-linux-ppc64-gnu@1.66.0':
- resolution: {integrity: sha512-2Invd4Uyy81mVooQC5FBtfxSNrvcX1OxbMlVQ6M2erRrNI2awFYF26YNW2yFxdVFZ4ffNOWKghtMjhnUPsXsVA==}
+ '@oxlint/binding-linux-ppc64-gnu@1.74.0':
+ resolution: {integrity: sha512-9QggtPkSPXOCTu8Szis7auOK/sC7KdQaN+/TujP7YVVhzCAOhgdRfgv8uEz0r2tk5xdgus5rLYUrCDoZNtiRUw==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [ppc64]
os: [linux]
libc: [glibc]
- '@oxlint/binding-linux-ppc64-gnu@1.68.0':
- resolution: {integrity: sha512-zExyZ8ZOUuAyQ0y9jpTcyjKUz62YY9JhKPyVxzvjTpXzZ3ujdqiVwfPWDdnA1SsIOrxdtxHn7KErDHLWskFjXg==}
- engines: {node: ^20.19.0 || >=22.12.0}
- cpu: [ppc64]
- os: [linux]
- libc: [glibc]
-
- '@oxlint/binding-linux-riscv64-gnu@1.66.0':
- resolution: {integrity: sha512-s0iXPDQVdgayE3RGa/N2DZF7tjgg0TwEtD1sGoDxqPDGrIXgo45H0yHknT0f9A0yteASsweYZtDyTuVlM4aSag==}
- engines: {node: ^20.19.0 || >=22.12.0}
- cpu: [riscv64]
- os: [linux]
- libc: [glibc]
-
- '@oxlint/binding-linux-riscv64-gnu@1.68.0':
- resolution: {integrity: sha512-6C4MPuwewyDavA7sxM14wzgRi5GGL68HPIxRCdVyS75U4MDbpFVYzKO9WNR6KLKTMPq2pcz3THwo1sK2uiqngw==}
+ '@oxlint/binding-linux-riscv64-gnu@1.74.0':
+ resolution: {integrity: sha512-VM5VPUJ4DJIWiK+AZn8FScUqMr6OFrCAYybMYjEEi7W13ParI64MByiXTkKMqZpBmvQ9zxl9Ebq2VUOiZRJYUg==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [riscv64]
os: [linux]
libc: [glibc]
- '@oxlint/binding-linux-riscv64-musl@1.66.0':
- resolution: {integrity: sha512-OekL4XFiu7RPK0JIZi8VeHgtIXPREf42t8Cy/rKEsC+P3gcqDgNAAGiyuUOpdbG4wwbfue1q4CHcCO7spSve6w==}
+ '@oxlint/binding-linux-riscv64-musl@1.74.0':
+ resolution: {integrity: sha512-SaDY1gh9rOA592J54g+gu5hkOFFQBZsMmIYHs+NRHG+Uq0OxtuuCXMWQ3vu1830Eugv5uMXyjG+bv2Z9y4IXjw==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [riscv64]
os: [linux]
libc: [musl]
- '@oxlint/binding-linux-riscv64-musl@1.68.0':
- resolution: {integrity: sha512-bnZooVeHAcvA+dH0EDLgx+7HY/DRi6e0hFszg3P+OBatuUjV6EvfIyNIzWOusmqAVh4L6r21GGTZtiKE4iqM4Q==}
- engines: {node: ^20.19.0 || >=22.12.0}
- cpu: [riscv64]
- os: [linux]
- libc: [musl]
-
- '@oxlint/binding-linux-s390x-gnu@1.66.0':
- resolution: {integrity: sha512-Ga1D0kj1SFslm34ThA/BdkUlyAYEnTsXyRC4pF0C5agZSwtGdHYWMTQWemUfBGp4RCG4QWXgdO+HmmmKqOtlBg==}
+ '@oxlint/binding-linux-s390x-gnu@1.74.0':
+ resolution: {integrity: sha512-ZATQeHZCyr6MbDveg0obD5sxLHFOghtOdC5jwVwYlvFWqtFOxctgFEG6Ef/64hYvZrWyhyCckB10AelqLopeDA==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [s390x]
os: [linux]
libc: [glibc]
- '@oxlint/binding-linux-s390x-gnu@1.68.0':
- resolution: {integrity: sha512-dIqnZnJSmHCMOUpUcWQOiV14o3DDPVx1DSsMaSzvdhNjC1tB1iEPZbdiMSCIEYbkgbsYznHXWqFdKL8WUB3F8g==}
- engines: {node: ^20.19.0 || >=22.12.0}
- cpu: [s390x]
- os: [linux]
- libc: [glibc]
-
- '@oxlint/binding-linux-x64-gnu@1.66.0':
- resolution: {integrity: sha512-p5jfP1wUZe/IC3qpQO84n9DRnf9g3lKRtLBlQq23ykyrDglHcVx7sWmVTlPuU6SBw8mNnPzyOn022G3XZHnlww==}
- engines: {node: ^20.19.0 || >=22.12.0}
- cpu: [x64]
- os: [linux]
- libc: [glibc]
-
- '@oxlint/binding-linux-x64-gnu@1.68.0':
- resolution: {integrity: sha512-zc9lEnfV/HreDTY6gdMlZe+irkwHSxQ4/B1pS9GyK7RVaA5LxhoZY/w6/o2vIwLLEYiXQ5ujGxOM1ZazeFAAIA==}
+ '@oxlint/binding-linux-x64-gnu@1.74.0':
+ resolution: {integrity: sha512-+aIvJyrdeD7LwCQ2WYLMUWNmnbeDRSPb40aBYtPjD9+PTqUwgJnk+HK5yLfSMeqXrMrDhE9uTmtt2y50tvjhHw==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [x64]
os: [linux]
libc: [glibc]
- '@oxlint/binding-linux-x64-musl@1.66.0':
- resolution: {integrity: sha512-vUB/sYlYZorDL1ZD+o9mRv7zbsykrrFRtmgS6R8musZqLtrPRQn1gc1eGpuX+sfdccz42STl/AqldY6XRb2upQ==}
+ '@oxlint/binding-linux-x64-musl@1.74.0':
+ resolution: {integrity: sha512-XyktaR8lhK2qWiCK0Tk8oYD+/cgn+oHA6ddRnxSSXUKkkojkV78CmShZUxQF+yrBFs0SuW+JBOPG6hecyc/iZg==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [x64]
os: [linux]
libc: [musl]
- '@oxlint/binding-linux-x64-musl@1.68.0':
- resolution: {integrity: sha512-Dl5QEX0TCo/40Cdh1o1JdPS//+YiWqjC+Hrrya5OQmStZZr4svAFtdlqcpCrU9yq2Mo3vRVyO9B3h0dzD8s36Q==}
- engines: {node: ^20.19.0 || >=22.12.0}
- cpu: [x64]
- os: [linux]
- libc: [musl]
-
- '@oxlint/binding-openharmony-arm64@1.66.0':
- resolution: {integrity: sha512-yde+6p/F59xRkGR9H1HfngWRif1QRJjynZK349l+UI0H6w9hL3G8/AVaTHFyTtLVQ56qtNbX2/5Dc77n1ovnOg==}
+ '@oxlint/binding-openharmony-arm64@1.74.0':
+ resolution: {integrity: sha512-mzbjrPl4neaVUiJ1fUiEUxTGaSZBoiKtaoB6jmIpz9S+VOA2vDYmJpihQ82w6178V5jxziclTg8Cgj5yF6tTDg==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm64]
os: [openharmony]
- '@oxlint/binding-openharmony-arm64@1.68.0':
- resolution: {integrity: sha512-/qy6dOvi4S3/LeXq0l5BT5pRKPYA7oj3uKwJOAZOr5HRLL+HK6jdBynvWuXIA2wwfE01RzNYmbBdM7vwYx00sA==}
- engines: {node: ^20.19.0 || >=22.12.0}
- cpu: [arm64]
- os: [openharmony]
-
- '@oxlint/binding-win32-arm64-msvc@1.66.0':
- resolution: {integrity: sha512-O9GLucgoTdmOrbBX+EjzNe7o/Ze5TFOvXcib6bzUOtBOmj6cV+zw18NgB+cGKAkDw1Pdqs8vGkfHbbsLuDtXWg==}
- engines: {node: ^20.19.0 || >=22.12.0}
- cpu: [arm64]
- os: [win32]
-
- '@oxlint/binding-win32-arm64-msvc@1.68.0':
- resolution: {integrity: sha512-fHNtVqPHSYE7UFDSLVFUjxQjnSVXxseNJmRW+XuP4pXXDwePdPda43NL7/BBCFTxHjycOc44JNDaOPtFDNui9A==}
+ '@oxlint/binding-win32-arm64-msvc@1.74.0':
+ resolution: {integrity: sha512-vUAe9okpS2Oa5+lX67lqHMuNUvfkleRKwrUDJ/WJBsgmddvZ1mrsh2HVmuFDRzqFELhaJhFaCNOuR6a7L3rtIA==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm64]
os: [win32]
- '@oxlint/binding-win32-ia32-msvc@1.66.0':
- resolution: {integrity: sha512-m3Pjwc2MfTcom4E4gOv7DyuGyt7OfGNCbmqDHd+N7EzXmP+ppHuudm2NjcA3AjV5TSeGxaguVF4SbTKHe1USYA==}
+ '@oxlint/binding-win32-ia32-msvc@1.74.0':
+ resolution: {integrity: sha512-yyXXJyYYSXL4I8K8jAWjJs+J3fa9gH2JmEbo4f5adm+1tNC9itseicBNuwK7BDHvqQ5J534s+yDULu89vYL2ZQ==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [ia32]
os: [win32]
- '@oxlint/binding-win32-ia32-msvc@1.68.0':
- resolution: {integrity: sha512-NnKXr4Wgo4nps3erhrE0f8shBvBPZMHg72nDsvX0JyrRvsNiP3f1JNvbCKh+A6VFvpF7ZoJxu904P3cKMhvZnA==}
- engines: {node: ^20.19.0 || >=22.12.0}
- cpu: [ia32]
- os: [win32]
-
- '@oxlint/binding-win32-x64-msvc@1.66.0':
- resolution: {integrity: sha512-/DbBvw8UFBhja6PqudUjV4UtfsJr0Oa7jUjWVKB0g86lj/VwnPrkngn0sFql3c9RDA0O16dh7ozsXb6GjNAzBQ==}
- engines: {node: ^20.19.0 || >=22.12.0}
- cpu: [x64]
- os: [win32]
-
- '@oxlint/binding-win32-x64-msvc@1.68.0':
- resolution: {integrity: sha512-zg5pA+84AlU6XHJ3ruiRxziO71QTrz8nLsk6u01JGS5+tL9/bnlakFiklFrcy4R1/V7ktWtaNitN3JZWmKnf6g==}
+ '@oxlint/binding-win32-x64-msvc@1.74.0':
+ resolution: {integrity: sha512-VTC9IYTIMrVUk/i6Ms1ohzzDKZFkWn0KU2OBbPBzgmVZ2V30165T/zK4LztTr0Xgp9fZ1qQZ1rsZAu/rEmySlA==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [x64]
os: [win32]
@@ -2842,8 +2700,8 @@ packages:
react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1
react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1
- '@react-grab/cli@0.1.47':
- resolution: {integrity: sha512-Cc7d8mSwvoV8gpeTQbE8dMPdeXIyO6w+yIhzgi3jY06i03WLNhb/6jIxNBNF1cVRI7ujnFQXZA66BbnBNTpBSw==}
+ '@react-grab/cli@0.1.50':
+ resolution: {integrity: sha512-Px/Hwhhyk2PubCA4ZaRFsfvwxhbxXsetJyvqC6aFFi8WhJhA+oVC33aTzuAeWmM3fhb4/8ce8YsHXI1d6ChcKg==}
hasBin: true
'@react-types/shared@3.34.0':
@@ -3009,16 +2867,16 @@ packages:
rollup:
optional: true
- '@sentry/conventions@0.12.0':
- resolution: {integrity: sha512-z1JQrl/1SLY+8wpzvork6vl+fpsg/oCCxM7HWWhUnI/R+OGNyoIzieQuggX3uUMY7NBtp8UWCQx6FeFazzOF9g==}
+ '@sentry/conventions@0.16.0':
+ resolution: {integrity: sha512-fO9PLmHdVURcSPUpWCItWAtgKiMwGdJHbovoSEyLplX5sxs2ugvI4CBPTrkkgqhObnZOD0CnWBKDzSVQYBKEyQ==}
engines: {node: '>=14'}
- '@sentry/core@10.62.0':
- resolution: {integrity: sha512-tV69fMg2sS5DUFmQSnS7Jd5qJAp0izxwcsvBVz2ieTM9VMRi99IfOSYW9UYr3p1yfuksk41kefN5PEbeedUE+A==}
+ '@sentry/core@10.68.0':
+ resolution: {integrity: sha512-5Amhx8ltVz7vb1bRGyf3c4J69/iHW8R/H+SJxTRILHlsSOBrnVVc/IQEYDC6PTRdRdZ3x2u7RVjxZi2Mhe525g==}
engines: {node: '>=18'}
- '@sentry/node-core@10.62.0':
- resolution: {integrity: sha512-V7rDgbxViiHU0OpcFEDp3l41IFvWTasKHfXw8SQ6yIgtZ8VpFqmz2TR5N7X85iIOmWIvK5HV0yp0eDdsly0+rA==}
+ '@sentry/node-core@10.68.0':
+ resolution: {integrity: sha512-VreORXnruy8A2SyprZKENAq3ArGwn35KPewLQSQ5dgDXSFtUj2scLuzZoVsZ/Uyt83td0WPvD6Lv0X7MvSYAMQ==}
engines: {node: '>=18'}
peerDependencies:
'@opentelemetry/api': ^1.9.0
@@ -3038,22 +2896,26 @@ packages:
'@opentelemetry/sdk-trace-base':
optional: true
- '@sentry/node@10.62.0':
- resolution: {integrity: sha512-4hoU67bJY0o3irEDMZu2UIztAOsvEqFkLXA7EUKl1LXMA3Ba1Lb32OUVqlsTypiEInSDs/BtM+aAFKojZ3P3Fw==}
+ '@sentry/node@10.68.0':
+ resolution: {integrity: sha512-bnvRzEehquG/894DD3BWNCBUbDWsLQfYPU+SNCMd6G4Ext75RthVkRs8R0sRaE6b8Tw9HSEgySHL834Tf8lVsA==}
engines: {node: '>=18'}
- '@sentry/opentelemetry@10.62.0':
- resolution: {integrity: sha512-nFwBgtjfwgY8P5lAuQFWfAsQW1MXxuQ6kR/HtBs+A6julqwGGS2QnQ65OCWMzz6IqDEL/pRgT1405/gU+OXU3A==}
+ '@sentry/opentelemetry@10.68.0':
+ resolution: {integrity: sha512-JDNH9dacX0MSi7FRvabPCJUAXRMTe16bE/Gajc/7Gfcw7Rwvo4DZ0nd162PCSAW9QoEjUT12upDehEHJuFmsXg==}
engines: {node: '>=18'}
peerDependencies:
'@opentelemetry/api': ^1.9.0
'@opentelemetry/core': ^1.30.1 || ^2.1.0
'@opentelemetry/sdk-trace-base': ^1.30.1 || ^2.1.0
- '@sentry/server-utils@10.62.0':
- resolution: {integrity: sha512-S5szsj6kKBhxw97b2HA98fYp/PpWXvSizlisEzb2rnL4IH6RAJ8wP05/fnth8pSywTH+gtUu+i6Wn8e8rX5HvA==}
+ '@sentry/server-utils@10.68.0':
+ resolution: {integrity: sha512-lp1ZSs1auw7HrCESSYt/n4dOUaKPVUIAKyVYRk6xVr4bMIN3RPub/H5Wm7QPj9CpXVC5bQFvB6+dHZXz809oMg==}
engines: {node: '>=18'}
+ '@shaderfrog/glsl-parser@7.0.1':
+ resolution: {integrity: sha512-8mpfsoPeRhesY3pOrzNZBL8uG6N5GVX1EHLBYbd4gzKs+c7vaEIqpTNK5VrffU33qQN4cwpP2v3u4aPPBU32sw==}
+ engines: {node: '>=16'}
+
'@simple-git/args-pathspec@1.0.3':
resolution: {integrity: sha512-ngJMaHlsWDTfjyq9F3VIQ8b7NXbBLq5j9i5bJ6XLYtD6qlDXT7fdKY2KscWWUF8t18xx052Y/PUO1K1TRc9yKA==}
@@ -3405,8 +3267,8 @@ packages:
'@types/ws@8.18.1':
resolution: {integrity: sha512-ThVF6DCVhA8kUGy+aazFQ4kXQ7E1Ty7A3ypFOe0IcJV8O/M511G99AW24irKrW56Wt44yG9+ij8FaqoBGkuBXg==}
- '@typescript-eslint/types@8.62.0':
- resolution: {integrity: sha512-KvAclkktORPvM54TgLgA4z9HIV1M8zOgw9ZVNXl9f/8dLYfXYX1wkMXP7qmabpijQRV5bHJLOmoyGQbLMaUYeg==}
+ '@typescript-eslint/types@8.65.0':
+ resolution: {integrity: sha512-JSSwWNy+H0E/01jJEM+hrX6N0OFDzFzeIhHFSAS01tlVaevpG8cFyYRPhS5yjGOvBUx3sqQHVMjCL1CAZZMxBg==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
'@uiw/color-convert@2.10.3':
@@ -3673,11 +3535,6 @@ packages:
'@xyflow/system@0.0.78':
resolution: {integrity: sha512-lY0z2qP33fUhTva9Vaxrk0lqZta2pkbxB1trHAx1omnJqRtPvDlAQYV2r5fhS6AdpkulYmbNW0svy+A4/t4B/g==}
- acorn-import-attributes@1.9.5:
- resolution: {integrity: sha512-n02Vykv5uA3eHGM/Z2dQrcD56kL8TyDb2p1+0P83PClMnC/nc+anbQRhIOWnSq4Ke/KvDPrY3C9hDtC/A3eHnQ==}
- peerDependencies:
- acorn: ^8
-
acorn-jsx@5.3.2:
resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==}
peerDependencies:
@@ -3816,6 +3673,11 @@ packages:
peerDependencies:
react: '>=17.0.1'
+ bippy@0.6.1:
+ resolution: {integrity: sha512-ky4m94Y/KfsddjGkKTsV4uFjZqkJjpOjQ2t5gKPdX6XH1MNxMNX5FrVefsxV4lpjemEmEdwe0e0YbzAMNs3oUQ==}
+ peerDependencies:
+ react: '>=17.0.1'
+
brace-expansion@2.1.0:
resolution: {integrity: sha512-TN1kCZAgdgweJhWWpgKYrQaMNHcDULHkWwQIspdtjV4Y5aurRdZpjAqn6yX3FPqTA9ngHCc4hJxMAMgGfve85w==}
@@ -3904,10 +3766,22 @@ packages:
classnames@2.5.1:
resolution: {integrity: sha512-saHYOzhIQs6wy2sVxTM6bUDsQO4F50V9RQ22qBpEdCW+I+/Wmke2HOl6lS6dTpdxVhb88/I6+Hs+438c3lfUow==}
+ cli-boxes@4.0.1:
+ resolution: {integrity: sha512-5IOn+jcCEHEraYolBPs/sT4BxYCe2nHg374OPiItB1O96KZFseS2gthU4twyYzeDcFew4DaUM/xwc5BQf08JJw==}
+ engines: {node: '>=18.20 <19 || >=20.10'}
+
+ cli-cursor@4.0.0:
+ resolution: {integrity: sha512-VGtlMu3x/4DOtIUwEkRezxUZ2lBacNJCHash0N0WeZDBS+7Ux1dm3XWAgWYxLJFMMdOeXMHXorshEFhbMSGelg==}
+ engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+
cli-cursor@5.0.0:
resolution: {integrity: sha512-aCj4O5wKyszjMmDT4tZj93kxyydN/K5zPWSCe6/0AV/AA1pqe5ZBIw0a2ZfPQV7lL5/yb5HsUreJ6UFAF1tEQw==}
engines: {node: '>=18'}
+ cli-spinners@2.9.2:
+ resolution: {integrity: sha512-ywqV+5MmyL4E7ybXgKys4DugZbX0FC6LnwrhjuykIjnK9k8OQacQ7axGKnjDXWNhns0xot3bZI5h55H8yo9cJg==}
+ engines: {node: '>=6'}
+
cli-spinners@3.4.0:
resolution: {integrity: sha512-bXfOC4QcT1tKXGorxL3wbJm6XJPDqEnij2gQ2m7ESQuE+/z9YFIWnl/5RpTiKWbMq3EVKR4fRLJGn6DVfu0mpw==}
engines: {node: '>=18.20'}
@@ -3916,6 +3790,10 @@ packages:
resolution: {integrity: sha512-xRwvIOMGrfOAnM1JYtqQImuaNtDEv9v6oIYAs4LIHwTiKee8uwvIi363igssOC0O5U04i4AlENs79LQLu9tEMw==}
engines: {node: '>=20'}
+ cli-truncate@6.1.1:
+ resolution: {integrity: sha512-06p9vyLahLa4zkGcgsGxU6iEkSOiuI4fhCH6Emhe2lPAcoUv73n72DnODsnHA+5wwXGnV0n9M9/qOQJSjYhFhw==}
+ engines: {node: '>=22'}
+
cli-width@4.1.0:
resolution: {integrity: sha512-ouuZd4/dm2Sw5Gmqy6bGyNNNe1qt9RpmxveLSO7KcgsTnU7RXfsw+/bukWGo1abgBiMAic068rclZsO4IWmmxQ==}
engines: {node: '>= 12'}
@@ -3960,6 +3838,10 @@ packages:
react: ^18 || ^19 || ^19.0.0-rc
react-dom: ^18 || ^19 || ^19.0.0-rc
+ code-excerpt@4.0.0:
+ resolution: {integrity: sha512-xxodCmBen3iy2i0WtAK8FlFNrRzjUqjRsMfho58xT/wvZU1YTM3fCnRjcy1gJPMepaRlgm/0e6w8SpWHpn3/cA==}
+ engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+
color-convert@2.0.1:
resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==}
engines: {node: '>=7.0.0'}
@@ -4010,9 +3892,12 @@ packages:
convert-source-map@2.0.0:
resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==}
- cookie@1.1.1:
- resolution: {integrity: sha512-ei8Aos7ja0weRpFzJnEA9UHJ/7XQmqglbRwnf2ATjcB9Wq874VKH9kfjjirM6UhU2/E5fFYadylyhFldcqSidQ==}
- engines: {node: '>=18'}
+ convert-to-spaces@2.0.1:
+ resolution: {integrity: sha512-rcQ1bsQO9799wq24uE5AM2tAILy4gXGIK/njFWcVQkGNZ96edlpY+A7bjwvzjYvLDyzmG1MmMLZhpcsb+klNMQ==}
+ engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+
+ cookie-es@3.1.1:
+ resolution: {integrity: sha512-UaXxwISYJPTr9hwQxMFYZ7kNhSXboMXP+Z3TRX6f1/NyaGPfuNUZOWP1pUEb75B2HjfklIYLVRfWiFZJyC6Npg==}
core-js@3.49.0:
resolution: {integrity: sha512-es1U2+YTtzpwkxVLwAFdSpaIMyQaq0PBgm3YD1W3Qpsn1NAmO3KSgZfu+oGSWVu6NvLHoHCV/aYcsE5wiB7ALg==}
@@ -4175,8 +4060,8 @@ packages:
resolution: {integrity: sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==}
engines: {node: '>=6'}
- deslop-js@0.5.8:
- resolution: {integrity: sha512-Vq9D2x4dAIW24zcH55DTrl3/vi13UNKfXgw0yj7ULTssZ6KOdw/oyBHtlvE94KFC9yYEhgFTrGjaqqZKvV9pwA==}
+ deslop-js@0.9.2:
+ resolution: {integrity: sha512-rGhQ17gHnmsjG5KFJM4+oN4bOxktHiPGqzJxKqWt0Qw/NLZIsEgLH1wIo1tTXRyN/MNwhchKbfUieFiWyAh0pQ==}
detect-indent@7.0.2:
resolution: {integrity: sha512-y+8xyqdGLL+6sh0tVeHcfP/QDd8gUgbasolJJpY7NgeQGSZ739bDtSiaiDgtoicy+mtYB81dKLxO9xRhCyIB3A==}
@@ -4218,8 +4103,8 @@ packages:
dot-case@3.0.4:
resolution: {integrity: sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==}
- dot-prop@10.1.0:
- resolution: {integrity: sha512-MVUtAugQMOff5RnBy2d9N31iG0lNwg1qAoAOn7pOK5wf94WIaE3My2p3uwTQuvS2AcqchkcR3bHByjaM0mmi7Q==}
+ dot-prop@10.2.0:
+ resolution: {integrity: sha512-BTJ9aZYL3vCfZlZOBLy9v8TUqWGQ0pzFnygKwFZt5udj6viBoFIBviKPUoZLDCPn1FoXffv6McQFDenrm5Krfw==}
engines: {node: '>=20'}
electron-to-chromium@1.5.341:
@@ -4254,9 +4139,15 @@ packages:
es-module-lexer@2.1.0:
resolution: {integrity: sha512-n27zTYMjYu1aj4MjCWzSP7G9r75utsaoc8m61weK+W8JMBGGQybd43GstCXZ3WNmSFtGT9wi59qQTW6mhTR5LQ==}
+ es-module-lexer@2.3.1:
+ resolution: {integrity: sha512-shc1dbU90Yl/xq1QrC7QRtfcwURZuVRfPhZbDoldJ1cn1gzDvBaBWlv0eFolj5+0znnPJz5TXLxsN77X/12KTA==}
+
es-toolkit@1.49.0:
resolution: {integrity: sha512-G5iZ6Pc/FNRY/soKZHC+TxGDD83rHUDXxzaWhGCX44vAv/tMs56WMusnm/KMNK+luUPsgA9U28cGr4RDlSzL2g==}
+ es-toolkit@1.50.0:
+ resolution: {integrity: sha512-OyZKhUVvEep9ITEiwHn8GKnMRQIVqoSIX7WnRbkWgJkllCujilqP2rD0u979tkl8wqyc8ICwlc1UBVv/Sl1G6w==}
+
esbuild@0.28.0:
resolution: {integrity: sha512-sNR9MHpXSUV/XB4zmsFKN+QgVG82Cc7+/aaxJ8Adi8hyOac+EXptIp45QBPaVyX3N70664wRbTcLTOemCAnyqw==}
engines: {node: '>=18'}
@@ -4266,6 +4157,10 @@ packages:
resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==}
engines: {node: '>=6'}
+ escape-string-regexp@2.0.0:
+ resolution: {integrity: sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==}
+ engines: {node: '>=8'}
+
escape-string-regexp@4.0.0:
resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==}
engines: {node: '>=10'}
@@ -4367,8 +4262,8 @@ packages:
fast-string-width@3.0.2:
resolution: {integrity: sha512-gX8LrtNEI5hq8DVUfRQMbr5lpaS4nMIWV+7XEbXk2b8kiQIizgnlr12B4dA3ZEx3308ze0O4Q1R+cHts8kyUJg==}
- fast-uri@3.1.2:
- resolution: {integrity: sha512-rVjf7ArG3LTk+FS6Yw81V1DLuZl1bRbNrev6Tmd/9RaroeeRRJhAt7jg/6YFxbvAQXUCavSoZhPPj6oOx+5KjQ==}
+ fast-uri@3.1.4:
+ resolution: {integrity: sha512-8JnbkQ4juDyvYs4mgFGQqg4yCYtFDtUtmp2QIQq11ZZe5CFQ5wcqm1rqDgAh/QdMySuBnPzMUiJUNZG5N/AiQw==}
fast-wrap-ansi@0.2.2:
resolution: {integrity: sha512-7F2Fl+TjRSenLqlU3UjSH0iyqopqoZIu7eZVpEirP2g1GtWa2G/ecEmBdgz31+Mxr+ELclgg6sokpSFIQiZ02Q==}
@@ -4395,6 +4290,10 @@ packages:
resolution: {integrity: sha512-7yAQpD2UMJzLi1Dqv7qFYnPbaPx7ZfFK6PiIxQ4PfkGPyNyl2Ugx+a/umUonmKqjhM4DnfbMvdX6otXq83soQQ==}
engines: {node: ^12.20 || >= 14.13}
+ figures@6.1.0:
+ resolution: {integrity: sha512-d+l3qxjSesT4V7v2fh+QnmFnUWv9lSpjarhShNTgBOfA0ttejbQUAlHLitbjkoRiDulW0OPoQPYIGhIC8ohejg==}
+ engines: {node: '>=18'}
+
file-entry-cache@8.0.0:
resolution: {integrity: sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==}
engines: {node: '>=16.0.0'}
@@ -4415,8 +4314,8 @@ packages:
resolution: {integrity: sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==}
engines: {node: '>=16'}
- flatted@3.4.2:
- resolution: {integrity: sha512-PjDse7RzhcPkIJwy5t7KPWQSZ9cAbzQXcafsetQoD7sOJRQlGikNbx7yZp2OotDnJyrDcbyRq3Ttb18iYOqkxA==}
+ flatted@3.4.3:
+ resolution: {integrity: sha512-/zipXxyO6rGvuNGDiULY9MvEGSkb2gaG4GGH4ygMi0ZZzyMHdUZBmntJmx5x1G2VuPytCwGN4xsJP6cw+sK+vQ==}
format@0.2.2:
resolution: {integrity: sha512-wzsgA6WOq+09wrU1tsJ09udeR/YZRaeArL9e1wPbFg3GG2yDnC2ldKpxs4xunpFF9DgqCqOIra3bc1HWrJ37Ww==}
@@ -4642,8 +4541,8 @@ packages:
resolution: {integrity: sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==}
engines: {node: '>= 4'}
- ignore@7.0.5:
- resolution: {integrity: sha512-Hs59xBNfUIunMFgWAbGX5cq6893IbWg4KnrjbYwX3tx0ztorVgTDA6B2sxf8ejHJ4wz8BqGUMYlnzNBer5NvGg==}
+ ignore@7.0.6:
+ resolution: {integrity: sha512-BAg6QkE8W+TuQLrrw0Ugr7HegXduRuuj8/ti2kSOc+jz1dmx8/WNcjr6XGnq5YpDWxFwwaavqD0+jIUOKelTsw==}
engines: {node: '>= 4'}
immer@10.2.0:
@@ -4663,14 +4562,18 @@ packages:
resolution: {integrity: sha512-P9J71vT5nLlDeV8FHs5nNxaLbrpfAV5cF5srvbZfpwpcJoM/xZR3hiv+q+SAnuSmuGbXMWud063iIMx/V/EWZQ==}
engines: {node: '>=12.2'}
- import-in-the-middle@3.2.0:
- resolution: {integrity: sha512-vR2B6HKIhaBjcZr2bLpFiJ1VbzOlRQ7aby4/gw5WPIzToLjqpfWw3VJ4sk1uDchoOODEirvO2jyrSPtUSL5CrQ==}
+ import-in-the-middle@3.3.2:
+ resolution: {integrity: sha512-jTd2FfOgOWOdgjkHuk/1Ms8VKFXkPs15ymYBETw1sAOrO/dY3XeGVRWir9qBbw7pXr0T2eTFwfCZ+N02HmiNGA==}
engines: {node: '>=18'}
imurmurhash@0.1.4:
resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==}
engines: {node: '>=0.8.19'}
+ indent-string@5.0.0:
+ resolution: {integrity: sha512-m6FAo/spmsW2Ab2fU35JTYwtOKa2yAwXSwgjSv1TJzh4Mh7mC3lzAOVLBprb72XsTrgkEIsl7YrFNAiDiRhIGg==}
+ engines: {node: '>=12'}
+
index-to-position@1.2.0:
resolution: {integrity: sha512-Yg7+ztRkqslMAS2iFaU+Oa4KTSidr63OsFGlOrJoW981kIYO3CGCS3wA95P1mUi/IVSJkn0D479KTJpVpvFNuw==}
engines: {node: '>=18'}
@@ -4686,6 +4589,26 @@ packages:
react-dom:
optional: true
+ ink-spinner@5.0.0:
+ resolution: {integrity: sha512-EYEasbEjkqLGyPOUc8hBJZNuC5GvXGMLu0w5gdTNskPc7Izc5vO3tdQEYnzvshucyGCBXc86ig0ujXPMWaQCdA==}
+ engines: {node: '>=14.16'}
+ peerDependencies:
+ ink: '>=4.0.0'
+ react: '>=18.0.0'
+
+ ink@7.1.1:
+ resolution: {integrity: sha512-Y43xxa1ZSPvpmfLHcN5o+OdP8Rf8ykkNJEuKYOUNZKT8wXVNLFTtEm1nSDMQkfBH+YANF4Xuu0hhZ4ejqAtN2w==}
+ engines: {node: '>=22'}
+ peerDependencies:
+ '@types/react': '>=19.2.0'
+ react: '>=19.2.0'
+ react-devtools-core: '>=6.1.2'
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+ react-devtools-core:
+ optional: true
+
inline-style-parser@0.2.7:
resolution: {integrity: sha512-Nb2ctOyNR8DqQoR0OwRG95uNWIC0C1lCgf5Naz5H6Ji72KZ8OcFZLz2P5sNgwlyoJ8Yif11oMuYs5pBQa86csA==}
@@ -4731,6 +4654,11 @@ packages:
is-hexadecimal@2.0.1:
resolution: {integrity: sha512-DgZQp241c8oO6cA1SbTEWiXeoxV42vlcJxgH+B3hi1AiqqKruZR3ZGF8In3fj4+/y/7rHvlOZLZtgJ/4ttYGZg==}
+ is-in-ci@2.0.0:
+ resolution: {integrity: sha512-cFeerHriAnhrQSbpAxL37W1wcJKUUX07HyLWZCW1URJT/ra3GyUTzBgUnh24TMVfNTV2Hij2HLxkPHFZfOZy5w==}
+ engines: {node: '>=20'}
+ hasBin: true
+
is-interactive@2.0.0:
resolution: {integrity: sha512-qP1vozQRI+BMOPcjFzrjXuQvdak2pHNUMZoeG2eRbiSqyvbEf/wQtEOTOX1guk6E3t36RkaqiSt8A/6YElNxLQ==}
engines: {node: '>=12'}
@@ -5209,6 +5137,10 @@ packages:
resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==}
engines: {node: '>=8.6'}
+ mimic-fn@2.1.0:
+ resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==}
+ engines: {node: '>=6'}
+
mimic-function@5.0.1:
resolution: {integrity: sha512-VP79XUPxV2CigYP3jWwAUFSku2aKqBH7uTAapFWCBqutsbmDo96KY5o8uh6U+/YSIn5OxJnXp73beVkpqMIGhA==}
engines: {node: '>=18'}
@@ -5327,6 +5259,10 @@ packages:
resolution: {integrity: sha512-9miFgM2OFba7hB+pRgvtV84pYTBaoTHohvmIgiRt6dRIzbwEOIaNaP+dIlGs2fNFoB0SeISs0Jz5WFVRid6Xyg==}
engines: {node: '>=12.20.0'}
+ onetime@5.1.2:
+ resolution: {integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==}
+ engines: {node: '>=6'}
+
onetime@7.0.0:
resolution: {integrity: sha512-VXJjc87FScF88uafS3JllDgvAm+c/Slfz06lorj2uAY34rlUu0Nt+v8wreiImcrgAjjIHp1rXpTDlLOGw29WwQ==}
engines: {node: '>=18'}
@@ -5350,45 +5286,34 @@ packages:
resolution: {integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==}
engines: {node: '>= 0.8.0'}
- ora@9.4.1:
- resolution: {integrity: sha512-6VlU9MLXbjVQD04AZCMX28hVtA5bUoadvUqO76MUCVA0ilwJbMiHsITRPfyVm6p/BC0Av/BXMujx39WCe1LEqw==}
- engines: {node: '>=20'}
-
- oxc-parser@0.132.0:
- resolution: {integrity: sha512-+0LAPHaqtfQlvWdpaAa09SmOaZZgP8C552xosEkGJ4+ruEwP1Vgx+sqBgcBCNfR6KDCmagGOZTde8wmAvcI/Hg==}
- engines: {node: ^20.19.0 || >=22.12.0}
-
- oxc-parser@0.135.0:
- resolution: {integrity: sha512-/DaPStu0s2zzNSRRniKyTPM6Z/o+DapOp2JYNKDL8AsgaBGPK2IdZyB87SQjVH+xeQPz+Qr9mrjglfkYgtbVRA==}
- engines: {node: ^20.19.0 || >=22.12.0}
+ ora@9.4.1:
+ resolution: {integrity: sha512-6VlU9MLXbjVQD04AZCMX28hVtA5bUoadvUqO76MUCVA0ilwJbMiHsITRPfyVm6p/BC0Av/BXMujx39WCe1LEqw==}
+ engines: {node: '>=20'}
oxc-parser@0.137.0:
resolution: {integrity: sha512-yFImD+WLElJpLKy8llG1qe4DCmMsL18peRp8XP1JKfig/gISbJkglnpDtX2aTmAn10kZF7164HbN2H8QPsXxGg==}
engines: {node: ^20.19.0 || >=22.12.0}
+ oxc-parser@0.141.0:
+ resolution: {integrity: sha512-uFkGGr1KMWd6aWv9UAqooYrN78trw8MWWmoPvgWokfBEUq1+eiIQ+qfj3wokhy0fxtZWZk+0dHoS7/yRTJtd6w==}
+ engines: {node: ^20.19.0 || >=22.12.0}
+
oxc-resolver@11.21.3:
resolution: {integrity: sha512-2Mx3fKQz7+xgrBONjsxOgCGtMHOn38/HxMzW1I5efwXB5a4lRN0Vp40gYUJFBWJslcrvwoofTrqoTnLbwTd3pA==}
- oxlint-plugin-react-doctor@0.5.8:
- resolution: {integrity: sha512-L0jveKAMbqF1qAqA2Ksu8aH0/Q8FDQxLwXmHYgALa2XlsxEUuamJ+1Da2MhPWJ2ahn+ekFbnWK20qixxD+fw6A==}
- engines: {node: ^20.19.0 || >=22.13.0}
+ oxc-resolver@11.24.2:
+ resolution: {integrity: sha512-FY91FiDBj7ls5MsFS9jN3tjz2o0/zsdSsymlakySaBwVJZorHhkWyICLZMKxlu1R9vYo+sd3z1jwb4J8x7bNDw==}
- oxlint@1.66.0:
- resolution: {integrity: sha512-N4LLxYLd94KEBqXDMDM5f+2PUpItTjDLreXe2Gn5KhjhCK4Qp2YUXaBi8Yu325ryOgKwt22m45fpD7nPOn69Yw==}
- engines: {node: ^20.19.0 || >=22.12.0}
- hasBin: true
- peerDependencies:
- oxlint-tsgolint: '>=0.22.1'
- peerDependenciesMeta:
- oxlint-tsgolint:
- optional: true
+ oxlint-plugin-react-doctor@0.9.2:
+ resolution: {integrity: sha512-fTciSOgAGe/KAgvFDKLz9crjxHyAuu0BvT5sXfSdo2B5QmY5Y/j3nliqX6FaGr7Wud1SYvkAky+/m+58b6K6fQ==}
+ engines: {node: ^20.19.0 || >=22.13.0}
- oxlint@1.68.0:
- resolution: {integrity: sha512-dXcbq+xsmLrMy6T8d0euf3IYUfLmjHIE11pOxiUSi5LHkFZaYPv568R6sEjcavVpUxoaQe66UBuK4HEi74NxpA==}
+ oxlint@1.74.0:
+ resolution: {integrity: sha512-odGl2s2x5IOJoj3A0v1k0PGBXVFBZeZ2+AK/+K2MJur7Ghi3bkyX5NuLUWHKqa4js1wjep3hJeuTQJOlr+4+dA==}
engines: {node: ^20.19.0 || >=22.12.0}
hasBin: true
peerDependencies:
- oxlint-tsgolint: '>=0.22.1'
+ oxlint-tsgolint: '>=0.24.0'
vite-plus: '*'
peerDependenciesMeta:
oxlint-tsgolint:
@@ -5412,8 +5337,8 @@ packages:
resolution: {integrity: sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw==}
engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
- package-manager-detector@1.6.0:
- resolution: {integrity: sha512-61A5ThoTiDG/C8s8UMZwSorAGwMJ0ERVGj2OjoW5pAalsNOg15+iQiPzrLJ4jhZ1HJzmC2PIHT2oEiH3R5fzNA==}
+ package-manager-detector@1.8.0:
+ resolution: {integrity: sha512-yQA4H19AmPEoMUeavPMDIe1higySl/gH/yaQrkT/s07Qp+7pp2hYz30N3z2l5BkjVkF9Ow6o0wjJamm2y7Sn0A==}
parent-module@1.0.1:
resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==}
@@ -5434,6 +5359,10 @@ packages:
resolution: {integrity: sha512-ybiGyvspI+fAoRQbIPRddCcSTV9/LsJbf0e/S85VLowVGzRmokfneg2kwVW/KU5rOXrPSbF1qAKPMgNTqqROQQ==}
engines: {node: '>=18'}
+ patch-console@2.0.0:
+ resolution: {integrity: sha512-0YNdUceMdaQwoKce1gatDScmMo5pu/tfABfnzEqeG0gtTmd7mh/WcwgUjtAeOU7N8nFFlbQBnFK2gXW5fGvmMA==}
+ engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+
path-exists@4.0.0:
resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==}
engines: {node: '>=8'}
@@ -5582,8 +5511,8 @@ packages:
peerDependencies:
react: '>=16.14.0'
- react-doctor@0.5.8:
- resolution: {integrity: sha512-gDXDQ+48KeFq2jkVgsUhQ67oQ+kUMdnIaA+YeS9VXXZFXSg9wxY5dDxurEpILSh8RwO06W8p6uCnTR+wn5B/GA==}
+ react-doctor@0.9.2:
+ resolution: {integrity: sha512-A/e21t0y3j7zUTS8lJyNI2pKMfYLDH+zZwqAC7+MQW1vCD3xqWc2x8XCCWKnrQQwtFd6dwSZw2017x1iSLnGTA==}
engines: {node: ^20.19.0 || >=22.13.0}
hasBin: true
@@ -5597,8 +5526,8 @@ packages:
peerDependencies:
react: ^18.0.0 || ^19.0.0
- react-grab@0.1.47:
- resolution: {integrity: sha512-1GNy24KMJ4CY1IxorYO9mydItGi0L1HkQB19uYU3t0BMsJB0K+D/QYiaBz+rugRynyY8LzmXIuOcon1TykLlCg==}
+ react-grab@0.1.50:
+ resolution: {integrity: sha512-zRkHKq/8a1msCpEOp8BDROeQZT50m0OH2XPrP6jk5op+JAHrlsm3pj7eAQMOsct87EZDeGNnu4r+sGsJJzyw1Q==}
hasBin: true
peerDependencies:
react: '>=17.0.0'
@@ -5629,6 +5558,12 @@ packages:
peerDependencies:
react: ^16 || ^17 || ^18 || ^19
+ react-reconciler@0.33.0:
+ resolution: {integrity: sha512-KetWRytFv1epdpJc3J4G75I4WrplZE5jOL7Yq0p34+OVOKF4Se7WrdIdVC45XsSSmUTlht2FM/fM1FZb1mfQeA==}
+ engines: {node: '>=0.10.0'}
+ peerDependencies:
+ react: ^19.2.0
+
react-redux@9.3.0:
resolution: {integrity: sha512-KQopgqFo/p/fgmAs5qz6p5RWaNAzq40WAu7fJIXnQpYxFPbJYtsJPWvGeF2rOBaY/kEuV77AVsX8TsQzKm+A/g==}
peerDependencies:
@@ -5667,12 +5602,12 @@ packages:
react: ^18.0.0 || ^19.0.0
react-dom: ^18.0.0 || ^19.0.0
- react-router@7.18.0:
- resolution: {integrity: sha512-pTTGt8J+ji1NOmYnjzT+bAJy/1zD+Jp4ziO6cL7T3ZLvXKtusO7BpFqlRXitqpcPVqllsIXFHRMt+2/k3Xn6HQ==}
- engines: {node: '>=20.0.0'}
+ react-router@8.3.0:
+ resolution: {integrity: sha512-qyPMvW83jGIct3yiieisxdk9M745anqhpIMKN5m1t6yBMfgVPpt77aHOqs5fUlEJRMCGffg9BaQLH9oPVOL7xQ==}
+ engines: {node: '>=22.22.0'}
peerDependencies:
- react: '>=18'
- react-dom: '>=18'
+ react: '>=19.2.7'
+ react-dom: '>=19.2.7'
peerDependenciesMeta:
react-dom:
optional: true
@@ -5726,6 +5661,10 @@ packages:
react: '>=16'
react-dom: '>=16'
+ react@19.2.5:
+ resolution: {integrity: sha512-llUJLzz1zTUBrskt2pwZgLq59AemifIftw4aB7JxOqf1HY2FDaGDxgwpAPVzHU1kdWabH7FauP4i1oEeer2WCA==}
+ engines: {node: '>=0.10.0'}
+
react@19.2.7:
resolution: {integrity: sha512-HNe9WslTbXmFK8o8cmwgAeJFSBvt1bPdHCVKtaaV+WlAN36mpT4hcRpwbf3fY56ar2oIXzsBpOAiIRHAdY0OlQ==}
engines: {node: '>=0.10.0'}
@@ -5814,6 +5753,10 @@ packages:
resolve-pkg-maps@1.0.0:
resolution: {integrity: sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==}
+ restore-cursor@4.0.0:
+ resolution: {integrity: sha512-I9fPXU9geO9bHOt9pHHOhOkYerIMsmVaWB0rA2AI9ERh/+x/i7MV5HKBNrg+ljO5eoPVgCcnFuRjJ9uH6I/3eg==}
+ engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+
restore-cursor@5.1.0:
resolution: {integrity: sha512-oMA2dcrw6u0YfxJQXm342bFKX/E4sG9rbTzO9ptUcR/e8A33cHuvStiYOwH7fszkZlZ1z/ta9AAoPk2F4qIOHA==}
engines: {node: '>=18'}
@@ -5856,9 +5799,6 @@ packages:
engines: {node: '>=10'}
hasBin: true
- set-cookie-parser@2.7.2:
- resolution: {integrity: sha512-oeM1lpU/UvhTxw+g3cIfxXHyJRc/uidd3yK1P242gzHds0udQBYzs3y8j4gCCW+ZJ7ad0yctld8RYO+bdurlvw==}
-
set-value@4.1.0:
resolution: {integrity: sha512-zTEg4HL0RwVrqcWs3ztF+x1vkxfm0lP+MQQFPiMJTKVceBwEV0A569Ou8l9IYQG8jOZdMVI1hGsc0tmeD2o/Lw==}
engines: {node: '>=11.0'}
@@ -5884,6 +5824,9 @@ packages:
siginfo@2.0.0:
resolution: {integrity: sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g==}
+ signal-exit@3.0.7:
+ resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==}
+
signal-exit@4.1.0:
resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==}
engines: {node: '>=14'}
@@ -5910,6 +5853,10 @@ packages:
resolution: {integrity: sha512-stxByr12oeeOyY2BlviTNQlYV5xOj47GirPr4yA1hE9JCtxfQN0+tVbkxwCtYDQWhEKWFHsEK48ORg5jrouCAg==}
engines: {node: '>=20'}
+ slice-ansi@9.0.0:
+ resolution: {integrity: sha512-SO/3iYL5S3W57LLEniscOGPZgOqZUPCx6d3dB+52B80yJ0XstzsC/eV8gnA4tM3MHDrKz+OCFSLNjswdSC+/bA==}
+ engines: {node: '>=22'}
+
smol-toml@1.7.0:
resolution: {integrity: sha512-aqVvWoyO21L23mb+drl4RmMXbf6N7FdHjAhTRA9ZBL7apWBgfWC16KjrASI+1p9GAroljyMHj6fK67i0UiTNvQ==}
engines: {node: '>= 18'}
@@ -5931,6 +5878,10 @@ packages:
sponge-case@2.0.3:
resolution: {integrity: sha512-i4h9ZGRfxV6Xw3mpZSFOfbXjf0cQcYmssGWutgNIfFZ2VM+YIWfD71N/kjjwK6X/AAHzBr+rciEcn/L34S8TGw==}
+ stack-utils@2.0.6:
+ resolution: {integrity: sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==}
+ engines: {node: '>=10'}
+
stackback@0.0.2:
resolution: {integrity: sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==}
@@ -5952,6 +5903,10 @@ packages:
resolution: {integrity: sha512-IIaP0g3iy9Cyy18w3M9YcaDudujEAVHKt3a3QJg1+sr/oX96TbaGUubG0hJyCjCBThFH+tFpcIyoUHUn1ogaLA==}
engines: {node: '>=20'}
+ string-width@8.2.2:
+ resolution: {integrity: sha512-GaPUh5gfdrYzqeVNZvUfT23vYYxXzKYidUcnMtJg/3rxRV63EFZy3k6xfKlmfeJD0176lnUV/Usr3XcwSvFzpg==}
+ engines: {node: '>=20'}
+
stringify-entities@4.0.4:
resolution: {integrity: sha512-IwfBptatlO+QCJUo19AqvrPNqlVMpW9YEL2LIVY+Rpv2qsjCGxaDLNRgeGsQWJhfItebuJhsGSLjaBbNSQ+ieg==}
@@ -6032,6 +5987,10 @@ packages:
resolution: {integrity: sha512-uxc/zpqFg6x7C8vOE7lh6Lbda8eEL9zmVm/PLeTPBRhh1xCgdWaQ+J1CUieGpIfm2HdtsUpRv+HshiasBMcc6A==}
engines: {node: '>=6'}
+ terminal-size@4.0.1:
+ resolution: {integrity: sha512-avMLDQpUI9I5XFrklECw1ZEUPJhqzcwSWsyyI8blhRLT+8N1jLJWLWWYQpB2q2xthq8xDvjZPISVh53T/+CLYQ==}
+ engines: {node: '>=18'}
+
timeout-signal@2.0.0:
resolution: {integrity: sha512-YBGpG4bWsHoPvofT6y/5iqulfXIiIErl5B0LdtHT1mGXDFTAhhRrbUpTvBgYbovr+3cKblya2WAOcpoy90XguA==}
engines: {node: '>=16'}
@@ -6112,8 +6071,8 @@ packages:
resolution: {integrity: sha512-TeTSQ6H5YHvpqVwBRcnLDCBnDOHWYu7IvGbHT6N8AOymcr9PJGjc1GTtiWZTYg0NCgYwvnYWEkVChQAr9bjfwA==}
engines: {node: '>=16'}
- type-fest@5.7.0:
- resolution: {integrity: sha512-1URUxUqfHFM1c+zfSPsa3gnkO7Aq21qyH75SIduNYz4SzY964rn1X2vCMQaHSHhktiw+0kPa2iyb6PUpXqB6Vg==}
+ type-fest@5.8.0:
+ resolution: {integrity: sha512-YGYEVz3Fm5iy/AybuA0oyNFq7H4CgQNfRp/qfe8nurE1kuCeNm3/vfm9X4Mtl+qLyaKJUh5xrFZwogr41SMjYA==}
engines: {node: '>=20'}
typescript@5.9.3:
@@ -6121,11 +6080,6 @@ packages:
engines: {node: '>=14.17'}
hasBin: true
- typescript@6.0.3:
- resolution: {integrity: sha512-y2TvuxSZPDyQakkFRPZHKFm+KKVqIisdg9/CZwm9ftvKXLP8NRWj38/ODjNbr43SsoXqNuAisEf1GdCxqWcdBw==}
- engines: {node: '>=14.17'}
- hasBin: true
-
uc.micro@2.1.0:
resolution: {integrity: sha512-ARDJmphmdvUk6Glw7y9DQ2bFkKBHwQHLi2lsaH6PPmz/Ka9sFOBsBluozhDltWmnv9u/cF6Rt87znRTPV+yp/A==}
@@ -6406,6 +6360,10 @@ packages:
engines: {node: '>=8'}
hasBin: true
+ widest-line@6.0.0:
+ resolution: {integrity: sha512-U89AsyEeAsyoF0zVJBkG9zBgekjgjK7yk9sje3F4IQpXBJ10TF6ByLlIfjMhcmHMJgHZI4KHt4rdNfktzxIAMA==}
+ engines: {node: '>=20'}
+
word-wrap@1.2.5:
resolution: {integrity: sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==}
engines: {node: '>=0.10.0'}
@@ -6430,6 +6388,18 @@ packages:
utf-8-validate:
optional: true
+ ws@8.21.1:
+ resolution: {integrity: sha512-+0NTnW77fFN/DjQi6k/Sq/Yvk4Sgajw7urW8V+asjXnRgDs9gyGkdb7EzgfhA4goXsRIZKE28fzIXBHEzhuiWw==}
+ 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
+
y18n@5.0.8:
resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==}
engines: {node: '>=10'}
@@ -6473,6 +6443,9 @@ packages:
resolution: {integrity: sha512-CzhO+pFNo8ajLM2d2IW/R93ipy99LWjtwblvC1RsoSUMZgyLbYFr221TnSNT7GjGdYui6P459mw9JH/g/zW2ug==}
engines: {node: '>=18'}
+ yoga-layout@3.2.1:
+ resolution: {integrity: sha512-0LPOt3AxKqMdFBZA3HBAt/t/8vIKq7VaQYbuA8WxCgung+p9TVyKRYdpvCb80HcdTN2NkbIKbhNwKUfm3tQywQ==}
+
zen-observable-ts@1.2.5:
resolution: {integrity: sha512-QZWQekv6iB72Naeake9hS1KxHlotfRpe+WGNbNx5/ta+R3DNjVO2bswf63gXlWDcs+EMd7XY8HfVQyP1X6T4Zg==}
@@ -6536,14 +6509,19 @@ snapshots:
graphql: 16.14.2
typescript: 5.9.3
- '@apm-js-collab/code-transformer-bundler-plugins@0.5.0':
+ '@alcalzone/ansi-tokenize@0.3.0':
dependencies:
- '@apm-js-collab/code-transformer': 0.15.0
- es-module-lexer: 2.1.0
+ ansi-styles: 6.2.3
+ is-fullwidth-code-point: 5.1.0
+
+ '@apm-js-collab/code-transformer-bundler-plugins@0.7.1':
+ dependencies:
+ '@apm-js-collab/code-transformer': 0.18.1
+ es-module-lexer: 2.3.1
magic-string: 0.30.21
module-details-from-path: 1.0.4
- '@apm-js-collab/code-transformer@0.15.0':
+ '@apm-js-collab/code-transformer@0.18.1':
dependencies:
'@types/estree': 1.0.9
astring: 1.9.0
@@ -6552,9 +6530,9 @@ snapshots:
semifies: 1.0.0
source-map: 0.6.1
- '@apm-js-collab/tracing-hooks@0.10.0':
+ '@apm-js-collab/tracing-hooks@0.13.0':
dependencies:
- '@apm-js-collab/code-transformer': 0.15.0
+ '@apm-js-collab/code-transformer': 0.18.1
debug: 4.4.3(supports-color@10.2.2)
module-details-from-path: 1.0.4
transitivePeerDependencies:
@@ -6951,12 +6929,6 @@ snapshots:
'@dagrejs/graphlib@2.2.4': {}
- '@emnapi/core@1.10.0':
- dependencies:
- '@emnapi/wasi-threads': 1.2.1
- tslib: 2.8.1
- optional: true
-
'@emnapi/core@1.11.0':
dependencies:
'@emnapi/wasi-threads': 1.2.2
@@ -6969,8 +6941,9 @@ snapshots:
tslib: 2.8.1
optional: true
- '@emnapi/runtime@1.10.0':
+ '@emnapi/core@1.11.2':
dependencies:
+ '@emnapi/wasi-threads': 1.2.2
tslib: 2.8.1
optional: true
@@ -6984,7 +6957,7 @@ snapshots:
tslib: 2.8.1
optional: true
- '@emnapi/wasi-threads@1.2.1':
+ '@emnapi/runtime@1.11.2':
dependencies:
tslib: 2.8.1
optional: true
@@ -7089,7 +7062,7 @@ snapshots:
'@esbuild/win32-x64@0.28.0':
optional: true
- '@eslint-community/eslint-utils@4.9.1(eslint@10.4.1(jiti@2.7.0))':
+ '@eslint-community/eslint-utils@4.10.1(eslint@10.4.1(jiti@2.7.0))':
dependencies:
eslint: 10.4.1(jiti@2.7.0)
eslint-visitor-keys: 3.4.3
@@ -7916,13 +7889,6 @@ snapshots:
'@n1ru4l/push-pull-async-iterable-iterator@3.2.0': {}
- '@napi-rs/wasm-runtime@1.1.6(@emnapi/core@1.10.0)(@emnapi/runtime@1.10.0)':
- dependencies:
- '@emnapi/core': 1.10.0
- '@emnapi/runtime': 1.10.0
- '@tybys/wasm-util': 0.10.3
- optional: true
-
'@napi-rs/wasm-runtime@1.1.6(@emnapi/core@1.11.0)(@emnapi/runtime@1.11.0)':
dependencies:
'@emnapi/core': 1.11.0
@@ -7937,6 +7903,13 @@ snapshots:
'@tybys/wasm-util': 0.10.3
optional: true
+ '@napi-rs/wasm-runtime@1.1.6(@emnapi/core@1.11.2)(@emnapi/runtime@1.11.2)':
+ dependencies:
+ '@emnapi/core': 1.11.2
+ '@emnapi/runtime': 1.11.2
+ '@tybys/wasm-util': 0.10.3
+ optional: true
+
'@nodelib/fs.scandir@2.1.5':
dependencies:
'@nodelib/fs.stat': 2.0.5
@@ -7949,197 +7922,143 @@ snapshots:
'@nodelib/fs.scandir': 2.1.5
fastq: 1.20.1
- '@opentelemetry/api-logs@0.214.0':
+ '@opentelemetry/api-logs@0.220.0':
dependencies:
'@opentelemetry/api': 1.9.1
'@opentelemetry/api@1.9.1': {}
- '@opentelemetry/core@2.8.0(@opentelemetry/api@1.9.1)':
+ '@opentelemetry/core@2.10.0(@opentelemetry/api@1.9.1)':
dependencies:
'@opentelemetry/api': 1.9.1
- '@opentelemetry/semantic-conventions': 1.41.1
+ '@opentelemetry/semantic-conventions': 1.43.0
- '@opentelemetry/instrumentation@0.214.0(@opentelemetry/api@1.9.1)':
+ '@opentelemetry/instrumentation@0.220.0(@opentelemetry/api@1.9.1)':
dependencies:
'@opentelemetry/api': 1.9.1
- '@opentelemetry/api-logs': 0.214.0
- import-in-the-middle: 3.2.0
+ '@opentelemetry/api-logs': 0.220.0
+ import-in-the-middle: 3.3.2
require-in-the-middle: 8.0.1
transitivePeerDependencies:
- supports-color
- '@opentelemetry/resources@2.8.0(@opentelemetry/api@1.9.1)':
+ '@opentelemetry/resources@2.10.0(@opentelemetry/api@1.9.1)':
dependencies:
'@opentelemetry/api': 1.9.1
- '@opentelemetry/core': 2.8.0(@opentelemetry/api@1.9.1)
- '@opentelemetry/semantic-conventions': 1.41.1
+ '@opentelemetry/core': 2.10.0(@opentelemetry/api@1.9.1)
+ '@opentelemetry/semantic-conventions': 1.43.0
- '@opentelemetry/sdk-trace-base@2.8.0(@opentelemetry/api@1.9.1)':
+ '@opentelemetry/sdk-trace-base@2.10.0(@opentelemetry/api@1.9.1)':
dependencies:
'@opentelemetry/api': 1.9.1
- '@opentelemetry/core': 2.8.0(@opentelemetry/api@1.9.1)
- '@opentelemetry/resources': 2.8.0(@opentelemetry/api@1.9.1)
- '@opentelemetry/semantic-conventions': 1.41.1
-
- '@opentelemetry/semantic-conventions@1.41.1': {}
+ '@opentelemetry/core': 2.10.0(@opentelemetry/api@1.9.1)
+ '@opentelemetry/resources': 2.10.0(@opentelemetry/api@1.9.1)
+ '@opentelemetry/sdk-trace': 2.10.0(@opentelemetry/api@1.9.1)
+ '@opentelemetry/semantic-conventions': 1.43.0
- '@oxc-parser/binding-android-arm-eabi@0.132.0':
- optional: true
+ '@opentelemetry/sdk-trace@2.10.0(@opentelemetry/api@1.9.1)':
+ dependencies:
+ '@opentelemetry/api': 1.9.1
+ '@opentelemetry/core': 2.10.0(@opentelemetry/api@1.9.1)
+ '@opentelemetry/resources': 2.10.0(@opentelemetry/api@1.9.1)
+ '@opentelemetry/semantic-conventions': 1.43.0
- '@oxc-parser/binding-android-arm-eabi@0.135.0':
- optional: true
+ '@opentelemetry/semantic-conventions@1.43.0': {}
'@oxc-parser/binding-android-arm-eabi@0.137.0':
optional: true
- '@oxc-parser/binding-android-arm64@0.132.0':
- optional: true
-
- '@oxc-parser/binding-android-arm64@0.135.0':
+ '@oxc-parser/binding-android-arm-eabi@0.141.0':
optional: true
'@oxc-parser/binding-android-arm64@0.137.0':
optional: true
- '@oxc-parser/binding-darwin-arm64@0.132.0':
- optional: true
-
- '@oxc-parser/binding-darwin-arm64@0.135.0':
+ '@oxc-parser/binding-android-arm64@0.141.0':
optional: true
'@oxc-parser/binding-darwin-arm64@0.137.0':
optional: true
- '@oxc-parser/binding-darwin-x64@0.132.0':
- optional: true
-
- '@oxc-parser/binding-darwin-x64@0.135.0':
+ '@oxc-parser/binding-darwin-arm64@0.141.0':
optional: true
'@oxc-parser/binding-darwin-x64@0.137.0':
optional: true
- '@oxc-parser/binding-freebsd-x64@0.132.0':
- optional: true
-
- '@oxc-parser/binding-freebsd-x64@0.135.0':
+ '@oxc-parser/binding-darwin-x64@0.141.0':
optional: true
'@oxc-parser/binding-freebsd-x64@0.137.0':
optional: true
- '@oxc-parser/binding-linux-arm-gnueabihf@0.132.0':
- optional: true
-
- '@oxc-parser/binding-linux-arm-gnueabihf@0.135.0':
+ '@oxc-parser/binding-freebsd-x64@0.141.0':
optional: true
'@oxc-parser/binding-linux-arm-gnueabihf@0.137.0':
optional: true
- '@oxc-parser/binding-linux-arm-musleabihf@0.132.0':
- optional: true
-
- '@oxc-parser/binding-linux-arm-musleabihf@0.135.0':
+ '@oxc-parser/binding-linux-arm-gnueabihf@0.141.0':
optional: true
'@oxc-parser/binding-linux-arm-musleabihf@0.137.0':
optional: true
- '@oxc-parser/binding-linux-arm64-gnu@0.132.0':
- optional: true
-
- '@oxc-parser/binding-linux-arm64-gnu@0.135.0':
+ '@oxc-parser/binding-linux-arm-musleabihf@0.141.0':
optional: true
'@oxc-parser/binding-linux-arm64-gnu@0.137.0':
optional: true
- '@oxc-parser/binding-linux-arm64-musl@0.132.0':
- optional: true
-
- '@oxc-parser/binding-linux-arm64-musl@0.135.0':
+ '@oxc-parser/binding-linux-arm64-gnu@0.141.0':
optional: true
'@oxc-parser/binding-linux-arm64-musl@0.137.0':
optional: true
- '@oxc-parser/binding-linux-ppc64-gnu@0.132.0':
- optional: true
-
- '@oxc-parser/binding-linux-ppc64-gnu@0.135.0':
+ '@oxc-parser/binding-linux-arm64-musl@0.141.0':
optional: true
'@oxc-parser/binding-linux-ppc64-gnu@0.137.0':
optional: true
- '@oxc-parser/binding-linux-riscv64-gnu@0.132.0':
- optional: true
-
- '@oxc-parser/binding-linux-riscv64-gnu@0.135.0':
+ '@oxc-parser/binding-linux-ppc64-gnu@0.141.0':
optional: true
'@oxc-parser/binding-linux-riscv64-gnu@0.137.0':
optional: true
- '@oxc-parser/binding-linux-riscv64-musl@0.132.0':
- optional: true
-
- '@oxc-parser/binding-linux-riscv64-musl@0.135.0':
+ '@oxc-parser/binding-linux-riscv64-gnu@0.141.0':
optional: true
'@oxc-parser/binding-linux-riscv64-musl@0.137.0':
optional: true
- '@oxc-parser/binding-linux-s390x-gnu@0.132.0':
- optional: true
-
- '@oxc-parser/binding-linux-s390x-gnu@0.135.0':
+ '@oxc-parser/binding-linux-riscv64-musl@0.141.0':
optional: true
'@oxc-parser/binding-linux-s390x-gnu@0.137.0':
optional: true
- '@oxc-parser/binding-linux-x64-gnu@0.132.0':
- optional: true
-
- '@oxc-parser/binding-linux-x64-gnu@0.135.0':
+ '@oxc-parser/binding-linux-s390x-gnu@0.141.0':
optional: true
'@oxc-parser/binding-linux-x64-gnu@0.137.0':
optional: true
- '@oxc-parser/binding-linux-x64-musl@0.132.0':
- optional: true
-
- '@oxc-parser/binding-linux-x64-musl@0.135.0':
+ '@oxc-parser/binding-linux-x64-gnu@0.141.0':
optional: true
'@oxc-parser/binding-linux-x64-musl@0.137.0':
optional: true
- '@oxc-parser/binding-openharmony-arm64@0.132.0':
- optional: true
-
- '@oxc-parser/binding-openharmony-arm64@0.135.0':
+ '@oxc-parser/binding-linux-x64-musl@0.141.0':
optional: true
'@oxc-parser/binding-openharmony-arm64@0.137.0':
optional: true
- '@oxc-parser/binding-wasm32-wasi@0.132.0':
- dependencies:
- '@emnapi/core': 1.10.0
- '@emnapi/runtime': 1.10.0
- '@napi-rs/wasm-runtime': 1.1.6(@emnapi/core@1.10.0)(@emnapi/runtime@1.10.0)
- optional: true
-
- '@oxc-parser/binding-wasm32-wasi@0.135.0':
- dependencies:
- '@emnapi/core': 1.10.0
- '@emnapi/runtime': 1.10.0
- '@napi-rs/wasm-runtime': 1.1.6(@emnapi/core@1.10.0)(@emnapi/runtime@1.10.0)
+ '@oxc-parser/binding-openharmony-arm64@0.141.0':
optional: true
'@oxc-parser/binding-wasm32-wasi@0.137.0':
@@ -8149,212 +8068,212 @@ snapshots:
'@napi-rs/wasm-runtime': 1.1.6(@emnapi/core@1.11.1)(@emnapi/runtime@1.11.1)
optional: true
- '@oxc-parser/binding-win32-arm64-msvc@0.132.0':
- optional: true
-
- '@oxc-parser/binding-win32-arm64-msvc@0.135.0':
+ '@oxc-parser/binding-wasm32-wasi@0.141.0':
+ dependencies:
+ '@emnapi/core': 1.11.2
+ '@emnapi/runtime': 1.11.2
+ '@napi-rs/wasm-runtime': 1.1.6(@emnapi/core@1.11.2)(@emnapi/runtime@1.11.2)
optional: true
'@oxc-parser/binding-win32-arm64-msvc@0.137.0':
optional: true
- '@oxc-parser/binding-win32-ia32-msvc@0.132.0':
- optional: true
-
- '@oxc-parser/binding-win32-ia32-msvc@0.135.0':
+ '@oxc-parser/binding-win32-arm64-msvc@0.141.0':
optional: true
'@oxc-parser/binding-win32-ia32-msvc@0.137.0':
optional: true
- '@oxc-parser/binding-win32-x64-msvc@0.132.0':
- optional: true
-
- '@oxc-parser/binding-win32-x64-msvc@0.135.0':
+ '@oxc-parser/binding-win32-ia32-msvc@0.141.0':
optional: true
'@oxc-parser/binding-win32-x64-msvc@0.137.0':
optional: true
- '@oxc-project/types@0.132.0': {}
-
- '@oxc-project/types@0.135.0': {}
+ '@oxc-parser/binding-win32-x64-msvc@0.141.0':
+ optional: true
'@oxc-project/types@0.137.0': {}
+ '@oxc-project/types@0.141.0': {}
+
'@oxc-resolver/binding-android-arm-eabi@11.21.3':
optional: true
- '@oxc-resolver/binding-android-arm64@11.21.3':
+ '@oxc-resolver/binding-android-arm-eabi@11.24.2':
optional: true
- '@oxc-resolver/binding-darwin-arm64@11.21.3':
+ '@oxc-resolver/binding-android-arm64@11.21.3':
optional: true
- '@oxc-resolver/binding-darwin-x64@11.21.3':
+ '@oxc-resolver/binding-android-arm64@11.24.2':
optional: true
- '@oxc-resolver/binding-freebsd-x64@11.21.3':
+ '@oxc-resolver/binding-darwin-arm64@11.21.3':
optional: true
- '@oxc-resolver/binding-linux-arm-gnueabihf@11.21.3':
+ '@oxc-resolver/binding-darwin-arm64@11.24.2':
optional: true
- '@oxc-resolver/binding-linux-arm-musleabihf@11.21.3':
+ '@oxc-resolver/binding-darwin-x64@11.21.3':
optional: true
- '@oxc-resolver/binding-linux-arm64-gnu@11.21.3':
+ '@oxc-resolver/binding-darwin-x64@11.24.2':
optional: true
- '@oxc-resolver/binding-linux-arm64-musl@11.21.3':
+ '@oxc-resolver/binding-freebsd-x64@11.21.3':
optional: true
- '@oxc-resolver/binding-linux-ppc64-gnu@11.21.3':
+ '@oxc-resolver/binding-freebsd-x64@11.24.2':
optional: true
- '@oxc-resolver/binding-linux-riscv64-gnu@11.21.3':
+ '@oxc-resolver/binding-linux-arm-gnueabihf@11.21.3':
optional: true
- '@oxc-resolver/binding-linux-riscv64-musl@11.21.3':
+ '@oxc-resolver/binding-linux-arm-gnueabihf@11.24.2':
optional: true
- '@oxc-resolver/binding-linux-s390x-gnu@11.21.3':
+ '@oxc-resolver/binding-linux-arm-musleabihf@11.21.3':
optional: true
- '@oxc-resolver/binding-linux-x64-gnu@11.21.3':
+ '@oxc-resolver/binding-linux-arm-musleabihf@11.24.2':
optional: true
- '@oxc-resolver/binding-linux-x64-musl@11.21.3':
+ '@oxc-resolver/binding-linux-arm64-gnu@11.21.3':
optional: true
- '@oxc-resolver/binding-openharmony-arm64@11.21.3':
+ '@oxc-resolver/binding-linux-arm64-gnu@11.24.2':
optional: true
- '@oxc-resolver/binding-wasm32-wasi@11.21.3':
- dependencies:
- '@emnapi/core': 1.11.0
- '@emnapi/runtime': 1.11.0
- '@napi-rs/wasm-runtime': 1.1.6(@emnapi/core@1.11.0)(@emnapi/runtime@1.11.0)
+ '@oxc-resolver/binding-linux-arm64-musl@11.21.3':
optional: true
- '@oxc-resolver/binding-win32-arm64-msvc@11.21.3':
+ '@oxc-resolver/binding-linux-arm64-musl@11.24.2':
optional: true
- '@oxc-resolver/binding-win32-x64-msvc@11.21.3':
+ '@oxc-resolver/binding-linux-ppc64-gnu@11.21.3':
optional: true
- '@oxlint/binding-android-arm-eabi@1.66.0':
+ '@oxc-resolver/binding-linux-ppc64-gnu@11.24.2':
optional: true
- '@oxlint/binding-android-arm-eabi@1.68.0':
+ '@oxc-resolver/binding-linux-riscv64-gnu@11.21.3':
optional: true
- '@oxlint/binding-android-arm64@1.66.0':
+ '@oxc-resolver/binding-linux-riscv64-gnu@11.24.2':
optional: true
- '@oxlint/binding-android-arm64@1.68.0':
+ '@oxc-resolver/binding-linux-riscv64-musl@11.21.3':
optional: true
- '@oxlint/binding-darwin-arm64@1.66.0':
+ '@oxc-resolver/binding-linux-riscv64-musl@11.24.2':
optional: true
- '@oxlint/binding-darwin-arm64@1.68.0':
+ '@oxc-resolver/binding-linux-s390x-gnu@11.21.3':
optional: true
- '@oxlint/binding-darwin-x64@1.66.0':
+ '@oxc-resolver/binding-linux-s390x-gnu@11.24.2':
optional: true
- '@oxlint/binding-darwin-x64@1.68.0':
+ '@oxc-resolver/binding-linux-x64-gnu@11.21.3':
optional: true
- '@oxlint/binding-freebsd-x64@1.66.0':
+ '@oxc-resolver/binding-linux-x64-gnu@11.24.2':
optional: true
- '@oxlint/binding-freebsd-x64@1.68.0':
+ '@oxc-resolver/binding-linux-x64-musl@11.21.3':
optional: true
- '@oxlint/binding-linux-arm-gnueabihf@1.66.0':
+ '@oxc-resolver/binding-linux-x64-musl@11.24.2':
optional: true
- '@oxlint/binding-linux-arm-gnueabihf@1.68.0':
+ '@oxc-resolver/binding-openharmony-arm64@11.21.3':
optional: true
- '@oxlint/binding-linux-arm-musleabihf@1.66.0':
+ '@oxc-resolver/binding-openharmony-arm64@11.24.2':
optional: true
- '@oxlint/binding-linux-arm-musleabihf@1.68.0':
+ '@oxc-resolver/binding-wasm32-wasi@11.21.3':
+ dependencies:
+ '@emnapi/core': 1.11.0
+ '@emnapi/runtime': 1.11.0
+ '@napi-rs/wasm-runtime': 1.1.6(@emnapi/core@1.11.0)(@emnapi/runtime@1.11.0)
optional: true
- '@oxlint/binding-linux-arm64-gnu@1.66.0':
+ '@oxc-resolver/binding-wasm32-wasi@11.24.2':
+ dependencies:
+ '@emnapi/core': 1.11.2
+ '@emnapi/runtime': 1.11.2
+ '@napi-rs/wasm-runtime': 1.1.6(@emnapi/core@1.11.2)(@emnapi/runtime@1.11.2)
optional: true
- '@oxlint/binding-linux-arm64-gnu@1.68.0':
+ '@oxc-resolver/binding-win32-arm64-msvc@11.21.3':
optional: true
- '@oxlint/binding-linux-arm64-musl@1.66.0':
+ '@oxc-resolver/binding-win32-arm64-msvc@11.24.2':
optional: true
- '@oxlint/binding-linux-arm64-musl@1.68.0':
+ '@oxc-resolver/binding-win32-x64-msvc@11.21.3':
optional: true
- '@oxlint/binding-linux-ppc64-gnu@1.66.0':
+ '@oxc-resolver/binding-win32-x64-msvc@11.24.2':
optional: true
- '@oxlint/binding-linux-ppc64-gnu@1.68.0':
+ '@oxlint/binding-android-arm-eabi@1.74.0':
optional: true
- '@oxlint/binding-linux-riscv64-gnu@1.66.0':
+ '@oxlint/binding-android-arm64@1.74.0':
optional: true
- '@oxlint/binding-linux-riscv64-gnu@1.68.0':
+ '@oxlint/binding-darwin-arm64@1.74.0':
optional: true
- '@oxlint/binding-linux-riscv64-musl@1.66.0':
+ '@oxlint/binding-darwin-x64@1.74.0':
optional: true
- '@oxlint/binding-linux-riscv64-musl@1.68.0':
+ '@oxlint/binding-freebsd-x64@1.74.0':
optional: true
- '@oxlint/binding-linux-s390x-gnu@1.66.0':
+ '@oxlint/binding-linux-arm-gnueabihf@1.74.0':
optional: true
- '@oxlint/binding-linux-s390x-gnu@1.68.0':
+ '@oxlint/binding-linux-arm-musleabihf@1.74.0':
optional: true
- '@oxlint/binding-linux-x64-gnu@1.66.0':
+ '@oxlint/binding-linux-arm64-gnu@1.74.0':
optional: true
- '@oxlint/binding-linux-x64-gnu@1.68.0':
+ '@oxlint/binding-linux-arm64-musl@1.74.0':
optional: true
- '@oxlint/binding-linux-x64-musl@1.66.0':
+ '@oxlint/binding-linux-ppc64-gnu@1.74.0':
optional: true
- '@oxlint/binding-linux-x64-musl@1.68.0':
+ '@oxlint/binding-linux-riscv64-gnu@1.74.0':
optional: true
- '@oxlint/binding-openharmony-arm64@1.66.0':
+ '@oxlint/binding-linux-riscv64-musl@1.74.0':
optional: true
- '@oxlint/binding-openharmony-arm64@1.68.0':
+ '@oxlint/binding-linux-s390x-gnu@1.74.0':
optional: true
- '@oxlint/binding-win32-arm64-msvc@1.66.0':
+ '@oxlint/binding-linux-x64-gnu@1.74.0':
optional: true
- '@oxlint/binding-win32-arm64-msvc@1.68.0':
+ '@oxlint/binding-linux-x64-musl@1.74.0':
optional: true
- '@oxlint/binding-win32-ia32-msvc@1.66.0':
+ '@oxlint/binding-openharmony-arm64@1.74.0':
optional: true
- '@oxlint/binding-win32-ia32-msvc@1.68.0':
+ '@oxlint/binding-win32-arm64-msvc@1.74.0':
optional: true
- '@oxlint/binding-win32-x64-msvc@1.66.0':
+ '@oxlint/binding-win32-ia32-msvc@1.74.0':
optional: true
- '@oxlint/binding-win32-x64-msvc@1.68.0':
+ '@oxlint/binding-win32-x64-msvc@1.74.0':
optional: true
'@phenomnomnominal/tsquery@6.2.0(typescript@5.9.3)':
@@ -8952,13 +8871,13 @@ snapshots:
react-aria: 3.48.0(react-dom@19.2.7(react@19.2.7))(react@19.2.7)
react-dom: 19.2.7(react@19.2.7)
- '@react-grab/cli@0.1.47':
+ '@react-grab/cli@0.1.50':
dependencies:
agent-install: 0.0.6
commander: 14.0.3
- ignore: 7.0.5
+ ignore: 7.0.6
ora: 9.4.1
- package-manager-detector: 1.6.0
+ package-manager-detector: 1.8.0
picocolors: 1.1.1
prompts: 2.4.2
tinyexec: 1.2.4
@@ -9078,57 +8997,60 @@ snapshots:
estree-walker: 2.0.2
picomatch: 4.0.4
- '@sentry/conventions@0.12.0': {}
+ '@sentry/conventions@0.16.0': {}
- '@sentry/core@10.62.0': {}
+ '@sentry/core@10.68.0':
+ dependencies:
+ '@sentry/conventions': 0.16.0
- '@sentry/node-core@10.62.0(@opentelemetry/api@1.9.1)(@opentelemetry/core@2.8.0(@opentelemetry/api@1.9.1))(@opentelemetry/instrumentation@0.214.0(@opentelemetry/api@1.9.1))(@opentelemetry/sdk-trace-base@2.8.0(@opentelemetry/api@1.9.1))':
+ '@sentry/node-core@10.68.0(@opentelemetry/api@1.9.1)(@opentelemetry/core@2.10.0(@opentelemetry/api@1.9.1))(@opentelemetry/instrumentation@0.220.0(@opentelemetry/api@1.9.1))(@opentelemetry/sdk-trace-base@2.10.0(@opentelemetry/api@1.9.1))':
dependencies:
- '@sentry/conventions': 0.12.0
- '@sentry/core': 10.62.0
- '@sentry/opentelemetry': 10.62.0(@opentelemetry/api@1.9.1)(@opentelemetry/core@2.8.0(@opentelemetry/api@1.9.1))(@opentelemetry/sdk-trace-base@2.8.0(@opentelemetry/api@1.9.1))
- import-in-the-middle: 3.2.0
+ '@sentry/conventions': 0.16.0
+ '@sentry/core': 10.68.0
+ '@sentry/opentelemetry': 10.68.0(@opentelemetry/api@1.9.1)(@opentelemetry/core@2.10.0(@opentelemetry/api@1.9.1))(@opentelemetry/sdk-trace-base@2.10.0(@opentelemetry/api@1.9.1))
+ import-in-the-middle: 3.3.2
optionalDependencies:
'@opentelemetry/api': 1.9.1
- '@opentelemetry/core': 2.8.0(@opentelemetry/api@1.9.1)
- '@opentelemetry/instrumentation': 0.214.0(@opentelemetry/api@1.9.1)
- '@opentelemetry/sdk-trace-base': 2.8.0(@opentelemetry/api@1.9.1)
+ '@opentelemetry/core': 2.10.0(@opentelemetry/api@1.9.1)
+ '@opentelemetry/instrumentation': 0.220.0(@opentelemetry/api@1.9.1)
+ '@opentelemetry/sdk-trace-base': 2.10.0(@opentelemetry/api@1.9.1)
- '@sentry/node@10.62.0(@opentelemetry/core@2.8.0(@opentelemetry/api@1.9.1))':
+ '@sentry/node@10.68.0(@opentelemetry/core@2.10.0(@opentelemetry/api@1.9.1))':
dependencies:
'@opentelemetry/api': 1.9.1
- '@opentelemetry/instrumentation': 0.214.0(@opentelemetry/api@1.9.1)
- '@opentelemetry/sdk-trace-base': 2.8.0(@opentelemetry/api@1.9.1)
- '@opentelemetry/semantic-conventions': 1.41.1
- '@sentry/core': 10.62.0
- '@sentry/node-core': 10.62.0(@opentelemetry/api@1.9.1)(@opentelemetry/core@2.8.0(@opentelemetry/api@1.9.1))(@opentelemetry/instrumentation@0.214.0(@opentelemetry/api@1.9.1))(@opentelemetry/sdk-trace-base@2.8.0(@opentelemetry/api@1.9.1))
- '@sentry/opentelemetry': 10.62.0(@opentelemetry/api@1.9.1)(@opentelemetry/core@2.8.0(@opentelemetry/api@1.9.1))(@opentelemetry/sdk-trace-base@2.8.0(@opentelemetry/api@1.9.1))
- '@sentry/server-utils': 10.62.0
- import-in-the-middle: 3.2.0
+ '@opentelemetry/instrumentation': 0.220.0(@opentelemetry/api@1.9.1)
+ '@opentelemetry/sdk-trace-base': 2.10.0(@opentelemetry/api@1.9.1)
+ '@sentry/conventions': 0.16.0
+ '@sentry/core': 10.68.0
+ '@sentry/node-core': 10.68.0(@opentelemetry/api@1.9.1)(@opentelemetry/core@2.10.0(@opentelemetry/api@1.9.1))(@opentelemetry/instrumentation@0.220.0(@opentelemetry/api@1.9.1))(@opentelemetry/sdk-trace-base@2.10.0(@opentelemetry/api@1.9.1))
+ '@sentry/opentelemetry': 10.68.0(@opentelemetry/api@1.9.1)(@opentelemetry/core@2.10.0(@opentelemetry/api@1.9.1))(@opentelemetry/sdk-trace-base@2.10.0(@opentelemetry/api@1.9.1))
+ '@sentry/server-utils': 10.68.0
+ import-in-the-middle: 3.3.2
transitivePeerDependencies:
- '@opentelemetry/core'
- '@opentelemetry/exporter-trace-otlp-http'
- supports-color
- '@sentry/opentelemetry@10.62.0(@opentelemetry/api@1.9.1)(@opentelemetry/core@2.8.0(@opentelemetry/api@1.9.1))(@opentelemetry/sdk-trace-base@2.8.0(@opentelemetry/api@1.9.1))':
+ '@sentry/opentelemetry@10.68.0(@opentelemetry/api@1.9.1)(@opentelemetry/core@2.10.0(@opentelemetry/api@1.9.1))(@opentelemetry/sdk-trace-base@2.10.0(@opentelemetry/api@1.9.1))':
dependencies:
'@opentelemetry/api': 1.9.1
- '@opentelemetry/core': 2.8.0(@opentelemetry/api@1.9.1)
- '@opentelemetry/sdk-trace-base': 2.8.0(@opentelemetry/api@1.9.1)
- '@sentry/conventions': 0.12.0
- '@sentry/core': 10.62.0
-
- '@sentry/server-utils@10.62.0':
- dependencies:
- '@apm-js-collab/code-transformer': 0.15.0
- '@apm-js-collab/code-transformer-bundler-plugins': 0.5.0
- '@apm-js-collab/tracing-hooks': 0.10.0
- '@sentry/conventions': 0.12.0
- '@sentry/core': 10.62.0
- magic-string: 0.30.21
+ '@opentelemetry/core': 2.10.0(@opentelemetry/api@1.9.1)
+ '@opentelemetry/sdk-trace-base': 2.10.0(@opentelemetry/api@1.9.1)
+ '@sentry/conventions': 0.16.0
+ '@sentry/core': 10.68.0
+
+ '@sentry/server-utils@10.68.0':
+ dependencies:
+ '@apm-js-collab/code-transformer-bundler-plugins': 0.7.1
+ '@apm-js-collab/tracing-hooks': 0.13.0
+ '@sentry/conventions': 0.16.0
+ '@sentry/core': 10.68.0
+ meriyah: 6.1.4
transitivePeerDependencies:
- supports-color
+ '@shaderfrog/glsl-parser@7.0.1': {}
+
'@simple-git/args-pathspec@1.0.3': {}
'@simple-git/argv-parser@1.1.1':
@@ -9455,7 +9377,7 @@ snapshots:
dependencies:
'@types/node': 26.0.1
- '@typescript-eslint/types@8.62.0': {}
+ '@typescript-eslint/types@8.65.0': {}
'@uiw/color-convert@2.10.3(@babel/runtime@7.29.7)':
dependencies:
@@ -9816,10 +9738,6 @@ snapshots:
d3-selection: 3.0.0
d3-zoom: 3.0.0
- acorn-import-attributes@1.9.5(acorn@8.17.0):
- dependencies:
- acorn: 8.17.0
-
acorn-jsx@5.3.2(acorn@8.17.0):
dependencies:
acorn: 8.17.0
@@ -9864,7 +9782,7 @@ snapshots:
ajv@8.20.0:
dependencies:
fast-deep-equal: 3.1.3
- fast-uri: 3.1.2
+ fast-uri: 3.1.4
json-schema-traverse: 1.0.0
require-from-string: 2.0.2
@@ -9942,6 +9860,10 @@ snapshots:
dependencies:
react: 19.2.7
+ bippy@0.6.1(react@19.2.7):
+ dependencies:
+ react: 19.2.7
+
brace-expansion@2.1.0:
dependencies:
balanced-match: 1.0.2
@@ -10026,10 +9948,18 @@ snapshots:
classnames@2.5.1: {}
+ cli-boxes@4.0.1: {}
+
+ cli-cursor@4.0.0:
+ dependencies:
+ restore-cursor: 4.0.0
+
cli-cursor@5.0.0:
dependencies:
restore-cursor: 5.1.0
+ cli-spinners@2.9.2: {}
+
cli-spinners@3.4.0: {}
cli-truncate@5.2.0:
@@ -10037,6 +9967,11 @@ snapshots:
slice-ansi: 8.0.0
string-width: 8.2.1
+ cli-truncate@6.1.1:
+ dependencies:
+ slice-ansi: 9.0.0
+ string-width: 8.2.2
+
cli-width@4.1.0: {}
client-only@0.0.1: {}
@@ -10081,6 +10016,10 @@ snapshots:
- '@types/react'
- '@types/react-dom'
+ code-excerpt@4.0.0:
+ dependencies:
+ convert-to-spaces: 2.0.1
+
color-convert@2.0.1:
dependencies:
color-name: 1.1.4
@@ -10111,7 +10050,7 @@ snapshots:
ajv-formats: 3.0.1(ajv@8.20.0)
atomically: 2.1.1
debounce-fn: 6.0.0
- dot-prop: 10.1.0
+ dot-prop: 10.2.0
env-paths: 3.0.0
json-schema-typed: 8.0.2
semver: 7.8.5
@@ -10121,7 +10060,9 @@ snapshots:
convert-source-map@2.0.0: {}
- cookie@1.1.1: {}
+ convert-to-spaces@2.0.1: {}
+
+ cookie-es@3.1.1: {}
core-js@3.49.0: {}
@@ -10264,14 +10205,14 @@ snapshots:
dequal@2.0.3: {}
- deslop-js@0.5.8:
+ deslop-js@0.9.2:
dependencies:
- '@oxc-project/types': 0.132.0
+ '@oxc-project/types': 0.141.0
fast-glob: 3.3.3
minimatch: 10.2.5
- oxc-parser: 0.132.0
- oxc-resolver: 11.21.3
- typescript: 6.0.3
+ oxc-parser: 0.141.0
+ oxc-resolver: 11.24.2
+ typescript: 5.9.3
detect-indent@7.0.2: {}
@@ -10302,9 +10243,9 @@ snapshots:
no-case: 3.0.4
tslib: 2.8.1
- dot-prop@10.1.0:
+ dot-prop@10.2.0:
dependencies:
- type-fest: 5.7.0
+ type-fest: 5.8.0
electron-to-chromium@1.5.341: {}
@@ -10329,8 +10270,12 @@ snapshots:
es-module-lexer@2.1.0: {}
+ es-module-lexer@2.3.1: {}
+
es-toolkit@1.49.0: {}
+ es-toolkit@1.50.0: {}
+
esbuild@0.28.0:
optionalDependencies:
'@esbuild/aix-ppc64': 0.28.0
@@ -10363,6 +10308,8 @@ snapshots:
escalade@3.2.0: {}
+ escape-string-regexp@2.0.0: {}
+
escape-string-regexp@4.0.0: {}
escape-string-regexp@5.0.0: {}
@@ -10391,7 +10338,7 @@ snapshots:
eslint@10.4.1(jiti@2.7.0):
dependencies:
- '@eslint-community/eslint-utils': 4.9.1(eslint@10.4.1(jiti@2.7.0))
+ '@eslint-community/eslint-utils': 4.10.1(eslint@10.4.1(jiti@2.7.0))
'@eslint-community/regexpp': 4.12.2
'@eslint/config-array': 0.23.5
'@eslint/config-helpers': 0.6.0
@@ -10484,7 +10431,7 @@ snapshots:
dependencies:
fast-string-truncated-width: 3.0.3
- fast-uri@3.1.2: {}
+ fast-uri@3.1.4: {}
fast-wrap-ansi@0.2.2:
dependencies:
@@ -10511,6 +10458,10 @@ snapshots:
node-domexception: 1.0.0
web-streams-polyfill: 3.3.3
+ figures@6.1.0:
+ dependencies:
+ is-unicode-supported: 2.1.0
+
file-entry-cache@8.0.0:
dependencies:
flat-cache: 4.0.1
@@ -10532,10 +10483,10 @@ snapshots:
flat-cache@4.0.1:
dependencies:
- flatted: 3.4.2
+ flatted: 3.4.3
keyv: 4.5.4
- flatted@3.4.2: {}
+ flatted@3.4.3: {}
format@0.2.2: {}
@@ -10785,7 +10736,7 @@ snapshots:
ignore@5.3.2: {}
- ignore@7.0.5: {}
+ ignore@7.0.6: {}
immer@10.2.0: {}
@@ -10800,15 +10751,16 @@ snapshots:
import-from@4.0.0: {}
- import-in-the-middle@3.2.0:
+ import-in-the-middle@3.3.2:
dependencies:
- acorn: 8.17.0
- acorn-import-attributes: 1.9.5(acorn@8.17.0)
cjs-module-lexer: 2.2.0
+ es-module-lexer: 2.3.1
module-details-from-path: 1.0.4
imurmurhash@0.1.4: {}
+ indent-string@5.0.0: {}
+
index-to-position@1.2.0: {}
infrahub-schema-visualizer@file:../packages/schema-visualizer(@babel/core@7.29.7)(@babel/template@7.29.7)(@types/react-dom@19.2.3(@types/react@19.2.17))(@types/react@19.2.17)(immer@11.1.8)(react-dom@19.2.7(react@19.2.7))(react@19.2.7):
@@ -10831,6 +10783,46 @@ snapshots:
- '@types/react-dom'
- immer
+ ink-spinner@5.0.0(ink@7.1.1(@types/react@19.2.17)(react@19.2.5))(react@19.2.5):
+ dependencies:
+ cli-spinners: 2.9.2
+ ink: 7.1.1(@types/react@19.2.17)(react@19.2.5)
+ react: 19.2.5
+
+ ink@7.1.1(@types/react@19.2.17)(react@19.2.5):
+ dependencies:
+ '@alcalzone/ansi-tokenize': 0.3.0
+ ansi-escapes: 7.3.0
+ ansi-styles: 6.2.3
+ auto-bind: 5.0.1
+ chalk: 5.6.2
+ cli-boxes: 4.0.1
+ cli-cursor: 4.0.0
+ cli-truncate: 6.1.1
+ code-excerpt: 4.0.0
+ es-toolkit: 1.50.0
+ indent-string: 5.0.0
+ is-in-ci: 2.0.0
+ patch-console: 2.0.0
+ react: 19.2.5
+ react-reconciler: 0.33.0(react@19.2.5)
+ scheduler: 0.27.0
+ signal-exit: 3.0.7
+ slice-ansi: 9.0.0
+ stack-utils: 2.0.6
+ string-width: 8.2.2
+ terminal-size: 4.0.1
+ type-fest: 5.8.0
+ widest-line: 6.0.0
+ wrap-ansi: 10.0.0
+ ws: 8.21.1
+ yoga-layout: 3.2.1
+ optionalDependencies:
+ '@types/react': 19.2.17
+ transitivePeerDependencies:
+ - bufferutil
+ - utf-8-validate
+
inline-style-parser@0.2.7: {}
internmap@2.0.3: {}
@@ -10871,6 +10863,8 @@ snapshots:
is-hexadecimal@2.0.1: {}
+ is-in-ci@2.0.0: {}
+
is-interactive@2.0.0: {}
is-number@7.0.0: {}
@@ -11508,6 +11502,8 @@ snapshots:
braces: 3.0.3
picomatch: 2.3.2
+ mimic-fn@2.1.0: {}
+
mimic-function@5.0.1: {}
minimatch@10.2.5:
@@ -11575,12 +11571,12 @@ snapshots:
nullthrows@1.1.1: {}
- nuqs@2.8.9(react-router@7.18.0(react-dom@19.2.7(react@19.2.7))(react@19.2.7))(react@19.2.7):
+ nuqs@2.8.9(react-router@8.3.0(react-dom@19.2.7(react@19.2.7))(react@19.2.7))(react@19.2.7):
dependencies:
'@standard-schema/spec': 1.0.0
react: 19.2.7
optionalDependencies:
- react-router: 7.18.0(react-dom@19.2.7(react@19.2.7))(react@19.2.7)
+ react-router: 8.3.0(react-dom@19.2.7(react@19.2.7))(react@19.2.7)
nypm@0.6.7:
dependencies:
@@ -11592,6 +11588,10 @@ snapshots:
obug@2.1.3: {}
+ onetime@5.1.2:
+ dependencies:
+ mimic-fn: 2.1.0
+
onetime@7.0.0:
dependencies:
mimic-function: 5.0.1
@@ -11637,57 +11637,7 @@ snapshots:
is-unicode-supported: 2.1.0
log-symbols: 7.0.1
stdin-discarder: 0.3.2
- string-width: 8.2.1
-
- oxc-parser@0.132.0:
- dependencies:
- '@oxc-project/types': 0.132.0
- optionalDependencies:
- '@oxc-parser/binding-android-arm-eabi': 0.132.0
- '@oxc-parser/binding-android-arm64': 0.132.0
- '@oxc-parser/binding-darwin-arm64': 0.132.0
- '@oxc-parser/binding-darwin-x64': 0.132.0
- '@oxc-parser/binding-freebsd-x64': 0.132.0
- '@oxc-parser/binding-linux-arm-gnueabihf': 0.132.0
- '@oxc-parser/binding-linux-arm-musleabihf': 0.132.0
- '@oxc-parser/binding-linux-arm64-gnu': 0.132.0
- '@oxc-parser/binding-linux-arm64-musl': 0.132.0
- '@oxc-parser/binding-linux-ppc64-gnu': 0.132.0
- '@oxc-parser/binding-linux-riscv64-gnu': 0.132.0
- '@oxc-parser/binding-linux-riscv64-musl': 0.132.0
- '@oxc-parser/binding-linux-s390x-gnu': 0.132.0
- '@oxc-parser/binding-linux-x64-gnu': 0.132.0
- '@oxc-parser/binding-linux-x64-musl': 0.132.0
- '@oxc-parser/binding-openharmony-arm64': 0.132.0
- '@oxc-parser/binding-wasm32-wasi': 0.132.0
- '@oxc-parser/binding-win32-arm64-msvc': 0.132.0
- '@oxc-parser/binding-win32-ia32-msvc': 0.132.0
- '@oxc-parser/binding-win32-x64-msvc': 0.132.0
-
- oxc-parser@0.135.0:
- dependencies:
- '@oxc-project/types': 0.135.0
- optionalDependencies:
- '@oxc-parser/binding-android-arm-eabi': 0.135.0
- '@oxc-parser/binding-android-arm64': 0.135.0
- '@oxc-parser/binding-darwin-arm64': 0.135.0
- '@oxc-parser/binding-darwin-x64': 0.135.0
- '@oxc-parser/binding-freebsd-x64': 0.135.0
- '@oxc-parser/binding-linux-arm-gnueabihf': 0.135.0
- '@oxc-parser/binding-linux-arm-musleabihf': 0.135.0
- '@oxc-parser/binding-linux-arm64-gnu': 0.135.0
- '@oxc-parser/binding-linux-arm64-musl': 0.135.0
- '@oxc-parser/binding-linux-ppc64-gnu': 0.135.0
- '@oxc-parser/binding-linux-riscv64-gnu': 0.135.0
- '@oxc-parser/binding-linux-riscv64-musl': 0.135.0
- '@oxc-parser/binding-linux-s390x-gnu': 0.135.0
- '@oxc-parser/binding-linux-x64-gnu': 0.135.0
- '@oxc-parser/binding-linux-x64-musl': 0.135.0
- '@oxc-parser/binding-openharmony-arm64': 0.135.0
- '@oxc-parser/binding-wasm32-wasi': 0.135.0
- '@oxc-parser/binding-win32-arm64-msvc': 0.135.0
- '@oxc-parser/binding-win32-ia32-msvc': 0.135.0
- '@oxc-parser/binding-win32-x64-msvc': 0.135.0
+ string-width: 8.2.2
oxc-parser@0.137.0:
dependencies:
@@ -11714,6 +11664,31 @@ snapshots:
'@oxc-parser/binding-win32-ia32-msvc': 0.137.0
'@oxc-parser/binding-win32-x64-msvc': 0.137.0
+ oxc-parser@0.141.0:
+ dependencies:
+ '@oxc-project/types': 0.141.0
+ optionalDependencies:
+ '@oxc-parser/binding-android-arm-eabi': 0.141.0
+ '@oxc-parser/binding-android-arm64': 0.141.0
+ '@oxc-parser/binding-darwin-arm64': 0.141.0
+ '@oxc-parser/binding-darwin-x64': 0.141.0
+ '@oxc-parser/binding-freebsd-x64': 0.141.0
+ '@oxc-parser/binding-linux-arm-gnueabihf': 0.141.0
+ '@oxc-parser/binding-linux-arm-musleabihf': 0.141.0
+ '@oxc-parser/binding-linux-arm64-gnu': 0.141.0
+ '@oxc-parser/binding-linux-arm64-musl': 0.141.0
+ '@oxc-parser/binding-linux-ppc64-gnu': 0.141.0
+ '@oxc-parser/binding-linux-riscv64-gnu': 0.141.0
+ '@oxc-parser/binding-linux-riscv64-musl': 0.141.0
+ '@oxc-parser/binding-linux-s390x-gnu': 0.141.0
+ '@oxc-parser/binding-linux-x64-gnu': 0.141.0
+ '@oxc-parser/binding-linux-x64-musl': 0.141.0
+ '@oxc-parser/binding-openharmony-arm64': 0.141.0
+ '@oxc-parser/binding-wasm32-wasi': 0.141.0
+ '@oxc-parser/binding-win32-arm64-msvc': 0.141.0
+ '@oxc-parser/binding-win32-ia32-msvc': 0.141.0
+ '@oxc-parser/binding-win32-x64-msvc': 0.141.0
+
oxc-resolver@11.21.3:
optionalDependencies:
'@oxc-resolver/binding-android-arm-eabi': 11.21.3
@@ -11736,57 +11711,57 @@ snapshots:
'@oxc-resolver/binding-win32-arm64-msvc': 11.21.3
'@oxc-resolver/binding-win32-x64-msvc': 11.21.3
- oxlint-plugin-react-doctor@0.5.8:
- dependencies:
- '@typescript-eslint/types': 8.62.0
+ oxc-resolver@11.24.2:
+ optionalDependencies:
+ '@oxc-resolver/binding-android-arm-eabi': 11.24.2
+ '@oxc-resolver/binding-android-arm64': 11.24.2
+ '@oxc-resolver/binding-darwin-arm64': 11.24.2
+ '@oxc-resolver/binding-darwin-x64': 11.24.2
+ '@oxc-resolver/binding-freebsd-x64': 11.24.2
+ '@oxc-resolver/binding-linux-arm-gnueabihf': 11.24.2
+ '@oxc-resolver/binding-linux-arm-musleabihf': 11.24.2
+ '@oxc-resolver/binding-linux-arm64-gnu': 11.24.2
+ '@oxc-resolver/binding-linux-arm64-musl': 11.24.2
+ '@oxc-resolver/binding-linux-ppc64-gnu': 11.24.2
+ '@oxc-resolver/binding-linux-riscv64-gnu': 11.24.2
+ '@oxc-resolver/binding-linux-riscv64-musl': 11.24.2
+ '@oxc-resolver/binding-linux-s390x-gnu': 11.24.2
+ '@oxc-resolver/binding-linux-x64-gnu': 11.24.2
+ '@oxc-resolver/binding-linux-x64-musl': 11.24.2
+ '@oxc-resolver/binding-openharmony-arm64': 11.24.2
+ '@oxc-resolver/binding-wasm32-wasi': 11.24.2
+ '@oxc-resolver/binding-win32-arm64-msvc': 11.24.2
+ '@oxc-resolver/binding-win32-x64-msvc': 11.24.2
+
+ oxlint-plugin-react-doctor@0.9.2:
+ dependencies:
+ '@shaderfrog/glsl-parser': 7.0.1
+ '@typescript-eslint/types': 8.65.0
eslint-scope: 9.1.2
eslint-visitor-keys: 5.0.1
- oxc-parser: 0.135.0
+ oxc-parser: 0.141.0
- oxlint@1.66.0:
- optionalDependencies:
- '@oxlint/binding-android-arm-eabi': 1.66.0
- '@oxlint/binding-android-arm64': 1.66.0
- '@oxlint/binding-darwin-arm64': 1.66.0
- '@oxlint/binding-darwin-x64': 1.66.0
- '@oxlint/binding-freebsd-x64': 1.66.0
- '@oxlint/binding-linux-arm-gnueabihf': 1.66.0
- '@oxlint/binding-linux-arm-musleabihf': 1.66.0
- '@oxlint/binding-linux-arm64-gnu': 1.66.0
- '@oxlint/binding-linux-arm64-musl': 1.66.0
- '@oxlint/binding-linux-ppc64-gnu': 1.66.0
- '@oxlint/binding-linux-riscv64-gnu': 1.66.0
- '@oxlint/binding-linux-riscv64-musl': 1.66.0
- '@oxlint/binding-linux-s390x-gnu': 1.66.0
- '@oxlint/binding-linux-x64-gnu': 1.66.0
- '@oxlint/binding-linux-x64-musl': 1.66.0
- '@oxlint/binding-openharmony-arm64': 1.66.0
- '@oxlint/binding-win32-arm64-msvc': 1.66.0
- '@oxlint/binding-win32-ia32-msvc': 1.66.0
- '@oxlint/binding-win32-x64-msvc': 1.66.0
-
- oxlint@1.68.0:
+ oxlint@1.74.0:
optionalDependencies:
- '@oxlint/binding-android-arm-eabi': 1.68.0
- '@oxlint/binding-android-arm64': 1.68.0
- '@oxlint/binding-darwin-arm64': 1.68.0
- '@oxlint/binding-darwin-x64': 1.68.0
- '@oxlint/binding-freebsd-x64': 1.68.0
- '@oxlint/binding-linux-arm-gnueabihf': 1.68.0
- '@oxlint/binding-linux-arm-musleabihf': 1.68.0
- '@oxlint/binding-linux-arm64-gnu': 1.68.0
- '@oxlint/binding-linux-arm64-musl': 1.68.0
- '@oxlint/binding-linux-ppc64-gnu': 1.68.0
- '@oxlint/binding-linux-riscv64-gnu': 1.68.0
- '@oxlint/binding-linux-riscv64-musl': 1.68.0
- '@oxlint/binding-linux-s390x-gnu': 1.68.0
- '@oxlint/binding-linux-x64-gnu': 1.68.0
- '@oxlint/binding-linux-x64-musl': 1.68.0
- '@oxlint/binding-openharmony-arm64': 1.68.0
- '@oxlint/binding-win32-arm64-msvc': 1.68.0
- '@oxlint/binding-win32-ia32-msvc': 1.68.0
- '@oxlint/binding-win32-x64-msvc': 1.68.0
- optional: true
+ '@oxlint/binding-android-arm-eabi': 1.74.0
+ '@oxlint/binding-android-arm64': 1.74.0
+ '@oxlint/binding-darwin-arm64': 1.74.0
+ '@oxlint/binding-darwin-x64': 1.74.0
+ '@oxlint/binding-freebsd-x64': 1.74.0
+ '@oxlint/binding-linux-arm-gnueabihf': 1.74.0
+ '@oxlint/binding-linux-arm-musleabihf': 1.74.0
+ '@oxlint/binding-linux-arm64-gnu': 1.74.0
+ '@oxlint/binding-linux-arm64-musl': 1.74.0
+ '@oxlint/binding-linux-ppc64-gnu': 1.74.0
+ '@oxlint/binding-linux-riscv64-gnu': 1.74.0
+ '@oxlint/binding-linux-riscv64-musl': 1.74.0
+ '@oxlint/binding-linux-s390x-gnu': 1.74.0
+ '@oxlint/binding-linux-x64-gnu': 1.74.0
+ '@oxlint/binding-linux-x64-musl': 1.74.0
+ '@oxlint/binding-openharmony-arm64': 1.74.0
+ '@oxlint/binding-win32-arm64-msvc': 1.74.0
+ '@oxlint/binding-win32-ia32-msvc': 1.74.0
+ '@oxlint/binding-win32-x64-msvc': 1.74.0
p-limit@3.1.0:
dependencies:
@@ -11804,7 +11779,7 @@ snapshots:
dependencies:
p-limit: 4.0.0
- package-manager-detector@1.6.0: {}
+ package-manager-detector@1.8.0: {}
parent-module@1.0.1:
dependencies:
@@ -11839,6 +11814,8 @@ snapshots:
index-to-position: 1.2.0
type-fest: 4.41.0
+ patch-console@2.0.0: {}
+
path-exists@4.0.0: {}
path-exists@5.0.0: {}
@@ -11982,30 +11959,41 @@ snapshots:
shallow-equal: 3.1.0
warning: 4.0.3
- react-doctor@0.5.8(@opentelemetry/core@2.8.0(@opentelemetry/api@1.9.1))(eslint@10.4.1(jiti@2.7.0)):
+ react-doctor@0.9.2(@opentelemetry/core@2.10.0(@opentelemetry/api@1.9.1))(@types/react@19.2.17)(eslint@10.4.1(jiti@2.7.0)):
dependencies:
'@babel/code-frame': 7.29.7
- '@sentry/node': 10.62.0(@opentelemetry/core@2.8.0(@opentelemetry/api@1.9.1))
+ '@sentry/node': 10.68.0(@opentelemetry/core@2.10.0(@opentelemetry/api@1.9.1))
agent-install: 0.0.5
conf: 15.1.0
confbox: 0.2.4
- deslop-js: 0.5.8
+ deslop-js: 0.9.2
eslint-plugin-react-hooks: 7.1.1(eslint@10.4.1(jiti@2.7.0))
+ figures: 6.1.0
+ ink: 7.1.1(@types/react@19.2.17)(react@19.2.5)
+ ink-spinner: 5.0.0(ink@7.1.1(@types/react@19.2.17)(react@19.2.5))(react@19.2.5)
jiti: 2.7.0
magicast: 0.5.3
- oxlint: 1.66.0
- oxlint-plugin-react-doctor: 0.5.8
+ oxc-resolver: 11.24.2
+ oxlint: 1.74.0
+ oxlint-plugin-react-doctor: 0.9.2
prompts: 2.4.2
+ react: 19.2.5
typescript: 5.9.3
vscode-languageserver: 9.0.1
vscode-languageserver-textdocument: 1.0.12
vscode-uri: 3.1.0
+ yaml: 2.9.0
transitivePeerDependencies:
- '@opentelemetry/core'
- '@opentelemetry/exporter-trace-otlp-http'
+ - '@types/react'
+ - bufferutil
- eslint
- oxlint-tsgolint
+ - react-devtools-core
- supports-color
+ - utf-8-validate
+ - vite-plus
react-dom@19.2.7(react@19.2.7):
dependencies:
@@ -12016,10 +12004,10 @@ snapshots:
dependencies:
react: 19.2.7
- react-grab@0.1.47(react@19.2.7):
+ react-grab@0.1.50(react@19.2.7):
dependencies:
- '@react-grab/cli': 0.1.47
- bippy: 0.5.41(react@19.2.7)
+ '@react-grab/cli': 0.1.50
+ bippy: 0.6.1(react@19.2.7)
optionalDependencies:
react: 19.2.7
@@ -12054,6 +12042,11 @@ snapshots:
prop-types: 15.8.1
react: 19.2.7
+ react-reconciler@0.33.0(react@19.2.5):
+ dependencies:
+ react: 19.2.5
+ scheduler: 0.27.0
+
react-redux@9.3.0(@types/react@19.2.17)(react@19.2.7)(redux@5.0.1):
dependencies:
'@types/use-sync-external-store': 0.0.6
@@ -12087,15 +12080,14 @@ snapshots:
react: 19.2.7
react-dom: 19.2.7(react@19.2.7)
- react-router@7.18.0(react-dom@19.2.7(react@19.2.7))(react@19.2.7):
+ react-router@8.3.0(react-dom@19.2.7(react@19.2.7))(react@19.2.7):
dependencies:
- cookie: 1.1.1
+ cookie-es: 3.1.1
react: 19.2.7
- set-cookie-parser: 2.7.2
optionalDependencies:
react-dom: 19.2.7(react@19.2.7)
- react-scan@0.5.7(@opentelemetry/core@2.8.0(@opentelemetry/api@1.9.1))(esbuild@0.28.0)(eslint@10.4.1(jiti@2.7.0))(react-dom@19.2.7(react@19.2.7))(react@19.2.7):
+ react-scan@0.5.7(@opentelemetry/core@2.10.0(@opentelemetry/api@1.9.1))(@types/react@19.2.17)(esbuild@0.28.0)(eslint@10.4.1(jiti@2.7.0))(react-dom@19.2.7(react@19.2.7))(react@19.2.7):
dependencies:
'@babel/core': 7.29.7
'@babel/types': 7.29.7
@@ -12107,19 +12099,24 @@ snapshots:
preact: 10.29.2
prompts: 2.4.2
react: 19.2.7
- react-doctor: 0.5.8(@opentelemetry/core@2.8.0(@opentelemetry/api@1.9.1))(eslint@10.4.1(jiti@2.7.0))
+ react-doctor: 0.9.2(@opentelemetry/core@2.10.0(@opentelemetry/api@1.9.1))(@types/react@19.2.17)(eslint@10.4.1(jiti@2.7.0))
react-dom: 19.2.7(react@19.2.7)
- react-grab: 0.1.47(react@19.2.7)
+ react-grab: 0.1.50(react@19.2.7)
optionalDependencies:
esbuild: 0.28.0
unplugin: 3.0.0
transitivePeerDependencies:
- '@opentelemetry/core'
- '@opentelemetry/exporter-trace-otlp-http'
+ - '@types/react'
+ - bufferutil
- eslint
- oxlint-tsgolint
+ - react-devtools-core
- rollup
- supports-color
+ - utf-8-validate
+ - vite-plus
react-simple-code-editor@0.14.1(react-dom@19.2.7(react@19.2.7))(react@19.2.7):
dependencies:
@@ -12170,6 +12167,8 @@ snapshots:
react: 19.2.7
react-dom: 19.2.7(react@19.2.7)
+ react@19.2.5: {}
+
react@19.2.7: {}
readdirp@3.6.0:
@@ -12279,6 +12278,11 @@ snapshots:
resolve-pkg-maps@1.0.0: {}
+ restore-cursor@4.0.0:
+ dependencies:
+ onetime: 5.1.2
+ signal-exit: 3.0.7
+
restore-cursor@5.1.0:
dependencies:
onetime: 7.0.0
@@ -12325,8 +12329,6 @@ snapshots:
semver@7.8.5: {}
- set-cookie-parser@2.7.2: {}
-
set-value@4.1.0:
dependencies:
is-plain-object: 2.0.4
@@ -12349,6 +12351,8 @@ snapshots:
siginfo@2.0.0: {}
+ signal-exit@3.0.7: {}
+
signal-exit@4.1.0: {}
simple-git@3.36.0:
@@ -12381,6 +12385,11 @@ snapshots:
ansi-styles: 6.2.3
is-fullwidth-code-point: 5.1.0
+ slice-ansi@9.0.0:
+ dependencies:
+ ansi-styles: 6.2.3
+ is-fullwidth-code-point: 5.1.0
+
smol-toml@1.7.0: {}
snake-case@3.0.4:
@@ -12396,6 +12405,10 @@ snapshots:
sponge-case@2.0.3: {}
+ stack-utils@2.0.6:
+ dependencies:
+ escape-string-regexp: 2.0.0
+
stackback@0.0.2: {}
std-env@4.1.0: {}
@@ -12415,6 +12428,11 @@ snapshots:
get-east-asian-width: 1.6.0
strip-ansi: 7.2.0
+ string-width@8.2.2:
+ dependencies:
+ get-east-asian-width: 1.6.0
+ strip-ansi: 7.2.0
+
stringify-entities@4.0.4:
dependencies:
character-entities-html4: 2.1.0
@@ -12480,6 +12498,8 @@ snapshots:
tapable@2.3.3: {}
+ terminal-size@4.0.1: {}
+
timeout-signal@2.0.0: {}
tiny-invariant@1.3.3: {}
@@ -12550,19 +12570,17 @@ snapshots:
type-fest@4.41.0: {}
- type-fest@5.7.0:
+ type-fest@5.8.0:
dependencies:
tagged-tag: 1.0.0
typescript@5.9.3: {}
- typescript@6.0.3: {}
-
uc.micro@2.1.0: {}
uint8array-extras@1.5.0: {}
- ultracite@7.8.3(oxlint@1.68.0):
+ ultracite@7.8.3(oxlint@1.74.0):
dependencies:
'@clack/prompts': 1.5.1
commander: 15.0.0
@@ -12574,7 +12592,7 @@ snapshots:
yaml: 2.9.0
zod: 4.4.3
optionalDependencies:
- oxlint: 1.68.0
+ oxlint: 1.74.0
unbash@4.0.1: {}
@@ -12808,6 +12826,10 @@ snapshots:
siginfo: 2.0.0
stackback: 0.0.2
+ widest-line@6.0.0:
+ dependencies:
+ string-width: 8.2.2
+
word-wrap@1.2.5: {}
wrap-ansi@10.0.0:
@@ -12824,6 +12846,8 @@ snapshots:
ws@8.21.0: {}
+ ws@8.21.1: {}
+
y18n@5.0.8: {}
yallist@3.1.1: {}
@@ -12853,6 +12877,8 @@ snapshots:
yoctocolors@2.1.2: {}
+ yoga-layout@3.2.1: {}
+
zen-observable-ts@1.2.5:
dependencies:
zen-observable: 0.8.15
diff --git a/frontend/app/src/entities/nodes/relationships/ui/add-relationship-action.tsx b/frontend/app/src/entities/nodes/relationships/ui/add-relationship-action.tsx
index c1cc8ad2fa1..eea0883eb5a 100644
--- a/frontend/app/src/entities/nodes/relationships/ui/add-relationship-action.tsx
+++ b/frontend/app/src/entities/nodes/relationships/ui/add-relationship-action.tsx
@@ -5,16 +5,20 @@ import { useState } from "react";
import SlideOver, { SlideOverTitle } from "@/shared/components/display/slide-over";
import ObjectForm, { type ObjectFormProps } from "@/shared/components/form/object-form";
+import type { NodeFieldsWithMetadata } from "@/entities/nodes/types";
import { useSchema } from "@/entities/schema/ui/hooks/useSchema";
export interface AddRelationshipActionProps {
peer: string;
onSuccess?: ObjectFormProps["onSuccess"];
+ // Pre-fills the create form (e.g. the common_parent so a created peer satisfies the constraint).
+ initialObject?: NodeFieldsWithMetadata;
}
export const AddRelationshipAction: React.FC = ({
peer,
onSuccess,
+ initialObject,
}) => {
const { schema } = useSchema(peer);
const [open, setOpen] = useState(false);
@@ -45,6 +49,7 @@ export const AddRelationshipAction: React.FC = ({
>
{
setOpen(false);
if (!onSuccess) return;
diff --git a/frontend/app/src/entities/nodes/relationships/ui/relationship-combobox-list.test.tsx b/frontend/app/src/entities/nodes/relationships/ui/relationship-combobox-list.test.tsx
index 8b876e306ad..2926202becc 100644
--- a/frontend/app/src/entities/nodes/relationships/ui/relationship-combobox-list.test.tsx
+++ b/frontend/app/src/entities/nodes/relationships/ui/relationship-combobox-list.test.tsx
@@ -105,4 +105,34 @@ describe("RelationshipComboboxList", () => {
const lastCall = useRelationshipsMock.mock.calls.at(-1)?.[0];
expect(lastCall.filterQuery).toEqual({ ids: ["17a4cdef-1234-4abc-8def-0123456789ab"] });
});
+
+ test("keeps the caller filterQuery on a UUID search when enforceFilterQueryOnIdSearch is set", async () => {
+ useRelationshipsMock.mockReturnValue(setupReturn());
+ useSchemaMock.mockReturnValue({ schema: { label: "Device" } });
+
+ const component = await render(
+
+ );
+
+ // Clear previous calls from initial render
+ useRelationshipsMock.mockClear();
+
+ const input = component.getByRole("combobox");
+ await input.click();
+ await input.fill("17a4cdef-1234-4abc-8def-0123456789ab");
+
+ await new Promise((resolve) => setTimeout(resolve, 350));
+
+ // The id restriction and the enforced parent filter are both applied.
+ const lastCall = useRelationshipsMock.mock.calls.at(-1)?.[0];
+ expect(lastCall.filterQuery).toEqual({
+ device__ids: ["dev-1"],
+ ids: ["17a4cdef-1234-4abc-8def-0123456789ab"],
+ });
+ });
});
diff --git a/frontend/app/src/entities/nodes/relationships/ui/relationship-combobox-list.tsx b/frontend/app/src/entities/nodes/relationships/ui/relationship-combobox-list.tsx
index 5d0ad903c32..4dda3eceb26 100644
--- a/frontend/app/src/entities/nodes/relationships/ui/relationship-combobox-list.tsx
+++ b/frontend/app/src/entities/nodes/relationships/ui/relationship-combobox-list.tsx
@@ -24,6 +24,9 @@ export interface RelationshipComboboxListProps
value?: RelationshipNode | null;
filterItem?: (relationshipNode: RelationshipNode) => boolean;
filterQuery?: Record;
+ // Keep filterQuery applied even on a UUID search. Used when the filter is a hard constraint
+ // (e.g. common_parent) that a UUID lookup must not bypass.
+ enforceFilterQueryOnIdSearch?: boolean;
}
export const RelationshipComboboxList = ({
@@ -33,19 +36,23 @@ export const RelationshipComboboxList = ({
onSelect,
filterItem,
filterQuery,
+ enforceFilterQueryOnIdSearch,
...props
}: RelationshipComboboxListProps) => {
const [search, setSearch] = React.useState("");
const { schema } = useSchema(peer);
- // When the user types or pastes a UUID, switch the underlying query from a
- // label search to an ids filter. UUID is a maximally specific match, so it
- // intentionally overrides any caller-provided filterQuery.
+ // When the user types or pastes a UUID, switch the underlying query from a label search to an
+ // ids filter. UUID is a maximally specific match, so it overrides a caller-provided filterQuery
+ // by default — unless enforceFilterQueryOnIdSearch keeps the filter as a hard constraint.
const isUuidSearch = search.length > 0 && isUuid(search);
+ const idSearchFilterQuery = enforceFilterQueryOnIdSearch
+ ? { ...filterQuery, ids: [search.trim()] }
+ : { ids: [search.trim()] };
const { isPending, data, error, fetchNextPage, hasNextPage, isFetchingNextPage } =
useRelationships({
peer,
search: isUuidSearch ? undefined : search,
- filterQuery: isUuidSearch ? { ids: [search.trim()] } : filterQuery,
+ filterQuery: isUuidSearch ? idSearchFilterQuery : filterQuery,
});
if (error) return ;
diff --git a/frontend/app/src/entities/nodes/relationships/ui/relationship-hierarchical-input.tsx b/frontend/app/src/entities/nodes/relationships/ui/relationship-hierarchical-input.tsx
index fb214d3a130..45fc3305b03 100644
--- a/frontend/app/src/entities/nodes/relationships/ui/relationship-hierarchical-input.tsx
+++ b/frontend/app/src/entities/nodes/relationships/ui/relationship-hierarchical-input.tsx
@@ -28,12 +28,30 @@ import {
type RelationshipComboboxListProps,
} from "@/entities/nodes/relationships/ui/relationship-combobox-list";
import { RelationshipHierarchicalComboboxList } from "@/entities/nodes/relationships/ui/relationship-hierarchical-combobox-list";
-
-export interface RelationshipHierarchicalContentProps extends RelationshipComboboxListProps {}
+import type { NodeFieldsWithMetadata } from "@/entities/nodes/types";
+
+export interface RelationshipHierarchicalContentProps extends RelationshipComboboxListProps {
+ // The tree explorer browses the peer's own hierarchy and cannot honor an external filterQuery,
+ // so it is dropped when a filter must be enforced (e.g. common_parent).
+ hideExplore?: boolean;
+ // Pre-fills the "Add new" create form so a created peer satisfies an enforced filter.
+ addNewInitialObject?: NodeFieldsWithMetadata;
+}
export const RelationshipHierarchicalContent = ({
+ hideExplore,
+ addNewInitialObject,
...props
}: RelationshipHierarchicalContentProps) => {
+ if (hideExplore) {
+ return (
+
+
+
+
+ );
+ }
+
return (
@@ -44,7 +62,7 @@ export const RelationshipHierarchicalContent = ({
-
+
@@ -61,6 +79,10 @@ export interface RelationshipHierarchicalInputProps
onChange?: (value: RelationshipNode | null) => void;
value?: RelationshipNode | null;
peer: string;
+ filterQuery?: Record;
+ hideExplore?: boolean;
+ addNewInitialObject?: NodeFieldsWithMetadata;
+ enforceFilterQueryOnIdSearch?: boolean;
}
export const RelationshipHierarchicalInput = ({
@@ -68,6 +90,10 @@ export const RelationshipHierarchicalInput = ({
value,
onChange,
peer,
+ filterQuery,
+ hideExplore,
+ addNewInitialObject,
+ enforceFilterQueryOnIdSearch,
...props
}: RelationshipHierarchicalInputProps) => {
const [open, setOpen] = React.useState(false);
@@ -83,7 +109,15 @@ export const RelationshipHierarchicalInput = ({
{value ? getNodeLabel(value) : ""}
-
+
);
};
@@ -94,6 +128,10 @@ export interface RelationshipHierarchicalManyInputProps
onChange: (value: RelationshipNode[]) => void;
value?: RelationshipNode[] | null;
peer: string;
+ filterQuery?: Record;
+ hideExplore?: boolean;
+ addNewInitialObject?: NodeFieldsWithMetadata;
+ enforceFilterQueryOnIdSearch?: boolean;
}
export const RelationshipHierarchicalManyInput = ({
@@ -102,6 +140,10 @@ export const RelationshipHierarchicalManyInput = ({
onChange,
peer,
className,
+ filterQuery,
+ hideExplore,
+ addNewInitialObject,
+ enforceFilterQueryOnIdSearch,
...props
}: RelationshipHierarchicalManyInputProps) => {
const [open, setOpen] = React.useState(false);
@@ -159,6 +201,10 @@ export const RelationshipHierarchicalManyInput = ({
peer={peer}
onSelect={handleSelect}
filterItem={(node) => !value?.some((v) => v.id === node.id)}
+ filterQuery={filterQuery}
+ hideExplore={hideExplore}
+ addNewInitialObject={addNewInitialObject}
+ enforceFilterQueryOnIdSearch={enforceFilterQueryOnIdSearch}
/>
);
diff --git a/frontend/app/src/shared/components/form/fields/relationship-many.common-parent.test.tsx b/frontend/app/src/shared/components/form/fields/relationship-many.common-parent.test.tsx
new file mode 100644
index 00000000000..026c4476b36
--- /dev/null
+++ b/frontend/app/src/shared/components/form/fields/relationship-many.common-parent.test.tsx
@@ -0,0 +1,107 @@
+import { afterEach, describe, expect, test, vi } from "vitest";
+
+import { TestForm } from "../../../../../tests/components/form.story";
+import { render } from "../../../../../tests/components/render";
+import { generateRelationshipSchema } from "../../../../../tests/fake/schema";
+import RelationshipManyField from "./relationships/relationship-many.field";
+
+// Capture the props handed to the input so we can assert the common_parent wiring
+// without driving the whole combobox/query stack.
+let lastFilterQuery: unknown;
+let lastAddNewInitialObject: unknown;
+let lastEnforceOnIdSearch: unknown;
+vi.mock("@/shared/components/inputs/relationship-many", () => ({
+ RelationshipManyInput: (props: {
+ filterQuery?: unknown;
+ addNewInitialObject?: unknown;
+ enforceFilterQueryOnIdSearch?: unknown;
+ }) => {
+ lastFilterQuery = props.filterQuery;
+ lastAddNewInitialObject = props.addNewInitialObject;
+ lastEnforceOnIdSearch = props.enforceFilterQueryOnIdSearch;
+ return ;
+ },
+}));
+
+describe("RelationshipManyField - common_parent filtering", () => {
+ afterEach(() => {
+ lastFilterQuery = undefined;
+ lastAddNewInitialObject = undefined;
+ lastEnforceOnIdSearch = undefined;
+ vi.clearAllMocks();
+ });
+
+ test("filters the peer options by the common_parent chosen in a sibling field", async () => {
+ // GIVEN a relationship declaring common_parent: device, with the sibling device picked
+ const relationship = generateRelationshipSchema({
+ name: "profile_one",
+ peer: "TestProfile",
+ common_parent: "device",
+ });
+ const deviceValue = {
+ source: { type: "user" as const },
+ value: { id: "dev-1", display_label: "dc1-device", __typename: "TestDevice" },
+ };
+
+ // WHEN the field renders with that sibling value seeded into the form
+ await render(
+
+
+
+ );
+
+ // THEN the input receives a single-hop filter on the chosen parent; the UUID-search override
+ // is closed, and "Add new" is pre-filled with that parent so a created peer stays valid.
+ await expect.poll(() => lastFilterQuery).toEqual({ device__ids: ["dev-1"] });
+ expect(lastEnforceOnIdSearch).toBe(true);
+ expect(lastAddNewInitialObject).toEqual({
+ device: { node: { id: "dev-1", display_label: "dc1-device", __typename: "TestDevice" } },
+ });
+ });
+
+ test("passes no filter when the sibling common_parent field is empty", async () => {
+ const relationship = generateRelationshipSchema({
+ name: "profile_one",
+ peer: "TestProfile",
+ common_parent: "device",
+ });
+
+ await render(
+
+
+
+ );
+
+ await expect.poll(() => lastFilterQuery).toBeUndefined();
+ });
+
+ test("passes no filter when the schema declares no common_parent", async () => {
+ const relationship = generateRelationshipSchema({ name: "tags", peer: "TestProfile" });
+
+ await render(
+
+
+
+ );
+
+ await expect.poll(() => lastFilterQuery).toBeUndefined();
+ });
+});
diff --git a/frontend/app/src/shared/components/form/fields/relationships/generic-relationship.common-parent.test.tsx b/frontend/app/src/shared/components/form/fields/relationships/generic-relationship.common-parent.test.tsx
new file mode 100644
index 00000000000..1e1eeba3813
--- /dev/null
+++ b/frontend/app/src/shared/components/form/fields/relationships/generic-relationship.common-parent.test.tsx
@@ -0,0 +1,115 @@
+import { afterEach, beforeEach, describe, expect, test, vi } from "vitest";
+
+import { store } from "@/shared/stores";
+
+import { genericSchemasAtom, nodeSchemasAtom } from "@/entities/schema/stores/schema.atom";
+
+import { TestForm } from "../../../../../../tests/components/form.story";
+import { render } from "../../../../../../tests/components/render";
+import {
+ generateGenericSchema,
+ generateNodeSchema,
+ generateRelationshipSchema,
+} from "../../../../../../tests/fake/schema";
+import { GenericRelationshipField } from "./generic-relationship.field";
+
+// Capture the props handed to the peer picker.
+let lastParent: unknown;
+let lastAddNewInitialObject: unknown;
+vi.mock("@/shared/components/inputs/relationship-one", () => ({
+ RelationshipInput: (props: { parent?: unknown; addNewInitialObject?: unknown }) => {
+ lastParent = props.parent;
+ lastAddNewInitialObject = props.addNewInitialObject;
+ return ;
+ },
+}));
+
+// A generic peer with a single concrete implementation (auto-selected). The concrete kind has a
+// Parent relationship named "device", so the manual picker would show by default.
+const concretePeer = generateNodeSchema({
+ kind: "TestProfileOne",
+ name: "ProfileOne",
+ relationships: [
+ generateRelationshipSchema({
+ name: "device",
+ peer: "TestDevice",
+ kind: "Parent",
+ cardinality: "one",
+ optional: false,
+ }),
+ ],
+});
+
+const genericPeer = generateGenericSchema({
+ kind: "TestGenericProfile",
+ name: "GenericProfile",
+ relationships: [],
+ used_by: ["TestProfileOne"],
+});
+
+const deviceValue = {
+ source: { type: "user" as const },
+ value: { id: "dev-1", display_label: "dc1-device", __typename: "TestDevice" },
+};
+
+describe("GenericRelationshipField - common_parent", () => {
+ beforeEach(() => {
+ store.set(nodeSchemasAtom, [concretePeer]);
+ store.set(genericSchemasAtom, [genericPeer]);
+ });
+ afterEach(() => {
+ lastParent = undefined;
+ lastAddNewInitialObject = undefined;
+ vi.clearAllMocks();
+ });
+
+ test("hides the manual parent picker and filters by the sibling when common_parent is set", async () => {
+ const relationship = generateRelationshipSchema({
+ name: "profile_one",
+ peer: "TestGenericProfile",
+ cardinality: "one",
+ common_parent: "device",
+ });
+
+ await render(
+
+
+
+ );
+
+ await expect.poll(() => lastParent).toEqual({ name: "device", value: "dev-1" });
+ expect(document.querySelectorAll('[data-testid="rel-input"]')).toHaveLength(1);
+ expect(lastAddNewInitialObject).toEqual({
+ device: { node: { id: "dev-1", display_label: "dc1-device", __typename: "TestDevice" } },
+ });
+ });
+
+ test("shows the manual parent picker when common_parent is not set", async () => {
+ const relationship = generateRelationshipSchema({
+ name: "profile_one",
+ peer: "TestGenericProfile",
+ cardinality: "one",
+ });
+
+ await render(
+
+
+
+ );
+
+ // Manual parent picker present in addition to the peer picker → two inputs.
+ await expect.poll(() => document.querySelectorAll('[data-testid="rel-input"]').length).toBe(2);
+ });
+});
diff --git a/frontend/app/src/shared/components/form/fields/relationships/generic-relationship.field.tsx b/frontend/app/src/shared/components/form/fields/relationships/generic-relationship.field.tsx
index f4a9aa813d8..6fc933c6f48 100644
--- a/frontend/app/src/shared/components/form/fields/relationships/generic-relationship.field.tsx
+++ b/frontend/app/src/shared/components/form/fields/relationships/generic-relationship.field.tsx
@@ -24,6 +24,8 @@ import type { Node } from "@/entities/nodes/getObjectItemDisplayValue";
import { useDefaultParent } from "@/entities/nodes/relationships/ui/queries/get-default-parent.query";
import { useSchema } from "@/entities/schema/ui/hooks/useSchema";
+import { useCommonParentFilter } from "./useCommonParentFilter";
+
interface GenericOption extends Node {
id: string;
display_label: string;
@@ -57,6 +59,10 @@ export const GenericRelationshipField = ({
);
const parentRelationship = selectedGeneric?.id && getParentRelationship(selectedGeneric.id);
+ const commonParent = useCommonParentFilter(relationship, name);
+ // When common_parent drives the filter from a sibling field, the manual "Parent" picker
+ // is redundant — hide it and source the peer filter from the sibling value instead.
+ const showManualParent = !commonParent.isActive && !!parentRelationship;
const { data: defaultParent } = useDefaultParent({
defaultValue,
@@ -156,7 +162,7 @@ export const GenericRelationshipField = ({
setSelectedGeneric={handleKindChange}
/>
- {parentRelationship && (
+ {showManualParent && parentRelationship && (
diff --git a/frontend/app/src/shared/components/form/fields/relationships/regular-relationship.common-parent.test.tsx b/frontend/app/src/shared/components/form/fields/relationships/regular-relationship.common-parent.test.tsx
new file mode 100644
index 00000000000..db50b084221
--- /dev/null
+++ b/frontend/app/src/shared/components/form/fields/relationships/regular-relationship.common-parent.test.tsx
@@ -0,0 +1,107 @@
+import { afterEach, beforeEach, describe, expect, test, vi } from "vitest";
+
+import { store } from "@/shared/stores";
+
+import { nodeSchemasAtom } from "@/entities/schema/stores/schema.atom";
+
+import { TestForm } from "../../../../../../tests/components/form.story";
+import { render } from "../../../../../../tests/components/render";
+import {
+ generateNodeSchema,
+ generateRelationshipSchema,
+} from "../../../../../../tests/fake/schema";
+import { NodeRelationshipField } from "./regular-relationship.field";
+
+// Capture the props handed to the peer picker.
+let lastParent: unknown;
+let lastAddNewInitialObject: unknown;
+vi.mock("@/shared/components/inputs/relationship-one", () => ({
+ RelationshipInput: (props: { parent?: unknown; addNewInitialObject?: unknown }) => {
+ lastParent = props.parent;
+ lastAddNewInitialObject = props.addNewInitialObject;
+ return ;
+ },
+}));
+
+// Peer has a Parent relationship named "device", so the manual picker would show by default.
+const peerSchema = generateNodeSchema({
+ kind: "TestProfile",
+ name: "Profile",
+ relationships: [
+ generateRelationshipSchema({
+ name: "device",
+ peer: "TestDevice",
+ kind: "Parent",
+ cardinality: "one",
+ optional: false,
+ }),
+ ],
+});
+
+const deviceValue = {
+ source: { type: "user" as const },
+ value: { id: "dev-1", display_label: "dc1-device", __typename: "TestDevice" },
+};
+
+describe("NodeRelationshipField - common_parent", () => {
+ beforeEach(() => {
+ store.set(nodeSchemasAtom, [peerSchema]);
+ });
+ afterEach(() => {
+ lastParent = undefined;
+ lastAddNewInitialObject = undefined;
+ vi.clearAllMocks();
+ });
+
+ test("hides the manual parent picker and filters by the sibling when common_parent is set", async () => {
+ const relationship = generateRelationshipSchema({
+ name: "profile_one",
+ peer: "TestProfile",
+ cardinality: "one",
+ common_parent: "device",
+ });
+
+ await render(
+
+
+
+ );
+
+ // Only the peer picker renders (manual parent picker hidden), filtered by the sibling,
+ // with "Add new" pre-filled so a created peer stays valid.
+ await expect.poll(() => lastParent).toEqual({ name: "device", value: "dev-1" });
+ expect(document.querySelectorAll('[data-testid="rel-input"]')).toHaveLength(1);
+ expect(lastAddNewInitialObject).toEqual({
+ device: { node: { id: "dev-1", display_label: "dc1-device", __typename: "TestDevice" } },
+ });
+ });
+
+ test("shows the manual parent picker when common_parent is not set", async () => {
+ const relationship = generateRelationshipSchema({
+ name: "profile_one",
+ peer: "TestProfile",
+ cardinality: "one",
+ });
+
+ await render(
+
+
+
+ );
+
+ // Manual parent picker present in addition to the peer picker → two inputs.
+ await expect.poll(() => document.querySelectorAll('[data-testid="rel-input"]').length).toBe(2);
+ });
+});
diff --git a/frontend/app/src/shared/components/form/fields/relationships/regular-relationship.field.tsx b/frontend/app/src/shared/components/form/fields/relationships/regular-relationship.field.tsx
index 20365282f98..f735008e411 100644
--- a/frontend/app/src/shared/components/form/fields/relationships/regular-relationship.field.tsx
+++ b/frontend/app/src/shared/components/form/fields/relationships/regular-relationship.field.tsx
@@ -17,6 +17,8 @@ import { FormField, FormInput, FormMessage } from "@/shared/components/ui/form";
import type { Node } from "@/entities/nodes/getObjectItemDisplayValue";
import { useDefaultParent } from "@/entities/nodes/relationships/ui/queries/get-default-parent.query";
+import { useCommonParentFilter } from "./useCommonParentFilter";
+
export interface RegularRelationshipFieldProps extends DynamicRelationshipFieldProps {
parentDisabled?: boolean;
defaultParent?: Node | null;
@@ -39,6 +41,10 @@ export const NodeRelationshipField = ({
...props
}: RegularRelationshipFieldProps) => {
const parentRelationship = getParentRelationship(relationship.peer);
+ const commonParent = useCommonParentFilter(relationship, name);
+ // When common_parent drives the filter from a sibling field, the manual "Parent" picker
+ // is redundant — hide it and source the peer filter from the sibling value instead.
+ const showManualParent = !commonParent.isActive && !!parentRelationship;
const { data: defaultParent } = useDefaultParent({
defaultValue,
@@ -61,7 +67,7 @@ export const NodeRelationshipField = ({
return (
- {parentRelationship && (
+ {showManualParent && (
)}
- {parentRelationship && (
+ {showManualParent && (
@@ -143,7 +149,12 @@ export const NodeRelationshipField = ({
value={value}
onChange={onChange}
peer={peer}
- parent={{ name: parentRelationship?.name, value: selectedParent?.id }}
+ parent={
+ commonParent.isActive
+ ? commonParent.parent
+ : { name: parentRelationship?.name, value: selectedParent?.id }
+ }
+ addNewInitialObject={commonParent.addNewInitialObject}
/>
diff --git a/frontend/app/src/shared/components/form/fields/relationships/relationship-hierarchical.common-parent.test.tsx b/frontend/app/src/shared/components/form/fields/relationships/relationship-hierarchical.common-parent.test.tsx
new file mode 100644
index 00000000000..a1ba7c1f030
--- /dev/null
+++ b/frontend/app/src/shared/components/form/fields/relationships/relationship-hierarchical.common-parent.test.tsx
@@ -0,0 +1,83 @@
+import { afterEach, describe, expect, test, vi } from "vitest";
+
+import { TestForm } from "../../../../../../tests/components/form.story";
+import { render } from "../../../../../../tests/components/render";
+import { generateRelationshipSchema } from "../../../../../../tests/fake/schema";
+import RelationshipHierarchicalField from "./relationship-hierarchical.field";
+
+// Capture the props handed to the hierarchical inputs.
+let lastFilterQuery: unknown;
+let lastHideExplore: unknown;
+vi.mock("@/entities/nodes/relationships/ui/relationship-hierarchical-input", () => ({
+ RelationshipHierarchicalInput: (props: { filterQuery?: unknown; hideExplore?: unknown }) => {
+ lastFilterQuery = props.filterQuery;
+ lastHideExplore = props.hideExplore;
+ return
;
+ },
+ RelationshipHierarchicalManyInput: (props: { filterQuery?: unknown; hideExplore?: unknown }) => {
+ lastFilterQuery = props.filterQuery;
+ lastHideExplore = props.hideExplore;
+ return
;
+ },
+}));
+
+const deviceValue = {
+ source: { type: "user" as const },
+ value: { id: "dev-1", display_label: "dc1-device", __typename: "TestDevice" },
+};
+
+describe("RelationshipHierarchicalField - common_parent", () => {
+ afterEach(() => {
+ lastFilterQuery = undefined;
+ lastHideExplore = undefined;
+ vi.clearAllMocks();
+ });
+
+ test("filters by the sibling common_parent value", async () => {
+ const relationship = generateRelationshipSchema({
+ name: "children",
+ peer: "TestNode",
+ cardinality: "one",
+ hierarchical: "TestNode",
+ common_parent: "device",
+ });
+
+ await render(
+
+
+
+ );
+
+ await expect.poll(() => lastFilterQuery).toEqual({ device__ids: ["dev-1"] });
+ // The tree explorer can't honor the filter, so it is dropped when common_parent applies.
+ expect(lastHideExplore).toBe(true);
+ });
+
+ test("passes no filter when the schema declares no common_parent", async () => {
+ const relationship = generateRelationshipSchema({
+ name: "children",
+ peer: "TestNode",
+ cardinality: "one",
+ hierarchical: "TestNode",
+ });
+
+ await render(
+
+
+
+ );
+
+ await expect.poll(() => lastFilterQuery).toBeUndefined();
+ expect(lastHideExplore).toBe(false);
+ });
+});
diff --git a/frontend/app/src/shared/components/form/fields/relationships/relationship-hierarchical.field.tsx b/frontend/app/src/shared/components/form/fields/relationships/relationship-hierarchical.field.tsx
index 9ed782918b1..18707f66e81 100644
--- a/frontend/app/src/shared/components/form/fields/relationships/relationship-hierarchical.field.tsx
+++ b/frontend/app/src/shared/components/form/fields/relationships/relationship-hierarchical.field.tsx
@@ -18,6 +18,8 @@ import {
} from "@/entities/nodes/relationships/ui/relationship-hierarchical-input";
import type { NodeCore } from "@/entities/nodes/types";
+import { useCommonParentFilter } from "./useCommonParentFilter";
+
export interface RelationshipHierarchicalFieldProps
extends Omit
{}
@@ -33,6 +35,8 @@ export default function RelationshipHierarchicalField({
shouldUnregister,
pool,
}: RelationshipHierarchicalFieldProps) {
+ const commonParent = useCommonParentFilter(relationship, name);
+
return (
) : (
)}
diff --git a/frontend/app/src/shared/components/form/fields/relationships/relationship-many.field.tsx b/frontend/app/src/shared/components/form/fields/relationships/relationship-many.field.tsx
index 90394c6a980..0bc2b9ce5d5 100644
--- a/frontend/app/src/shared/components/form/fields/relationships/relationship-many.field.tsx
+++ b/frontend/app/src/shared/components/form/fields/relationships/relationship-many.field.tsx
@@ -12,6 +12,8 @@ import { classNames } from "@/shared/utils/common";
import type { NodeCore } from "@/entities/nodes/types";
+import { useCommonParentFilter } from "./useCommonParentFilter";
+
export interface RelationshipManyInputProps extends DynamicRelationshipFieldProps {}
export default function RelationshipManyField({
@@ -28,6 +30,8 @@ export default function RelationshipManyField({
filterQuery,
...props
}: RelationshipManyInputProps) {
+ const commonParent = useCommonParentFilter(relationship, name);
+
return (
:last-child:focus]:border-red-500 has-[>:last-child:focus]:ring-red-500/25"
)}
peer={relationship.peer}
- filterQuery={filterQuery}
+ filterQuery={
+ commonParent.filterQuery
+ ? { ...filterQuery, ...commonParent.filterQuery }
+ : filterQuery
+ }
+ enforceFilterQueryOnIdSearch={commonParent.isActive}
+ addNewInitialObject={commonParent.addNewInitialObject}
value={fieldData.value as NodeCore[] | null}
onChange={(newValue) => {
field.onChange(
diff --git a/frontend/app/src/shared/components/form/fields/relationships/useCommonParentFilter.test.tsx b/frontend/app/src/shared/components/form/fields/relationships/useCommonParentFilter.test.tsx
new file mode 100644
index 00000000000..a38ca145d59
--- /dev/null
+++ b/frontend/app/src/shared/components/form/fields/relationships/useCommonParentFilter.test.tsx
@@ -0,0 +1,112 @@
+import { useFormContext, useWatch } from "react-hook-form";
+import { describe, expect, test } from "vitest";
+
+import { TestForm } from "../../../../../../tests/components/form.story";
+import { render } from "../../../../../../tests/components/render";
+import { generateRelationshipSchema } from "../../../../../../tests/fake/schema";
+import { useCommonParentFilter } from "./useCommonParentFilter";
+
+const Probe = ({ commonParent }: { commonParent?: string | null }) => {
+ const relationship = generateRelationshipSchema({ common_parent: commonParent ?? null });
+ const result = useCommonParentFilter(relationship, "dependent");
+ return {JSON.stringify(result)}
;
+};
+
+const parentValue = {
+ source: { type: "user" as const },
+ value: { id: "dev-1", display_label: "atl1-edge", __typename: "InfraDevice" },
+};
+
+describe("useCommonParentFilter", () => {
+ test("is inactive when the relationship declares no common_parent", async () => {
+ const component = await render(
+
+
+
+ );
+
+ await expect
+ .element(component.getByTestId("result"))
+ .toHaveTextContent(JSON.stringify({ isActive: false }));
+ });
+
+ test("returns no filter while the sibling field is empty", async () => {
+ const component = await render(
+
+
+
+ );
+
+ await expect
+ .element(component.getByTestId("result"))
+ .toHaveTextContent(JSON.stringify({ isActive: true, parent: { name: "device" } }));
+ });
+
+ test("builds the single-hop filter from the picked sibling parent", async () => {
+ const component = await render(
+
+
+
+ );
+
+ await expect.element(component.getByTestId("result")).toHaveTextContent(
+ JSON.stringify({
+ isActive: true,
+ filterQuery: { device__ids: ["dev-1"] },
+ parent: { name: "device", value: "dev-1" },
+ addNewInitialObject: {
+ device: { node: { id: "dev-1", display_label: "atl1-edge", __typename: "InfraDevice" } },
+ },
+ })
+ );
+ });
+});
+
+// Harness that reads the dependent field value and lets the test change the parent.
+const ClearHarness = () => {
+ const relationship = generateRelationshipSchema({ name: "profile", common_parent: "device" });
+ useCommonParentFilter(relationship, "profile");
+ const form = useFormContext();
+ const dependent = useWatch({ name: "profile" });
+
+ return (
+
+
{JSON.stringify(dependent)}
+
+
+ );
+};
+
+describe("useCommonParentFilter - clears the selection on parent change", () => {
+ test("keeps the pre-filled selection on mount but clears it when the parent changes", async () => {
+ const selected = {
+ source: { type: "user" as const },
+ value: { id: "profile-1", display_label: "p1-alpha-dc1", __typename: "TestProfile" },
+ };
+
+ const component = await render(
+
+
+
+ );
+
+ // Preserved on mount.
+ await expect.element(component.getByTestId("dependent")).toHaveTextContent("profile-1");
+
+ // Changing the parent clears the now out-of-filter selection.
+ await component.getByRole("button", { name: "change parent" }).click();
+ await expect
+ .element(component.getByTestId("dependent"))
+ .toHaveTextContent(JSON.stringify({ source: null, value: null }));
+ });
+});
diff --git a/frontend/app/src/shared/components/form/fields/relationships/useCommonParentFilter.ts b/frontend/app/src/shared/components/form/fields/relationships/useCommonParentFilter.ts
new file mode 100644
index 00000000000..0e1dfe4afa9
--- /dev/null
+++ b/frontend/app/src/shared/components/form/fields/relationships/useCommonParentFilter.ts
@@ -0,0 +1,69 @@
+import { useEffect, useRef } from "react";
+import { useFormContext, useWatch } from "react-hook-form";
+
+import { DEFAULT_FORM_FIELD_VALUE } from "@/shared/components/form/constants";
+import type { FormRelationshipValue } from "@/shared/components/form/type";
+
+import type { NodeFieldsWithMetadata } from "@/entities/nodes/types";
+import type { RelationshipSchema } from "@/entities/schema/types";
+
+// Matches no field, so the useWatch call stays unconditional without subscribing to the whole
+// form when the relationship declares no common_parent.
+const NO_COMMON_PARENT = "__no_common_parent__";
+
+export interface CommonParentFilter {
+ isActive: boolean;
+ // Filter for the record-shape consumers (many / hierarchical).
+ filterQuery?: Record;
+ // Filter for RelationshipInput's `parent` prop (cardinality one).
+ parent?: { name: string; value?: string };
+ // Seed pre-filling the inline "Add new" form's parent so a created peer stays valid.
+ addNewInitialObject?: NodeFieldsWithMetadata;
+}
+
+/**
+ * For a relationship declaring `common_parent: `, filter the peer options to those sharing the
+ * `` parent picked for the sibling `` field, via a single-hop `__ids` filter.
+ */
+export const useCommonParentFilter = (
+ relationship: RelationshipSchema,
+ name: string
+): CommonParentFilter => {
+ const commonParent = relationship.common_parent ?? undefined;
+ const watched = useWatch({ name: commonParent ?? NO_COMMON_PARENT }) as
+ | FormRelationshipValue
+ | undefined;
+ const form = useFormContext();
+
+ const value = watched?.value;
+ const parentNode = value && !Array.isArray(value) && "id" in value ? value : undefined;
+ const chosenParentId = parentNode?.id;
+
+ // A peer picked under one parent no longer satisfies the constraint once the parent changes, so
+ // clear it — but skip the first observed value so a pre-filled (edit) selection survives mount.
+ const previousParentId = useRef(chosenParentId);
+ const isFirstRun = useRef(true);
+ useEffect(() => {
+ if (!commonParent) return;
+ if (isFirstRun.current) {
+ isFirstRun.current = false;
+ previousParentId.current = chosenParentId;
+ return;
+ }
+ if (previousParentId.current !== chosenParentId) {
+ previousParentId.current = chosenParentId;
+ form.setValue(name, DEFAULT_FORM_FIELD_VALUE, { shouldDirty: true });
+ }
+ }, [chosenParentId, commonParent, name, form]);
+
+ if (!commonParent) return { isActive: false };
+
+ return {
+ isActive: true,
+ filterQuery: chosenParentId ? { [`${commonParent}__ids`]: [chosenParentId] } : undefined,
+ parent: { name: commonParent, value: chosenParentId },
+ addNewInitialObject: parentNode
+ ? ({ [commonParent]: { node: parentNode } } as NodeFieldsWithMetadata)
+ : undefined,
+ };
+};
diff --git a/frontend/app/src/shared/components/inputs/relationship-many.tsx b/frontend/app/src/shared/components/inputs/relationship-many.tsx
index 61031129584..ece77d63174 100644
--- a/frontend/app/src/shared/components/inputs/relationship-many.tsx
+++ b/frontend/app/src/shared/components/inputs/relationship-many.tsx
@@ -12,7 +12,7 @@ import { classNames } from "@/shared/utils/common";
import { getNodeLabel } from "@/entities/nodes/object/utils/get-node-label";
import { AddRelationshipAction } from "@/entities/nodes/relationships/ui/add-relationship-action";
import { RelationshipComboboxList } from "@/entities/nodes/relationships/ui/relationship-combobox-list";
-import type { NodeCore } from "@/entities/nodes/types";
+import type { NodeCore, NodeFieldsWithMetadata } from "@/entities/nodes/types";
export interface RelationshipManyInputProps
extends Omit {
@@ -21,6 +21,8 @@ export interface RelationshipManyInputProps
peer: string;
value: Array | null;
filterQuery?: Record;
+ enforceFilterQueryOnIdSearch?: boolean;
+ addNewInitialObject?: NodeFieldsWithMetadata;
ref?: React.Ref;
}
@@ -30,6 +32,8 @@ export function RelationshipManyInput({
value,
onChange,
filterQuery,
+ enforceFilterQueryOnIdSearch,
+ addNewInitialObject,
ref,
...props
}: RelationshipManyInputProps) {
@@ -89,8 +93,13 @@ export function RelationshipManyInput({
onSelect={handleSelect}
filterItem={(node) => !value?.some((v) => v.id === node.id)}
filterQuery={filterQuery}
+ enforceFilterQueryOnIdSearch={enforceFilterQueryOnIdSearch}
+ />
+
-
);
diff --git a/frontend/app/src/shared/components/inputs/relationship-one.tsx b/frontend/app/src/shared/components/inputs/relationship-one.tsx
index 5c4106eb521..e909669d80f 100644
--- a/frontend/app/src/shared/components/inputs/relationship-one.tsx
+++ b/frontend/app/src/shared/components/inputs/relationship-one.tsx
@@ -21,6 +21,7 @@ import type { Node } from "@/entities/nodes/getObjectItemDisplayValue";
import { getNodeLabel } from "@/entities/nodes/object/utils/get-node-label";
import { AddRelationshipAction } from "@/entities/nodes/relationships/ui/add-relationship-action";
import { useRelationships } from "@/entities/nodes/relationships/ui/queries/get-relationships.query";
+import type { NodeFieldsWithMetadata } from "@/entities/nodes/types";
export interface RelationshipInputProps extends Omit {
className?: string;
@@ -29,6 +30,7 @@ export interface RelationshipInputProps extends Omit;
parent?: { name?: string; value?: string };
+ addNewInitialObject?: NodeFieldsWithMetadata;
ref?: React.Ref>;
}
@@ -39,6 +41,7 @@ export const RelationshipInput = ({
options,
peer,
parent,
+ addNewInitialObject,
ref,
...props
}: RelationshipInputProps) => {
@@ -143,6 +146,7 @@ export const RelationshipInput = ({
{!options && (
{
onChange(value);
setOpen(false);
diff --git a/frontend/packages/plugins/template/package-lock.json b/frontend/packages/plugins/template/package-lock.json
index 73d8689b2c7..ca43a70ffac 100644
--- a/frontend/packages/plugins/template/package-lock.json
+++ b/frontend/packages/plugins/template/package-lock.json
@@ -11,17 +11,17 @@
"@module-federation/vite": "^0.2.8",
"@originjs/vite-plugin-federation": "^1.3.5",
"@softarc/native-federation": "^2.0.9",
- "@softarc/native-federation-esbuild": "^2.0.26",
+ "@softarc/native-federation-esbuild": "^4.0.0",
"react": "^18.2.0",
"react-dom": "^18.2.0"
},
"devDependencies": {
"@types/react": "^18.2.66",
"@types/react-dom": "^18.2.22",
- "@typescript-eslint/eslint-plugin": "^7.2.0",
- "@typescript-eslint/parser": "^7.2.0",
+ "@typescript-eslint/eslint-plugin": "^8.65.0",
+ "@typescript-eslint/parser": "^8.65.0",
"@vitejs/plugin-react": "^4.2.1",
- "eslint": "^8.57.0",
+ "eslint": "^10.8.0",
"eslint-plugin-react-hooks": "^4.6.0",
"eslint-plugin-react-refresh": "^0.4.6",
"path": "^0.12.7",
@@ -335,11 +335,73 @@
"node": ">=6.9.0"
}
},
+ "node_modules/@chialab/cjs-to-esm": {
+ "version": "0.19.2",
+ "resolved": "https://registry.npmjs.org/@chialab/cjs-to-esm/-/cjs-to-esm-0.19.2.tgz",
+ "integrity": "sha512-si+dfCzglT+zh+4okOjA+BKnb2SfdmD81pEYW9qgtzWQbHSSai4niz7kd0Q7JtfHSMlttYkYw1TSybl1M7ETpA==",
+ "license": "MIT",
+ "dependencies": {
+ "@chialab/estransform": "^0.20.0"
+ },
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/@chialab/esbuild-plugin-commonjs": {
+ "version": "0.19.1",
+ "resolved": "https://registry.npmjs.org/@chialab/esbuild-plugin-commonjs/-/esbuild-plugin-commonjs-0.19.1.tgz",
+ "integrity": "sha512-jqX7SmHjelH90DrIUZoB9iGoMdML4hKCwqomZrfvfgx6t22llDXP7MkawHmrny/kZmreA0Ytjsp46dsV51OioQ==",
+ "license": "MIT",
+ "dependencies": {
+ "@chialab/cjs-to-esm": "^0.19.1",
+ "@chialab/esbuild-rna": "^0.19.1"
+ },
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/@chialab/esbuild-rna": {
+ "version": "0.19.3",
+ "resolved": "https://registry.npmjs.org/@chialab/esbuild-rna/-/esbuild-rna-0.19.3.tgz",
+ "integrity": "sha512-os4rxgolT256uO6OPP2FZE8/CPdSFN7j7QrqPWjLI2ZsPRds4K0nQTEtJm8FOEmWhGJZxFa4ofxzwFIhWyabhw==",
+ "license": "MIT",
+ "dependencies": {
+ "@chialab/estransform": "^0.20.0",
+ "@chialab/node-resolve": "^0.19.1"
+ },
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/@chialab/estransform": {
+ "version": "0.20.0",
+ "resolved": "https://registry.npmjs.org/@chialab/estransform/-/estransform-0.20.0.tgz",
+ "integrity": "sha512-ziaUvRJy520iI5qCRTdMoYvXShLFa6QsIUR8Pj7H/4sJzUOia1OY3QgAAsuGcBjj30nsBSqc4W0Y/jF6phMYQA==",
+ "license": "MIT",
+ "dependencies": {
+ "@napi-rs/magic-string": "^0.3.4",
+ "@parcel/source-map": "^2.0.0",
+ "cjs-module-lexer": "^1.2.2",
+ "es-module-lexer": "^1.0.0",
+ "oxc-parser": ">=0.114.0 <1.0.0"
+ },
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/@chialab/node-resolve": {
+ "version": "0.19.1",
+ "resolved": "https://registry.npmjs.org/@chialab/node-resolve/-/node-resolve-0.19.1.tgz",
+ "integrity": "sha512-J4i4YJNaFuYG6UWpum9y8XfICWsWxoCawy6HQtU2lDqp915oboxXvpZ3lBdA5Llb8VexCKQZYufY8QXPyzU62Q==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=18"
+ }
+ },
"node_modules/@emnapi/core": {
"version": "1.10.0",
"resolved": "https://registry.npmjs.org/@emnapi/core/-/core-1.10.0.tgz",
"integrity": "sha512-yq6OkJ4p82CAfPl0u9mQebQHKPJkY7WrIuk205cTYnYe+k2Z8YBh11FrbRG/H6ihirqcacOgl2BIO8oyMQLeXw==",
- "dev": true,
"license": "MIT",
"optional": true,
"dependencies": {
@@ -351,7 +413,6 @@
"version": "1.10.0",
"resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.10.0.tgz",
"integrity": "sha512-ewvYlk86xUoGI0zQRNq/mC+16R1QeDlKQy21Ki3oSYXNgLb45GV1P6A0M+/s6nyCuNDqe5VpaY84BzXGwVbwFA==",
- "dev": true,
"license": "MIT",
"optional": true,
"dependencies": {
@@ -362,65 +423,16 @@
"version": "1.2.1",
"resolved": "https://registry.npmjs.org/@emnapi/wasi-threads/-/wasi-threads-1.2.1.tgz",
"integrity": "sha512-uTII7OYF+/Mes/MrcIOYp5yOtSMLBWSIoLPpcgwipoiKbli6k322tcoFsxoIIxPDqW01SQGAgko4EzZi2BNv2w==",
- "dev": true,
"license": "MIT",
"optional": true,
"dependencies": {
"tslib": "^2.4.0"
}
},
- "node_modules/@esbuild/aix-ppc64": {
- "version": "0.25.2",
- "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.25.2.tgz",
- "integrity": "sha512-wCIboOL2yXZym2cgm6mlA742s9QeJ8DjGVaL39dLN4rRwrOgOyYSnOaFPhKZGLb2ngj4EyfAFjsNJwPXZvseag==",
- "cpu": [
- "ppc64"
- ],
- "license": "MIT",
- "optional": true,
- "os": [
- "aix"
- ],
- "engines": {
- "node": ">=18"
- }
- },
- "node_modules/@esbuild/netbsd-arm64": {
- "version": "0.25.2",
- "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.25.2.tgz",
- "integrity": "sha512-talAIBoY5M8vHc6EeI2WW9d/CkiO9MQJ0IOWX8hrLhxGbro/vBXJvaQXefW2cP0z0nQVTdQ/eNyGFV1GSKrxfw==",
- "cpu": [
- "arm64"
- ],
- "license": "MIT",
- "optional": true,
- "os": [
- "netbsd"
- ],
- "engines": {
- "node": ">=18"
- }
- },
- "node_modules/@esbuild/openbsd-arm64": {
- "version": "0.25.2",
- "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.25.2.tgz",
- "integrity": "sha512-dcXYOC6NXOqcykeDlwId9kB6OkPUxOEqU+rkrYVqJbK2hagWOMrsTGsMr8+rW02M+d5Op5NNlgMmjzecaRf7Tg==",
- "cpu": [
- "arm64"
- ],
- "license": "MIT",
- "optional": true,
- "os": [
- "openbsd"
- ],
- "engines": {
- "node": ">=18"
- }
- },
"node_modules/@eslint-community/eslint-utils": {
- "version": "4.5.1",
- "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.5.1.tgz",
- "integrity": "sha512-soEIOALTfTK6EjmKMMoLugwaP0rzkad90iIWd1hMO9ARkSAyjfMfkRRhLvD5qH7vvM0Cg72pieUfR6yh6XxC4w==",
+ "version": "4.10.1",
+ "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.10.1.tgz",
+ "integrity": "sha512-cuadcxVFE8sDK6iWJbs8Sn0av2Nrh2QSGQhVlBW9AaAHqHwjWsZHT8LJ4hFGPh7ASBV2deFdM7H/DPjulmh8rg==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -437,127 +449,116 @@
}
},
"node_modules/@eslint-community/regexpp": {
- "version": "4.12.1",
- "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.12.1.tgz",
- "integrity": "sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ==",
+ "version": "4.12.2",
+ "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.12.2.tgz",
+ "integrity": "sha512-EriSTlt5OC9/7SXkRSCAhfSxxoSUgBm33OH+IkwbdpgoqsSsUg7y3uh+IICI/Qg4BBWr3U2i39RpmycbxMq4ew==",
"dev": true,
"license": "MIT",
"engines": {
"node": "^12.0.0 || ^14.0.0 || >=16.0.0"
}
},
- "node_modules/@eslint/eslintrc": {
- "version": "2.1.4",
- "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.4.tgz",
- "integrity": "sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==",
+ "node_modules/@eslint/config-array": {
+ "version": "0.23.5",
+ "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.23.5.tgz",
+ "integrity": "sha512-Y3kKLvC1dvTOT+oGlqNQ1XLqK6D1HU2YXPc52NmAlJZbMMWDzGYXMiPRJ8TYD39muD/OTjlZmNJ4ib7dvSrMBA==",
"dev": true,
- "license": "MIT",
+ "license": "Apache-2.0",
"dependencies": {
- "ajv": "^6.12.4",
- "debug": "^4.3.2",
- "espree": "^9.6.0",
- "globals": "^13.19.0",
- "ignore": "^5.2.0",
- "import-fresh": "^3.2.1",
- "js-yaml": "^4.1.0",
- "minimatch": "^3.1.2",
- "strip-json-comments": "^3.1.1"
+ "@eslint/object-schema": "^3.0.5",
+ "debug": "^4.3.1",
+ "minimatch": "^10.2.4"
},
"engines": {
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
- },
- "funding": {
- "url": "https://opencollective.com/eslint"
- }
- },
- "node_modules/@eslint/eslintrc/node_modules/brace-expansion": {
- "version": "1.1.16",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.16.tgz",
- "integrity": "sha512-IDw48K2/2kRkg9LdJxurvq3lV3aBgq0REY89duEqFRthjlPdXHKMj7EnQOXVckxzgisinf3nHfrcE2FufFLXMw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "balanced-match": "^1.0.0",
- "concat-map": "0.0.1"
+ "node": "^20.19.0 || ^22.13.0 || >=24"
}
},
- "node_modules/@eslint/eslintrc/node_modules/globals": {
- "version": "13.24.0",
- "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz",
- "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==",
+ "node_modules/@eslint/config-helpers": {
+ "version": "0.7.0",
+ "resolved": "https://registry.npmjs.org/@eslint/config-helpers/-/config-helpers-0.7.0.tgz",
+ "integrity": "sha512-DObd/KKUsU+FaFv4PLxSRenpXfQWmPXXP3pPZ6/K1PCrMu2vQpMDMuQe/BqYeoLcz8ro0bVDF1RxOJgfVEdhUw==",
"dev": true,
- "license": "MIT",
+ "license": "Apache-2.0",
"dependencies": {
- "type-fest": "^0.20.2"
+ "@eslint/core": "^1.2.1"
},
"engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
+ "node": "^20.19.0 || ^22.13.0 || >=24"
}
},
- "node_modules/@eslint/eslintrc/node_modules/minimatch": {
- "version": "3.1.5",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.5.tgz",
- "integrity": "sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w==",
+ "node_modules/@eslint/core": {
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/@eslint/core/-/core-1.2.1.tgz",
+ "integrity": "sha512-MwcE1P+AZ4C6DWlpin/OmOA54mmIZ/+xZuJiQd4SyB29oAJjN30UW9wkKNptW2ctp4cEsvhlLY/CsQ1uoHDloQ==",
"dev": true,
- "license": "ISC",
+ "license": "Apache-2.0",
"dependencies": {
- "brace-expansion": "^1.1.7"
+ "@types/json-schema": "^7.0.15"
},
"engines": {
- "node": "*"
+ "node": "^20.19.0 || ^22.13.0 || >=24"
}
},
- "node_modules/@eslint/js": {
- "version": "8.57.1",
- "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.57.1.tgz",
- "integrity": "sha512-d9zaMRSTIKDLhctzH12MtXvJKSSUhaHcjV+2Z+GK+EEY7XKpP5yR4x+N3TAcHTcu963nIr+TMcCb4DBCYX1z6Q==",
+ "node_modules/@eslint/object-schema": {
+ "version": "3.0.5",
+ "resolved": "https://registry.npmjs.org/@eslint/object-schema/-/object-schema-3.0.5.tgz",
+ "integrity": "sha512-vqTaUEgxzm+YDSdElad6PiRoX4t8VGDjCtt05zn4nU810UIx/uNEV7/lZJ6KwFThKZOzOxzXy48da+No7HZaMw==",
"dev": true,
- "license": "MIT",
+ "license": "Apache-2.0",
"engines": {
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
+ "node": "^20.19.0 || ^22.13.0 || >=24"
}
},
- "node_modules/@humanwhocodes/config-array": {
- "version": "0.13.0",
- "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.13.0.tgz",
- "integrity": "sha512-DZLEEqFWQFiyK6h5YIeynKx7JlvCYWL0cImfSRXZ9l4Sg2efkFGTuFf6vzXjK1cq6IYkU+Eg/JizXw+TD2vRNw==",
- "deprecated": "Use @eslint/config-array instead",
+ "node_modules/@eslint/plugin-kit": {
+ "version": "0.7.2",
+ "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.7.2.tgz",
+ "integrity": "sha512-+CNAzxglkrpNf/kKywqQfk74QjtceuOE7Qm+AF8miRvPF/wmmK5+OJOgVh3AVTT3RP2mH3+FOaxlE5v72owk0A==",
"dev": true,
"license": "Apache-2.0",
"dependencies": {
- "@humanwhocodes/object-schema": "^2.0.3",
- "debug": "^4.3.1",
- "minimatch": "^3.0.5"
+ "@eslint/core": "^1.2.1",
+ "levn": "^0.4.1"
},
"engines": {
- "node": ">=10.10.0"
+ "node": "^20.19.0 || ^22.13.0 || >=24"
}
},
- "node_modules/@humanwhocodes/config-array/node_modules/brace-expansion": {
- "version": "1.1.16",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.16.tgz",
- "integrity": "sha512-IDw48K2/2kRkg9LdJxurvq3lV3aBgq0REY89duEqFRthjlPdXHKMj7EnQOXVckxzgisinf3nHfrcE2FufFLXMw==",
+ "node_modules/@humanfs/core": {
+ "version": "0.19.2",
+ "resolved": "https://registry.npmjs.org/@humanfs/core/-/core-0.19.2.tgz",
+ "integrity": "sha512-UhXNm+CFMWcbChXywFwkmhqjs3PRCmcSa/hfBgLIb7oQ5HNb1wS0icWsGtSAUNgefHeI+eBrA8I1fxmbHsGdvA==",
"dev": true,
- "license": "MIT",
+ "license": "Apache-2.0",
"dependencies": {
- "balanced-match": "^1.0.0",
- "concat-map": "0.0.1"
+ "@humanfs/types": "^0.15.0"
+ },
+ "engines": {
+ "node": ">=18.18.0"
}
},
- "node_modules/@humanwhocodes/config-array/node_modules/minimatch": {
- "version": "3.1.5",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.5.tgz",
- "integrity": "sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w==",
+ "node_modules/@humanfs/node": {
+ "version": "0.16.8",
+ "resolved": "https://registry.npmjs.org/@humanfs/node/-/node-0.16.8.tgz",
+ "integrity": "sha512-gE1eQNZ3R++kTzFUpdGlpmy8kDZD/MLyHqDwqjkVQI0JMdI1D51sy1H958PNXYkM2rAac7e5/CnIKZrHtPh3BQ==",
"dev": true,
- "license": "ISC",
+ "license": "Apache-2.0",
"dependencies": {
- "brace-expansion": "^1.1.7"
+ "@humanfs/core": "^0.19.2",
+ "@humanfs/types": "^0.15.0",
+ "@humanwhocodes/retry": "^0.4.0"
},
"engines": {
- "node": "*"
+ "node": ">=18.18.0"
+ }
+ },
+ "node_modules/@humanfs/types": {
+ "version": "0.15.0",
+ "resolved": "https://registry.npmjs.org/@humanfs/types/-/types-0.15.0.tgz",
+ "integrity": "sha512-ZZ1w0aoQkwuUuC7Yf+7sdeaNfqQiiLcSRbfI08oAxqLtpXQr9AIVX7Ay7HLDuiLYAaFPu8oBYNq/QIi9URHJ3Q==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "engines": {
+ "node": ">=18.18.0"
}
},
"node_modules/@humanwhocodes/module-importer": {
@@ -574,13 +575,19 @@
"url": "https://github.com/sponsors/nzakas"
}
},
- "node_modules/@humanwhocodes/object-schema": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.3.tgz",
- "integrity": "sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==",
- "deprecated": "Use @eslint/object-schema instead",
+ "node_modules/@humanwhocodes/retry": {
+ "version": "0.4.3",
+ "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.4.3.tgz",
+ "integrity": "sha512-bV0Tgo9K4hfPCek+aMAn81RppFKv2ySDQeMoSZuvTASywNTnVJCArCZE2FWqpvIatKu7VMRLWlR1EazvVhDyhQ==",
"dev": true,
- "license": "BSD-3-Clause"
+ "license": "Apache-2.0",
+ "engines": {
+ "node": ">=18.18"
+ },
+ "funding": {
+ "type": "github",
+ "url": "https://github.com/sponsors/nzakas"
+ }
},
"node_modules/@jridgewell/gen-mapping": {
"version": "0.3.13",
@@ -611,104 +618,709 @@
"dev": true,
"license": "MIT",
"engines": {
- "node": ">=6.0.0"
+ "node": ">=6.0.0"
+ }
+ },
+ "node_modules/@jridgewell/sourcemap-codec": {
+ "version": "1.5.0",
+ "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz",
+ "integrity": "sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==",
+ "license": "MIT"
+ },
+ "node_modules/@jridgewell/trace-mapping": {
+ "version": "0.3.31",
+ "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.31.tgz",
+ "integrity": "sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@jridgewell/resolve-uri": "^3.1.0",
+ "@jridgewell/sourcemap-codec": "^1.4.14"
+ }
+ },
+ "node_modules/@module-federation/vite": {
+ "version": "0.2.8",
+ "resolved": "https://registry.npmjs.org/@module-federation/vite/-/vite-0.2.8.tgz",
+ "integrity": "sha512-9sGbJjUwfOUoDReaE/HcnYcfB4ZmsUIyvmmZnzwTD0WEbJFQBvz1+sEPNBh0hTIuPE5Jqs0D4ueoXTNAU/7DQA==",
+ "license": "MIT",
+ "peerDependencies": {
+ "@softarc/native-federation": "^2.0.2"
+ }
+ },
+ "node_modules/@napi-rs/magic-string": {
+ "version": "0.3.4",
+ "resolved": "https://registry.npmjs.org/@napi-rs/magic-string/-/magic-string-0.3.4.tgz",
+ "integrity": "sha512-DEWl/B99RQsyMT3F9bvrXuhL01/eIQp/dtNSE3G1jQ4mTGRcP4iHWxoPZ577WrbjUinrNgvRA5+08g8fkPgimQ==",
+ "license": "MIT",
+ "engines": {
+ "node": ">= 10"
+ },
+ "optionalDependencies": {
+ "@napi-rs/magic-string-android-arm-eabi": "0.3.4",
+ "@napi-rs/magic-string-android-arm64": "0.3.4",
+ "@napi-rs/magic-string-darwin-arm64": "0.3.4",
+ "@napi-rs/magic-string-darwin-x64": "0.3.4",
+ "@napi-rs/magic-string-freebsd-x64": "0.3.4",
+ "@napi-rs/magic-string-linux-arm-gnueabihf": "0.3.4",
+ "@napi-rs/magic-string-linux-arm64-gnu": "0.3.4",
+ "@napi-rs/magic-string-linux-arm64-musl": "0.3.4",
+ "@napi-rs/magic-string-linux-x64-gnu": "0.3.4",
+ "@napi-rs/magic-string-linux-x64-musl": "0.3.4",
+ "@napi-rs/magic-string-win32-arm64-msvc": "0.3.4",
+ "@napi-rs/magic-string-win32-ia32-msvc": "0.3.4",
+ "@napi-rs/magic-string-win32-x64-msvc": "0.3.4"
+ }
+ },
+ "node_modules/@napi-rs/magic-string-android-arm-eabi": {
+ "version": "0.3.4",
+ "resolved": "https://registry.npmjs.org/@napi-rs/magic-string-android-arm-eabi/-/magic-string-android-arm-eabi-0.3.4.tgz",
+ "integrity": "sha512-sszAYxqtzzJ4FDerDNHcqL9NhqPhj8W4DNiOanXYy50mA5oojlRtaAFPiB5ZMrWDBM32v5Q30LrmxQ4eTtu2Dg==",
+ "cpu": [
+ "arm"
+ ],
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "android"
+ ],
+ "engines": {
+ "node": ">= 10"
+ }
+ },
+ "node_modules/@napi-rs/magic-string-android-arm64": {
+ "version": "0.3.4",
+ "resolved": "https://registry.npmjs.org/@napi-rs/magic-string-android-arm64/-/magic-string-android-arm64-0.3.4.tgz",
+ "integrity": "sha512-jdQ6HuO0X5rkX4MauTcWR4HWdgjakTOmmzqXg8L26+jOHVVG1LZE+Su5qvV4bP8vMb2h+vPE+JsnwqSmWymu3Q==",
+ "cpu": [
+ "arm64"
+ ],
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "android"
+ ],
+ "engines": {
+ "node": ">= 10"
+ }
+ },
+ "node_modules/@napi-rs/magic-string-darwin-arm64": {
+ "version": "0.3.4",
+ "resolved": "https://registry.npmjs.org/@napi-rs/magic-string-darwin-arm64/-/magic-string-darwin-arm64-0.3.4.tgz",
+ "integrity": "sha512-6NmMtvURce9/oq09XBZmuIeI6lPLGtEJ2ZPO/QzL3nLZa6wygiCnO/sFACKYNg5/73ET5HMMTeuogE1JI+r2Lw==",
+ "cpu": [
+ "arm64"
+ ],
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "darwin"
+ ],
+ "engines": {
+ "node": ">= 10"
+ }
+ },
+ "node_modules/@napi-rs/magic-string-darwin-x64": {
+ "version": "0.3.4",
+ "resolved": "https://registry.npmjs.org/@napi-rs/magic-string-darwin-x64/-/magic-string-darwin-x64-0.3.4.tgz",
+ "integrity": "sha512-f9LmfMiUAKDOtl0meOuLYeVb6OERrgGzrTg1Tn3R3fTAShM2kxRbfAuPE9ljuXxIFzOv/uqRNLSl/LqCJwpREA==",
+ "cpu": [
+ "x64"
+ ],
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "darwin"
+ ],
+ "engines": {
+ "node": ">= 10"
+ }
+ },
+ "node_modules/@napi-rs/magic-string-freebsd-x64": {
+ "version": "0.3.4",
+ "resolved": "https://registry.npmjs.org/@napi-rs/magic-string-freebsd-x64/-/magic-string-freebsd-x64-0.3.4.tgz",
+ "integrity": "sha512-rqduQ4odiDK4QdM45xHWRTU4wtFIfpp8g8QGpz+3qqg7ivldDqbbNOrBaf6Oeu77uuEvWggnkyuChotfKgJdJQ==",
+ "cpu": [
+ "x64"
+ ],
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "freebsd"
+ ],
+ "engines": {
+ "node": ">= 10"
+ }
+ },
+ "node_modules/@napi-rs/magic-string-linux-arm-gnueabihf": {
+ "version": "0.3.4",
+ "resolved": "https://registry.npmjs.org/@napi-rs/magic-string-linux-arm-gnueabihf/-/magic-string-linux-arm-gnueabihf-0.3.4.tgz",
+ "integrity": "sha512-pVaJEdEpiPqIfq3M4+yMAATS7Z9muDcWYn8H7GFH1ygh8GwgLgKfy/n/lG2M6zp18Mwd0x7E2E/qg9GgCyUzoQ==",
+ "cpu": [
+ "arm"
+ ],
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">= 10"
+ }
+ },
+ "node_modules/@napi-rs/magic-string-linux-arm64-gnu": {
+ "version": "0.3.4",
+ "resolved": "https://registry.npmjs.org/@napi-rs/magic-string-linux-arm64-gnu/-/magic-string-linux-arm64-gnu-0.3.4.tgz",
+ "integrity": "sha512-9FwoAih/0tzEZx0BjYYIxWkSRMjonIn91RFM3q3MBs/evmThXUYXUqLNa1PPIkK1JoksswtDi48qWWLt8nGflQ==",
+ "cpu": [
+ "arm64"
+ ],
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">= 10"
+ }
+ },
+ "node_modules/@napi-rs/magic-string-linux-arm64-musl": {
+ "version": "0.3.4",
+ "resolved": "https://registry.npmjs.org/@napi-rs/magic-string-linux-arm64-musl/-/magic-string-linux-arm64-musl-0.3.4.tgz",
+ "integrity": "sha512-wCR7R+WPOcAKmVQc1s6h6HwfwW1vL9pM8BjUY9Ljkdb8wt1LmZEmV2Sgfc1SfbRQzbyl+pKeufP6adRRQVzYDA==",
+ "cpu": [
+ "arm64"
+ ],
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">= 10"
+ }
+ },
+ "node_modules/@napi-rs/magic-string-linux-x64-gnu": {
+ "version": "0.3.4",
+ "resolved": "https://registry.npmjs.org/@napi-rs/magic-string-linux-x64-gnu/-/magic-string-linux-x64-gnu-0.3.4.tgz",
+ "integrity": "sha512-sbxFDpYnt5WFbxQ1xozwOvh5A7IftqSI0WnE9O7KsQIOi0ej2dvFbfOW4tmFkvH/YP8KJELo5AhP2+kEq1DpYA==",
+ "cpu": [
+ "x64"
+ ],
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">= 10"
+ }
+ },
+ "node_modules/@napi-rs/magic-string-linux-x64-musl": {
+ "version": "0.3.4",
+ "resolved": "https://registry.npmjs.org/@napi-rs/magic-string-linux-x64-musl/-/magic-string-linux-x64-musl-0.3.4.tgz",
+ "integrity": "sha512-jN4h/7e2Ul8v3UK5IZu38NXLMdzVWhY4uEDlnwuUAhwRh26wBQ1/pLD97Uy/Z3dFNBQPcsv60XS9fOM1YDNT6w==",
+ "cpu": [
+ "x64"
+ ],
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">= 10"
+ }
+ },
+ "node_modules/@napi-rs/magic-string-win32-arm64-msvc": {
+ "version": "0.3.4",
+ "resolved": "https://registry.npmjs.org/@napi-rs/magic-string-win32-arm64-msvc/-/magic-string-win32-arm64-msvc-0.3.4.tgz",
+ "integrity": "sha512-gMUyTRHLWpzX2ntJFCbW2Gnla9Y/WUmbkZuW5SBAo/Jo8QojHn76Y4PNgnoXdzcsV9b/45RBxurYKAfFg9WTyg==",
+ "cpu": [
+ "arm64"
+ ],
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "win32"
+ ],
+ "engines": {
+ "node": ">= 10"
+ }
+ },
+ "node_modules/@napi-rs/magic-string-win32-ia32-msvc": {
+ "version": "0.3.4",
+ "resolved": "https://registry.npmjs.org/@napi-rs/magic-string-win32-ia32-msvc/-/magic-string-win32-ia32-msvc-0.3.4.tgz",
+ "integrity": "sha512-QIMauMOvEHgL00K9np/c9CT/CRtLOz3mRTQqcZ9XGzSoAMrpxH71KSpDJrKl7h7Ro6TZ+hJ0C3T+JVuTCZNv4A==",
+ "cpu": [
+ "ia32"
+ ],
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "win32"
+ ],
+ "engines": {
+ "node": ">= 10"
+ }
+ },
+ "node_modules/@napi-rs/magic-string-win32-x64-msvc": {
+ "version": "0.3.4",
+ "resolved": "https://registry.npmjs.org/@napi-rs/magic-string-win32-x64-msvc/-/magic-string-win32-x64-msvc-0.3.4.tgz",
+ "integrity": "sha512-V8FMSf828MzOI3P6/765MR7zHU6CUZqiyPhmAnwYoKFNxfv7oCviN/G6NcENeCdcYOvNgh5fYzaNLB96ndId5A==",
+ "cpu": [
+ "x64"
+ ],
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "win32"
+ ],
+ "engines": {
+ "node": ">= 10"
+ }
+ },
+ "node_modules/@napi-rs/wasm-runtime": {
+ "version": "1.1.6",
+ "resolved": "https://registry.npmjs.org/@napi-rs/wasm-runtime/-/wasm-runtime-1.1.6.tgz",
+ "integrity": "sha512-ZLv/JdUfkvOy9eCnnBaGfiO+XimbjebAeO+MRQqD/B+FR1tnRN0tpKSJHRbE8sFfS6aqsXZ67TQjfwfsxULVbg==",
+ "license": "MIT",
+ "optional": true,
+ "dependencies": {
+ "@tybys/wasm-util": "^0.10.3"
+ },
+ "funding": {
+ "type": "github",
+ "url": "https://github.com/sponsors/Brooooooklyn"
+ },
+ "peerDependencies": {
+ "@emnapi/core": "^1.7.1",
+ "@emnapi/runtime": "^1.7.1"
+ }
+ },
+ "node_modules/@nodelib/fs.scandir": {
+ "version": "2.1.5",
+ "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz",
+ "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==",
+ "license": "MIT",
+ "dependencies": {
+ "@nodelib/fs.stat": "2.0.5",
+ "run-parallel": "^1.1.9"
+ },
+ "engines": {
+ "node": ">= 8"
+ }
+ },
+ "node_modules/@nodelib/fs.stat": {
+ "version": "2.0.5",
+ "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz",
+ "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==",
+ "license": "MIT",
+ "engines": {
+ "node": ">= 8"
+ }
+ },
+ "node_modules/@nodelib/fs.walk": {
+ "version": "1.2.8",
+ "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz",
+ "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==",
+ "license": "MIT",
+ "dependencies": {
+ "@nodelib/fs.scandir": "2.1.5",
+ "fastq": "^1.6.0"
+ },
+ "engines": {
+ "node": ">= 8"
+ }
+ },
+ "node_modules/@originjs/vite-plugin-federation": {
+ "version": "1.4.0",
+ "resolved": "https://registry.npmjs.org/@originjs/vite-plugin-federation/-/vite-plugin-federation-1.4.0.tgz",
+ "integrity": "sha512-QvrU2mQ4t1dHr7M47CPATMjELHkBPqM9WKXsdvoy98EQ9lV9d6vRDhRpcpfH5utrB/375S7xtTdNCDH8UuZDBA==",
+ "license": "MulanPSL-2.0",
+ "dependencies": {
+ "estree-walker": "^3.0.2",
+ "magic-string": "^0.27.0"
+ },
+ "engines": {
+ "node": ">=14.0.0",
+ "pnpm": ">=7.0.1"
+ }
+ },
+ "node_modules/@oxc-parser/binding-android-arm-eabi": {
+ "version": "0.141.0",
+ "resolved": "https://registry.npmjs.org/@oxc-parser/binding-android-arm-eabi/-/binding-android-arm-eabi-0.141.0.tgz",
+ "integrity": "sha512-jk7086MFvR/T4DG9IY7MKBVt1PMxvSZoz/TvnifodvS0pjghVwJHRttnAExhlwdMOgHv1TmLdENnbNpYk2zjvA==",
+ "cpu": [
+ "arm"
+ ],
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "android"
+ ],
+ "engines": {
+ "node": "^20.19.0 || >=22.12.0"
+ }
+ },
+ "node_modules/@oxc-parser/binding-android-arm64": {
+ "version": "0.141.0",
+ "resolved": "https://registry.npmjs.org/@oxc-parser/binding-android-arm64/-/binding-android-arm64-0.141.0.tgz",
+ "integrity": "sha512-a4XDQ27ZT7e7zwAlxJDTiCA7IBGWDuy2+MhFq85Of7XlBSmpkfcBFml11q0Zx6f7RMuI0B4xCtt2ytBS4yOptg==",
+ "cpu": [
+ "arm64"
+ ],
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "android"
+ ],
+ "engines": {
+ "node": "^20.19.0 || >=22.12.0"
+ }
+ },
+ "node_modules/@oxc-parser/binding-darwin-arm64": {
+ "version": "0.141.0",
+ "resolved": "https://registry.npmjs.org/@oxc-parser/binding-darwin-arm64/-/binding-darwin-arm64-0.141.0.tgz",
+ "integrity": "sha512-m/kVk6rzYmBeHYnz+1Y5fod00AVTTxMbC71azFfm/zjx1j9XxwKtA0+VfkKuVMC8rbghb9TtfevnuWZa9OuPEg==",
+ "cpu": [
+ "arm64"
+ ],
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "darwin"
+ ],
+ "engines": {
+ "node": "^20.19.0 || >=22.12.0"
+ }
+ },
+ "node_modules/@oxc-parser/binding-darwin-x64": {
+ "version": "0.141.0",
+ "resolved": "https://registry.npmjs.org/@oxc-parser/binding-darwin-x64/-/binding-darwin-x64-0.141.0.tgz",
+ "integrity": "sha512-o0X+6KZlfucWU/v5oKRQPwdFXsXAjW8jmpo/Gpw/qyKsbKtlfkHoeH9Bjp/m13TwjewvJnCkwF0DWzgpC4HjTQ==",
+ "cpu": [
+ "x64"
+ ],
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "darwin"
+ ],
+ "engines": {
+ "node": "^20.19.0 || >=22.12.0"
+ }
+ },
+ "node_modules/@oxc-parser/binding-freebsd-x64": {
+ "version": "0.141.0",
+ "resolved": "https://registry.npmjs.org/@oxc-parser/binding-freebsd-x64/-/binding-freebsd-x64-0.141.0.tgz",
+ "integrity": "sha512-W5KbTnNkTMMMylqj6dYqnsXvkmESVPodPKYLJ5zdzIPdl9fUJtolkpUeSzYEbGGYB4a4A4avl3EePnZ/wLIdJg==",
+ "cpu": [
+ "x64"
+ ],
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "freebsd"
+ ],
+ "engines": {
+ "node": "^20.19.0 || >=22.12.0"
+ }
+ },
+ "node_modules/@oxc-parser/binding-linux-arm-gnueabihf": {
+ "version": "0.141.0",
+ "resolved": "https://registry.npmjs.org/@oxc-parser/binding-linux-arm-gnueabihf/-/binding-linux-arm-gnueabihf-0.141.0.tgz",
+ "integrity": "sha512-g3dtbJa8zeOGK36Sr9cQavsdi5H/ie2hVjrSjIxsNAR1qZA40ZYVXnfdfoMAlq8CmB9qFL1yhsSCUHeNmdmt8w==",
+ "cpu": [
+ "arm"
+ ],
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": "^20.19.0 || >=22.12.0"
+ }
+ },
+ "node_modules/@oxc-parser/binding-linux-arm-musleabihf": {
+ "version": "0.141.0",
+ "resolved": "https://registry.npmjs.org/@oxc-parser/binding-linux-arm-musleabihf/-/binding-linux-arm-musleabihf-0.141.0.tgz",
+ "integrity": "sha512-e6hwQqd+3lvP13G2jxvFpoA7dzHcFLN+Mq47JCVMtdNHbbyBRo756JCtbbJH6ca8inTfyqZoqBmS3vhQlzAK2w==",
+ "cpu": [
+ "arm"
+ ],
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": "^20.19.0 || >=22.12.0"
+ }
+ },
+ "node_modules/@oxc-parser/binding-linux-arm64-gnu": {
+ "version": "0.141.0",
+ "resolved": "https://registry.npmjs.org/@oxc-parser/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-0.141.0.tgz",
+ "integrity": "sha512-vXz2BLAuypA+4MLyBg94pzEo6THVnzYnCtAjXoihIIQo0t2pnp/AmW+SH1EI+4VbuJnC//KplIJ5yyaCGua4jA==",
+ "cpu": [
+ "arm64"
+ ],
+ "libc": [
+ "glibc"
+ ],
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": "^20.19.0 || >=22.12.0"
+ }
+ },
+ "node_modules/@oxc-parser/binding-linux-arm64-musl": {
+ "version": "0.141.0",
+ "resolved": "https://registry.npmjs.org/@oxc-parser/binding-linux-arm64-musl/-/binding-linux-arm64-musl-0.141.0.tgz",
+ "integrity": "sha512-jMkS/EztNW34HKsXIaT/SoHcmtocq/vWhwFOVduF9kduuuRIVwfwQ6uxzIO+qPKSXdd2TXt54of0BJ2zFMXnmw==",
+ "cpu": [
+ "arm64"
+ ],
+ "libc": [
+ "musl"
+ ],
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": "^20.19.0 || >=22.12.0"
+ }
+ },
+ "node_modules/@oxc-parser/binding-linux-ppc64-gnu": {
+ "version": "0.141.0",
+ "resolved": "https://registry.npmjs.org/@oxc-parser/binding-linux-ppc64-gnu/-/binding-linux-ppc64-gnu-0.141.0.tgz",
+ "integrity": "sha512-vo+MR+n3zQJ6Mq92hiP084NZcgDv5iJlVR02gMf28neMvVT1tKVm7VeiW/DxhdqOi3QLeaXIk9cUcLL1qrkngw==",
+ "cpu": [
+ "ppc64"
+ ],
+ "libc": [
+ "glibc"
+ ],
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": "^20.19.0 || >=22.12.0"
+ }
+ },
+ "node_modules/@oxc-parser/binding-linux-riscv64-gnu": {
+ "version": "0.141.0",
+ "resolved": "https://registry.npmjs.org/@oxc-parser/binding-linux-riscv64-gnu/-/binding-linux-riscv64-gnu-0.141.0.tgz",
+ "integrity": "sha512-oh80w+7RuiO5gBp9Jnoa/H8Qlt3JsHL2MkW+0dwEdlDMdslVZX/YsekSK6EeyEenY66/mhCfypsNATQ7Ph3qlQ==",
+ "cpu": [
+ "riscv64"
+ ],
+ "libc": [
+ "glibc"
+ ],
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": "^20.19.0 || >=22.12.0"
+ }
+ },
+ "node_modules/@oxc-parser/binding-linux-riscv64-musl": {
+ "version": "0.141.0",
+ "resolved": "https://registry.npmjs.org/@oxc-parser/binding-linux-riscv64-musl/-/binding-linux-riscv64-musl-0.141.0.tgz",
+ "integrity": "sha512-LOyEmFA8sCnYbEXP1+iQvCC/P1YXHMA/t6x1Ksp0Y9VwhLFsiBJFzV1zIxrOIE2LKaGGhDjQ29xq9cbq6omDXA==",
+ "cpu": [
+ "riscv64"
+ ],
+ "libc": [
+ "musl"
+ ],
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": "^20.19.0 || >=22.12.0"
+ }
+ },
+ "node_modules/@oxc-parser/binding-linux-s390x-gnu": {
+ "version": "0.141.0",
+ "resolved": "https://registry.npmjs.org/@oxc-parser/binding-linux-s390x-gnu/-/binding-linux-s390x-gnu-0.141.0.tgz",
+ "integrity": "sha512-3wnwk/l1CvszVE5TJR1wSl/zSEfydRqrNhn6s7Vr9IzSJpUQIroqVsIoPARHRFA+FQwkxAFDAHDAasa7v8OobQ==",
+ "cpu": [
+ "s390x"
+ ],
+ "libc": [
+ "glibc"
+ ],
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": "^20.19.0 || >=22.12.0"
+ }
+ },
+ "node_modules/@oxc-parser/binding-linux-x64-gnu": {
+ "version": "0.141.0",
+ "resolved": "https://registry.npmjs.org/@oxc-parser/binding-linux-x64-gnu/-/binding-linux-x64-gnu-0.141.0.tgz",
+ "integrity": "sha512-qtyQVAAebFq57B2tifTlel3TgGqUtsYNI/e+p6aya9rN9lOZVTDvr215fGYSA9XWooxzMxDiVxkBLk2jQHbsOQ==",
+ "cpu": [
+ "x64"
+ ],
+ "libc": [
+ "glibc"
+ ],
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": "^20.19.0 || >=22.12.0"
+ }
+ },
+ "node_modules/@oxc-parser/binding-linux-x64-musl": {
+ "version": "0.141.0",
+ "resolved": "https://registry.npmjs.org/@oxc-parser/binding-linux-x64-musl/-/binding-linux-x64-musl-0.141.0.tgz",
+ "integrity": "sha512-SkGV1nKw40roEc94pv5EaaeH2ay14G6+roe8Q0wIUC1LcEKxzKW921h7+ZuZX0D3q2Mb/7aSFmxEVqnko3lPRw==",
+ "cpu": [
+ "x64"
+ ],
+ "libc": [
+ "musl"
+ ],
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": "^20.19.0 || >=22.12.0"
+ }
+ },
+ "node_modules/@oxc-parser/binding-openharmony-arm64": {
+ "version": "0.141.0",
+ "resolved": "https://registry.npmjs.org/@oxc-parser/binding-openharmony-arm64/-/binding-openharmony-arm64-0.141.0.tgz",
+ "integrity": "sha512-cVgDM7n8QziQqOaP5hNgUYfMG7S/ZeuPxFWXnnHRv7rh025COk0rfQ6eEdKG3j/GaUuyvNZN4ifF1J8KmuXLLA==",
+ "cpu": [
+ "arm64"
+ ],
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "openharmony"
+ ],
+ "engines": {
+ "node": "^20.19.0 || >=22.12.0"
}
},
- "node_modules/@jridgewell/sourcemap-codec": {
- "version": "1.5.0",
- "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz",
- "integrity": "sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==",
- "license": "MIT"
- },
- "node_modules/@jridgewell/trace-mapping": {
- "version": "0.3.31",
- "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.31.tgz",
- "integrity": "sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==",
- "dev": true,
+ "node_modules/@oxc-parser/binding-wasm32-wasi": {
+ "version": "0.141.0",
+ "resolved": "https://registry.npmjs.org/@oxc-parser/binding-wasm32-wasi/-/binding-wasm32-wasi-0.141.0.tgz",
+ "integrity": "sha512-HggH++Fkn3OilBn+bs3jpgIFQa34oMAyUUHy0vpGum+gt1Eb5nyLc8dNU/RAPSw6lsLrx7ncKtHSZE+3Sp0l2g==",
+ "cpu": [
+ "wasm32"
+ ],
"license": "MIT",
+ "optional": true,
"dependencies": {
- "@jridgewell/resolve-uri": "^3.1.0",
- "@jridgewell/sourcemap-codec": "^1.4.14"
+ "@emnapi/core": "1.11.2",
+ "@emnapi/runtime": "1.11.2",
+ "@napi-rs/wasm-runtime": "^1.1.6"
+ },
+ "engines": {
+ "node": "^20.19.0 || >=22.12.0"
}
},
- "node_modules/@module-federation/vite": {
- "version": "0.2.8",
- "resolved": "https://registry.npmjs.org/@module-federation/vite/-/vite-0.2.8.tgz",
- "integrity": "sha512-9sGbJjUwfOUoDReaE/HcnYcfB4ZmsUIyvmmZnzwTD0WEbJFQBvz1+sEPNBh0hTIuPE5Jqs0D4ueoXTNAU/7DQA==",
+ "node_modules/@oxc-parser/binding-wasm32-wasi/node_modules/@emnapi/core": {
+ "version": "1.11.2",
+ "resolved": "https://registry.npmjs.org/@emnapi/core/-/core-1.11.2.tgz",
+ "integrity": "sha512-TC8MkTuZUtcTSiFeuC0ksCh9QIJ5+F21MvZ4Wn4ORfYaFJ/0dsiudv5tVkejgwZlwQ39jL9WWDe2lz8x0WglOA==",
"license": "MIT",
- "peerDependencies": {
- "@softarc/native-federation": "^2.0.2"
+ "optional": true,
+ "dependencies": {
+ "@emnapi/wasi-threads": "1.2.2",
+ "tslib": "^2.4.0"
}
},
- "node_modules/@napi-rs/wasm-runtime": {
- "version": "1.1.5",
- "resolved": "https://registry.npmjs.org/@napi-rs/wasm-runtime/-/wasm-runtime-1.1.5.tgz",
- "integrity": "sha512-AWPoBRJ9tsnVhor4sjO7rkni+7p+2IAEFj6cx06UgP10jkQHqay/36uRV/bFkgrh18D9vb4cr8Q0Pthskgzy+Q==",
- "dev": true,
+ "node_modules/@oxc-parser/binding-wasm32-wasi/node_modules/@emnapi/runtime": {
+ "version": "1.11.2",
+ "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.11.2.tgz",
+ "integrity": "sha512-kyOl3X0DuTiT1h2ft8r2fYO8JYtU9a9Xis/zBSiGArNaagCOWx90N1k2wxp18czFDH+OgcWGb5ZP/XMt3dcyPA==",
"license": "MIT",
"optional": true,
"dependencies": {
- "@tybys/wasm-util": "^0.10.2"
- },
- "funding": {
- "type": "github",
- "url": "https://github.com/sponsors/Brooooooklyn"
- },
- "peerDependencies": {
- "@emnapi/core": "^1.7.1",
- "@emnapi/runtime": "^1.7.1"
+ "tslib": "^2.4.0"
}
},
- "node_modules/@nodelib/fs.scandir": {
- "version": "2.1.5",
- "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz",
- "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==",
- "dev": true,
+ "node_modules/@oxc-parser/binding-wasm32-wasi/node_modules/@emnapi/wasi-threads": {
+ "version": "1.2.2",
+ "resolved": "https://registry.npmjs.org/@emnapi/wasi-threads/-/wasi-threads-1.2.2.tgz",
+ "integrity": "sha512-c95qOXkHdydNKhscBTebqEC1CVAZpyqOfVfBzQ1qgzyl3gfeldUjIggDbIZgDKsHLgnsM+igH7TJ/eAasaVuMA==",
"license": "MIT",
+ "optional": true,
"dependencies": {
- "@nodelib/fs.stat": "2.0.5",
- "run-parallel": "^1.1.9"
- },
- "engines": {
- "node": ">= 8"
+ "tslib": "^2.4.0"
}
},
- "node_modules/@nodelib/fs.stat": {
- "version": "2.0.5",
- "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz",
- "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==",
- "dev": true,
+ "node_modules/@oxc-parser/binding-win32-arm64-msvc": {
+ "version": "0.141.0",
+ "resolved": "https://registry.npmjs.org/@oxc-parser/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-0.141.0.tgz",
+ "integrity": "sha512-KLSEH9GwgbrqbJOjtGHt9STw96s+78yDzp7IDN8Lno+7Ut9sNBfZ4jYZIz4mD50qmWUjoOI7i9I6UENbhNbMZQ==",
+ "cpu": [
+ "arm64"
+ ],
"license": "MIT",
+ "optional": true,
+ "os": [
+ "win32"
+ ],
"engines": {
- "node": ">= 8"
+ "node": "^20.19.0 || >=22.12.0"
}
},
- "node_modules/@nodelib/fs.walk": {
- "version": "1.2.8",
- "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz",
- "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==",
- "dev": true,
+ "node_modules/@oxc-parser/binding-win32-ia32-msvc": {
+ "version": "0.141.0",
+ "resolved": "https://registry.npmjs.org/@oxc-parser/binding-win32-ia32-msvc/-/binding-win32-ia32-msvc-0.141.0.tgz",
+ "integrity": "sha512-9UVWUOOCI/1YkiSSNjg2zyBJYM9E/t1A/8GNobd48JDn/fQ6mzxcVO3H08jb3rAaW/B1VBf8eCORTvSsO9T08g==",
+ "cpu": [
+ "ia32"
+ ],
"license": "MIT",
- "dependencies": {
- "@nodelib/fs.scandir": "2.1.5",
- "fastq": "^1.6.0"
- },
+ "optional": true,
+ "os": [
+ "win32"
+ ],
"engines": {
- "node": ">= 8"
+ "node": "^20.19.0 || >=22.12.0"
}
},
- "node_modules/@originjs/vite-plugin-federation": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/@originjs/vite-plugin-federation/-/vite-plugin-federation-1.4.0.tgz",
- "integrity": "sha512-QvrU2mQ4t1dHr7M47CPATMjELHkBPqM9WKXsdvoy98EQ9lV9d6vRDhRpcpfH5utrB/375S7xtTdNCDH8UuZDBA==",
- "license": "MulanPSL-2.0",
- "dependencies": {
- "estree-walker": "^3.0.2",
- "magic-string": "^0.27.0"
- },
+ "node_modules/@oxc-parser/binding-win32-x64-msvc": {
+ "version": "0.141.0",
+ "resolved": "https://registry.npmjs.org/@oxc-parser/binding-win32-x64-msvc/-/binding-win32-x64-msvc-0.141.0.tgz",
+ "integrity": "sha512-HI/wsvbWT5RHHw5c37D0fEgeTd8/1Q4OJs5jUmEBc17VZFG6SsCIe4barq7NsAPPks/JW+3ayi3Rp+PQI5h4Kg==",
+ "cpu": [
+ "x64"
+ ],
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "win32"
+ ],
"engines": {
- "node": ">=14.0.0",
- "pnpm": ">=7.0.1"
+ "node": "^20.19.0 || >=22.12.0"
}
},
"node_modules/@oxc-project/types": {
@@ -721,6 +1333,30 @@
"url": "https://github.com/sponsors/Boshen"
}
},
+ "node_modules/@parcel/source-map": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/@parcel/source-map/-/source-map-2.1.1.tgz",
+ "integrity": "sha512-Ejx1P/mj+kMjQb8/y5XxDUn4reGdr+WyKYloBljpppUy8gs42T+BNoEOuRYqDVdgPc6NxduzIDoJS9pOFfV5Ew==",
+ "license": "MIT",
+ "dependencies": {
+ "detect-libc": "^1.0.3"
+ },
+ "engines": {
+ "node": "^12.18.3 || >=14"
+ }
+ },
+ "node_modules/@parcel/source-map/node_modules/detect-libc": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz",
+ "integrity": "sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg==",
+ "license": "Apache-2.0",
+ "bin": {
+ "detect-libc": "bin/detect-libc.js"
+ },
+ "engines": {
+ "node": ">=0.10"
+ }
+ },
"node_modules/@rolldown/binding-android-arm64": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/@rolldown/binding-android-arm64/-/binding-android-arm64-1.0.3.tgz",
@@ -985,107 +1621,6 @@
"dev": true,
"license": "MIT"
},
- "node_modules/@rollup/plugin-commonjs": {
- "version": "22.0.2",
- "resolved": "https://registry.npmjs.org/@rollup/plugin-commonjs/-/plugin-commonjs-22.0.2.tgz",
- "integrity": "sha512-//NdP6iIwPbMTcazYsiBMbJW7gfmpHom33u1beiIoHDEM0Q9clvtQB1T0efvMqHeKsGohiHo97BCPCkBXdscwg==",
- "license": "MIT",
- "dependencies": {
- "@rollup/pluginutils": "^3.1.0",
- "commondir": "^1.0.1",
- "estree-walker": "^2.0.1",
- "glob": "^7.1.6",
- "is-reference": "^1.2.1",
- "magic-string": "^0.25.7",
- "resolve": "^1.17.0"
- },
- "engines": {
- "node": ">= 12.0.0"
- },
- "peerDependencies": {
- "rollup": "^2.68.0"
- }
- },
- "node_modules/@rollup/plugin-commonjs/node_modules/estree-walker": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz",
- "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==",
- "license": "MIT"
- },
- "node_modules/@rollup/plugin-commonjs/node_modules/magic-string": {
- "version": "0.25.9",
- "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.9.tgz",
- "integrity": "sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==",
- "license": "MIT",
- "dependencies": {
- "sourcemap-codec": "^1.4.8"
- }
- },
- "node_modules/@rollup/plugin-node-resolve": {
- "version": "13.3.0",
- "resolved": "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-13.3.0.tgz",
- "integrity": "sha512-Lus8rbUo1eEcnS4yTFKLZrVumLPY+YayBdWXgFSHYhTT2iJbMhoaaBL3xl5NCdeRytErGr8tZ0L71BMRmnlwSw==",
- "license": "MIT",
- "dependencies": {
- "@rollup/pluginutils": "^3.1.0",
- "@types/resolve": "1.17.1",
- "deepmerge": "^4.2.2",
- "is-builtin-module": "^3.1.0",
- "is-module": "^1.0.0",
- "resolve": "^1.19.0"
- },
- "engines": {
- "node": ">= 10.0.0"
- },
- "peerDependencies": {
- "rollup": "^2.42.0"
- }
- },
- "node_modules/@rollup/plugin-replace": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/@rollup/plugin-replace/-/plugin-replace-4.0.0.tgz",
- "integrity": "sha512-+rumQFiaNac9y64OHtkHGmdjm7us9bo1PlbgQfdihQtuNxzjpaB064HbRnewUOggLQxVCCyINfStkgmBeQpv1g==",
- "license": "MIT",
- "dependencies": {
- "@rollup/pluginutils": "^3.1.0",
- "magic-string": "^0.25.7"
- },
- "peerDependencies": {
- "rollup": "^1.20.0 || ^2.0.0"
- }
- },
- "node_modules/@rollup/plugin-replace/node_modules/magic-string": {
- "version": "0.25.9",
- "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.9.tgz",
- "integrity": "sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==",
- "license": "MIT",
- "dependencies": {
- "sourcemap-codec": "^1.4.8"
- }
- },
- "node_modules/@rollup/pluginutils": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-3.1.0.tgz",
- "integrity": "sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg==",
- "license": "MIT",
- "dependencies": {
- "@types/estree": "0.0.39",
- "estree-walker": "^1.0.1",
- "picomatch": "^2.2.2"
- },
- "engines": {
- "node": ">= 8.0.0"
- },
- "peerDependencies": {
- "rollup": "^1.20.0||^2.0.0"
- }
- },
- "node_modules/@rollup/pluginutils/node_modules/estree-walker": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-1.0.1.tgz",
- "integrity": "sha512-1fMXF3YP4pZZVozF8j/ZLfvnR8NSIljt56UhbZ5PeeDmmGHpgpdwQt7ITlGvYaQukCvuBRMLEiKiYC+oeIg4cg==",
- "license": "MIT"
- },
"node_modules/@softarc/native-federation": {
"version": "2.0.26",
"resolved": "https://registry.npmjs.org/@softarc/native-federation/-/native-federation-2.0.26.tgz",
@@ -1098,24 +1633,35 @@
}
},
"node_modules/@softarc/native-federation-esbuild": {
- "version": "2.0.26",
- "resolved": "https://registry.npmjs.org/@softarc/native-federation-esbuild/-/native-federation-esbuild-2.0.26.tgz",
- "integrity": "sha512-Py2gc2Ouc+XBL9S/d3VdVMrUk2bgbuaCUTDI+3MusUXpHjbA32SWFQZOh0qY3nc/ikJWKq4/pK80jdEouMWCHA==",
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/@softarc/native-federation-esbuild/-/native-federation-esbuild-4.0.0.tgz",
+ "integrity": "sha512-LHRhl2C7vdQY9Lq8/EbcpWWNCSDjDja1chzuGfGlvy54zOZxyslMguFv/cxYOouTod6a8U33lrgGk75LnTTrmQ==",
+ "license": "MIT",
"dependencies": {
- "@rollup/plugin-commonjs": "^22.0.2",
- "@rollup/plugin-node-resolve": "^13.3.0",
- "@rollup/plugin-replace": "^4.0.0",
- "acorn": "^8.8.1",
- "esbuild": "^0.18.12",
- "npmlog": "^6.0.2",
- "rollup": "^2.79.0",
- "rollup-plugin-node-externals": "^4.1.1"
+ "@chialab/esbuild-plugin-commonjs": "^0.19.1",
+ "@softarc/native-federation": "~4.1.0"
+ }
+ },
+ "node_modules/@softarc/native-federation-esbuild/node_modules/@esbuild/aix-ppc64": {
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.25.12.tgz",
+ "integrity": "sha512-Hhmwd6CInZ3dwpuGTF8fJG6yoWmsToE+vYgD4nytZVxcu1ulHpUQRAB1UJ8+N1Am3Mz4+xOByoQoSZf4D+CpkA==",
+ "cpu": [
+ "ppc64"
+ ],
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "aix"
+ ],
+ "engines": {
+ "node": ">=18"
}
},
"node_modules/@softarc/native-federation-esbuild/node_modules/@esbuild/android-arm": {
- "version": "0.25.2",
- "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.25.2.tgz",
- "integrity": "sha512-NQhH7jFstVY5x8CKbcfa166GoV0EFkaPkCKBQkdPJFvo5u+nGXLEH/ooniLb3QI8Fk58YAx7nsPLozUWfCBOJA==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.25.12.tgz",
+ "integrity": "sha512-VJ+sKvNA/GE7Ccacc9Cha7bpS8nyzVv0jdVgwNDaR4gDMC/2TTRc33Ip8qrNYUcpkOHUT5OZ0bUcNNVZQ9RLlg==",
"cpu": [
"arm"
],
@@ -1129,9 +1675,9 @@
}
},
"node_modules/@softarc/native-federation-esbuild/node_modules/@esbuild/android-arm64": {
- "version": "0.25.2",
- "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.25.2.tgz",
- "integrity": "sha512-5ZAX5xOmTligeBaeNEPnPaeEuah53Id2tX4c2CVP3JaROTH+j4fnfHCkr1PjXMd78hMst+TlkfKcW/DlTq0i4w==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.25.12.tgz",
+ "integrity": "sha512-6AAmLG7zwD1Z159jCKPvAxZd4y/VTO0VkprYy+3N2FtJ8+BQWFXU+OxARIwA46c5tdD9SsKGZ/1ocqBS/gAKHg==",
"cpu": [
"arm64"
],
@@ -1145,9 +1691,9 @@
}
},
"node_modules/@softarc/native-federation-esbuild/node_modules/@esbuild/android-x64": {
- "version": "0.25.2",
- "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.25.2.tgz",
- "integrity": "sha512-Ffcx+nnma8Sge4jzddPHCZVRvIfQ0kMsUsCMcJRHkGJ1cDmhe4SsrYIjLUKn1xpHZybmOqCWwB0zQvsjdEHtkg==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.25.12.tgz",
+ "integrity": "sha512-5jbb+2hhDHx5phYR2By8GTWEzn6I9UqR11Kwf22iKbNpYrsmRB18aX/9ivc5cabcUiAT/wM+YIZ6SG9QO6a8kg==",
"cpu": [
"x64"
],
@@ -1161,9 +1707,9 @@
}
},
"node_modules/@softarc/native-federation-esbuild/node_modules/@esbuild/darwin-arm64": {
- "version": "0.25.2",
- "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.25.2.tgz",
- "integrity": "sha512-MpM6LUVTXAzOvN4KbjzU/q5smzryuoNjlriAIx+06RpecwCkL9JpenNzpKd2YMzLJFOdPqBpuub6eVRP5IgiSA==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.25.12.tgz",
+ "integrity": "sha512-N3zl+lxHCifgIlcMUP5016ESkeQjLj/959RxxNYIthIg+CQHInujFuXeWbWMgnTo4cp5XVHqFPmpyu9J65C1Yg==",
"cpu": [
"arm64"
],
@@ -1177,9 +1723,9 @@
}
},
"node_modules/@softarc/native-federation-esbuild/node_modules/@esbuild/darwin-x64": {
- "version": "0.25.2",
- "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.25.2.tgz",
- "integrity": "sha512-5eRPrTX7wFyuWe8FqEFPG2cU0+butQQVNcT4sVipqjLYQjjh8a8+vUTfgBKM88ObB85ahsnTwF7PSIt6PG+QkA==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.25.12.tgz",
+ "integrity": "sha512-HQ9ka4Kx21qHXwtlTUVbKJOAnmG1ipXhdWTmNXiPzPfWKpXqASVcWdnf2bnL73wgjNrFXAa3yYvBSd9pzfEIpA==",
"cpu": [
"x64"
],
@@ -1193,9 +1739,9 @@
}
},
"node_modules/@softarc/native-federation-esbuild/node_modules/@esbuild/freebsd-arm64": {
- "version": "0.25.2",
- "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.25.2.tgz",
- "integrity": "sha512-mLwm4vXKiQ2UTSX4+ImyiPdiHjiZhIaE9QvC7sw0tZ6HoNMjYAqQpGyui5VRIi5sGd+uWq940gdCbY3VLvsO1w==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.25.12.tgz",
+ "integrity": "sha512-gA0Bx759+7Jve03K1S0vkOu5Lg/85dou3EseOGUes8flVOGxbhDDh/iZaoek11Y8mtyKPGF3vP8XhnkDEAmzeg==",
"cpu": [
"arm64"
],
@@ -1209,9 +1755,9 @@
}
},
"node_modules/@softarc/native-federation-esbuild/node_modules/@esbuild/freebsd-x64": {
- "version": "0.25.2",
- "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.25.2.tgz",
- "integrity": "sha512-6qyyn6TjayJSwGpm8J9QYYGQcRgc90nmfdUb0O7pp1s4lTY+9D0H9O02v5JqGApUyiHOtkz6+1hZNvNtEhbwRQ==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.25.12.tgz",
+ "integrity": "sha512-TGbO26Yw2xsHzxtbVFGEXBFH0FRAP7gtcPE7P5yP7wGy7cXK2oO7RyOhL5NLiqTlBh47XhmIUXuGciXEqYFfBQ==",
"cpu": [
"x64"
],
@@ -1225,9 +1771,9 @@
}
},
"node_modules/@softarc/native-federation-esbuild/node_modules/@esbuild/linux-arm": {
- "version": "0.25.2",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.25.2.tgz",
- "integrity": "sha512-UHBRgJcmjJv5oeQF8EpTRZs/1knq6loLxTsjc3nxO9eXAPDLcWW55flrMVc97qFPbmZP31ta1AZVUKQzKTzb0g==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.25.12.tgz",
+ "integrity": "sha512-lPDGyC1JPDou8kGcywY0YILzWlhhnRjdof3UlcoqYmS9El818LLfJJc3PXXgZHrHCAKs/Z2SeZtDJr5MrkxtOw==",
"cpu": [
"arm"
],
@@ -1241,9 +1787,9 @@
}
},
"node_modules/@softarc/native-federation-esbuild/node_modules/@esbuild/linux-arm64": {
- "version": "0.25.2",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.25.2.tgz",
- "integrity": "sha512-gq/sjLsOyMT19I8obBISvhoYiZIAaGF8JpeXu1u8yPv8BE5HlWYobmlsfijFIZ9hIVGYkbdFhEqC0NvM4kNO0g==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.25.12.tgz",
+ "integrity": "sha512-8bwX7a8FghIgrupcxb4aUmYDLp8pX06rGh5HqDT7bB+8Rdells6mHvrFHHW2JAOPZUbnjUpKTLg6ECyzvas2AQ==",
"cpu": [
"arm64"
],
@@ -1257,9 +1803,9 @@
}
},
"node_modules/@softarc/native-federation-esbuild/node_modules/@esbuild/linux-ia32": {
- "version": "0.25.2",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.25.2.tgz",
- "integrity": "sha512-bBYCv9obgW2cBP+2ZWfjYTU+f5cxRoGGQ5SeDbYdFCAZpYWrfjjfYwvUpP8MlKbP0nwZ5gyOU/0aUzZ5HWPuvQ==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.25.12.tgz",
+ "integrity": "sha512-0y9KrdVnbMM2/vG8KfU0byhUN+EFCny9+8g202gYqSSVMonbsCfLjUO+rCci7pM0WBEtz+oK/PIwHkzxkyharA==",
"cpu": [
"ia32"
],
@@ -1273,9 +1819,9 @@
}
},
"node_modules/@softarc/native-federation-esbuild/node_modules/@esbuild/linux-loong64": {
- "version": "0.25.2",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.25.2.tgz",
- "integrity": "sha512-SHNGiKtvnU2dBlM5D8CXRFdd+6etgZ9dXfaPCeJtz+37PIUlixvlIhI23L5khKXs3DIzAn9V8v+qb1TRKrgT5w==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.25.12.tgz",
+ "integrity": "sha512-h///Lr5a9rib/v1GGqXVGzjL4TMvVTv+s1DPoxQdz7l/AYv6LDSxdIwzxkrPW438oUXiDtwM10o9PmwS/6Z0Ng==",
"cpu": [
"loong64"
],
@@ -1289,9 +1835,9 @@
}
},
"node_modules/@softarc/native-federation-esbuild/node_modules/@esbuild/linux-mips64el": {
- "version": "0.25.2",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.25.2.tgz",
- "integrity": "sha512-hDDRlzE6rPeoj+5fsADqdUZl1OzqDYow4TB4Y/3PlKBD0ph1e6uPHzIQcv2Z65u2K0kpeByIyAjCmjn1hJgG0Q==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.25.12.tgz",
+ "integrity": "sha512-iyRrM1Pzy9GFMDLsXn1iHUm18nhKnNMWscjmp4+hpafcZjrr2WbT//d20xaGljXDBYHqRcl8HnxbX6uaA/eGVw==",
"cpu": [
"mips64el"
],
@@ -1305,9 +1851,9 @@
}
},
"node_modules/@softarc/native-federation-esbuild/node_modules/@esbuild/linux-ppc64": {
- "version": "0.25.2",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.25.2.tgz",
- "integrity": "sha512-tsHu2RRSWzipmUi9UBDEzc0nLc4HtpZEI5Ba+Omms5456x5WaNuiG3u7xh5AO6sipnJ9r4cRWQB2tUjPyIkc6g==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.25.12.tgz",
+ "integrity": "sha512-9meM/lRXxMi5PSUqEXRCtVjEZBGwB7P/D4yT8UG/mwIdze2aV4Vo6U5gD3+RsoHXKkHCfSxZKzmDssVlRj1QQA==",
"cpu": [
"ppc64"
],
@@ -1321,9 +1867,9 @@
}
},
"node_modules/@softarc/native-federation-esbuild/node_modules/@esbuild/linux-riscv64": {
- "version": "0.25.2",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.25.2.tgz",
- "integrity": "sha512-k4LtpgV7NJQOml/10uPU0s4SAXGnowi5qBSjaLWMojNCUICNu7TshqHLAEbkBdAszL5TabfvQ48kK84hyFzjnw==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.25.12.tgz",
+ "integrity": "sha512-Zr7KR4hgKUpWAwb1f3o5ygT04MzqVrGEGXGLnj15YQDJErYu/BGg+wmFlIDOdJp0PmB0lLvxFIOXZgFRrdjR0w==",
"cpu": [
"riscv64"
],
@@ -1337,9 +1883,9 @@
}
},
"node_modules/@softarc/native-federation-esbuild/node_modules/@esbuild/linux-s390x": {
- "version": "0.25.2",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.25.2.tgz",
- "integrity": "sha512-GRa4IshOdvKY7M/rDpRR3gkiTNp34M0eLTaC1a08gNrh4u488aPhuZOCpkF6+2wl3zAN7L7XIpOFBhnaE3/Q8Q==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.25.12.tgz",
+ "integrity": "sha512-MsKncOcgTNvdtiISc/jZs/Zf8d0cl/t3gYWX8J9ubBnVOwlk65UIEEvgBORTiljloIWnBzLs4qhzPkJcitIzIg==",
"cpu": [
"s390x"
],
@@ -1353,9 +1899,9 @@
}
},
"node_modules/@softarc/native-federation-esbuild/node_modules/@esbuild/linux-x64": {
- "version": "0.25.2",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.25.2.tgz",
- "integrity": "sha512-QInHERlqpTTZ4FRB0fROQWXcYRD64lAoiegezDunLpalZMjcUcld3YzZmVJ2H/Cp0wJRZ8Xtjtj0cEHhYc/uUg==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.25.12.tgz",
+ "integrity": "sha512-uqZMTLr/zR/ed4jIGnwSLkaHmPjOjJvnm6TVVitAa08SLS9Z0VM8wIRx7gWbJB5/J54YuIMInDquWyYvQLZkgw==",
"cpu": [
"x64"
],
@@ -1368,10 +1914,26 @@
"node": ">=18"
}
},
+ "node_modules/@softarc/native-federation-esbuild/node_modules/@esbuild/netbsd-arm64": {
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.25.12.tgz",
+ "integrity": "sha512-xXwcTq4GhRM7J9A8Gv5boanHhRa/Q9KLVmcyXHCTaM4wKfIpWkdXiMog/KsnxzJ0A1+nD+zoecuzqPmCRyBGjg==",
+ "cpu": [
+ "arm64"
+ ],
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "netbsd"
+ ],
+ "engines": {
+ "node": ">=18"
+ }
+ },
"node_modules/@softarc/native-federation-esbuild/node_modules/@esbuild/netbsd-x64": {
- "version": "0.25.2",
- "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.25.2.tgz",
- "integrity": "sha512-voZT9Z+tpOxrvfKFyfDYPc4DO4rk06qamv1a/fkuzHpiVBMOhpjK+vBmWM8J1eiB3OLSMFYNaOaBNLXGChf5tg==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.25.12.tgz",
+ "integrity": "sha512-Ld5pTlzPy3YwGec4OuHh1aCVCRvOXdH8DgRjfDy/oumVovmuSzWfnSJg+VtakB9Cm0gxNO9BzWkj6mtO1FMXkQ==",
"cpu": [
"x64"
],
@@ -1384,10 +1946,26 @@
"node": ">=18"
}
},
+ "node_modules/@softarc/native-federation-esbuild/node_modules/@esbuild/openbsd-arm64": {
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.25.12.tgz",
+ "integrity": "sha512-fF96T6KsBo/pkQI950FARU9apGNTSlZGsv1jZBAlcLL1MLjLNIWPBkj5NlSz8aAzYKg+eNqknrUJ24QBybeR5A==",
+ "cpu": [
+ "arm64"
+ ],
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "openbsd"
+ ],
+ "engines": {
+ "node": ">=18"
+ }
+ },
"node_modules/@softarc/native-federation-esbuild/node_modules/@esbuild/openbsd-x64": {
- "version": "0.25.2",
- "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.25.2.tgz",
- "integrity": "sha512-t/TkWwahkH0Tsgoq1Ju7QfgGhArkGLkF1uYz8nQS/PPFlXbP5YgRpqQR3ARRiC2iXoLTWFxc6DJMSK10dVXluw==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.25.12.tgz",
+ "integrity": "sha512-MZyXUkZHjQxUvzK7rN8DJ3SRmrVrke8ZyRusHlP+kuwqTcfWLyqMOE3sScPPyeIXN/mDJIfGXvcMqCgYKekoQw==",
"cpu": [
"x64"
],
@@ -1400,10 +1978,26 @@
"node": ">=18"
}
},
+ "node_modules/@softarc/native-federation-esbuild/node_modules/@esbuild/openharmony-arm64": {
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.25.12.tgz",
+ "integrity": "sha512-rm0YWsqUSRrjncSXGA7Zv78Nbnw4XL6/dzr20cyrQf7ZmRcsovpcRBdhD43Nuk3y7XIoW2OxMVvwuRvk9XdASg==",
+ "cpu": [
+ "arm64"
+ ],
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "openharmony"
+ ],
+ "engines": {
+ "node": ">=18"
+ }
+ },
"node_modules/@softarc/native-federation-esbuild/node_modules/@esbuild/sunos-x64": {
- "version": "0.25.2",
- "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.25.2.tgz",
- "integrity": "sha512-cfZH1co2+imVdWCjd+D1gf9NjkchVhhdpgb1q5y6Hcv9TP6Zi9ZG/beI3ig8TvwT9lH9dlxLq5MQBBgwuj4xvA==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.25.12.tgz",
+ "integrity": "sha512-3wGSCDyuTHQUzt0nV7bocDy72r2lI33QL3gkDNGkod22EsYl04sMf0qLb8luNKTOmgF/eDEDP5BFNwoBKH441w==",
"cpu": [
"x64"
],
@@ -1417,9 +2011,9 @@
}
},
"node_modules/@softarc/native-federation-esbuild/node_modules/@esbuild/win32-arm64": {
- "version": "0.25.2",
- "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.25.2.tgz",
- "integrity": "sha512-7Loyjh+D/Nx/sOTzV8vfbB3GJuHdOQyrOryFdZvPHLf42Tk9ivBU5Aedi7iyX+x6rbn2Mh68T4qq1SDqJBQO5Q==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.25.12.tgz",
+ "integrity": "sha512-rMmLrur64A7+DKlnSuwqUdRKyd3UE7oPJZmnljqEptesKM8wx9J8gx5u0+9Pq0fQQW8vqeKebwNXdfOyP+8Bsg==",
"cpu": [
"arm64"
],
@@ -1433,9 +2027,9 @@
}
},
"node_modules/@softarc/native-federation-esbuild/node_modules/@esbuild/win32-ia32": {
- "version": "0.25.2",
- "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.25.2.tgz",
- "integrity": "sha512-WRJgsz9un0nqZJ4MfhabxaD9Ft8KioqU3JMinOTvobbX6MOSUigSBlogP8QB3uxpJDsFS6yN+3FDBdqE5lg9kg==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.25.12.tgz",
+ "integrity": "sha512-HkqnmmBoCbCwxUKKNPBixiWDGCpQGVsrQfJoVGYLPT41XWF8lHuE5N6WhVia2n4o5QK5M4tYr21827fNhi4byQ==",
"cpu": [
"ia32"
],
@@ -1449,9 +2043,9 @@
}
},
"node_modules/@softarc/native-federation-esbuild/node_modules/@esbuild/win32-x64": {
- "version": "0.25.2",
- "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.25.2.tgz",
- "integrity": "sha512-kM3HKb16VIXZyIeVrM1ygYmZBKybX8N4p754bw390wGO3Tf2j4L2/WYL+4suWujpgf6GBYs3jv7TyUivdd05JA==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.25.12.tgz",
+ "integrity": "sha512-alJC0uCZpTFrSL0CCDjcgleBXPnCrEAhTBILpeAp7M/OFgoqtAetfBzX0xM00MUsVVPpVjlPuMbREqnZCXaTnA==",
"cpu": [
"x64"
],
@@ -1464,10 +2058,23 @@
"node": ">=18"
}
},
+ "node_modules/@softarc/native-federation-esbuild/node_modules/@softarc/native-federation": {
+ "version": "4.1.3",
+ "resolved": "https://registry.npmjs.org/@softarc/native-federation/-/native-federation-4.1.3.tgz",
+ "integrity": "sha512-UL5A4+3DP9+ZiUUjeOBs/E6yHdfa5MHL6u4008+sH4pf+UHx2c50nWPlVkx/g5OSd8G5PTwha5ym9NYp0/IHAQ==",
+ "license": "MIT",
+ "dependencies": {
+ "@softarc/sheriff-core": "^0.19.6",
+ "chalk": "^5.6.2",
+ "esbuild": "^0.28.0",
+ "fast-glob": "^3.3.3",
+ "json5": "^2.2.3"
+ }
+ },
"node_modules/@softarc/native-federation-esbuild/node_modules/esbuild": {
- "version": "0.25.2",
- "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.25.2.tgz",
- "integrity": "sha512-16854zccKPnC+toMywC+uKNeYSv+/eXkevRAfwRD/G9Cleq66m8XFIrigkbvauLLlCfDL45Q2cWegSg53gGBnQ==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.25.12.tgz",
+ "integrity": "sha512-bbPBYYrtZbkt6Os6FiTLCTFxvq4tt3JKall1vRwshA3fdVztsLAatFaZobhkBC8/BrPetoa0oksYoKXoG4ryJg==",
"hasInstallScript": true,
"license": "MIT",
"bin": {
@@ -1477,31 +2084,32 @@
"node": ">=18"
},
"optionalDependencies": {
- "@esbuild/aix-ppc64": "0.25.2",
- "@esbuild/android-arm": "0.25.2",
- "@esbuild/android-arm64": "0.25.2",
- "@esbuild/android-x64": "0.25.2",
- "@esbuild/darwin-arm64": "0.25.2",
- "@esbuild/darwin-x64": "0.25.2",
- "@esbuild/freebsd-arm64": "0.25.2",
- "@esbuild/freebsd-x64": "0.25.2",
- "@esbuild/linux-arm": "0.25.2",
- "@esbuild/linux-arm64": "0.25.2",
- "@esbuild/linux-ia32": "0.25.2",
- "@esbuild/linux-loong64": "0.25.2",
- "@esbuild/linux-mips64el": "0.25.2",
- "@esbuild/linux-ppc64": "0.25.2",
- "@esbuild/linux-riscv64": "0.25.2",
- "@esbuild/linux-s390x": "0.25.2",
- "@esbuild/linux-x64": "0.25.2",
- "@esbuild/netbsd-arm64": "0.25.2",
- "@esbuild/netbsd-x64": "0.25.2",
- "@esbuild/openbsd-arm64": "0.25.2",
- "@esbuild/openbsd-x64": "0.25.2",
- "@esbuild/sunos-x64": "0.25.2",
- "@esbuild/win32-arm64": "0.25.2",
- "@esbuild/win32-ia32": "0.25.2",
- "@esbuild/win32-x64": "0.25.2"
+ "@esbuild/aix-ppc64": "0.25.12",
+ "@esbuild/android-arm": "0.25.12",
+ "@esbuild/android-arm64": "0.25.12",
+ "@esbuild/android-x64": "0.25.12",
+ "@esbuild/darwin-arm64": "0.25.12",
+ "@esbuild/darwin-x64": "0.25.12",
+ "@esbuild/freebsd-arm64": "0.25.12",
+ "@esbuild/freebsd-x64": "0.25.12",
+ "@esbuild/linux-arm": "0.25.12",
+ "@esbuild/linux-arm64": "0.25.12",
+ "@esbuild/linux-ia32": "0.25.12",
+ "@esbuild/linux-loong64": "0.25.12",
+ "@esbuild/linux-mips64el": "0.25.12",
+ "@esbuild/linux-ppc64": "0.25.12",
+ "@esbuild/linux-riscv64": "0.25.12",
+ "@esbuild/linux-s390x": "0.25.12",
+ "@esbuild/linux-x64": "0.25.12",
+ "@esbuild/netbsd-arm64": "0.25.12",
+ "@esbuild/netbsd-x64": "0.25.12",
+ "@esbuild/openbsd-arm64": "0.25.12",
+ "@esbuild/openbsd-x64": "0.25.12",
+ "@esbuild/openharmony-arm64": "0.25.12",
+ "@esbuild/sunos-x64": "0.25.12",
+ "@esbuild/win32-arm64": "0.25.12",
+ "@esbuild/win32-ia32": "0.25.12",
+ "@esbuild/win32-x64": "0.25.12"
}
},
"node_modules/@softarc/native-federation-runtime": {
@@ -1512,11 +2120,22 @@
"tslib": "^2.3.0"
}
},
+ "node_modules/@softarc/sheriff-core": {
+ "version": "0.19.6",
+ "resolved": "https://registry.npmjs.org/@softarc/sheriff-core/-/sheriff-core-0.19.6.tgz",
+ "integrity": "sha512-KACxHG9sS7kNWgnnBODzdr14kMLMrJVlQKc+tViUP03p2fRwNhESOA49bz51Yn7dro1mbtMmmFjICLmZSJDZZA==",
+ "license": "MIT",
+ "bin": {
+ "sheriff": "src/bin/main.js"
+ },
+ "peerDependencies": {
+ "typescript": ">=4.8"
+ }
+ },
"node_modules/@tybys/wasm-util": {
- "version": "0.10.2",
- "resolved": "https://registry.npmjs.org/@tybys/wasm-util/-/wasm-util-0.10.2.tgz",
- "integrity": "sha512-RoBvJ2X0wuKlWFIjrwffGw1IqZHKQqzIchKaadZZfnNpsAYp2mM0h36JtPCjNDAHGgYez/15uMBpfGwchhiMgg==",
- "dev": true,
+ "version": "0.10.3",
+ "resolved": "https://registry.npmjs.org/@tybys/wasm-util/-/wasm-util-0.10.3.tgz",
+ "integrity": "sha512-F3fo1MYrRJYL3zER0OUOmkutjr1Vp23m7OsSgp7nq4SP6OqX6C/56XFIPAl5bt3zaBRjmW7SGz3u/6LwFpYcOg==",
"license": "MIT",
"optional": true,
"dependencies": {
@@ -1568,20 +2187,25 @@
"@babel/types": "^7.20.7"
}
},
+ "node_modules/@types/esrecurse": {
+ "version": "4.3.1",
+ "resolved": "https://registry.npmjs.org/@types/esrecurse/-/esrecurse-4.3.1.tgz",
+ "integrity": "sha512-xJBAbDifo5hpffDBuHl0Y8ywswbiAp/Wi7Y/GtAgSlZyIABppyurxVueOPE8LUQOxdlgi6Zqce7uoEpqNTeiUw==",
+ "dev": true,
+ "license": "MIT"
+ },
"node_modules/@types/estree": {
- "version": "0.0.39",
- "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.39.tgz",
- "integrity": "sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==",
+ "version": "1.0.9",
+ "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.9.tgz",
+ "integrity": "sha512-GhdPgy1el4/ImP05X05Uw4cw2/M93BCUmnEvWZNStlCzEKME4Fkk+YpoA5OiHNQmoS7Cafb8Xa3Pya8m1Qrzeg==",
"license": "MIT"
},
- "node_modules/@types/node": {
- "version": "22.14.0",
- "resolved": "https://registry.npmjs.org/@types/node/-/node-22.14.0.tgz",
- "integrity": "sha512-Kmpl+z84ILoG+3T/zQFyAJsU6EPTmOCj8/2+83fSN6djd6I4o7uOuGIH6vq3PrjY5BGitSbFuMN18j3iknubbA==",
- "license": "MIT",
- "dependencies": {
- "undici-types": "~6.21.0"
- }
+ "node_modules/@types/json-schema": {
+ "version": "7.0.15",
+ "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz",
+ "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==",
+ "dev": true,
+ "license": "MIT"
},
"node_modules/@types/prop-types": {
"version": "15.7.14",
@@ -1608,135 +2232,153 @@
"dev": true,
"license": "MIT",
"peerDependencies": {
- "@types/react": "^18.0.0"
- }
- },
- "node_modules/@types/resolve": {
- "version": "1.17.1",
- "resolved": "https://registry.npmjs.org/@types/resolve/-/resolve-1.17.1.tgz",
- "integrity": "sha512-yy7HuzQhj0dhGpD8RLXSZWEkLsV9ibvxvi6EiJ3bkqLAO1RGo0WbkWQiwpRlSFymTJRz0d3k5LM3kkx8ArDbLw==",
- "license": "MIT",
- "dependencies": {
- "@types/node": "*"
+ "@types/react": "^18.0.0"
+ }
+ },
+ "node_modules/@typescript-eslint/eslint-plugin": {
+ "version": "8.65.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.65.0.tgz",
+ "integrity": "sha512-IEgob78X12rHpUmtcwFsXhZdVGJtwTVP8FiCLZkR6GlYVrl2PcuB+KhCE5BlVC/eQpQnu8WXRtkHZuPar+gCRA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@eslint-community/regexpp": "^4.12.2",
+ "@typescript-eslint/scope-manager": "8.65.0",
+ "@typescript-eslint/type-utils": "8.65.0",
+ "@typescript-eslint/utils": "8.65.0",
+ "@typescript-eslint/visitor-keys": "8.65.0",
+ "ignore": "^7.0.5",
+ "natural-compare": "^1.4.0",
+ "ts-api-utils": "^2.5.0"
+ },
+ "engines": {
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/typescript-eslint"
+ },
+ "peerDependencies": {
+ "@typescript-eslint/parser": "^8.65.0",
+ "eslint": "^8.57.0 || ^9.0.0 || ^10.0.0",
+ "typescript": ">=4.8.4 <6.1.0"
}
},
- "node_modules/@typescript-eslint/eslint-plugin": {
- "version": "7.18.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.18.0.tgz",
- "integrity": "sha512-94EQTWZ40mzBc42ATNIBimBEDltSJ9RQHCC8vc/PDbxi4k8dVwUAv4o98dk50M1zB+JGFxp43FP7f8+FP8R6Sw==",
+ "node_modules/@typescript-eslint/parser": {
+ "version": "8.65.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.65.0.tgz",
+ "integrity": "sha512-CZ4nMxWwgu1HEEFNkeaCptra9QCtkmKdgf3sWh1rl1trIhmxLilgTV4cwcbQ4wemnT4sWQN8CaKOmdYx+g2gMA==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@eslint-community/regexpp": "^4.10.0",
- "@typescript-eslint/scope-manager": "7.18.0",
- "@typescript-eslint/type-utils": "7.18.0",
- "@typescript-eslint/utils": "7.18.0",
- "@typescript-eslint/visitor-keys": "7.18.0",
- "graphemer": "^1.4.0",
- "ignore": "^5.3.1",
- "natural-compare": "^1.4.0",
- "ts-api-utils": "^1.3.0"
+ "@typescript-eslint/scope-manager": "8.65.0",
+ "@typescript-eslint/types": "8.65.0",
+ "@typescript-eslint/typescript-estree": "8.65.0",
+ "@typescript-eslint/visitor-keys": "8.65.0",
+ "debug": "^4.4.3"
},
"engines": {
- "node": "^18.18.0 || >=20.0.0"
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/typescript-eslint"
},
"peerDependencies": {
- "@typescript-eslint/parser": "^7.0.0",
- "eslint": "^8.56.0"
- },
- "peerDependenciesMeta": {
- "typescript": {
- "optional": true
- }
+ "eslint": "^8.57.0 || ^9.0.0 || ^10.0.0",
+ "typescript": ">=4.8.4 <6.1.0"
}
},
- "node_modules/@typescript-eslint/parser": {
- "version": "7.18.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-7.18.0.tgz",
- "integrity": "sha512-4Z+L8I2OqhZV8qA132M4wNL30ypZGYOQVBfMgxDH/K5UX0PNqTu1c6za9ST5r9+tavvHiTWmBnKzpCJ/GlVFtg==",
+ "node_modules/@typescript-eslint/project-service": {
+ "version": "8.65.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.65.0.tgz",
+ "integrity": "sha512-SxnPhbTsGahizDgbu7oqFH/xVtzIqMd/s+WtnSxNxJZJpLbdT5IPdzg8EZxO3+PoKahXmwJLeNQOpKJb3/bi7Q==",
"dev": true,
- "license": "BSD-2-Clause",
+ "license": "MIT",
"dependencies": {
- "@typescript-eslint/scope-manager": "7.18.0",
- "@typescript-eslint/types": "7.18.0",
- "@typescript-eslint/typescript-estree": "7.18.0",
- "@typescript-eslint/visitor-keys": "7.18.0",
- "debug": "^4.3.4"
+ "@typescript-eslint/tsconfig-utils": "^8.65.0",
+ "@typescript-eslint/types": "^8.65.0",
+ "debug": "^4.4.3"
},
"engines": {
- "node": "^18.18.0 || >=20.0.0"
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/typescript-eslint"
},
"peerDependencies": {
- "eslint": "^8.56.0"
- },
- "peerDependenciesMeta": {
- "typescript": {
- "optional": true
- }
+ "typescript": ">=4.8.4 <6.1.0"
}
},
"node_modules/@typescript-eslint/scope-manager": {
- "version": "7.18.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-7.18.0.tgz",
- "integrity": "sha512-jjhdIE/FPF2B7Z1uzc6i3oWKbGcHb87Qw7AWj6jmEqNOfDFbJWtjt/XfwCpvNkpGWlcJaog5vTR+VV8+w9JflA==",
+ "version": "8.65.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.65.0.tgz",
+ "integrity": "sha512-Esbl8OSYiVxBokYgWPf7VVWg/BE798wXhimnn9ML9Pt5qoDf8bfQlgjlKXR/k98+AcNzlLKYrpCcrcuZ9DZLgg==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@typescript-eslint/types": "7.18.0",
- "@typescript-eslint/visitor-keys": "7.18.0"
+ "@typescript-eslint/types": "8.65.0",
+ "@typescript-eslint/visitor-keys": "8.65.0"
+ },
+ "engines": {
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
},
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/typescript-eslint"
+ }
+ },
+ "node_modules/@typescript-eslint/tsconfig-utils": {
+ "version": "8.65.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.65.0.tgz",
+ "integrity": "sha512-j6GzGqCiRdA7Qhur2VVmKZAkBLfnHFQfx4TaJGL9RMveZqCo48jSHHO0DTgizEnGhtWnqmbtCUSrqSkdiY/0Hg==",
+ "dev": true,
+ "license": "MIT",
"engines": {
- "node": "^18.18.0 || >=20.0.0"
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/typescript-eslint"
+ },
+ "peerDependencies": {
+ "typescript": ">=4.8.4 <6.1.0"
}
},
"node_modules/@typescript-eslint/type-utils": {
- "version": "7.18.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-7.18.0.tgz",
- "integrity": "sha512-XL0FJXuCLaDuX2sYqZUUSOJ2sG5/i1AAze+axqmLnSkNEVMVYLF+cbwlB2w8D1tinFuSikHmFta+P+HOofrLeA==",
+ "version": "8.65.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.65.0.tgz",
+ "integrity": "sha512-YjaZ7PRI5qY7ax2L3PbvX0rRyGtipAReCWs0mhhDBHjH/vl0g0BonaGXrKdKpMbIIsMIwDgbk/xzkBTyAltS5g==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@typescript-eslint/typescript-estree": "7.18.0",
- "@typescript-eslint/utils": "7.18.0",
- "debug": "^4.3.4",
- "ts-api-utils": "^1.3.0"
+ "@typescript-eslint/types": "8.65.0",
+ "@typescript-eslint/typescript-estree": "8.65.0",
+ "@typescript-eslint/utils": "8.65.0",
+ "debug": "^4.4.3",
+ "ts-api-utils": "^2.5.0"
},
"engines": {
- "node": "^18.18.0 || >=20.0.0"
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/typescript-eslint"
},
"peerDependencies": {
- "eslint": "^8.56.0"
- },
- "peerDependenciesMeta": {
- "typescript": {
- "optional": true
- }
+ "eslint": "^8.57.0 || ^9.0.0 || ^10.0.0",
+ "typescript": ">=4.8.4 <6.1.0"
}
},
"node_modules/@typescript-eslint/types": {
- "version": "7.18.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.18.0.tgz",
- "integrity": "sha512-iZqi+Ds1y4EDYUtlOOC+aUmxnE9xS/yCigkjA7XpTKV6nCBd3Hp/PRGGmdwnfkV2ThMyYldP1wRpm/id99spTQ==",
+ "version": "8.65.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.65.0.tgz",
+ "integrity": "sha512-JSSwWNy+H0E/01jJEM+hrX6N0OFDzFzeIhHFSAS01tlVaevpG8cFyYRPhS5yjGOvBUx3sqQHVMjCL1CAZZMxBg==",
"dev": true,
"license": "MIT",
"engines": {
- "node": "^18.18.0 || >=20.0.0"
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
},
"funding": {
"type": "opencollective",
@@ -1744,81 +2386,87 @@
}
},
"node_modules/@typescript-eslint/typescript-estree": {
- "version": "7.18.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-7.18.0.tgz",
- "integrity": "sha512-aP1v/BSPnnyhMHts8cf1qQ6Q1IFwwRvAQGRvBFkWlo3/lH29OXA3Pts+c10nxRxIBrDnoMqzhgdwVe5f2D6OzA==",
+ "version": "8.65.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.65.0.tgz",
+ "integrity": "sha512-JboAE2swaYt4tb1fHhHTABE2K+OLy09XfcTbhnk4Pw96f9dd2e9iYsJ28gBggHlo5z5x1rkyWvcPoTuNTd4oGg==",
"dev": true,
- "license": "BSD-2-Clause",
+ "license": "MIT",
"dependencies": {
- "@typescript-eslint/types": "7.18.0",
- "@typescript-eslint/visitor-keys": "7.18.0",
- "debug": "^4.3.4",
- "globby": "^11.1.0",
- "is-glob": "^4.0.3",
- "minimatch": "^9.0.4",
- "semver": "^7.6.0",
- "ts-api-utils": "^1.3.0"
+ "@typescript-eslint/project-service": "8.65.0",
+ "@typescript-eslint/tsconfig-utils": "8.65.0",
+ "@typescript-eslint/types": "8.65.0",
+ "@typescript-eslint/visitor-keys": "8.65.0",
+ "debug": "^4.4.3",
+ "minimatch": "^10.2.2",
+ "semver": "^7.7.3",
+ "tinyglobby": "^0.2.15",
+ "ts-api-utils": "^2.5.0"
},
"engines": {
- "node": "^18.18.0 || >=20.0.0"
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/typescript-eslint"
},
- "peerDependenciesMeta": {
- "typescript": {
- "optional": true
- }
+ "peerDependencies": {
+ "typescript": ">=4.8.4 <6.1.0"
}
},
"node_modules/@typescript-eslint/utils": {
- "version": "7.18.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-7.18.0.tgz",
- "integrity": "sha512-kK0/rNa2j74XuHVcoCZxdFBMF+aq/vH83CXAOHieC+2Gis4mF8jJXT5eAfyD3K0sAxtPuwxaIOIOvhwzVDt/kw==",
+ "version": "8.65.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.65.0.tgz",
+ "integrity": "sha512-gXiwIHsYreboxeJucHKPvgwl7dXt50mF8s1/c00cP/WoVTyWKFdtfhRWwZiXYFU5H2O8vVoSLNrexFZjYS/SGA==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@eslint-community/eslint-utils": "^4.4.0",
- "@typescript-eslint/scope-manager": "7.18.0",
- "@typescript-eslint/types": "7.18.0",
- "@typescript-eslint/typescript-estree": "7.18.0"
+ "@eslint-community/eslint-utils": "^4.9.1",
+ "@typescript-eslint/scope-manager": "8.65.0",
+ "@typescript-eslint/types": "8.65.0",
+ "@typescript-eslint/typescript-estree": "8.65.0"
},
"engines": {
- "node": "^18.18.0 || >=20.0.0"
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/typescript-eslint"
},
"peerDependencies": {
- "eslint": "^8.56.0"
+ "eslint": "^8.57.0 || ^9.0.0 || ^10.0.0",
+ "typescript": ">=4.8.4 <6.1.0"
}
},
"node_modules/@typescript-eslint/visitor-keys": {
- "version": "7.18.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-7.18.0.tgz",
- "integrity": "sha512-cDF0/Gf81QpY3xYyJKDV14Zwdmid5+uuENhjH2EqFaF0ni+yAyq/LzMaIJdhNJXZI7uLzwIlA+V7oWoyn6Curg==",
+ "version": "8.65.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.65.0.tgz",
+ "integrity": "sha512-8C71BQkGjiMmXtop7pHVJu1l2NNShFdkCyD6a2ezzs5vU/L3LRtb69EtcteFwz0mYMPzIgOw0n6OV4VBUWZd7A==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@typescript-eslint/types": "7.18.0",
- "eslint-visitor-keys": "^3.4.3"
+ "@typescript-eslint/types": "8.65.0",
+ "eslint-visitor-keys": "^5.0.0"
},
"engines": {
- "node": "^18.18.0 || >=20.0.0"
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/typescript-eslint"
}
},
- "node_modules/@ungap/structured-clone": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.3.0.tgz",
- "integrity": "sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g==",
+ "node_modules/@typescript-eslint/visitor-keys/node_modules/eslint-visitor-keys": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-5.0.1.tgz",
+ "integrity": "sha512-tD40eHxA35h0PEIZNeIjkHoDR4YjjJp34biM0mDvplBe//mB+IHCqHDGV7pxF+7MklTvighcCPPZC7ynWyjdTA==",
"dev": true,
- "license": "ISC"
+ "license": "Apache-2.0",
+ "engines": {
+ "node": "^20.19.0 || ^22.13.0 || >=24"
+ },
+ "funding": {
+ "url": "https://opencollective.com/eslint"
+ }
},
"node_modules/@vitejs/plugin-react": {
"version": "4.3.4",
@@ -1841,9 +2489,10 @@
}
},
"node_modules/acorn": {
- "version": "8.14.1",
- "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.1.tgz",
- "integrity": "sha512-OvQ/2pUDKmgfCg++xsTX1wGxfTaszcHVcTctW4UJB4hibJx2HXxxO5UmVgyjMa+ZDsiaf5wWLXYpRWMmBI0QHg==",
+ "version": "8.17.0",
+ "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.17.0.tgz",
+ "integrity": "sha512-xRQbDb9BnwDafYNn6Vwl839DYVjqXYb1XVGtWAZ1kcDc6iwAL4hg3B1dZlRiuENFeO2H53gFG3in621AdERVAg==",
+ "dev": true,
"license": "MIT",
"bin": {
"acorn": "bin/acorn"
@@ -1863,9 +2512,9 @@
}
},
"node_modules/ajv": {
- "version": "6.14.0",
- "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.14.0.tgz",
- "integrity": "sha512-IWrosm/yrn43eiKqkfkHis7QioDleaXQHdDVPKg0FSwwd/DuvyX79TZnFOnYpB7dcsFAMmtFztZuXPDvSePkFw==",
+ "version": "6.15.0",
+ "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.15.0.tgz",
+ "integrity": "sha512-fgFx7Hfoq60ytK2c7DhnF8jIvzYgOMxfugjLOSMHjLIPgenqa7S7oaagATUq99mV6IYvN2tRmC0wnTYX6iPbMw==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -1888,22 +2537,6 @@
"node": ">=8"
}
},
- "node_modules/ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "color-convert": "^2.0.1"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
- }
- },
"node_modules/aproba": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz",
@@ -1924,29 +2557,16 @@
"node": "^12.13.0 || ^14.15.0 || >=16.0.0"
}
},
- "node_modules/argparse": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz",
- "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==",
- "dev": true,
- "license": "Python-2.0"
- },
- "node_modules/array-union": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz",
- "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==",
+ "node_modules/balanced-match": {
+ "version": "4.0.4",
+ "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-4.0.4.tgz",
+ "integrity": "sha512-BLrgEcRTwX2o6gGxGOCNyMvGSp35YofuYzw9h1IMTRmKqttAZZVU67bdb9Pr2vUHA8+j3i2tJfjO6C6+4myGTA==",
"dev": true,
"license": "MIT",
"engines": {
- "node": ">=8"
+ "node": "18 || 20 || >=22"
}
},
- "node_modules/balanced-match": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
- "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==",
- "license": "MIT"
- },
"node_modules/baseline-browser-mapping": {
"version": "2.10.38",
"resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.10.38.tgz",
@@ -1961,20 +2581,22 @@
}
},
"node_modules/brace-expansion": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.1.2.tgz",
- "integrity": "sha512-w5JZcKgdhDOgOwm8H+KgbosopHMuGcl6qbulwjtz3SM7I7P3yW1eAjzMPLrIE+NQ9vjgANKHWeMHnrT0OXW1oA==",
+ "version": "5.0.8",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-5.0.8.tgz",
+ "integrity": "sha512-JZyDyq3D4AUifKTPOB7DELf6XsB3WdPuNxCtob1vFXPsSXhdAiHBWJ/tJ8HAc9aH84BK+5JFZLNkJKx3G9kzQg==",
"dev": true,
"license": "MIT",
"dependencies": {
- "balanced-match": "^1.0.0"
+ "balanced-match": "^4.0.2"
+ },
+ "engines": {
+ "node": "20 || >=22"
}
},
"node_modules/braces": {
"version": "3.0.3",
"resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz",
"integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==",
- "dev": true,
"license": "MIT",
"dependencies": {
"fill-range": "^7.1.1"
@@ -2017,28 +2639,6 @@
"node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7"
}
},
- "node_modules/builtin-modules": {
- "version": "3.3.0",
- "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.3.0.tgz",
- "integrity": "sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==",
- "license": "MIT",
- "engines": {
- "node": ">=6"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/callsites": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz",
- "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=6"
- }
- },
"node_modules/caniuse-lite": {
"version": "1.0.30001799",
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001799.tgz",
@@ -2061,40 +2661,21 @@
"license": "CC-BY-4.0"
},
"node_modules/chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dev": true,
+ "version": "5.6.2",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.6.2.tgz",
+ "integrity": "sha512-7NzBL0rN6fMUW+f7A6Io4h40qQlG+xGmtMxfbnH/K7TAtt8JQWVQK+6g0UXKMeVJoyV5EkkNsErQ8pVD3bLHbA==",
"license": "MIT",
- "dependencies": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- },
"engines": {
- "node": ">=10"
+ "node": "^12.17.0 || ^14.13 || >=16.0.0"
},
"funding": {
"url": "https://github.com/chalk/chalk?sponsor=1"
}
},
- "node_modules/color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "color-name": "~1.1.4"
- },
- "engines": {
- "node": ">=7.0.0"
- }
- },
- "node_modules/color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
- "dev": true,
+ "node_modules/cjs-module-lexer": {
+ "version": "1.4.3",
+ "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.4.3.tgz",
+ "integrity": "sha512-9z8TZaGM1pfswYeXrUpzPrkx8UnWYdhJclsiYMm6x/w5+nN+8Tf/LnAgfLGQCm59qAOxU8WwHEq2vNwF6i4j+Q==",
"license": "MIT"
},
"node_modules/color-support": {
@@ -2106,18 +2687,6 @@
"color-support": "bin.js"
}
},
- "node_modules/commondir": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz",
- "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==",
- "license": "MIT"
- },
- "node_modules/concat-map": {
- "version": "0.0.1",
- "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
- "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==",
- "license": "MIT"
- },
"node_modules/console-control-strings": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz",
@@ -2154,9 +2723,9 @@
"license": "MIT"
},
"node_modules/debug": {
- "version": "4.4.0",
- "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.0.tgz",
- "integrity": "sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==",
+ "version": "4.4.3",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz",
+ "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -2178,15 +2747,6 @@
"dev": true,
"license": "MIT"
},
- "node_modules/deepmerge": {
- "version": "4.3.1",
- "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz",
- "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==",
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
"node_modules/delegates": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz",
@@ -2203,32 +2763,6 @@
"node": ">=8"
}
},
- "node_modules/dir-glob": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz",
- "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "path-type": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/doctrine": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz",
- "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==",
- "dev": true,
- "license": "Apache-2.0",
- "dependencies": {
- "esutils": "^2.0.2"
- },
- "engines": {
- "node": ">=6.0.0"
- }
- },
"node_modules/electron-to-chromium": {
"version": "1.5.378",
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.378.tgz",
@@ -2242,6 +2776,12 @@
"integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==",
"license": "MIT"
},
+ "node_modules/es-module-lexer": {
+ "version": "1.7.0",
+ "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.7.0.tgz",
+ "integrity": "sha512-jEQoCwk8hyb2AZziIOLhDqpm5+2ww5uIE6lkO/6jcOCusfk6LhMHpXXfBLXTZ7Ydyt0j4VoUQv6uGNYbdW+kBA==",
+ "license": "MIT"
+ },
"node_modules/escalade": {
"version": "3.2.0",
"resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz",
@@ -2266,60 +2806,62 @@
}
},
"node_modules/eslint": {
- "version": "8.57.1",
- "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.57.1.tgz",
- "integrity": "sha512-ypowyDxpVSYpkXr9WPv2PAZCtNip1Mv5KTW0SCurXv/9iOpcrH9PaqUElksqEB6pChqHGDRCFTyrZlGhnLNGiA==",
- "deprecated": "This version is no longer supported. Please see https://eslint.org/version-support for other options.",
+ "version": "10.8.0",
+ "resolved": "https://registry.npmjs.org/eslint/-/eslint-10.8.0.tgz",
+ "integrity": "sha512-nuKKvN+oIBO0koN7Tm7dlkmnkc21mtt0QJLwAKzjLq14y6lRTdVG36MZHJ8eQHwdJMwZbQNMlPOYedMq/oVJvQ==",
"dev": true,
"license": "MIT",
+ "workspaces": [
+ "packages/*"
+ ],
"dependencies": {
- "@eslint-community/eslint-utils": "^4.2.0",
- "@eslint-community/regexpp": "^4.6.1",
- "@eslint/eslintrc": "^2.1.4",
- "@eslint/js": "8.57.1",
- "@humanwhocodes/config-array": "^0.13.0",
+ "@eslint-community/eslint-utils": "^4.8.0",
+ "@eslint-community/regexpp": "^4.12.2",
+ "@eslint/config-array": "^0.23.5",
+ "@eslint/config-helpers": "^0.7.0",
+ "@eslint/core": "^1.2.1",
+ "@eslint/plugin-kit": "^0.7.2",
+ "@humanfs/node": "^0.16.6",
"@humanwhocodes/module-importer": "^1.0.1",
- "@nodelib/fs.walk": "^1.2.8",
- "@ungap/structured-clone": "^1.2.0",
- "ajv": "^6.12.4",
- "chalk": "^4.0.0",
- "cross-spawn": "^7.0.2",
+ "@humanwhocodes/retry": "^0.4.2",
+ "@types/estree": "^1.0.6",
+ "ajv": "^6.14.0",
+ "cross-spawn": "^7.0.6",
"debug": "^4.3.2",
- "doctrine": "^3.0.0",
"escape-string-regexp": "^4.0.0",
- "eslint-scope": "^7.2.2",
- "eslint-visitor-keys": "^3.4.3",
- "espree": "^9.6.1",
- "esquery": "^1.4.2",
+ "eslint-scope": "^9.1.2",
+ "eslint-visitor-keys": "^5.0.1",
+ "espree": "^11.2.0",
+ "esquery": "^1.7.0",
"esutils": "^2.0.2",
"fast-deep-equal": "^3.1.3",
- "file-entry-cache": "^6.0.1",
+ "file-entry-cache": "^8.0.0",
"find-up": "^5.0.0",
"glob-parent": "^6.0.2",
- "globals": "^13.19.0",
- "graphemer": "^1.4.0",
"ignore": "^5.2.0",
"imurmurhash": "^0.1.4",
"is-glob": "^4.0.0",
- "is-path-inside": "^3.0.3",
- "js-yaml": "^4.1.0",
"json-stable-stringify-without-jsonify": "^1.0.1",
- "levn": "^0.4.1",
- "lodash.merge": "^4.6.2",
- "minimatch": "^3.1.2",
+ "minimatch": "^10.2.5",
"natural-compare": "^1.4.0",
- "optionator": "^0.9.3",
- "strip-ansi": "^6.0.1",
- "text-table": "^0.2.0"
+ "optionator": "^0.9.3"
},
"bin": {
"eslint": "bin/eslint.js"
},
"engines": {
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
+ "node": "^20.19.0 || ^22.13.0 || >=24"
},
"funding": {
- "url": "https://opencollective.com/eslint"
+ "url": "https://eslint.org/donate"
+ },
+ "peerDependencies": {
+ "jiti": "*"
+ },
+ "peerDependenciesMeta": {
+ "jiti": {
+ "optional": true
+ }
}
},
"node_modules/eslint-plugin-react-hooks": {
@@ -2346,17 +2888,19 @@
}
},
"node_modules/eslint-scope": {
- "version": "7.2.2",
- "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz",
- "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==",
+ "version": "9.1.2",
+ "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-9.1.2.tgz",
+ "integrity": "sha512-xS90H51cKw0jltxmvmHy2Iai1LIqrfbw57b79w/J7MfvDfkIkFZ+kj6zC3BjtUwh150HsSSdxXZcsuv72miDFQ==",
"dev": true,
"license": "BSD-2-Clause",
"dependencies": {
+ "@types/esrecurse": "^4.3.1",
+ "@types/estree": "^1.0.8",
"esrecurse": "^4.3.0",
"estraverse": "^5.2.0"
},
"engines": {
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
+ "node": "^20.19.0 || ^22.13.0 || >=24"
},
"funding": {
"url": "https://opencollective.com/eslint"
@@ -2375,68 +2919,64 @@
"url": "https://opencollective.com/eslint"
}
},
- "node_modules/eslint/node_modules/brace-expansion": {
- "version": "1.1.16",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.16.tgz",
- "integrity": "sha512-IDw48K2/2kRkg9LdJxurvq3lV3aBgq0REY89duEqFRthjlPdXHKMj7EnQOXVckxzgisinf3nHfrcE2FufFLXMw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "balanced-match": "^1.0.0",
- "concat-map": "0.0.1"
- }
- },
- "node_modules/eslint/node_modules/globals": {
- "version": "13.24.0",
- "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz",
- "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==",
+ "node_modules/eslint/node_modules/eslint-visitor-keys": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-5.0.1.tgz",
+ "integrity": "sha512-tD40eHxA35h0PEIZNeIjkHoDR4YjjJp34biM0mDvplBe//mB+IHCqHDGV7pxF+7MklTvighcCPPZC7ynWyjdTA==",
"dev": true,
- "license": "MIT",
- "dependencies": {
- "type-fest": "^0.20.2"
- },
+ "license": "Apache-2.0",
"engines": {
- "node": ">=8"
+ "node": "^20.19.0 || ^22.13.0 || >=24"
},
"funding": {
- "url": "https://github.com/sponsors/sindresorhus"
+ "url": "https://opencollective.com/eslint"
}
},
- "node_modules/eslint/node_modules/minimatch": {
- "version": "3.1.5",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.5.tgz",
- "integrity": "sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w==",
+ "node_modules/eslint/node_modules/ignore": {
+ "version": "5.3.2",
+ "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz",
+ "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==",
"dev": true,
- "license": "ISC",
- "dependencies": {
- "brace-expansion": "^1.1.7"
- },
+ "license": "MIT",
"engines": {
- "node": "*"
+ "node": ">= 4"
}
},
"node_modules/espree": {
- "version": "9.6.1",
- "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz",
- "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==",
+ "version": "11.2.0",
+ "resolved": "https://registry.npmjs.org/espree/-/espree-11.2.0.tgz",
+ "integrity": "sha512-7p3DrVEIopW1B1avAGLuCSh1jubc01H2JHc8B4qqGblmg5gI9yumBgACjWo4JlIc04ufug4xJ3SQI8HkS/Rgzw==",
"dev": true,
"license": "BSD-2-Clause",
"dependencies": {
- "acorn": "^8.9.0",
+ "acorn": "^8.16.0",
"acorn-jsx": "^5.3.2",
- "eslint-visitor-keys": "^3.4.1"
+ "eslint-visitor-keys": "^5.0.1"
},
"engines": {
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
+ "node": "^20.19.0 || ^22.13.0 || >=24"
+ },
+ "funding": {
+ "url": "https://opencollective.com/eslint"
+ }
+ },
+ "node_modules/espree/node_modules/eslint-visitor-keys": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-5.0.1.tgz",
+ "integrity": "sha512-tD40eHxA35h0PEIZNeIjkHoDR4YjjJp34biM0mDvplBe//mB+IHCqHDGV7pxF+7MklTvighcCPPZC7ynWyjdTA==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "engines": {
+ "node": "^20.19.0 || ^22.13.0 || >=24"
},
"funding": {
"url": "https://opencollective.com/eslint"
}
},
"node_modules/esquery": {
- "version": "1.6.0",
- "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.6.0.tgz",
- "integrity": "sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==",
+ "version": "1.7.0",
+ "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.7.0.tgz",
+ "integrity": "sha512-Ap6G0WQwcU/LHsvLwON1fAQX9Zp0A2Y6Y/cJBl9r/JbW90Zyg4/zbG6zzKa2OTALELarYHmKu0GhpM5EO+7T0g==",
"dev": true,
"license": "BSD-3-Clause",
"dependencies": {
@@ -2478,12 +3018,6 @@
"@types/estree": "^1.0.0"
}
},
- "node_modules/estree-walker/node_modules/@types/estree": {
- "version": "1.0.7",
- "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.7.tgz",
- "integrity": "sha512-w28IoSUCJpidD/TGviZwwMJckNESJZXFu7NBZ5YJ4mEUnNraUn9Pm8HSZm/jDF1pDWYKspWE7oVphigUPRakIQ==",
- "license": "MIT"
- },
"node_modules/esutils": {
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz",
@@ -2505,7 +3039,6 @@
"version": "3.3.3",
"resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.3.tgz",
"integrity": "sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==",
- "dev": true,
"license": "MIT",
"dependencies": {
"@nodelib/fs.stat": "^2.0.2",
@@ -2522,7 +3055,6 @@
"version": "5.1.2",
"resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
"integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
- "dev": true,
"license": "ISC",
"dependencies": {
"is-glob": "^4.0.1"
@@ -2546,33 +3078,31 @@
"license": "MIT"
},
"node_modules/fastq": {
- "version": "1.19.1",
- "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.19.1.tgz",
- "integrity": "sha512-GwLTyxkCXjXbxqIhTsMI2Nui8huMPtnxg7krajPJAjnEG/iiOS7i+zCtWGZR9G0NBKbXKh6X9m9UIsYX/N6vvQ==",
- "dev": true,
+ "version": "1.20.1",
+ "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.20.1.tgz",
+ "integrity": "sha512-GGToxJ/w1x32s/D2EKND7kTil4n8OVk/9mycTc4VDza13lOvpUZTGX3mFSCtV9ksdGBVzvsyAVLM6mHFThxXxw==",
"license": "ISC",
"dependencies": {
"reusify": "^1.0.4"
}
},
"node_modules/file-entry-cache": {
- "version": "6.0.1",
- "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz",
- "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==",
+ "version": "8.0.0",
+ "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-8.0.0.tgz",
+ "integrity": "sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==",
"dev": true,
"license": "MIT",
"dependencies": {
- "flat-cache": "^3.0.4"
+ "flat-cache": "^4.0.0"
},
"engines": {
- "node": "^10.12.0 || >=12.0.0"
+ "node": ">=16.0.0"
}
},
"node_modules/fill-range": {
"version": "7.1.1",
"resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz",
"integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==",
- "dev": true,
"license": "MIT",
"dependencies": {
"to-regex-range": "^5.0.1"
@@ -2585,6 +3115,7 @@
"version": "5.0.0",
"resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz",
"integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==",
+ "dev": true,
"license": "MIT",
"dependencies": {
"locate-path": "^6.0.0",
@@ -2598,37 +3129,31 @@
}
},
"node_modules/flat-cache": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.2.0.tgz",
- "integrity": "sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==",
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-4.0.1.tgz",
+ "integrity": "sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==",
"dev": true,
"license": "MIT",
"dependencies": {
"flatted": "^3.2.9",
- "keyv": "^4.5.3",
- "rimraf": "^3.0.2"
+ "keyv": "^4.5.4"
},
"engines": {
- "node": "^10.12.0 || >=12.0.0"
+ "node": ">=16"
}
},
"node_modules/flatted": {
- "version": "3.4.2",
- "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.4.2.tgz",
- "integrity": "sha512-PjDse7RzhcPkIJwy5t7KPWQSZ9cAbzQXcafsetQoD7sOJRQlGikNbx7yZp2OotDnJyrDcbyRq3Ttb18iYOqkxA==",
+ "version": "3.4.3",
+ "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.4.3.tgz",
+ "integrity": "sha512-/zipXxyO6rGvuNGDiULY9MvEGSkb2gaG4GGH4ygMi0ZZzyMHdUZBmntJmx5x1G2VuPytCwGN4xsJP6cw+sK+vQ==",
"dev": true,
"license": "ISC"
},
- "node_modules/fs.realpath": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
- "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==",
- "license": "ISC"
- },
"node_modules/fsevents": {
"version": "2.3.3",
"resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz",
"integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==",
+ "dev": true,
"hasInstallScript": true,
"license": "MIT",
"optional": true,
@@ -2639,15 +3164,6 @@
"node": "^8.16.0 || ^10.6.0 || >=11.0.0"
}
},
- "node_modules/function-bind": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz",
- "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==",
- "license": "MIT",
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
"node_modules/gauge": {
"version": "4.0.4",
"resolved": "https://registry.npmjs.org/gauge/-/gauge-4.0.4.tgz",
@@ -2665,111 +3181,30 @@
"wide-align": "^1.1.5"
},
"engines": {
- "node": "^12.13.0 || ^14.15.0 || >=16.0.0"
- }
- },
- "node_modules/gensync": {
- "version": "1.0.0-beta.2",
- "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz",
- "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/glob": {
- "version": "7.2.3",
- "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz",
- "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==",
- "deprecated": "Glob versions prior to v9 are no longer supported",
- "license": "ISC",
- "dependencies": {
- "fs.realpath": "^1.0.0",
- "inflight": "^1.0.4",
- "inherits": "2",
- "minimatch": "^3.1.1",
- "once": "^1.3.0",
- "path-is-absolute": "^1.0.0"
- },
- "engines": {
- "node": "*"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
- "node_modules/glob-parent": {
- "version": "6.0.2",
- "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz",
- "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "is-glob": "^4.0.3"
- },
- "engines": {
- "node": ">=10.13.0"
- }
- },
- "node_modules/glob/node_modules/brace-expansion": {
- "version": "1.1.16",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.16.tgz",
- "integrity": "sha512-IDw48K2/2kRkg9LdJxurvq3lV3aBgq0REY89duEqFRthjlPdXHKMj7EnQOXVckxzgisinf3nHfrcE2FufFLXMw==",
- "license": "MIT",
- "dependencies": {
- "balanced-match": "^1.0.0",
- "concat-map": "0.0.1"
- }
- },
- "node_modules/glob/node_modules/minimatch": {
- "version": "3.1.5",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.5.tgz",
- "integrity": "sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w==",
- "license": "ISC",
- "dependencies": {
- "brace-expansion": "^1.1.7"
- },
- "engines": {
- "node": "*"
- }
- },
- "node_modules/globby": {
- "version": "11.1.0",
- "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz",
- "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "array-union": "^2.1.0",
- "dir-glob": "^3.0.1",
- "fast-glob": "^3.2.9",
- "ignore": "^5.2.0",
- "merge2": "^1.4.1",
- "slash": "^3.0.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
+ "node": "^12.13.0 || ^14.15.0 || >=16.0.0"
}
},
- "node_modules/graphemer": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz",
- "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==",
+ "node_modules/gensync": {
+ "version": "1.0.0-beta.2",
+ "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz",
+ "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==",
"dev": true,
- "license": "MIT"
+ "license": "MIT",
+ "engines": {
+ "node": ">=6.9.0"
+ }
},
- "node_modules/has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+ "node_modules/glob-parent": {
+ "version": "6.0.2",
+ "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz",
+ "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==",
"dev": true,
- "license": "MIT",
+ "license": "ISC",
+ "dependencies": {
+ "is-glob": "^4.0.3"
+ },
"engines": {
- "node": ">=8"
+ "node": ">=10.13.0"
}
},
"node_modules/has-unicode": {
@@ -2778,45 +3213,16 @@
"integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==",
"license": "ISC"
},
- "node_modules/hasown": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz",
- "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==",
- "license": "MIT",
- "dependencies": {
- "function-bind": "^1.1.2"
- },
- "engines": {
- "node": ">= 0.4"
- }
- },
"node_modules/ignore": {
- "version": "5.3.2",
- "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz",
- "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==",
+ "version": "7.0.6",
+ "resolved": "https://registry.npmjs.org/ignore/-/ignore-7.0.6.tgz",
+ "integrity": "sha512-BAg6QkE8W+TuQLrrw0Ugr7HegXduRuuj8/ti2kSOc+jz1dmx8/WNcjr6XGnq5YpDWxFwwaavqD0+jIUOKelTsw==",
"dev": true,
"license": "MIT",
"engines": {
"node": ">= 4"
}
},
- "node_modules/import-fresh": {
- "version": "3.3.1",
- "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.1.tgz",
- "integrity": "sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "parent-module": "^1.0.0",
- "resolve-from": "^4.0.0"
- },
- "engines": {
- "node": ">=6"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
"node_modules/imurmurhash": {
"version": "0.1.4",
"resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz",
@@ -2827,58 +3233,16 @@
"node": ">=0.8.19"
}
},
- "node_modules/inflight": {
- "version": "1.0.6",
- "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
- "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==",
- "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.",
- "license": "ISC",
- "dependencies": {
- "once": "^1.3.0",
- "wrappy": "1"
- }
- },
"node_modules/inherits": {
"version": "2.0.4",
"resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
"integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==",
"license": "ISC"
},
- "node_modules/is-builtin-module": {
- "version": "3.2.1",
- "resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-3.2.1.tgz",
- "integrity": "sha512-BSLE3HnV2syZ0FK0iMA/yUGplUeMmNz4AW5fnTunbCIqZi4vG3WjJT9FHMy5D69xmAYBHXQhJdALdpwVxV501A==",
- "license": "MIT",
- "dependencies": {
- "builtin-modules": "^3.3.0"
- },
- "engines": {
- "node": ">=6"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/is-core-module": {
- "version": "2.16.1",
- "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.1.tgz",
- "integrity": "sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==",
- "license": "MIT",
- "dependencies": {
- "hasown": "^2.0.2"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
"node_modules/is-extglob": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
"integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==",
- "dev": true,
"license": "MIT",
"engines": {
"node": ">=0.10.0"
@@ -2897,7 +3261,6 @@
"version": "4.0.3",
"resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz",
"integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==",
- "dev": true,
"license": "MIT",
"dependencies": {
"is-extglob": "^2.1.1"
@@ -2906,41 +3269,15 @@
"node": ">=0.10.0"
}
},
- "node_modules/is-module": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/is-module/-/is-module-1.0.0.tgz",
- "integrity": "sha512-51ypPSPCoTEIN9dy5Oy+h4pShgJmPCygKfyRCISBI+JoWT/2oJvK8QPxmwv7b/p239jXrm9M1mlQbyKJ5A152g==",
- "license": "MIT"
- },
"node_modules/is-number": {
"version": "7.0.0",
"resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz",
"integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==",
- "dev": true,
"license": "MIT",
"engines": {
"node": ">=0.12.0"
}
},
- "node_modules/is-path-inside": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz",
- "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/is-reference": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/is-reference/-/is-reference-1.2.1.tgz",
- "integrity": "sha512-U82MsXXiFIrjCK4otLT+o2NA2Cd2g5MLoOVXUZjIOhLurrRxpEXzI8O0KZHr3IjLvlAH1kTPYSuqer5T9ZVBKQ==",
- "license": "MIT",
- "dependencies": {
- "@types/estree": "*"
- }
- },
"node_modules/isexe": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
@@ -2954,29 +3291,6 @@
"integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==",
"license": "MIT"
},
- "node_modules/js-yaml": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.3.0.tgz",
- "integrity": "sha512-1td788aAnnZ5qs7V2QIRl1owjtYpbKt749Y3xauqQgwIIGF/xXWz1wMTEBx5O3LK3lXLVuqXPdPxj2BoFHaW9Q==",
- "dev": true,
- "funding": [
- {
- "type": "github",
- "url": "https://github.com/sponsors/puzrin"
- },
- {
- "type": "github",
- "url": "https://github.com/sponsors/nodeca"
- }
- ],
- "license": "MIT",
- "dependencies": {
- "argparse": "^2.0.1"
- },
- "bin": {
- "js-yaml": "bin/js-yaml.js"
- }
- },
"node_modules/jsesc": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz",
@@ -3312,6 +3626,7 @@
"version": "6.0.0",
"resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz",
"integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==",
+ "dev": true,
"license": "MIT",
"dependencies": {
"p-locate": "^5.0.0"
@@ -3323,13 +3638,6 @@
"url": "https://github.com/sponsors/sindresorhus"
}
},
- "node_modules/lodash.merge": {
- "version": "4.6.2",
- "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz",
- "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==",
- "dev": true,
- "license": "MIT"
- },
"node_modules/loose-envify": {
"version": "1.4.0",
"resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz",
@@ -3368,7 +3676,6 @@
"version": "1.4.1",
"resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz",
"integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==",
- "dev": true,
"license": "MIT",
"engines": {
"node": ">= 8"
@@ -3378,7 +3685,6 @@
"version": "4.0.8",
"resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz",
"integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==",
- "dev": true,
"license": "MIT",
"dependencies": {
"braces": "^3.0.3",
@@ -3389,16 +3695,16 @@
}
},
"node_modules/minimatch": {
- "version": "9.0.9",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.9.tgz",
- "integrity": "sha512-OBwBN9AL4dqmETlpS2zasx+vTeWclWzkblfZk7KTA5j3jeOONz/tRCnZomUyvNg83wL5Zv9Ss6HMJXAgL8R2Yg==",
+ "version": "10.2.5",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.2.5.tgz",
+ "integrity": "sha512-MULkVLfKGYDFYejP07QOurDLLQpcjk7Fw+7jXS2R2czRQzR56yHRveU5NDJEOviH+hETZKSkIk5c+T23GjFUMg==",
"dev": true,
- "license": "ISC",
+ "license": "BlueOak-1.0.0",
"dependencies": {
- "brace-expansion": "^2.0.2"
+ "brace-expansion": "^5.0.5"
},
"engines": {
- "node": ">=16 || 14 >=14.17"
+ "node": "18 || 20 || >=22"
},
"funding": {
"url": "https://github.com/sponsors/isaacs"
@@ -3412,9 +3718,9 @@
"license": "MIT"
},
"node_modules/nanoid": {
- "version": "3.3.12",
- "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.12.tgz",
- "integrity": "sha512-ZB9RH/39qpq5Vu6Y+NmUaFhQR6pp+M2Xt76XBnEwDaGcVAqhlvxrl3B2bKS5D3NH3QR76v3aSrKaF/Kiy7lEtQ==",
+ "version": "3.3.16",
+ "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.16.tgz",
+ "integrity": "sha512-bzlKTyNJ7+LdGIIwy8ijFpIqEQIvafahV7eYykJ8Cvh42EdJeODoJ6gUJXpQJvej1BddH8OqTXZNE/KfbWAu8Q==",
"dev": true,
"funding": [
{
@@ -3463,15 +3769,6 @@
"node": "^12.13.0 || ^14.15.0 || >=16.0.0"
}
},
- "node_modules/once": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
- "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==",
- "license": "ISC",
- "dependencies": {
- "wrappy": "1"
- }
- },
"node_modules/optionator": {
"version": "0.9.4",
"resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.4.tgz",
@@ -3490,10 +3787,57 @@
"node": ">= 0.8.0"
}
},
+ "node_modules/oxc-parser": {
+ "version": "0.141.0",
+ "resolved": "https://registry.npmjs.org/oxc-parser/-/oxc-parser-0.141.0.tgz",
+ "integrity": "sha512-uFkGGr1KMWd6aWv9UAqooYrN78trw8MWWmoPvgWokfBEUq1+eiIQ+qfj3wokhy0fxtZWZk+0dHoS7/yRTJtd6w==",
+ "license": "MIT",
+ "dependencies": {
+ "@oxc-project/types": "^0.141.0"
+ },
+ "engines": {
+ "node": "^20.19.0 || >=22.12.0"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/Boshen"
+ },
+ "optionalDependencies": {
+ "@oxc-parser/binding-android-arm-eabi": "0.141.0",
+ "@oxc-parser/binding-android-arm64": "0.141.0",
+ "@oxc-parser/binding-darwin-arm64": "0.141.0",
+ "@oxc-parser/binding-darwin-x64": "0.141.0",
+ "@oxc-parser/binding-freebsd-x64": "0.141.0",
+ "@oxc-parser/binding-linux-arm-gnueabihf": "0.141.0",
+ "@oxc-parser/binding-linux-arm-musleabihf": "0.141.0",
+ "@oxc-parser/binding-linux-arm64-gnu": "0.141.0",
+ "@oxc-parser/binding-linux-arm64-musl": "0.141.0",
+ "@oxc-parser/binding-linux-ppc64-gnu": "0.141.0",
+ "@oxc-parser/binding-linux-riscv64-gnu": "0.141.0",
+ "@oxc-parser/binding-linux-riscv64-musl": "0.141.0",
+ "@oxc-parser/binding-linux-s390x-gnu": "0.141.0",
+ "@oxc-parser/binding-linux-x64-gnu": "0.141.0",
+ "@oxc-parser/binding-linux-x64-musl": "0.141.0",
+ "@oxc-parser/binding-openharmony-arm64": "0.141.0",
+ "@oxc-parser/binding-wasm32-wasi": "0.141.0",
+ "@oxc-parser/binding-win32-arm64-msvc": "0.141.0",
+ "@oxc-parser/binding-win32-ia32-msvc": "0.141.0",
+ "@oxc-parser/binding-win32-x64-msvc": "0.141.0"
+ }
+ },
+ "node_modules/oxc-parser/node_modules/@oxc-project/types": {
+ "version": "0.141.0",
+ "resolved": "https://registry.npmjs.org/@oxc-project/types/-/types-0.141.0.tgz",
+ "integrity": "sha512-S4as7z0j0xQkXcJlyY5ehntwK8/wRkQb9Cyqw+J/N2rkWGQGK0SxD6X6DhQTc7qsxVTBxXbxZtBJh3mr3PtIzQ==",
+ "license": "MIT",
+ "funding": {
+ "url": "https://github.com/sponsors/Boshen"
+ }
+ },
"node_modules/p-limit": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz",
"integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==",
+ "dev": true,
"license": "MIT",
"dependencies": {
"yocto-queue": "^0.1.0"
@@ -3509,6 +3853,7 @@
"version": "5.0.0",
"resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz",
"integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==",
+ "dev": true,
"license": "MIT",
"dependencies": {
"p-limit": "^3.0.2"
@@ -3520,19 +3865,6 @@
"url": "https://github.com/sponsors/sindresorhus"
}
},
- "node_modules/parent-module": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz",
- "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "callsites": "^3.0.0"
- },
- "engines": {
- "node": ">=6"
- }
- },
"node_modules/path": {
"version": "0.12.7",
"resolved": "https://registry.npmjs.org/path/-/path-0.12.7.tgz",
@@ -3548,20 +3880,12 @@
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz",
"integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==",
+ "dev": true,
"license": "MIT",
"engines": {
"node": ">=8"
}
},
- "node_modules/path-is-absolute": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
- "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==",
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
"node_modules/path-key": {
"version": "3.1.1",
"resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz",
@@ -3572,22 +3896,6 @@
"node": ">=8"
}
},
- "node_modules/path-parse": {
- "version": "1.0.7",
- "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz",
- "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==",
- "license": "MIT"
- },
- "node_modules/path-type": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz",
- "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=8"
- }
- },
"node_modules/picocolors": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz",
@@ -3608,9 +3916,9 @@
}
},
"node_modules/postcss": {
- "version": "8.5.15",
- "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.15.tgz",
- "integrity": "sha512-FfR8sjd4em2T6fb3I2MwAJU7HWVMr9zba+enmQeeWFfCbm+UOC/0X4DS8XtpUTMwWMGbjKYP7xjfNekzyGmB3A==",
+ "version": "8.5.23",
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.23.tgz",
+ "integrity": "sha512-g50586zr4bZmwFiTlflMu8E0bDTb5I5gertgwAKmsdUlTQIhZtunzUlD1WSzwcVWPoAVpsrA6vlfCD7oXvRwgg==",
"dev": true,
"funding": [
{
@@ -3628,7 +3936,7 @@
],
"license": "MIT",
"dependencies": {
- "nanoid": "^3.3.12",
+ "nanoid": "^3.3.16",
"picocolors": "^1.1.1",
"source-map-js": "^1.2.1"
},
@@ -3670,7 +3978,6 @@
"version": "1.2.3",
"resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz",
"integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==",
- "dev": true,
"funding": [
{
"type": "github",
@@ -3736,64 +4043,16 @@
"node": ">= 6"
}
},
- "node_modules/resolve": {
- "version": "1.22.10",
- "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.10.tgz",
- "integrity": "sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w==",
- "license": "MIT",
- "dependencies": {
- "is-core-module": "^2.16.0",
- "path-parse": "^1.0.7",
- "supports-preserve-symlinks-flag": "^1.0.0"
- },
- "bin": {
- "resolve": "bin/resolve"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/resolve-from": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz",
- "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=4"
- }
- },
"node_modules/reusify": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/reusify/-/reusify-1.1.0.tgz",
"integrity": "sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==",
- "dev": true,
"license": "MIT",
"engines": {
"iojs": ">=1.0.0",
"node": ">=0.10.0"
}
},
- "node_modules/rimraf": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
- "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
- "deprecated": "Rimraf versions prior to v4 are no longer supported",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "glob": "^7.1.3"
- },
- "bin": {
- "rimraf": "bin.js"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
"node_modules/rolldown": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/rolldown/-/rolldown-1.0.3.tgz",
@@ -3828,41 +4087,10 @@
"@rolldown/binding-win32-x64-msvc": "1.0.3"
}
},
- "node_modules/rollup": {
- "version": "2.80.0",
- "resolved": "https://registry.npmjs.org/rollup/-/rollup-2.80.0.tgz",
- "integrity": "sha512-cIFJOD1DESzpjOBl763Kp1AH7UE/0fcdHe6rZXUdQ9c50uvgigvW97u3IcSeBwOkgqL/PXPBktBCh0KEu5L8XQ==",
- "license": "MIT",
- "bin": {
- "rollup": "dist/bin/rollup"
- },
- "engines": {
- "node": ">=10.0.0"
- },
- "optionalDependencies": {
- "fsevents": "~2.3.2"
- }
- },
- "node_modules/rollup-plugin-node-externals": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/rollup-plugin-node-externals/-/rollup-plugin-node-externals-4.1.1.tgz",
- "integrity": "sha512-hiGCMTKHVoueaTmtcUv1KR0/dlNBuI9GYzHUlSHQbMd7T7yomYdXCFnBisoBqdZYy61EGAIfz8AvJaWWBho3Pg==",
- "license": "MIT",
- "dependencies": {
- "find-up": "^5.0.0"
- },
- "engines": {
- "node": ">=14.0.0"
- },
- "peerDependencies": {
- "rollup": "^2.60.0"
- }
- },
"node_modules/run-parallel": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz",
"integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==",
- "dev": true,
"funding": [
{
"type": "github",
@@ -3912,9 +4140,9 @@
}
},
"node_modules/semver": {
- "version": "7.7.1",
- "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz",
- "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==",
+ "version": "7.8.5",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-7.8.5.tgz",
+ "integrity": "sha512-Y7/KDsb8LjooZpwaqGyulO6DQlksgCncchHGk+sZIY4SBvUocMBEFH5Ur1fI4dV+Jvl0w6cjvucaIi40puRioA==",
"dev": true,
"license": "ISC",
"bin": {
@@ -3959,16 +4187,6 @@
"integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==",
"license": "ISC"
},
- "node_modules/slash": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz",
- "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=8"
- }
- },
"node_modules/source-map-js": {
"version": "1.2.1",
"resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz",
@@ -3979,13 +4197,6 @@
"node": ">=0.10.0"
}
},
- "node_modules/sourcemap-codec": {
- "version": "1.4.8",
- "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz",
- "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==",
- "deprecated": "Please use @jridgewell/sourcemap-codec instead",
- "license": "MIT"
- },
"node_modules/string_decoder": {
"version": "1.3.0",
"resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz",
@@ -4021,51 +4232,6 @@
"node": ">=8"
}
},
- "node_modules/strip-json-comments": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz",
- "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "has-flag": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/supports-preserve-symlinks-flag": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz",
- "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==",
- "license": "MIT",
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/text-table": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz",
- "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==",
- "dev": true,
- "license": "MIT"
- },
"node_modules/tinyglobby": {
"version": "0.2.17",
"resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.17.tgz",
@@ -4118,7 +4284,6 @@
"version": "5.0.1",
"resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz",
"integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==",
- "dev": true,
"license": "MIT",
"dependencies": {
"is-number": "^7.0.0"
@@ -4128,16 +4293,16 @@
}
},
"node_modules/ts-api-utils": {
- "version": "1.4.3",
- "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.4.3.tgz",
- "integrity": "sha512-i3eMG77UTMD0hZhgRS562pv83RC6ukSAC2GMNWc+9dieh/+jDM5u5YG+NHX6VNDRHQcHwmsTHctP9LhbC3WxVw==",
+ "version": "2.5.0",
+ "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.5.0.tgz",
+ "integrity": "sha512-OJ/ibxhPlqrMM0UiNHJ/0CKQkoKF243/AEmplt3qpRgkW8VG7IfOS41h7V8TjITqdByHzrjcS/2si+y4lIh8NA==",
"dev": true,
"license": "MIT",
"engines": {
- "node": ">=16"
+ "node": ">=18.12"
},
"peerDependencies": {
- "typescript": ">=4.2.0"
+ "typescript": ">=4.8.4"
}
},
"node_modules/tslib": {
@@ -4159,24 +4324,10 @@
"node": ">= 0.8.0"
}
},
- "node_modules/type-fest": {
- "version": "0.20.2",
- "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz",
- "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==",
- "dev": true,
- "license": "(MIT OR CC0-1.0)",
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
"node_modules/typescript": {
"version": "5.8.2",
"resolved": "https://registry.npmjs.org/typescript/-/typescript-5.8.2.tgz",
"integrity": "sha512-aJn6wq13/afZp/jT9QZmwEjDqqvSGp1VT5GVg+f/t6/oVyrgXM6BY1h9BRh/O5p3PlUPAe+WuiEZOmb/49RqoQ==",
- "dev": true,
"license": "Apache-2.0",
"bin": {
"tsc": "bin/tsc",
@@ -4186,12 +4337,6 @@
"node": ">=14.17"
}
},
- "node_modules/undici-types": {
- "version": "6.21.0",
- "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.21.0.tgz",
- "integrity": "sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==",
- "license": "MIT"
- },
"node_modules/update-browserslist-db": {
"version": "1.2.3",
"resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.2.3.tgz",
@@ -4382,12 +4527,6 @@
"node": ">=0.10.0"
}
},
- "node_modules/wrappy": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
- "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==",
- "license": "ISC"
- },
"node_modules/yallist": {
"version": "3.1.1",
"resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz",
@@ -4399,6 +4538,7 @@
"version": "0.1.0",
"resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz",
"integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==",
+ "dev": true,
"license": "MIT",
"engines": {
"node": ">=10"
diff --git a/frontend/packages/plugins/template/package.json b/frontend/packages/plugins/template/package.json
index e5179db3a46..fef80daf4e3 100644
--- a/frontend/packages/plugins/template/package.json
+++ b/frontend/packages/plugins/template/package.json
@@ -16,17 +16,17 @@
"@module-federation/vite": "^0.2.8",
"@originjs/vite-plugin-federation": "^1.3.5",
"@softarc/native-federation": "^2.0.9",
- "@softarc/native-federation-esbuild": "^2.0.26",
+ "@softarc/native-federation-esbuild": "^4.0.0",
"react": "^18.2.0",
"react-dom": "^18.2.0"
},
"devDependencies": {
"@types/react": "^18.2.66",
"@types/react-dom": "^18.2.22",
- "@typescript-eslint/eslint-plugin": "^7.2.0",
- "@typescript-eslint/parser": "^7.2.0",
+ "@typescript-eslint/eslint-plugin": "^8.65.0",
+ "@typescript-eslint/parser": "^8.65.0",
"@vitejs/plugin-react": "^4.2.1",
- "eslint": "^8.57.0",
+ "eslint": "^10.8.0",
"eslint-plugin-react-hooks": "^4.6.0",
"eslint-plugin-react-refresh": "^0.4.6",
"path": "^0.12.7",
diff --git a/pyproject.toml b/pyproject.toml
index fa67d849be9..c6cefa50c63 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -1,6 +1,6 @@
[project]
name = "infrahub-server"
-version = "1.10.5"
+version = "1.10.6"
description = "Infrahub is taking a new approach to Infrastructure Management by providing a new generation of datastore to organize and control all the data that defines how an infrastructure should run."
authors = [{ name = "OpsMill", email = "info@opsmill.com" }]
requires-python = ">=3.12,<3.15"
diff --git a/python_sdk b/python_sdk
index c478a759354..13f26b0a83b 160000
--- a/python_sdk
+++ b/python_sdk
@@ -1 +1 @@
-Subproject commit c478a75935475bb7bfaa1fddd1428770465c3724
+Subproject commit 13f26b0a83be50a16ef4009859ddd03fdf372d8a
diff --git a/python_testcontainers/pyproject.toml b/python_testcontainers/pyproject.toml
index 1a609d0dcd1..8ff86510110 100644
--- a/python_testcontainers/pyproject.toml
+++ b/python_testcontainers/pyproject.toml
@@ -1,6 +1,6 @@
[project]
name = "infrahub-testcontainers"
-version = "1.10.5"
+version = "1.10.6"
requires-python = ">=3.10"
description = "Testcontainers instance for Infrahub to easily build integration tests"
diff --git a/python_testcontainers/uv.lock b/python_testcontainers/uv.lock
index 8dca8452f62..9354e94730b 100644
--- a/python_testcontainers/uv.lock
+++ b/python_testcontainers/uv.lock
@@ -521,7 +521,7 @@ wheels = [
[[package]]
name = "infrahub-testcontainers"
-version = "1.10.5"
+version = "1.10.6"
source = { editable = "." }
dependencies = [
{ name = "httpx" },
@@ -751,8 +751,8 @@ name = "pendulum"
version = "3.1.0"
source = { registry = "https://pypi.org/simple" }
dependencies = [
- { name = "python-dateutil", marker = "python_full_version < '3.13'" },
- { name = "tzdata", marker = "python_full_version < '3.13'" },
+ { name = "python-dateutil" },
+ { name = "tzdata" },
]
sdist = { url = "https://files.pythonhosted.org/packages/23/7c/009c12b86c7cc6c403aec80f8a4308598dfc5995e5c523a5491faaa3952e/pendulum-3.1.0.tar.gz", hash = "sha256:66f96303560f41d097bee7d2dc98ffca716fbb3a832c4b3062034c2d45865015", size = 85930, upload-time = "2025-04-19T14:30:01.675Z" }
wheels = [
@@ -1840,8 +1840,8 @@ name = "whenever"
version = "0.9.3"
source = { registry = "https://pypi.org/simple" }
dependencies = [
- { name = "tzdata", marker = "python_full_version >= '3.13' and sys_platform == 'win32'" },
- { name = "tzlocal", marker = "python_full_version >= '3.13' and sys_platform != 'darwin' and sys_platform != 'linux'" },
+ { name = "tzdata", marker = "sys_platform == 'win32'" },
+ { name = "tzlocal", marker = "sys_platform != 'darwin' and sys_platform != 'linux'" },
]
sdist = { url = "https://files.pythonhosted.org/packages/87/ae/dcbfee50237cedca9153cac045dff6d93b81886f44f82c86493856592d55/whenever-0.9.3.tar.gz", hash = "sha256:22e6f8366767ab3c8be6d9e21a27bc56be2e50f0f2c66d78e8ee86497b579f1a", size = 256933, upload-time = "2025-10-16T19:44:40.832Z" }
wheels = [
diff --git a/uv.lock b/uv.lock
index d12ead095a2..a6f8f19425f 100644
--- a/uv.lock
+++ b/uv.lock
@@ -1059,14 +1059,14 @@ wheels = [
[[package]]
name = "gitpython"
-version = "3.1.52"
+version = "3.1.54"
source = { registry = "https://pypi.org/simple" }
dependencies = [
{ name = "gitdb" },
]
-sdist = { url = "https://files.pythonhosted.org/packages/e5/fd/df0bafa4eb5ea2f51e1adee9f7a94c8e62c5d180e65117045dfca3439c8a/gitpython-3.1.52.tar.gz", hash = "sha256:de0a8ad86274c6e75ae8b37dd055ba68f19818c813108642263227b20775b48e", size = 223726, upload-time = "2026-07-16T03:15:59.599Z" }
+sdist = { url = "https://files.pythonhosted.org/packages/5e/d5/3da0b92033887033f4c27f2dd109a303c4ca62813c7b3bb2511edb4777de/gitpython-3.1.54.tar.gz", hash = "sha256:53f2085e24a2cda300eed7c3fc5f1559ae289634b725e98acaf4791940247aa0", size = 225076, upload-time = "2026-07-22T04:08:51.403Z" }
wheels = [
- { url = "https://files.pythonhosted.org/packages/8d/90/04dff7c1e176bb1c3011ef1647393d368790da710d8dde1cdcfad301f45a/gitpython-3.1.52-py3-none-any.whl", hash = "sha256:79a36ee1f83523214a3f72d56cf1c4e490d577dc61af77e43dfe5862bd9da01a", size = 215366, upload-time = "2026-07-16T03:15:58.239Z" },
+ { url = "https://files.pythonhosted.org/packages/d1/b9/876f442a28df5c068ca69b0122d5c35e65fd2d2fa9992ea5cb5944ea00a6/gitpython-3.1.54-py3-none-any.whl", hash = "sha256:b90d7b3d9bc0238681d24369130826f0dcdb0ceaa45db67cf1d4ffa4c302dedf", size = 216575, upload-time = "2026-07-22T04:08:50.05Z" },
]
[[package]]
@@ -1432,7 +1432,7 @@ wheels = [
[[package]]
name = "infrahub-server"
-version = "1.10.5"
+version = "1.10.6"
source = { editable = "." }
dependencies = [
{ name = "aio-pika" },
@@ -2619,8 +2619,8 @@ name = "pendulum"
version = "3.2.0"
source = { registry = "https://pypi.org/simple" }
dependencies = [
- { name = "python-dateutil", marker = "python_full_version < '3.13'" },
- { name = "tzdata", marker = "python_full_version < '3.13'" },
+ { name = "python-dateutil" },
+ { name = "tzdata" },
]
sdist = { url = "https://files.pythonhosted.org/packages/cb/72/9a51afa0a822b09e286c4cb827ed7b00bc818dac7bd11a5f161e493a217d/pendulum-3.2.0.tar.gz", hash = "sha256:e80feda2d10fa3ff8b1526715f7d33dcb7e08494b3088f2c8a3ac92d4a4331ce", size = 86912, upload-time = "2026-01-30T11:22:24.093Z" }
wheels = [