diff --git a/README.md b/README.md
index 6d0a971..83a9597 100644
--- a/README.md
+++ b/README.md
@@ -5,7 +5,9 @@ It can be used by itself.
The engine is made of multiple components:
-- [ecs](packages/ecs)
+- [ecs-client](packages/ecs-client)
+- [ecs-server](packages/ecs-server)
+- [ecs-lib](packages/ecs-lib)
- [input](packages/input)
- [core](packages/core)
- [common](packages/common)
diff --git a/example/pong/package.json b/example/pong/package.json
index 544c98f..927cde9 100644
--- a/example/pong/package.json
+++ b/example/pong/package.json
@@ -37,7 +37,7 @@
"@nanoforge-dev/common": "workspace:^",
"@nanoforge-dev/config": "workspace:^",
"@nanoforge-dev/core": "workspace:^",
- "@nanoforge-dev/ecs": "workspace:^",
+ "@nanoforge-dev/ecs-client": "workspace:^",
"@nanoforge-dev/graphics-2d": "workspace:^",
"@nanoforge-dev/input": "workspace:^",
"@nanoforge-dev/sound": "workspace:^"
diff --git a/example/pong/src/index.ts b/example/pong/src/index.ts
index eaa6e80..ac7fdb3 100644
--- a/example/pong/src/index.ts
+++ b/example/pong/src/index.ts
@@ -1,7 +1,7 @@
import { AssetManagerLibrary } from "@nanoforge-dev/asset-manager/src";
import { type IRunOptions } from "@nanoforge-dev/common";
import { NanoforgeFactory } from "@nanoforge-dev/core";
-import { ECSLibrary } from "@nanoforge-dev/ecs";
+import { ECSClientLibrary } from "@nanoforge-dev/ecs-client";
import { Circle, Graphics2DLibrary, Layer, Rect } from "@nanoforge-dev/graphics-2d";
import { InputEnum } from "@nanoforge-dev/input";
import { InputLibrary } from "@nanoforge-dev/input/src";
@@ -25,7 +25,7 @@ export const layer = new Layer();
export const main = async (options: IRunOptions) => {
const assetManager = new AssetManagerLibrary();
const graphics = new Graphics2DLibrary();
- const ecsLibrary = new ECSLibrary();
+ const ecsLibrary = new ECSClientLibrary();
const inputLibrary = new InputLibrary();
const sounds = new SoundLibrary();
diff --git a/example/template/package.json b/example/template/package.json
index 544c98f..927cde9 100644
--- a/example/template/package.json
+++ b/example/template/package.json
@@ -37,7 +37,7 @@
"@nanoforge-dev/common": "workspace:^",
"@nanoforge-dev/config": "workspace:^",
"@nanoforge-dev/core": "workspace:^",
- "@nanoforge-dev/ecs": "workspace:^",
+ "@nanoforge-dev/ecs-client": "workspace:^",
"@nanoforge-dev/graphics-2d": "workspace:^",
"@nanoforge-dev/input": "workspace:^",
"@nanoforge-dev/sound": "workspace:^"
diff --git a/example/template/src/index.ts b/example/template/src/index.ts
index ff31742..39433bc 100644
--- a/example/template/src/index.ts
+++ b/example/template/src/index.ts
@@ -1,15 +1,15 @@
-import {AssetManagerLibrary} from "@nanoforge-dev/asset-manager";
-import {type IRunOptions} from "@nanoforge-dev/common";
-import {NanoforgeFactory} from "@nanoforge-dev/core";
-import {ECSLibrary} from "@nanoforge-dev/ecs";
-import {Graphics2DLibrary} from "@nanoforge-dev/graphics-2d";
+import { AssetManagerLibrary } from "@nanoforge-dev/asset-manager";
+import { type IRunOptions } from "@nanoforge-dev/common";
+import { NanoforgeFactory } from "@nanoforge-dev/core";
+import { ECSClientLibrary } from "@nanoforge-dev/ecs-client";
+import { Graphics2DLibrary } from "@nanoforge-dev/graphics-2d";
export const app = NanoforgeFactory.createClient();
export const main = async (options: IRunOptions) => {
app.useGraphics(new Graphics2DLibrary());
app.useAssetManager(new AssetManagerLibrary());
- app.useComponentSystem(new ECSLibrary());
+ app.useComponentSystem(new ECSClientLibrary());
await app.init(options);
app.run();
diff --git a/packages/ecs-client/.cliff-jumperrc.json b/packages/ecs-client/.cliff-jumperrc.json
new file mode 100644
index 0000000..adec03f
--- /dev/null
+++ b/packages/ecs-client/.cliff-jumperrc.json
@@ -0,0 +1,7 @@
+{
+ "$schema": "https://raw.githubusercontent.com/favware/cliff-jumper/main/assets/cliff-jumper.schema.json",
+ "name": "ecs-client",
+ "org": "nanoforge-dev",
+ "packagePath": "packages/ecs-client",
+ "identifierBase": false
+}
diff --git a/packages/ecs-client/.gitignore b/packages/ecs-client/.gitignore
new file mode 100644
index 0000000..0ac3803
--- /dev/null
+++ b/packages/ecs-client/.gitignore
@@ -0,0 +1,273 @@
+### VisualStudioCode template
+.vscode/*
+!.vscode/settings.json
+!.vscode/tasks.json
+!.vscode/launch.json
+!.vscode/extensions.json
+!.vscode/*.code-snippets
+
+# Local History for Visual Studio Code
+.history/
+
+# Built Visual Studio Code Extensions
+*.vsix
+
+### C++ template
+# Prerequisites
+*.d
+
+# Compiled Object files
+*.slo
+*.lo
+*.o
+*.obj
+
+# Precompiled Headers
+*.gch
+*.pch
+
+# Compiled Dynamic libraries
+*.so
+*.dylib
+*.dll
+
+# Fortran module files
+*.mod
+*.smod
+
+# Compiled Static libraries
+*.lai
+*.la
+*.a
+*.lib
+
+# Executables
+*.exe
+*.out
+*.app
+
+### JetBrains template
+# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio, WebStorm and Rider
+# Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839
+
+# User-specific stuff
+.idea/**/workspace.xml
+.idea/**/tasks.xml
+.idea/**/usage.statistics.xml
+.idea/**/dictionaries
+.idea/**/shelf
+
+# AWS User-specific
+.idea/**/aws.xml
+
+# Generated files
+.idea/**/contentModel.xml
+
+# Sensitive or high-churn files
+.idea/**/dataSources/
+.idea/**/dataSources.ids
+.idea/**/dataSources.local.xml
+.idea/**/sqlDataSources.xml
+.idea/**/dynamic.xml
+.idea/**/uiDesigner.xml
+.idea/**/dbnavigator.xml
+
+# Gradle
+.idea/**/gradle.xml
+.idea/**/libraries
+
+# Gradle and Maven with auto-import
+# When using Gradle or Maven with auto-import, you should exclude module files,
+# since they will be recreated, and may cause churn. Uncomment if using
+# auto-import.
+# .idea/artifacts
+# .idea/compiler.xml
+# .idea/jarRepositories.xml
+# .idea/modules.xml
+# .idea/*.iml
+# .idea/modules
+# *.iml
+# *.ipr
+!build/
+
+# CMakeg
+cmake-build-*/
+
+# Mongo Explorer plugin
+.idea/**/mongoSettings.xml
+
+# File-based project format
+*.iws
+
+# IntelliJ
+out/
+
+# mpeltonen/sbt-idea plugin
+.idea_modules/
+
+# JIRA plugin
+atlassian-ide-plugin.xml
+
+# Cursive Clojure plugin
+.idea/replstate.xml
+
+# SonarLint plugin
+.idea/sonarlint/
+
+# Crashlytics plugin (for Android Studio and IntelliJ)
+com_crashlytics_export_strings.xml
+crashlytics.properties
+crashlytics-build.properties
+fabric.properties
+
+# Editor-based Rest Client
+.idea/httpRequests
+
+# Android studio 3.1+ serialized cache file
+.idea/caches/build_file_checksums.ser
+
+### Node template
+# Logs
+logs
+*.log
+npm-debug.log*
+yarn-debug.log*
+yarn-error.log*
+lerna-debug.log*
+.pnpm-debug.log*
+
+# Diagnostic reports (https://nodejs.org/api/report.html)
+report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json
+
+# Runtime data
+pids
+*.pid
+*.seed
+*.pid.lock
+
+# Directory for instrumented libs generated by jscoverage/JSCover
+lib-cov
+
+# Coverage directory used by tools like istanbul
+coverage
+*.lcov
+
+# nyc test coverage
+.nyc_output
+
+# Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files)
+.grunt
+
+# Bower dependency directory (https://bower.io/)
+bower_components
+
+# node-waf configuration
+.lock-wscript
+
+# Compiled binary addons (https://nodejs.org/api/addons.html)
+build/Release
+
+# Dependency directories
+node_modules/
+jspm_packages/
+
+# Snowpack dependency directory (https://snowpack.dev/)
+web_modules/
+
+# TypeScript cache
+*.tsbuildinfo
+
+# Optional npm cache directory
+.npm
+
+# Optional eslint cache
+.eslintcache
+
+# Optional stylelint cache
+.stylelintcache
+
+# Microbundle cache
+.rpt2_cache/
+.rts2_cache_cjs/
+.rts2_cache_es/
+.rts2_cache_umd/
+
+# Optional REPL history
+.node_repl_history
+
+# Output of 'npm pack'
+*.tgz
+
+# Yarn Integrity file
+.yarn-integrity
+
+# dotenv environment variable files
+.env
+.env.development.local
+.env.test.local
+.env.production.local
+.env.local
+
+# parcel-bundler cache (https://parceljs.org/)
+.cache
+.parcel-cache
+
+# Next.js build output
+.next
+out
+
+# Nuxt.js build / generate output
+.nuxt
+dist
+
+# Gatsby files
+.cache/
+# Comment in the public line in if your project uses Gatsby and not Next.js
+# https://nextjs.org/blog/next-9-1#public-directory-support
+# public
+
+# vuepress build output
+.vuepress/dist
+
+# vuepress v2.x temp and cache directory
+.temp
+.cache
+
+# Docusaurus cache and generated files
+.docusaurus
+
+# Serverless directories
+.serverless/
+
+# FuseBox cache
+.fusebox/
+
+# DynamoDB Local files
+.dynamodb/
+
+# TernJS port file
+.tern-port
+
+# Stores VSCode versions used for testing VSCode extensions
+.vscode-test
+
+# yarn v2
+.yarn/cache
+.yarn/unplugged
+.yarn/build-state.yml
+.yarn/install-state.gz
+.pnp.*
+
+### Private
+
+# Turbo
+.turbo/
+
+# Compiled files
+src/**/*.js
+src/**/*.d.ts
+
+# pubilc directory
+lib/
+compile_commands.json
+emsdk/
diff --git a/packages/ecs/.idea/.gitignore b/packages/ecs-client/.idea/.gitignore
similarity index 100%
rename from packages/ecs/.idea/.gitignore
rename to packages/ecs-client/.idea/.gitignore
diff --git a/packages/ecs-client/.idea/.name b/packages/ecs-client/.idea/.name
new file mode 100644
index 0000000..68cd8cd
--- /dev/null
+++ b/packages/ecs-client/.idea/.name
@@ -0,0 +1 @@
+[NanoForge] Engine ECS Client
\ No newline at end of file
diff --git a/packages/ecs/.idea/[NanoForge] Engine ECS.iml b/packages/ecs-client/.idea/[NanoForge] Engine ECS Client.iml
similarity index 100%
rename from packages/ecs/.idea/[NanoForge] Engine ECS.iml
rename to packages/ecs-client/.idea/[NanoForge] Engine ECS Client.iml
diff --git a/packages/ecs/.idea/codeStyles/Project.xml b/packages/ecs-client/.idea/codeStyles/Project.xml
similarity index 100%
rename from packages/ecs/.idea/codeStyles/Project.xml
rename to packages/ecs-client/.idea/codeStyles/Project.xml
diff --git a/packages/ecs/.idea/codeStyles/codeStyleConfig.xml b/packages/ecs-client/.idea/codeStyles/codeStyleConfig.xml
similarity index 100%
rename from packages/ecs/.idea/codeStyles/codeStyleConfig.xml
rename to packages/ecs-client/.idea/codeStyles/codeStyleConfig.xml
diff --git a/packages/ecs/.idea/editor.xml b/packages/ecs-client/.idea/editor.xml
similarity index 100%
rename from packages/ecs/.idea/editor.xml
rename to packages/ecs-client/.idea/editor.xml
diff --git a/packages/ecs/.idea/git_toolbox_blame.xml b/packages/ecs-client/.idea/git_toolbox_blame.xml
similarity index 100%
rename from packages/ecs/.idea/git_toolbox_blame.xml
rename to packages/ecs-client/.idea/git_toolbox_blame.xml
diff --git a/packages/ecs/.idea/git_toolbox_prj.xml b/packages/ecs-client/.idea/git_toolbox_prj.xml
similarity index 100%
rename from packages/ecs/.idea/git_toolbox_prj.xml
rename to packages/ecs-client/.idea/git_toolbox_prj.xml
diff --git a/packages/ecs/.idea/inspectionProfiles/Project_Default.xml b/packages/ecs-client/.idea/inspectionProfiles/Project_Default.xml
similarity index 100%
rename from packages/ecs/.idea/inspectionProfiles/Project_Default.xml
rename to packages/ecs-client/.idea/inspectionProfiles/Project_Default.xml
diff --git a/packages/ecs/.idea/misc.xml b/packages/ecs-client/.idea/misc.xml
similarity index 100%
rename from packages/ecs/.idea/misc.xml
rename to packages/ecs-client/.idea/misc.xml
diff --git a/packages/ecs/.idea/modules.xml b/packages/ecs-client/.idea/modules.xml
similarity index 55%
rename from packages/ecs/.idea/modules.xml
rename to packages/ecs-client/.idea/modules.xml
index 942670c..2ca293f 100644
--- a/packages/ecs/.idea/modules.xml
+++ b/packages/ecs-client/.idea/modules.xml
@@ -2,8 +2,7 @@
-
-
+
\ No newline at end of file
diff --git a/packages/ecs/.idea/prettier.xml b/packages/ecs-client/.idea/prettier.xml
similarity index 100%
rename from packages/ecs/.idea/prettier.xml
rename to packages/ecs-client/.idea/prettier.xml
diff --git a/packages/ecs/.idea/vcs.xml b/packages/ecs-client/.idea/vcs.xml
similarity index 100%
rename from packages/ecs/.idea/vcs.xml
rename to packages/ecs-client/.idea/vcs.xml
diff --git a/packages/ecs/.nvmrc b/packages/ecs-client/.nvmrc
similarity index 100%
rename from packages/ecs/.nvmrc
rename to packages/ecs-client/.nvmrc
diff --git a/packages/ecs-client/.prettierignore b/packages/ecs-client/.prettierignore
new file mode 100644
index 0000000..711c4e5
--- /dev/null
+++ b/packages/ecs-client/.prettierignore
@@ -0,0 +1,13 @@
+# Ignore files for PNPM, NPM and YARN
+pnpm-lock.yaml
+package-lock.json
+yarn.lock
+bun.lock
+
+.turbo/
+node_modules/
+dist/
+coverage/
+CHANGELOG.md
+
+lib/
diff --git a/packages/ecs/LICENSE b/packages/ecs-client/LICENSE
similarity index 100%
rename from packages/ecs/LICENSE
rename to packages/ecs-client/LICENSE
diff --git a/packages/ecs-client/Makefile b/packages/ecs-client/Makefile
new file mode 100644
index 0000000..19421a2
--- /dev/null
+++ b/packages/ecs-client/Makefile
@@ -0,0 +1,46 @@
+BASE_DIR = node_modules/@nanoforge-dev/ecs-lib
+
+SRC = $(BASE_DIR)/wasm/SparseArray.cpp\
+ $(BASE_DIR)/wasm/Entity.cpp\
+ $(BASE_DIR)/wasm/Utils.cpp\
+ $(BASE_DIR)/wasm/Registry.cpp
+
+NAME := libecs
+
+OUT_DIR = lib
+JS_NAME = $(OUT_DIR)/$(NAME).js
+WASM_NAME = $(OUT_DIR)/$(NAME).wasm
+TS_NAME = $(OUT_DIR)/$(NAME).d.ts
+
+CFLAGS = -std=c++20
+LDFLAGS = -O3 --no-entry --bind -sNO_DISABLE_EXCEPTION_CATCHING -sEXPORT_EXCEPTION_HANDLING_HELPERS
+
+CC = em++
+
+OBJ = $(SRC:.cpp=.o)
+
+%.o: %.cpp
+ $(CC) -c $< -o $@ $(CFLAGS)
+
+all: $(JS_NAME)
+
+$(JS_NAME): LDFLAGS += -s MODULARIZE=1 -s EXPORT_ES6=1 -s ENVIRONMENT=web
+$(JS_NAME): $(OBJ)
+ @mkdir -p $(OUT_DIR)
+ $(CC) $(OBJ) $(LDFLAGS) -o $(JS_NAME)
+ cp $(BASE_DIR)/$(TS_NAME) $(TS_NAME)
+
+clean:
+ $(RM) $(OBJ)
+ $(RM) $(JS_NAME) $(WASM_NAME) $(TS_NAME)
+
+fclean: clean
+
+tests: LDFLAGS += -s MODULARIZE=1 -s EXPORT_ES6=1
+tests: $(OBJ)
+ @mkdir -p $(OUT_DIR)
+ $(CC) $(OBJ) $(LDFLAGS) -o $(JS_NAME)
+
+re: fclean all
+
+.PHONY: re fclean all clean tests
diff --git a/packages/ecs-client/README.md b/packages/ecs-client/README.md
new file mode 100644
index 0000000..0b5eced
--- /dev/null
+++ b/packages/ecs-client/README.md
@@ -0,0 +1 @@
+# ECS Client
diff --git a/packages/ecs-client/cliff.toml b/packages/ecs-client/cliff.toml
new file mode 100644
index 0000000..3f6b697
--- /dev/null
+++ b/packages/ecs-client/cliff.toml
@@ -0,0 +1,79 @@
+[changelog]
+header = """
+# Changelog
+
+All notable changes to this project will be documented in this file.\n
+"""
+body = """
+{%- macro remote_url() -%}
+ https://github.com/{{ remote.github.owner }}/{{ remote.github.repo }}
+{%- endmacro -%}
+{% if version %}\
+ # [{{ version | trim_start_matches(pat="v") }}]\
+ {% if previous %}\
+ {% if previous.version %}\
+ ({{ self::remote_url() }}/compare/{{ previous.version }}...{{ version }})\
+ {% else %}\
+ ({{ self::remote_url() }}/tree/{{ version }})\
+ {% endif %}\
+ {% endif %} \
+ - ({{ timestamp | date(format="%Y-%m-%d") }})
+{% else %}\
+ # [unreleased]
+{% endif %}\
+{% for group, commits in commits | group_by(attribute="group") %}
+ ## {{ group | upper_first }}
+ {% for commit in commits %}
+ - {% if commit.scope %}\
+ **{{commit.scope}}:** \
+ {% endif %}\
+ {{ commit.message | upper_first }} ([{{ commit.id | truncate(length=7, end="") }}]({{ self::remote_url() }}/commit/{{ commit.id }}))\
+ {% if commit.github.username %} by @{{ commit.github.username }}{%- endif %}\
+ {% if commit.breaking %}\
+ {% for footer in commit.footers %}\
+ {% if footer.breaking %}\
+ \n{% raw %} {% endraw %}- **{{ footer.token }}{{ footer.separator }}** {{ footer.value }}\
+ {% endif %}\
+ {% endfor %}\
+ {% endif %}\
+ {% endfor %}
+{% endfor %}\
+{% if github.contributors | filter(attribute="is_first_time", value=true) | length %}\
+ \n### New Contributors\n
+ {% for contributor in github.contributors | filter(attribute="is_first_time", value=true) %}\
+ - @{{ contributor.username }} made their first contribution in #{{ contributor.pr_number }}
+ {% endfor %}\
+{% endif %}\n
+"""
+trim = true
+footer = ""
+
+[git]
+conventional_commits = true
+filter_unconventional = true
+commit_parsers = [
+ { message = "^feat", group = "Features"},
+ { message = "^fix", group = "Bug Fixes"},
+ { message = "^docs", group = "Documentation"},
+ { message = "^perf", group = "Performance"},
+ { message = "^refactor", group = "Refactor"},
+ { message = "^types", group = "Typings"},
+ { message = ".*deprecated", body = ".*deprecated", group = "Deprecation"},
+ { message = "^revert", skip = true},
+ { message = "^style", group = "Styling"},
+ { message = "^test", group = "Testing"},
+ { message = "^chore", skip = true},
+ { message = "^ci", skip = true},
+ { message = "^build", skip = true},
+ { body = ".*security", group = "Security"},
+]
+filter_commits = true
+protect_breaking_commits = true
+tag_pattern = "@nanoforge-dev/ecs-client@[0-9]*"
+ignore_tags = ""
+topo_order = false
+sort_commits = "newest"
+
+[remote.github]
+owner = "NanoForge-dev"
+repo = "Engine"
diff --git a/packages/ecs-client/eslint.config.js b/packages/ecs-client/eslint.config.js
new file mode 100644
index 0000000..62ec06d
--- /dev/null
+++ b/packages/ecs-client/eslint.config.js
@@ -0,0 +1,3 @@
+import config from "@nanoforge-dev/utils-eslint-config";
+
+export default config;
diff --git a/packages/ecs/package.json b/packages/ecs-client/package.json
similarity index 88%
rename from packages/ecs/package.json
rename to packages/ecs-client/package.json
index a6f0aa9..eb78d2b 100644
--- a/packages/ecs/package.json
+++ b/packages/ecs-client/package.json
@@ -1,8 +1,8 @@
{
"$schema": "https://json.schemastore.org/package.json",
- "name": "@nanoforge-dev/ecs",
+ "name": "@nanoforge-dev/ecs-client",
"version": "0.0.1",
- "description": "NanoForge Engine - ECS",
+ "description": "NanoForge Engine - ECS Client",
"keywords": [
"nanoforge",
"game",
@@ -18,7 +18,9 @@
"Tchips "
],
"files": [
- "dist"
+ "dist",
+ "lib",
+ "wasm"
],
"main": "./dist/index.cjs",
"module": "./dist/index.js",
@@ -43,7 +45,7 @@
"repository": {
"type": "git",
"url": "git+https://github.com/NanoForge-dev/Engine.git",
- "directory": "packages/ecs"
+ "directory": "packages/ecs-client"
},
"scripts": {
"build": "pnpm build:wasm && pnpm build:script",
@@ -54,11 +56,12 @@
"format": "prettier --write . && eslint --fix --format=pretty src",
"test:unit": "make fclean && make tests -j 16 && vitest run --config ../../vitest.config.ts",
"prepack": "pnpm run build && pnpm run lint",
- "changelog": "git cliff --prepend ./CHANGELOG.md -u -c ./cliff.toml -r ../../ --include-path 'packages/config/*'",
+ "changelog": "git cliff --prepend ./CHANGELOG.md -u -c ./cliff.toml -r ../../ --include-path 'packages/ecs-client/*'",
"release": "cliff-jumper"
},
"dependencies": {
- "@nanoforge-dev/common": "workspace:^"
+ "@nanoforge-dev/common": "workspace:^",
+ "@nanoforge-dev/ecs-lib": "workspace:^"
},
"devDependencies": {
"@favware/cliff-jumper": "^6.0.0",
diff --git a/packages/ecs/prettier.config.js b/packages/ecs-client/prettier.config.js
similarity index 100%
rename from packages/ecs/prettier.config.js
rename to packages/ecs-client/prettier.config.js
diff --git a/packages/ecs-client/src/ecs-client-library.ts b/packages/ecs-client/src/ecs-client-library.ts
new file mode 100644
index 0000000..07073a3
--- /dev/null
+++ b/packages/ecs-client/src/ecs-client-library.ts
@@ -0,0 +1,21 @@
+import { type InitContext } from "@nanoforge-dev/common";
+import { AbstractECSLibrary } from "@nanoforge-dev/ecs-lib";
+
+import { default as Module } from "../lib/libecs";
+
+export class ECSClientLibrary extends AbstractECSLibrary {
+ constructor() {
+ super();
+ this.path = "libecs.wasm";
+ }
+
+ get __name(): string {
+ return "ECSLibrary";
+ }
+
+ override async __init(context: InitContext): Promise {
+ const wasmFile = context.libraries.getAssetManager().library.getAsset(this.path);
+ this.module = await Module({ locateFile: () => wasmFile.path });
+ this._registry = new this.module.Registry();
+ }
+}
diff --git a/packages/ecs-client/src/index.ts b/packages/ecs-client/src/index.ts
new file mode 100644
index 0000000..5e93dd9
--- /dev/null
+++ b/packages/ecs-client/src/index.ts
@@ -0,0 +1,11 @@
+import "../lib/libecs.wasm";
+
+export type {
+ Component,
+ EditorComponentManifest,
+ EditorSystemManifest,
+ System,
+ Registry,
+} from "@nanoforge-dev/ecs-lib";
+
+export { ECSClientLibrary } from "./ecs-client-library";
diff --git a/packages/ecs/test/ecs-library.spec.ts b/packages/ecs-client/test/ecs-client-library.spec.ts
similarity index 90%
rename from packages/ecs/test/ecs-library.spec.ts
rename to packages/ecs-client/test/ecs-client-library.spec.ts
index 182ad03..0434da1 100644
--- a/packages/ecs/test/ecs-library.spec.ts
+++ b/packages/ecs-client/test/ecs-client-library.spec.ts
@@ -4,8 +4,8 @@ import { beforeAll, beforeEach, describe, expect, it } from "vitest";
import { EditableApplicationContext } from "../../core/src/common/context/contexts/application.editable-context";
import { EditableLibraryManager } from "../../core/src/common/library/manager/library.manager";
-import { type Registry } from "../lib";
-import { ECSLibrary } from "../src/ecs-library";
+import { type Registry } from "../lib/libecs";
+import { ECSClientLibrary } from "../src/ecs-client-library";
class Position {
name: string = "Position";
@@ -18,8 +18,8 @@ class Position {
}
}
-describe("ECSLibrary", () => {
- let ecs: ECSLibrary;
+describe("ECSClientLibrary", () => {
+ let ecs: ECSClientLibrary;
let registry: Registry;
const assetManager = new AssetManagerLibrary();
const libraryManager = new EditableLibraryManager();
@@ -39,7 +39,7 @@ describe("ECSLibrary", () => {
});
beforeEach(async () => {
- ecs = new ECSLibrary();
+ ecs = new ECSClientLibrary();
await ecs.__init(initContext);
registry = ecs.registry;
});
diff --git a/packages/ecs/tsconfig.json b/packages/ecs-client/tsconfig.json
similarity index 100%
rename from packages/ecs/tsconfig.json
rename to packages/ecs-client/tsconfig.json
diff --git a/packages/ecs/tsconfig.spec.json b/packages/ecs-client/tsconfig.spec.json
similarity index 100%
rename from packages/ecs/tsconfig.spec.json
rename to packages/ecs-client/tsconfig.spec.json
diff --git a/packages/ecs/tsup.config.ts b/packages/ecs-client/tsup.config.ts
similarity index 100%
rename from packages/ecs/tsup.config.ts
rename to packages/ecs-client/tsup.config.ts
diff --git a/packages/ecs/.clang-format b/packages/ecs-lib/.clang-format
similarity index 100%
rename from packages/ecs/.clang-format
rename to packages/ecs-lib/.clang-format
diff --git a/packages/ecs/.cliff-jumperrc.json b/packages/ecs-lib/.cliff-jumperrc.json
similarity index 73%
rename from packages/ecs/.cliff-jumperrc.json
rename to packages/ecs-lib/.cliff-jumperrc.json
index 16859a1..72a6918 100644
--- a/packages/ecs/.cliff-jumperrc.json
+++ b/packages/ecs-lib/.cliff-jumperrc.json
@@ -1,7 +1,7 @@
{
"$schema": "https://raw.githubusercontent.com/favware/cliff-jumper/main/assets/cliff-jumper.schema.json",
- "name": "ecs",
+ "name": "ecs-lib",
"org": "nanoforge-dev",
- "packagePath": "packages/ecs",
+ "packagePath": "packages/ecs-lib",
"identifierBase": false
}
diff --git a/packages/ecs/.gitignore b/packages/ecs-lib/.gitignore
similarity index 100%
rename from packages/ecs/.gitignore
rename to packages/ecs-lib/.gitignore
diff --git a/packages/ecs-lib/.idea/.gitignore b/packages/ecs-lib/.idea/.gitignore
new file mode 100644
index 0000000..13566b8
--- /dev/null
+++ b/packages/ecs-lib/.idea/.gitignore
@@ -0,0 +1,8 @@
+# Default ignored files
+/shelf/
+/workspace.xml
+# Editor-based HTTP Client requests
+/httpRequests/
+# Datasource local storage ignored files
+/dataSources/
+/dataSources.local.xml
diff --git a/packages/ecs-lib/.idea/.name b/packages/ecs-lib/.idea/.name
new file mode 100644
index 0000000..94476ec
--- /dev/null
+++ b/packages/ecs-lib/.idea/.name
@@ -0,0 +1 @@
+[NanoForge] Engine ECS Lib
\ No newline at end of file
diff --git a/packages/ecs-lib/.idea/[NanoForge] Engine ECS Lib.iml b/packages/ecs-lib/.idea/[NanoForge] Engine ECS Lib.iml
new file mode 100644
index 0000000..24643cc
--- /dev/null
+++ b/packages/ecs-lib/.idea/[NanoForge] Engine ECS Lib.iml
@@ -0,0 +1,12 @@
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/packages/ecs-lib/.idea/codeStyles/Project.xml b/packages/ecs-lib/.idea/codeStyles/Project.xml
new file mode 100644
index 0000000..a57ead7
--- /dev/null
+++ b/packages/ecs-lib/.idea/codeStyles/Project.xml
@@ -0,0 +1,172 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/packages/ecs-lib/.idea/codeStyles/codeStyleConfig.xml b/packages/ecs-lib/.idea/codeStyles/codeStyleConfig.xml
new file mode 100644
index 0000000..79ee123
--- /dev/null
+++ b/packages/ecs-lib/.idea/codeStyles/codeStyleConfig.xml
@@ -0,0 +1,5 @@
+
+
+
+
+
\ No newline at end of file
diff --git a/packages/ecs-lib/.idea/editor.xml b/packages/ecs-lib/.idea/editor.xml
new file mode 100644
index 0000000..d70eddc
--- /dev/null
+++ b/packages/ecs-lib/.idea/editor.xml
@@ -0,0 +1,107 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/packages/ecs-lib/.idea/git_toolbox_blame.xml b/packages/ecs-lib/.idea/git_toolbox_blame.xml
new file mode 100644
index 0000000..7dc1249
--- /dev/null
+++ b/packages/ecs-lib/.idea/git_toolbox_blame.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/packages/ecs-lib/.idea/git_toolbox_prj.xml b/packages/ecs-lib/.idea/git_toolbox_prj.xml
new file mode 100644
index 0000000..02b915b
--- /dev/null
+++ b/packages/ecs-lib/.idea/git_toolbox_prj.xml
@@ -0,0 +1,15 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/packages/ecs-lib/.idea/inspectionProfiles/Project_Default.xml b/packages/ecs-lib/.idea/inspectionProfiles/Project_Default.xml
new file mode 100644
index 0000000..e852c49
--- /dev/null
+++ b/packages/ecs-lib/.idea/inspectionProfiles/Project_Default.xml
@@ -0,0 +1,13 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/packages/ecs-lib/.idea/misc.xml b/packages/ecs-lib/.idea/misc.xml
new file mode 100644
index 0000000..7ecbce5
--- /dev/null
+++ b/packages/ecs-lib/.idea/misc.xml
@@ -0,0 +1,24 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/packages/ecs-lib/.idea/modules.xml b/packages/ecs-lib/.idea/modules.xml
new file mode 100644
index 0000000..7c8f88d
--- /dev/null
+++ b/packages/ecs-lib/.idea/modules.xml
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/packages/ecs-lib/.idea/prettier.xml b/packages/ecs-lib/.idea/prettier.xml
new file mode 100644
index 0000000..b0c1c68
--- /dev/null
+++ b/packages/ecs-lib/.idea/prettier.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/packages/ecs-lib/.idea/vcs.xml b/packages/ecs-lib/.idea/vcs.xml
new file mode 100644
index 0000000..b2bdec2
--- /dev/null
+++ b/packages/ecs-lib/.idea/vcs.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/packages/ecs-lib/.nvmrc b/packages/ecs-lib/.nvmrc
new file mode 100644
index 0000000..c519bf5
--- /dev/null
+++ b/packages/ecs-lib/.nvmrc
@@ -0,0 +1 @@
+v24.11.0
diff --git a/packages/ecs/.prettierignore b/packages/ecs-lib/.prettierignore
similarity index 100%
rename from packages/ecs/.prettierignore
rename to packages/ecs-lib/.prettierignore
diff --git a/packages/ecs-lib/LICENSE b/packages/ecs-lib/LICENSE
new file mode 100644
index 0000000..62c6400
--- /dev/null
+++ b/packages/ecs-lib/LICENSE
@@ -0,0 +1,21 @@
+MIT License
+
+Copyright © 2025 NanoForge
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
diff --git a/packages/ecs-lib/Makefile b/packages/ecs-lib/Makefile
new file mode 100644
index 0000000..03e8b7e
--- /dev/null
+++ b/packages/ecs-lib/Makefile
@@ -0,0 +1,42 @@
+SRC = wasm/SparseArray.cpp\
+ wasm/Entity.cpp\
+ wasm/Utils.cpp\
+ wasm/Registry.cpp
+
+NAME := libecs
+
+OUT_DIR = lib
+JS_NAME = $(OUT_DIR)/$(NAME).js
+WASM_NAME = $(OUT_DIR)/$(NAME).wasm
+TS_NAME = $(NAME).d.ts
+
+CFLAGS = -std=c++20
+LDFLAGS = -O3 --no-entry --bind -sNO_DISABLE_EXCEPTION_CATCHING -sEXPORT_EXCEPTION_HANDLING_HELPERS
+
+CC = em++
+
+OBJ = $(SRC:.cpp=.o)
+
+%.o: %.cpp
+ $(CC) -c $< -o $@ $(CFLAGS)
+
+all: $(TS_NAME)
+
+$(TS_NAME): LDFLAGS += -s MODULARIZE=1
+$(TS_NAME): $(OBJ)
+ @mkdir -p $(OUT_DIR)
+ $(CC) $(OBJ) $(LDFLAGS) --emit-tsd libecs-tmp.d.ts -o $(JS_NAME)
+ cat build/pre.ts > $(OUT_DIR)/$(TS_NAME)
+ cat $(OUT_DIR)/libecs-tmp.d.ts >> $(OUT_DIR)/$(TS_NAME)
+ $(RM) $(OUT_DIR)/libecs-tmp.d.ts
+
+
+clean:
+ $(RM) $(OBJ)
+ $(RM) $(JS_NAME) $(WASM_NAME)
+
+fclean: clean
+
+re: fclean all
+
+.PHONY: re fclean all clean
diff --git a/packages/ecs/README.md b/packages/ecs-lib/README.md
similarity index 91%
rename from packages/ecs/README.md
rename to packages/ecs-lib/README.md
index e1d7175..d4f3ddb 100644
--- a/packages/ecs/README.md
+++ b/packages/ecs-lib/README.md
@@ -1,4 +1,8 @@
-# ECS
+# ECS Lib
+
+> This lib doesn't work on its own.
+>
+> Please import `@nanoforge-dev/ecs-client` or `@nanoforge-dev/ecs-server` either
## What is an ECS
diff --git a/packages/ecs/build/pre.ts b/packages/ecs-lib/build/pre.ts
similarity index 100%
rename from packages/ecs/build/pre.ts
rename to packages/ecs-lib/build/pre.ts
diff --git a/packages/ecs/cliff.toml b/packages/ecs-lib/cliff.toml
similarity index 98%
rename from packages/ecs/cliff.toml
rename to packages/ecs-lib/cliff.toml
index ccd0533..8fbe729 100644
--- a/packages/ecs/cliff.toml
+++ b/packages/ecs-lib/cliff.toml
@@ -69,7 +69,7 @@ commit_parsers = [
]
filter_commits = true
protect_breaking_commits = true
-tag_pattern = "@nanoforge-dev/ecs@[0-9]*"
+tag_pattern = "@nanoforge-dev/ecs-lib@[0-9]*"
ignore_tags = ""
topo_order = false
sort_commits = "newest"
diff --git a/packages/ecs/eslint.config.js b/packages/ecs-lib/eslint.config.js
similarity index 100%
rename from packages/ecs/eslint.config.js
rename to packages/ecs-lib/eslint.config.js
diff --git a/packages/ecs/lib/libecs.d.ts b/packages/ecs-lib/lib/libecs.d.ts
similarity index 100%
rename from packages/ecs/lib/libecs.d.ts
rename to packages/ecs-lib/lib/libecs.d.ts
diff --git a/packages/ecs-lib/package.json b/packages/ecs-lib/package.json
new file mode 100644
index 0000000..7c07a26
--- /dev/null
+++ b/packages/ecs-lib/package.json
@@ -0,0 +1,90 @@
+{
+ "$schema": "https://json.schemastore.org/package.json",
+ "name": "@nanoforge-dev/ecs-lib",
+ "version": "0.0.1",
+ "description": "NanoForge Engine - ECS Lib (source code use by ECS Client and Server)",
+ "keywords": [
+ "nanoforge",
+ "game",
+ "engine"
+ ],
+ "homepage": "https://github.com/NanoForge-dev/Engine#readme",
+ "bugs": "https://github.com/NanoForge-dev/Engine/issues",
+ "license": "MIT",
+ "contributors": [
+ "Bill ",
+ "Exelo ",
+ "Fexkoser ",
+ "Tchips "
+ ],
+ "files": [
+ "dist",
+ "lib",
+ "wasm"
+ ],
+ "main": "./dist/index.cjs",
+ "module": "./dist/index.js",
+ "types": "./dist/index.d.cts",
+ "exports": {
+ ".": {
+ "require": {
+ "types": "./dist/index.d.cts",
+ "default": "./dist/index.cjs"
+ },
+ "import": {
+ "types": "./dist/index.d.ts",
+ "default": "./dist/index.js"
+ }
+ },
+ "./package.json": "./package.json"
+ },
+ "type": "module",
+ "directories": {
+ "lib": "src"
+ },
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/NanoForge-dev/Engine.git",
+ "directory": "packages/ecs-lib"
+ },
+ "scripts": {
+ "build": "tsc --noEmit && tsup",
+ "clean": "make fclean",
+ "lint": "prettier --check . && eslint --format=pretty src",
+ "format": "prettier --write . && eslint --fix --format=pretty src",
+ "test:unit": "make fclean && make -j 16 && vitest run --config ../../vitest.config.ts",
+ "prepack": "pnpm run build && pnpm run lint",
+ "changelog": "git cliff --prepend ./CHANGELOG.md -u -c ./cliff.toml -r ../../ --include-path 'packages/ecs-lib/*'",
+ "release": "cliff-jumper"
+ },
+ "dependencies": {
+ "@nanoforge-dev/common": "workspace:^"
+ },
+ "devDependencies": {
+ "@favware/cliff-jumper": "^6.0.0",
+ "@nanoforge-dev/utils-eslint-config": "workspace:^",
+ "@nanoforge-dev/utils-prettier-config": "workspace:^",
+ "@types/node": "^24.10.1",
+ "eslint": "^9.39.1",
+ "eslint-formatter-pretty": "^7.0.0",
+ "prettier": "^3.6.2",
+ "tsup": "^8.5.1",
+ "typescript": "^5.9.3",
+ "vitest": "^4.0.15"
+ },
+ "packageManager": "pnpm@10.22.0",
+ "engines": {
+ "node": "24.11.0"
+ },
+ "publishConfig": {
+ "access": "public"
+ },
+ "lint-staged": {
+ "**/*.ts": [
+ "prettier --write"
+ ],
+ "src/**/*.ts": [
+ "eslint --fix"
+ ]
+ }
+}
diff --git a/packages/ecs-lib/prettier.config.js b/packages/ecs-lib/prettier.config.js
new file mode 100644
index 0000000..27d0e26
--- /dev/null
+++ b/packages/ecs-lib/prettier.config.js
@@ -0,0 +1,3 @@
+import config from "@nanoforge-dev/utils-prettier-config";
+
+export default config;
diff --git a/packages/ecs-lib/src/ecs-library.abstract.ts b/packages/ecs-lib/src/ecs-library.abstract.ts
new file mode 100644
index 0000000..eed8e97
--- /dev/null
+++ b/packages/ecs-lib/src/ecs-library.abstract.ts
@@ -0,0 +1,34 @@
+import {
+ ASSET_MANAGER_LIBRARY,
+ BaseComponentSystemLibrary,
+ type Context,
+ GRAPHICS_LIBRARY,
+} from "@nanoforge-dev/common";
+
+import { type MainModule, type Registry } from "../lib/libecs";
+
+export abstract class AbstractECSLibrary extends BaseComponentSystemLibrary {
+ protected module?: MainModule;
+ protected _registry?: Registry;
+
+ protected path!: string;
+
+ protected constructor() {
+ super({
+ dependencies: [ASSET_MANAGER_LIBRARY],
+ runAfter: [GRAPHICS_LIBRARY],
+ });
+ }
+
+ abstract override get __name(): string;
+
+ async __run(ctx: Context): Promise {
+ if (!this._registry) this.throwNotInitializedError();
+ this._registry.runSystems(ctx);
+ }
+
+ get registry(): Registry {
+ if (!this._registry) this.throwNotInitializedError();
+ return this._registry;
+ }
+}
diff --git a/packages/ecs/src/editor-manifest.type.ts b/packages/ecs-lib/src/editor-manifest.type.ts
similarity index 100%
rename from packages/ecs/src/editor-manifest.type.ts
rename to packages/ecs-lib/src/editor-manifest.type.ts
diff --git a/packages/ecs-lib/src/index.ts b/packages/ecs-lib/src/index.ts
new file mode 100644
index 0000000..ab84137
--- /dev/null
+++ b/packages/ecs-lib/src/index.ts
@@ -0,0 +1,3 @@
+export { AbstractECSLibrary } from "./ecs-library.abstract";
+export type { Component, System, Registry } from "../lib/libecs";
+export type * from "./editor-manifest.type";
diff --git a/packages/ecs/test/wasm/Registry.spec.ts b/packages/ecs-lib/test/Registry.spec.ts
similarity index 99%
rename from packages/ecs/test/wasm/Registry.spec.ts
rename to packages/ecs-lib/test/Registry.spec.ts
index 5aa150b..4b1dab2 100644
--- a/packages/ecs/test/wasm/Registry.spec.ts
+++ b/packages/ecs-lib/test/Registry.spec.ts
@@ -1,6 +1,6 @@
import { assert, describe, expect, it } from "vitest";
-import Module from "../../lib/libecs.js";
+import Module from "../lib/libecs";
class Velocity {
name: string = "Velocity";
diff --git a/packages/ecs/test/wasm/SparseArray.spec.ts b/packages/ecs-lib/test/SparseArray.spec.ts
similarity index 95%
rename from packages/ecs/test/wasm/SparseArray.spec.ts
rename to packages/ecs-lib/test/SparseArray.spec.ts
index 2308c22..e1a4462 100644
--- a/packages/ecs/test/wasm/SparseArray.spec.ts
+++ b/packages/ecs-lib/test/SparseArray.spec.ts
@@ -1,6 +1,6 @@
import { describe, expect, it } from "vitest";
-import Module from "../../lib/libecs.js";
+import Module from "../lib/libecs";
describe("SparseArray", () => {
it("basic instantation", async () => {
diff --git a/packages/ecs/test/wasm/Zipper.spec.ts b/packages/ecs-lib/test/Zipper.spec.ts
similarity index 98%
rename from packages/ecs/test/wasm/Zipper.spec.ts
rename to packages/ecs-lib/test/Zipper.spec.ts
index 0fc87bd..395cdd8 100644
--- a/packages/ecs/test/wasm/Zipper.spec.ts
+++ b/packages/ecs-lib/test/Zipper.spec.ts
@@ -1,6 +1,6 @@
import { describe, expect, it } from "vitest";
-import Module from "../../lib/libecs.js";
+import Module from "../lib/libecs";
class Velocity {
name: string = "Velocity";
diff --git a/packages/ecs-lib/tsconfig.json b/packages/ecs-lib/tsconfig.json
new file mode 100644
index 0000000..9e6d724
--- /dev/null
+++ b/packages/ecs-lib/tsconfig.json
@@ -0,0 +1,6 @@
+{
+ "$schema": "https://json.schemastore.org/tsconfig.json",
+ "extends": "../../tsconfig.json",
+ "include": ["src/**/*.ts"],
+ "exclude": ["node_modules", "dist"]
+}
diff --git a/packages/ecs-lib/tsconfig.spec.json b/packages/ecs-lib/tsconfig.spec.json
new file mode 100644
index 0000000..8270cab
--- /dev/null
+++ b/packages/ecs-lib/tsconfig.spec.json
@@ -0,0 +1,10 @@
+{
+ "$schema": "https://json.schemastore.org/tsconfig.json",
+ "extends": "./tsconfig.json",
+ "compilerOptions": {
+ "noEmit": true,
+ "skipLibCheck": true
+ },
+ "include": ["test/**/*.spec.ts"],
+ "exclude": ["node_modules"]
+}
diff --git a/packages/ecs-lib/tsup.config.ts b/packages/ecs-lib/tsup.config.ts
new file mode 100644
index 0000000..f3b6e6c
--- /dev/null
+++ b/packages/ecs-lib/tsup.config.ts
@@ -0,0 +1,3 @@
+import { createTsupConfig } from "../../tsup.config.js";
+
+export default [createTsupConfig()];
diff --git a/packages/ecs/wasm/Entity.cpp b/packages/ecs-lib/wasm/Entity.cpp
similarity index 100%
rename from packages/ecs/wasm/Entity.cpp
rename to packages/ecs-lib/wasm/Entity.cpp
diff --git a/packages/ecs/wasm/Entity.hpp b/packages/ecs-lib/wasm/Entity.hpp
similarity index 100%
rename from packages/ecs/wasm/Entity.hpp
rename to packages/ecs-lib/wasm/Entity.hpp
diff --git a/packages/ecs/wasm/Registry.cpp b/packages/ecs-lib/wasm/Registry.cpp
similarity index 100%
rename from packages/ecs/wasm/Registry.cpp
rename to packages/ecs-lib/wasm/Registry.cpp
diff --git a/packages/ecs/wasm/Registry.hpp b/packages/ecs-lib/wasm/Registry.hpp
similarity index 100%
rename from packages/ecs/wasm/Registry.hpp
rename to packages/ecs-lib/wasm/Registry.hpp
diff --git a/packages/ecs/wasm/SparseArray.cpp b/packages/ecs-lib/wasm/SparseArray.cpp
similarity index 100%
rename from packages/ecs/wasm/SparseArray.cpp
rename to packages/ecs-lib/wasm/SparseArray.cpp
diff --git a/packages/ecs/wasm/SparseArray.hpp b/packages/ecs-lib/wasm/SparseArray.hpp
similarity index 100%
rename from packages/ecs/wasm/SparseArray.hpp
rename to packages/ecs-lib/wasm/SparseArray.hpp
diff --git a/packages/ecs/wasm/Utils.cpp b/packages/ecs-lib/wasm/Utils.cpp
similarity index 100%
rename from packages/ecs/wasm/Utils.cpp
rename to packages/ecs-lib/wasm/Utils.cpp
diff --git a/packages/ecs/wasm/Utils.hpp b/packages/ecs-lib/wasm/Utils.hpp
similarity index 100%
rename from packages/ecs/wasm/Utils.hpp
rename to packages/ecs-lib/wasm/Utils.hpp
diff --git a/packages/ecs-server/.cliff-jumperrc.json b/packages/ecs-server/.cliff-jumperrc.json
new file mode 100644
index 0000000..b633b73
--- /dev/null
+++ b/packages/ecs-server/.cliff-jumperrc.json
@@ -0,0 +1,7 @@
+{
+ "$schema": "https://raw.githubusercontent.com/favware/cliff-jumper/main/assets/cliff-jumper.schema.json",
+ "name": "ecs-server",
+ "org": "nanoforge-dev",
+ "packagePath": "packages/ecs-server",
+ "identifierBase": false
+}
diff --git a/packages/ecs-server/.gitignore b/packages/ecs-server/.gitignore
new file mode 100644
index 0000000..0ac3803
--- /dev/null
+++ b/packages/ecs-server/.gitignore
@@ -0,0 +1,273 @@
+### VisualStudioCode template
+.vscode/*
+!.vscode/settings.json
+!.vscode/tasks.json
+!.vscode/launch.json
+!.vscode/extensions.json
+!.vscode/*.code-snippets
+
+# Local History for Visual Studio Code
+.history/
+
+# Built Visual Studio Code Extensions
+*.vsix
+
+### C++ template
+# Prerequisites
+*.d
+
+# Compiled Object files
+*.slo
+*.lo
+*.o
+*.obj
+
+# Precompiled Headers
+*.gch
+*.pch
+
+# Compiled Dynamic libraries
+*.so
+*.dylib
+*.dll
+
+# Fortran module files
+*.mod
+*.smod
+
+# Compiled Static libraries
+*.lai
+*.la
+*.a
+*.lib
+
+# Executables
+*.exe
+*.out
+*.app
+
+### JetBrains template
+# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio, WebStorm and Rider
+# Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839
+
+# User-specific stuff
+.idea/**/workspace.xml
+.idea/**/tasks.xml
+.idea/**/usage.statistics.xml
+.idea/**/dictionaries
+.idea/**/shelf
+
+# AWS User-specific
+.idea/**/aws.xml
+
+# Generated files
+.idea/**/contentModel.xml
+
+# Sensitive or high-churn files
+.idea/**/dataSources/
+.idea/**/dataSources.ids
+.idea/**/dataSources.local.xml
+.idea/**/sqlDataSources.xml
+.idea/**/dynamic.xml
+.idea/**/uiDesigner.xml
+.idea/**/dbnavigator.xml
+
+# Gradle
+.idea/**/gradle.xml
+.idea/**/libraries
+
+# Gradle and Maven with auto-import
+# When using Gradle or Maven with auto-import, you should exclude module files,
+# since they will be recreated, and may cause churn. Uncomment if using
+# auto-import.
+# .idea/artifacts
+# .idea/compiler.xml
+# .idea/jarRepositories.xml
+# .idea/modules.xml
+# .idea/*.iml
+# .idea/modules
+# *.iml
+# *.ipr
+!build/
+
+# CMakeg
+cmake-build-*/
+
+# Mongo Explorer plugin
+.idea/**/mongoSettings.xml
+
+# File-based project format
+*.iws
+
+# IntelliJ
+out/
+
+# mpeltonen/sbt-idea plugin
+.idea_modules/
+
+# JIRA plugin
+atlassian-ide-plugin.xml
+
+# Cursive Clojure plugin
+.idea/replstate.xml
+
+# SonarLint plugin
+.idea/sonarlint/
+
+# Crashlytics plugin (for Android Studio and IntelliJ)
+com_crashlytics_export_strings.xml
+crashlytics.properties
+crashlytics-build.properties
+fabric.properties
+
+# Editor-based Rest Client
+.idea/httpRequests
+
+# Android studio 3.1+ serialized cache file
+.idea/caches/build_file_checksums.ser
+
+### Node template
+# Logs
+logs
+*.log
+npm-debug.log*
+yarn-debug.log*
+yarn-error.log*
+lerna-debug.log*
+.pnpm-debug.log*
+
+# Diagnostic reports (https://nodejs.org/api/report.html)
+report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json
+
+# Runtime data
+pids
+*.pid
+*.seed
+*.pid.lock
+
+# Directory for instrumented libs generated by jscoverage/JSCover
+lib-cov
+
+# Coverage directory used by tools like istanbul
+coverage
+*.lcov
+
+# nyc test coverage
+.nyc_output
+
+# Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files)
+.grunt
+
+# Bower dependency directory (https://bower.io/)
+bower_components
+
+# node-waf configuration
+.lock-wscript
+
+# Compiled binary addons (https://nodejs.org/api/addons.html)
+build/Release
+
+# Dependency directories
+node_modules/
+jspm_packages/
+
+# Snowpack dependency directory (https://snowpack.dev/)
+web_modules/
+
+# TypeScript cache
+*.tsbuildinfo
+
+# Optional npm cache directory
+.npm
+
+# Optional eslint cache
+.eslintcache
+
+# Optional stylelint cache
+.stylelintcache
+
+# Microbundle cache
+.rpt2_cache/
+.rts2_cache_cjs/
+.rts2_cache_es/
+.rts2_cache_umd/
+
+# Optional REPL history
+.node_repl_history
+
+# Output of 'npm pack'
+*.tgz
+
+# Yarn Integrity file
+.yarn-integrity
+
+# dotenv environment variable files
+.env
+.env.development.local
+.env.test.local
+.env.production.local
+.env.local
+
+# parcel-bundler cache (https://parceljs.org/)
+.cache
+.parcel-cache
+
+# Next.js build output
+.next
+out
+
+# Nuxt.js build / generate output
+.nuxt
+dist
+
+# Gatsby files
+.cache/
+# Comment in the public line in if your project uses Gatsby and not Next.js
+# https://nextjs.org/blog/next-9-1#public-directory-support
+# public
+
+# vuepress build output
+.vuepress/dist
+
+# vuepress v2.x temp and cache directory
+.temp
+.cache
+
+# Docusaurus cache and generated files
+.docusaurus
+
+# Serverless directories
+.serverless/
+
+# FuseBox cache
+.fusebox/
+
+# DynamoDB Local files
+.dynamodb/
+
+# TernJS port file
+.tern-port
+
+# Stores VSCode versions used for testing VSCode extensions
+.vscode-test
+
+# yarn v2
+.yarn/cache
+.yarn/unplugged
+.yarn/build-state.yml
+.yarn/install-state.gz
+.pnp.*
+
+### Private
+
+# Turbo
+.turbo/
+
+# Compiled files
+src/**/*.js
+src/**/*.d.ts
+
+# pubilc directory
+lib/
+compile_commands.json
+emsdk/
diff --git a/packages/ecs-server/.idea/.gitignore b/packages/ecs-server/.idea/.gitignore
new file mode 100644
index 0000000..13566b8
--- /dev/null
+++ b/packages/ecs-server/.idea/.gitignore
@@ -0,0 +1,8 @@
+# Default ignored files
+/shelf/
+/workspace.xml
+# Editor-based HTTP Client requests
+/httpRequests/
+# Datasource local storage ignored files
+/dataSources/
+/dataSources.local.xml
diff --git a/packages/ecs-server/.idea/.name b/packages/ecs-server/.idea/.name
new file mode 100644
index 0000000..4b4c17e
--- /dev/null
+++ b/packages/ecs-server/.idea/.name
@@ -0,0 +1 @@
+[NanoForge] Engine ECS Server
\ No newline at end of file
diff --git a/packages/ecs-server/.idea/[NanoForge] Engine ECS Server.iml b/packages/ecs-server/.idea/[NanoForge] Engine ECS Server.iml
new file mode 100644
index 0000000..24643cc
--- /dev/null
+++ b/packages/ecs-server/.idea/[NanoForge] Engine ECS Server.iml
@@ -0,0 +1,12 @@
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/packages/ecs-server/.idea/codeStyles/Project.xml b/packages/ecs-server/.idea/codeStyles/Project.xml
new file mode 100644
index 0000000..a57ead7
--- /dev/null
+++ b/packages/ecs-server/.idea/codeStyles/Project.xml
@@ -0,0 +1,172 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/packages/ecs-server/.idea/codeStyles/codeStyleConfig.xml b/packages/ecs-server/.idea/codeStyles/codeStyleConfig.xml
new file mode 100644
index 0000000..79ee123
--- /dev/null
+++ b/packages/ecs-server/.idea/codeStyles/codeStyleConfig.xml
@@ -0,0 +1,5 @@
+
+
+
+
+
\ No newline at end of file
diff --git a/packages/ecs-server/.idea/editor.xml b/packages/ecs-server/.idea/editor.xml
new file mode 100644
index 0000000..d70eddc
--- /dev/null
+++ b/packages/ecs-server/.idea/editor.xml
@@ -0,0 +1,107 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/packages/ecs-server/.idea/git_toolbox_blame.xml b/packages/ecs-server/.idea/git_toolbox_blame.xml
new file mode 100644
index 0000000..7dc1249
--- /dev/null
+++ b/packages/ecs-server/.idea/git_toolbox_blame.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/packages/ecs-server/.idea/git_toolbox_prj.xml b/packages/ecs-server/.idea/git_toolbox_prj.xml
new file mode 100644
index 0000000..02b915b
--- /dev/null
+++ b/packages/ecs-server/.idea/git_toolbox_prj.xml
@@ -0,0 +1,15 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/packages/ecs-server/.idea/inspectionProfiles/Project_Default.xml b/packages/ecs-server/.idea/inspectionProfiles/Project_Default.xml
new file mode 100644
index 0000000..e852c49
--- /dev/null
+++ b/packages/ecs-server/.idea/inspectionProfiles/Project_Default.xml
@@ -0,0 +1,13 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/packages/ecs-server/.idea/misc.xml b/packages/ecs-server/.idea/misc.xml
new file mode 100644
index 0000000..7ecbce5
--- /dev/null
+++ b/packages/ecs-server/.idea/misc.xml
@@ -0,0 +1,24 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/packages/ecs-server/.idea/modules.xml b/packages/ecs-server/.idea/modules.xml
new file mode 100644
index 0000000..2ad16c0
--- /dev/null
+++ b/packages/ecs-server/.idea/modules.xml
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/packages/ecs-server/.idea/prettier.xml b/packages/ecs-server/.idea/prettier.xml
new file mode 100644
index 0000000..b0c1c68
--- /dev/null
+++ b/packages/ecs-server/.idea/prettier.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/packages/ecs-server/.idea/vcs.xml b/packages/ecs-server/.idea/vcs.xml
new file mode 100644
index 0000000..b2bdec2
--- /dev/null
+++ b/packages/ecs-server/.idea/vcs.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/packages/ecs-server/.nvmrc b/packages/ecs-server/.nvmrc
new file mode 100644
index 0000000..c519bf5
--- /dev/null
+++ b/packages/ecs-server/.nvmrc
@@ -0,0 +1 @@
+v24.11.0
diff --git a/packages/ecs-server/.prettierignore b/packages/ecs-server/.prettierignore
new file mode 100644
index 0000000..711c4e5
--- /dev/null
+++ b/packages/ecs-server/.prettierignore
@@ -0,0 +1,13 @@
+# Ignore files for PNPM, NPM and YARN
+pnpm-lock.yaml
+package-lock.json
+yarn.lock
+bun.lock
+
+.turbo/
+node_modules/
+dist/
+coverage/
+CHANGELOG.md
+
+lib/
diff --git a/packages/ecs-server/LICENSE b/packages/ecs-server/LICENSE
new file mode 100644
index 0000000..62c6400
--- /dev/null
+++ b/packages/ecs-server/LICENSE
@@ -0,0 +1,21 @@
+MIT License
+
+Copyright © 2025 NanoForge
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
diff --git a/packages/ecs-server/Makefile b/packages/ecs-server/Makefile
new file mode 100644
index 0000000..8abc88e
--- /dev/null
+++ b/packages/ecs-server/Makefile
@@ -0,0 +1,46 @@
+BASE_DIR = node_modules/@nanoforge-dev/ecs-lib
+
+SRC = $(BASE_DIR)/wasm/SparseArray.cpp\
+ $(BASE_DIR)/wasm/Entity.cpp\
+ $(BASE_DIR)/wasm/Utils.cpp\
+ $(BASE_DIR)/wasm/Registry.cpp
+
+NAME := libecs
+
+OUT_DIR = lib
+JS_NAME = $(OUT_DIR)/$(NAME).js
+WASM_NAME = $(OUT_DIR)/$(NAME).wasm
+TS_NAME = $(OUT_DIR)/$(NAME).d.ts
+
+CFLAGS = -std=c++20
+LDFLAGS = -O3 --no-entry --bind -sNO_DISABLE_EXCEPTION_CATCHING -sEXPORT_EXCEPTION_HANDLING_HELPERS
+
+CC = em++
+
+OBJ = $(SRC:.cpp=.o)
+
+%.o: %.cpp
+ $(CC) -c $< -o $@ $(CFLAGS)
+
+all: $(JS_NAME)
+
+$(JS_NAME): LDFLAGS += -s MODULARIZE=1 -s EXPORT_ES6=1 -s ENVIRONMENT=node
+$(JS_NAME): $(OBJ)
+ @mkdir -p $(OUT_DIR)
+ $(CC) $(OBJ) $(LDFLAGS) -o $(JS_NAME)
+ cp $(BASE_DIR)/$(TS_NAME) $(TS_NAME)
+
+clean:
+ $(RM) $(OBJ)
+ $(RM) $(JS_NAME) $(WASM_NAME) $(TS_NAME)
+
+fclean: clean
+
+tests: LDFLAGS += -s MODULARIZE=1 -s EXPORT_ES6=1
+tests: $(OBJ)
+ @mkdir -p $(OUT_DIR)
+ $(CC) $(OBJ) $(LDFLAGS) -o $(JS_NAME)
+
+re: fclean all
+
+.PHONY: re fclean all clean tests
diff --git a/packages/ecs-server/README.md b/packages/ecs-server/README.md
new file mode 100644
index 0000000..a5b680a
--- /dev/null
+++ b/packages/ecs-server/README.md
@@ -0,0 +1 @@
+# ECS Server
diff --git a/packages/ecs-server/cliff.toml b/packages/ecs-server/cliff.toml
new file mode 100644
index 0000000..11aa163
--- /dev/null
+++ b/packages/ecs-server/cliff.toml
@@ -0,0 +1,79 @@
+[changelog]
+header = """
+# Changelog
+
+All notable changes to this project will be documented in this file.\n
+"""
+body = """
+{%- macro remote_url() -%}
+ https://github.com/{{ remote.github.owner }}/{{ remote.github.repo }}
+{%- endmacro -%}
+{% if version %}\
+ # [{{ version | trim_start_matches(pat="v") }}]\
+ {% if previous %}\
+ {% if previous.version %}\
+ ({{ self::remote_url() }}/compare/{{ previous.version }}...{{ version }})\
+ {% else %}\
+ ({{ self::remote_url() }}/tree/{{ version }})\
+ {% endif %}\
+ {% endif %} \
+ - ({{ timestamp | date(format="%Y-%m-%d") }})
+{% else %}\
+ # [unreleased]
+{% endif %}\
+{% for group, commits in commits | group_by(attribute="group") %}
+ ## {{ group | upper_first }}
+ {% for commit in commits %}
+ - {% if commit.scope %}\
+ **{{commit.scope}}:** \
+ {% endif %}\
+ {{ commit.message | upper_first }} ([{{ commit.id | truncate(length=7, end="") }}]({{ self::remote_url() }}/commit/{{ commit.id }}))\
+ {% if commit.github.username %} by @{{ commit.github.username }}{%- endif %}\
+ {% if commit.breaking %}\
+ {% for footer in commit.footers %}\
+ {% if footer.breaking %}\
+ \n{% raw %} {% endraw %}- **{{ footer.token }}{{ footer.separator }}** {{ footer.value }}\
+ {% endif %}\
+ {% endfor %}\
+ {% endif %}\
+ {% endfor %}
+{% endfor %}\
+{% if github.contributors | filter(attribute="is_first_time", value=true) | length %}\
+ \n### New Contributors\n
+ {% for contributor in github.contributors | filter(attribute="is_first_time", value=true) %}\
+ - @{{ contributor.username }} made their first contribution in #{{ contributor.pr_number }}
+ {% endfor %}\
+{% endif %}\n
+"""
+trim = true
+footer = ""
+
+[git]
+conventional_commits = true
+filter_unconventional = true
+commit_parsers = [
+ { message = "^feat", group = "Features"},
+ { message = "^fix", group = "Bug Fixes"},
+ { message = "^docs", group = "Documentation"},
+ { message = "^perf", group = "Performance"},
+ { message = "^refactor", group = "Refactor"},
+ { message = "^types", group = "Typings"},
+ { message = ".*deprecated", body = ".*deprecated", group = "Deprecation"},
+ { message = "^revert", skip = true},
+ { message = "^style", group = "Styling"},
+ { message = "^test", group = "Testing"},
+ { message = "^chore", skip = true},
+ { message = "^ci", skip = true},
+ { message = "^build", skip = true},
+ { body = ".*security", group = "Security"},
+]
+filter_commits = true
+protect_breaking_commits = true
+tag_pattern = "@nanoforge-dev/ecs-server@[0-9]*"
+ignore_tags = ""
+topo_order = false
+sort_commits = "newest"
+
+[remote.github]
+owner = "NanoForge-dev"
+repo = "Engine"
diff --git a/packages/ecs-server/eslint.config.js b/packages/ecs-server/eslint.config.js
new file mode 100644
index 0000000..62ec06d
--- /dev/null
+++ b/packages/ecs-server/eslint.config.js
@@ -0,0 +1,3 @@
+import config from "@nanoforge-dev/utils-eslint-config";
+
+export default config;
diff --git a/packages/ecs-server/package.json b/packages/ecs-server/package.json
new file mode 100644
index 0000000..3bfcf59
--- /dev/null
+++ b/packages/ecs-server/package.json
@@ -0,0 +1,95 @@
+{
+ "$schema": "https://json.schemastore.org/package.json",
+ "name": "@nanoforge-dev/ecs-server",
+ "version": "0.0.1",
+ "description": "NanoForge Engine - ECS Server",
+ "keywords": [
+ "nanoforge",
+ "game",
+ "engine"
+ ],
+ "homepage": "https://github.com/NanoForge-dev/Engine#readme",
+ "bugs": "https://github.com/NanoForge-dev/Engine/issues",
+ "license": "MIT",
+ "contributors": [
+ "Bill ",
+ "Exelo ",
+ "Fexkoser ",
+ "Tchips "
+ ],
+ "files": [
+ "dist",
+ "lib",
+ "wasm"
+ ],
+ "main": "./dist/index.cjs",
+ "module": "./dist/index.js",
+ "types": "./dist/index.d.cts",
+ "exports": {
+ ".": {
+ "require": {
+ "types": "./dist/index.d.cts",
+ "default": "./dist/index.cjs"
+ },
+ "import": {
+ "types": "./dist/index.d.ts",
+ "default": "./dist/index.js"
+ }
+ },
+ "./package.json": "./package.json"
+ },
+ "type": "module",
+ "directories": {
+ "lib": "src"
+ },
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/NanoForge-dev/Engine.git",
+ "directory": "packages/ecs-server"
+ },
+ "scripts": {
+ "build": "pnpm build:wasm && pnpm build:script",
+ "build:script": "tsc --noEmit && tsup",
+ "build:wasm": "make",
+ "clean": "make fclean",
+ "lint": "prettier --check . && eslint --format=pretty src",
+ "format": "prettier --write . && eslint --fix --format=pretty src",
+ "test:unit": "make fclean && make tests -j 16 && vitest run --config ../../vitest.config.ts",
+ "prepack": "pnpm run build && pnpm run lint",
+ "changelog": "git cliff --prepend ./CHANGELOG.md -u -c ./cliff.toml -r ../../ --include-path 'packages/ecs-server/*'",
+ "release": "cliff-jumper"
+ },
+ "dependencies": {
+ "@nanoforge-dev/common": "workspace:^",
+ "@nanoforge-dev/ecs-lib": "workspace:^"
+ },
+ "devDependencies": {
+ "@favware/cliff-jumper": "^6.0.0",
+ "@nanoforge-dev/asset-manager": "workspace:^",
+ "@nanoforge-dev/core": "workspace:^",
+ "@nanoforge-dev/utils-eslint-config": "workspace:^",
+ "@nanoforge-dev/utils-prettier-config": "workspace:^",
+ "@types/node": "^24.10.1",
+ "eslint": "^9.39.1",
+ "eslint-formatter-pretty": "^7.0.0",
+ "prettier": "^3.6.2",
+ "tsup": "^8.5.1",
+ "typescript": "^5.9.3",
+ "vitest": "^4.0.15"
+ },
+ "packageManager": "pnpm@10.22.0",
+ "engines": {
+ "node": "24.11.0"
+ },
+ "publishConfig": {
+ "access": "public"
+ },
+ "lint-staged": {
+ "**/*.ts": [
+ "prettier --write"
+ ],
+ "src/**/*.ts": [
+ "eslint --fix"
+ ]
+ }
+}
diff --git a/packages/ecs-server/prettier.config.js b/packages/ecs-server/prettier.config.js
new file mode 100644
index 0000000..27d0e26
--- /dev/null
+++ b/packages/ecs-server/prettier.config.js
@@ -0,0 +1,3 @@
+import config from "@nanoforge-dev/utils-prettier-config";
+
+export default config;
diff --git a/packages/ecs-server/src/ecs-server-library.ts b/packages/ecs-server/src/ecs-server-library.ts
new file mode 100644
index 0000000..ba77c21
--- /dev/null
+++ b/packages/ecs-server/src/ecs-server-library.ts
@@ -0,0 +1,21 @@
+import { type InitContext } from "@nanoforge-dev/common";
+import { AbstractECSLibrary } from "@nanoforge-dev/ecs-lib";
+
+import { default as Module } from "../lib/libecs";
+
+export class ECSServerLibrary extends AbstractECSLibrary {
+ constructor() {
+ super();
+ this.path = "libecs.wasm";
+ }
+
+ get __name(): string {
+ return "ECSLibrary";
+ }
+
+ override async __init(context: InitContext): Promise {
+ const wasmFile = context.libraries.getAssetManager().library.getAsset(this.path);
+ this.module = await Module({ locateFile: () => wasmFile.path });
+ this._registry = new this.module.Registry();
+ }
+}
diff --git a/packages/ecs-server/src/index.ts b/packages/ecs-server/src/index.ts
new file mode 100644
index 0000000..0c14ef4
--- /dev/null
+++ b/packages/ecs-server/src/index.ts
@@ -0,0 +1,11 @@
+import "../lib/libecs.wasm";
+
+export type {
+ Component,
+ EditorComponentManifest,
+ EditorSystemManifest,
+ System,
+ Registry,
+} from "@nanoforge-dev/ecs-lib";
+
+export { ECSServerLibrary } from "./ecs-server-library";
diff --git a/packages/ecs-server/test/ecs-server-library.spec.ts b/packages/ecs-server/test/ecs-server-library.spec.ts
new file mode 100644
index 0000000..a7cb20c
--- /dev/null
+++ b/packages/ecs-server/test/ecs-server-library.spec.ts
@@ -0,0 +1,65 @@
+import { AssetManagerLibrary } from "@nanoforge-dev/asset-manager";
+import { ClearContext, type IConfigRegistry, InitContext } from "@nanoforge-dev/common";
+import { beforeAll, beforeEach, describe, expect, it } from "vitest";
+
+import { EditableApplicationContext } from "../../core/src/common/context/contexts/application.editable-context";
+import { EditableLibraryManager } from "../../core/src/common/library/manager/library.manager";
+import { type Registry } from "../lib/libecs";
+import { ECSServerLibrary } from "../src/ecs-server-library";
+
+class Position {
+ name: string = "Position";
+ constructor(
+ public x: number,
+ public y: number,
+ ) {
+ this.x = x;
+ this.y = y;
+ }
+}
+
+describe("ECSServerLibrary", () => {
+ let ecs: ECSServerLibrary;
+ let registry: Registry;
+ const assetManager = new AssetManagerLibrary();
+ const libraryManager = new EditableLibraryManager();
+ const appContext = new EditableApplicationContext(libraryManager);
+ const configRegistry = {} as IConfigRegistry;
+ const initContext = new InitContext(appContext, libraryManager, configRegistry, {
+ // @ts-ignore
+ canvas: null,
+ files: new Map([["/libecs.wasm", "./lib/libecs.wasm"]]),
+ });
+
+ const clearContext = new ClearContext(appContext, libraryManager);
+ libraryManager.setAssetManager(assetManager);
+
+ beforeAll(async () => {
+ await assetManager.__init(initContext);
+ });
+
+ beforeEach(async () => {
+ ecs = new ECSServerLibrary();
+ await ecs.__init(initContext);
+ registry = ecs.registry;
+ });
+
+ it("init and spawn entity", async () => {
+ const entity = registry.spawnEntity();
+ expect(entity).toBeDefined();
+ expect(entity.getId()).toBe(0);
+ });
+
+ it("add component to entity", async () => {
+ const entity = registry.spawnEntity();
+ const pos = new Position(1, 2);
+ registry.addComponent(entity, pos);
+ const components = registry.getComponents(Position);
+ expect(components.get(entity.getId())).toStrictEqual(new Position(1, 2));
+ expect(components.size()).toBe(1);
+ });
+
+ it("clear", async () => {
+ await ecs.__clear(clearContext);
+ });
+});
diff --git a/packages/ecs-server/tsconfig.json b/packages/ecs-server/tsconfig.json
new file mode 100644
index 0000000..9e6d724
--- /dev/null
+++ b/packages/ecs-server/tsconfig.json
@@ -0,0 +1,6 @@
+{
+ "$schema": "https://json.schemastore.org/tsconfig.json",
+ "extends": "../../tsconfig.json",
+ "include": ["src/**/*.ts"],
+ "exclude": ["node_modules", "dist"]
+}
diff --git a/packages/ecs-server/tsconfig.spec.json b/packages/ecs-server/tsconfig.spec.json
new file mode 100644
index 0000000..8270cab
--- /dev/null
+++ b/packages/ecs-server/tsconfig.spec.json
@@ -0,0 +1,10 @@
+{
+ "$schema": "https://json.schemastore.org/tsconfig.json",
+ "extends": "./tsconfig.json",
+ "compilerOptions": {
+ "noEmit": true,
+ "skipLibCheck": true
+ },
+ "include": ["test/**/*.spec.ts"],
+ "exclude": ["node_modules"]
+}
diff --git a/packages/ecs-server/tsup.config.ts b/packages/ecs-server/tsup.config.ts
new file mode 100644
index 0000000..f3b6e6c
--- /dev/null
+++ b/packages/ecs-server/tsup.config.ts
@@ -0,0 +1,3 @@
+import { createTsupConfig } from "../../tsup.config.js";
+
+export default [createTsupConfig()];
diff --git a/packages/ecs/.idea/.name b/packages/ecs/.idea/.name
deleted file mode 100644
index fc60d4a..0000000
--- a/packages/ecs/.idea/.name
+++ /dev/null
@@ -1 +0,0 @@
-[NanoForge] Engine ECS
\ No newline at end of file
diff --git a/packages/ecs/Makefile b/packages/ecs/Makefile
deleted file mode 100644
index 739888d..0000000
--- a/packages/ecs/Makefile
+++ /dev/null
@@ -1,70 +0,0 @@
-SRC = wasm/SparseArray.cpp\
- wasm/Entity.cpp\
- wasm/Utils.cpp\
- wasm/Registry.cpp
-
-NAME := libecs
-
-OUT_DIR = lib
-JS_NAME = $(OUT_DIR)/$(NAME).js
-HTML_NAME = $(OUT_DIR)/$(NAME).html
-WASM_NAME = $(OUT_DIR)/$(NAME).wasm
-TS_NAME = $(NAME).d.ts
-
-CFLAGS = -std=c++20
-LDFLAGS = -O3 --no-entry --bind -sNO_DISABLE_EXCEPTION_CATCHING -sEXPORT_EXCEPTION_HANDLING_HELPERS
-
-CC = em++
-
-OBJ = $(SRC:.cpp=.o)
-
-%.o: %.cpp
- $(CC) -c $< -o $@ $(CFLAGS)
-
-all: $(TS_NAME)
-
-js: $(JS_NAME)
-
-html: $(HTML_NAME)
-
-ts: $(TS_NAME)
-
-$(WASM_NAME): $(OBJ)
- @mkdir -p $(OUT_DIR)
- $(CC) $(OBJ) $(LDFLAGS) -o $(WASM_NAME)
-
-$(JS_NAME): LDFLAGS += -s MODULARIZE=1 -s EXPORT_ES6=1 -s STANDALONE_WASM=1
-$(JS_NAME): $(OBJ)
- @mkdir -p $(OUT_DIR)
- $(CC) $(OBJ) $(LDFLAGS) -o $(JS_NAME)
-
-$(HTML_NAME): LDFLAGS += -s MODULARIZE=1 -s EXPORT_ES6=1 -s STANDALONE_WASM=1
-$(HTML_NAME): $(OBJ)
- @mkdir -p $(OUT_DIR)
- $(CC) $(OBJ) $(LDFLAGS) -o $(HTML_NAME)
-
-$(TS_NAME): LDFLAGS += -s MODULARIZE=1 -s EXPORT_ES6=1 -s ENVIRONMENT=web
-$(TS_NAME): $(OBJ)
- @mkdir -p $(OUT_DIR)
- $(CC) $(OBJ) $(LDFLAGS) --emit-tsd libecs-tmp.d.ts -o $(JS_NAME)
- cat build/pre.ts > $(OUT_DIR)/$(TS_NAME)
- cat lib/libecs-tmp.d.ts >> $(OUT_DIR)/$(TS_NAME)
- $(RM) lib/libecs-tmp.d.ts
-
-clean:
- $(RM) $(OBJ)
- $(RM) $(JS_NAME) $(WASM_NAME) $(HTML_NAME) $(TS_NAME)
-
-fclean: clean
-
-tests: LDFLAGS += -s MODULARIZE=1
-tests: $(OBJ)
- @mkdir -p $(OUT_DIR)
- $(CC) $(OBJ) $(LDFLAGS) --emit-tsd libecs-tmp.d.ts -o $(JS_NAME)
- cat build/pre.ts > $(OUT_DIR)/$(TS_NAME)
- cat lib/libecs-tmp.d.ts >> $(OUT_DIR)/$(TS_NAME)
- $(RM) lib/libecs-tmp.d.ts
-
-re: fclean all
-
-.PHONY: re fclean all clean tests
diff --git a/packages/ecs/lib/index.ts b/packages/ecs/lib/index.ts
deleted file mode 100644
index acde6e2..0000000
--- a/packages/ecs/lib/index.ts
+++ /dev/null
@@ -1,2 +0,0 @@
-export * from "./libecs";
-export { default as Module } from "./libecs";
diff --git a/packages/ecs/src/ecs-library.ts b/packages/ecs/src/ecs-library.ts
deleted file mode 100644
index 269c9ac..0000000
--- a/packages/ecs/src/ecs-library.ts
+++ /dev/null
@@ -1,43 +0,0 @@
-import {
- ASSET_MANAGER_LIBRARY,
- BaseComponentSystemLibrary,
- type Context,
- GRAPHICS_LIBRARY,
- type InitContext,
-} from "@nanoforge-dev/common";
-
-import { type MainModule, Module, type Registry } from "../lib";
-
-export class ECSLibrary extends BaseComponentSystemLibrary {
- private module?: MainModule;
- private _registry?: Registry;
-
- private readonly path: string = "libecs.wasm";
-
- constructor() {
- super({
- dependencies: [ASSET_MANAGER_LIBRARY],
- runAfter: [GRAPHICS_LIBRARY],
- });
- }
-
- get __name(): string {
- return "ECSLibrary";
- }
-
- override async __init(context: InitContext): Promise {
- const wasmFile = context.libraries.getAssetManager().library.getAsset(this.path);
- this.module = await Module({ locateFile: () => wasmFile.path });
- this._registry = new this.module.Registry();
- }
-
- async __run(ctx: Context): Promise {
- if (!this._registry) this.throwNotInitializedError();
- this._registry.runSystems(ctx);
- }
-
- get registry(): Registry {
- if (!this._registry) this.throwNotInitializedError();
- return this._registry;
- }
-}
diff --git a/packages/ecs/src/index.ts b/packages/ecs/src/index.ts
deleted file mode 100644
index 8bc56f5..0000000
--- a/packages/ecs/src/index.ts
+++ /dev/null
@@ -1,5 +0,0 @@
-import "../lib/libecs.wasm";
-
-export { ECSLibrary } from "./ecs-library";
-export type { Component, System, Registry } from "../lib";
-export type * from "./editor-manifest.type";
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index e52bc9f..cba098d 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -14,10 +14,10 @@ importers:
devDependencies:
'@commitlint/cli':
specifier: ^20.1.0
- version: 20.1.0(@types/node@24.10.1)(typescript@5.9.3)
+ version: 20.2.0(@types/node@24.10.1)(typescript@5.9.3)
'@commitlint/config-conventional':
specifier: ^20.0.0
- version: 20.0.0
+ version: 20.2.0
'@nanoforge-dev/utils-eslint-config':
specifier: workspace:^
version: link:utils/eslint-config
@@ -26,13 +26,13 @@ importers:
version: link:utils/prettier-config
'@trivago/prettier-plugin-sort-imports':
specifier: ^6.0.0
- version: 6.0.0(prettier@3.6.2)
+ version: 6.0.0(prettier@3.7.4)
'@types/node':
specifier: ^24.10.1
version: 24.10.1
'@vitest/coverage-v8':
specifier: ^4.0.15
- version: 4.0.15(vitest@4.0.15(@types/node@24.10.1)(jiti@2.6.1)(yaml@2.8.1))
+ version: 4.0.15(vitest@4.0.15(@types/node@24.10.1)(jiti@2.6.1)(yaml@2.8.2))
eslint:
specifier: ^9.39.1
version: 9.39.1(jiti@2.6.1)
@@ -44,19 +44,19 @@ importers:
version: 16.2.7
prettier:
specifier: ^3.6.2
- version: 3.6.2
+ version: 3.7.4
tsup:
specifier: ^8.5.1
- version: 8.5.1(jiti@2.6.1)(postcss@8.5.6)(typescript@5.9.3)(yaml@2.8.1)
+ version: 8.5.1(jiti@2.6.1)(postcss@8.5.6)(typescript@5.9.3)(yaml@2.8.2)
turbo:
specifier: ^2.6.1
- version: 2.6.1
+ version: 2.6.3
typescript:
specifier: ^5.9.3
version: 5.9.3
vitest:
specifier: ^4.0.15
- version: 4.0.15(@types/node@24.10.1)(jiti@2.6.1)(yaml@2.8.1)
+ version: 4.0.15(@types/node@24.10.1)(jiti@2.6.1)(yaml@2.8.2)
packages/asset-manager:
dependencies:
@@ -81,16 +81,16 @@ importers:
version: 7.0.0
prettier:
specifier: ^3.6.2
- version: 3.6.2
+ version: 3.7.4
tsup:
specifier: ^8.5.1
- version: 8.5.1(jiti@2.6.1)(postcss@8.5.6)(typescript@5.9.3)(yaml@2.8.1)
+ version: 8.5.1(jiti@2.6.1)(postcss@8.5.6)(typescript@5.9.3)(yaml@2.8.2)
typescript:
specifier: ^5.9.3
version: 5.9.3
vitest:
specifier: ^4.0.15
- version: 4.0.15(@types/node@24.10.1)(jiti@2.6.1)(yaml@2.8.1)
+ version: 4.0.15(@types/node@24.10.1)(jiti@2.6.1)(yaml@2.8.2)
packages/common:
devDependencies:
@@ -111,10 +111,10 @@ importers:
version: 7.0.0
prettier:
specifier: ^3.6.2
- version: 3.6.2
+ version: 3.7.4
tsup:
specifier: ^8.5.1
- version: 8.5.1(jiti@2.6.1)(postcss@8.5.6)(typescript@5.9.3)(yaml@2.8.1)
+ version: 8.5.1(jiti@2.6.1)(postcss@8.5.6)(typescript@5.9.3)(yaml@2.8.2)
typescript:
specifier: ^5.9.3
version: 5.9.3
@@ -126,7 +126,7 @@ importers:
version: 0.5.1
class-validator:
specifier: ^0.14.2
- version: 0.14.2
+ version: 0.14.3
devDependencies:
'@favware/cliff-jumper':
specifier: ^6.0.0
@@ -145,10 +145,10 @@ importers:
version: 7.0.0
prettier:
specifier: ^3.6.2
- version: 3.6.2
+ version: 3.7.4
tsup:
specifier: ^8.5.1
- version: 8.5.1(jiti@2.6.1)(postcss@8.5.6)(typescript@5.9.3)(yaml@2.8.1)
+ version: 8.5.1(jiti@2.6.1)(postcss@8.5.6)(typescript@5.9.3)(yaml@2.8.2)
typescript:
specifier: ^5.9.3
version: 5.9.3
@@ -169,7 +169,7 @@ importers:
version: 0.5.1
class-validator:
specifier: ^0.14.2
- version: 0.14.2
+ version: 0.14.3
devDependencies:
'@favware/cliff-jumper':
specifier: ^6.0.0
@@ -188,19 +188,105 @@ importers:
version: 7.0.0
prettier:
specifier: ^3.6.2
- version: 3.6.2
+ version: 3.7.4
tsup:
specifier: ^8.5.1
- version: 8.5.1(jiti@2.6.1)(postcss@8.5.6)(typescript@5.9.3)(yaml@2.8.1)
+ version: 8.5.1(jiti@2.6.1)(postcss@8.5.6)(typescript@5.9.3)(yaml@2.8.2)
typescript:
specifier: ^5.9.3
version: 5.9.3
- packages/ecs:
+ packages/ecs-client:
dependencies:
'@nanoforge-dev/common':
specifier: workspace:^
version: link:../common
+ '@nanoforge-dev/ecs-lib':
+ specifier: workspace:^
+ version: link:../ecs-lib
+ devDependencies:
+ '@favware/cliff-jumper':
+ specifier: ^6.0.0
+ version: 6.0.0
+ '@nanoforge-dev/asset-manager':
+ specifier: workspace:^
+ version: link:../asset-manager
+ '@nanoforge-dev/core':
+ specifier: workspace:^
+ version: link:../core
+ '@nanoforge-dev/utils-eslint-config':
+ specifier: workspace:^
+ version: link:../../utils/eslint-config
+ '@nanoforge-dev/utils-prettier-config':
+ specifier: workspace:^
+ version: link:../../utils/prettier-config
+ '@types/node':
+ specifier: ^24.10.1
+ version: 24.10.1
+ eslint:
+ specifier: ^9.39.1
+ version: 9.39.1(jiti@2.6.1)
+ eslint-formatter-pretty:
+ specifier: ^7.0.0
+ version: 7.0.0
+ prettier:
+ specifier: ^3.6.2
+ version: 3.7.4
+ tsup:
+ specifier: ^8.5.1
+ version: 8.5.1(jiti@2.6.1)(postcss@8.5.6)(typescript@5.9.3)(yaml@2.8.2)
+ typescript:
+ specifier: ^5.9.3
+ version: 5.9.3
+ vitest:
+ specifier: ^4.0.15
+ version: 4.0.15(@types/node@24.10.1)(jiti@2.6.1)(yaml@2.8.2)
+
+ packages/ecs-lib:
+ dependencies:
+ '@nanoforge-dev/common':
+ specifier: workspace:^
+ version: link:../common
+ devDependencies:
+ '@favware/cliff-jumper':
+ specifier: ^6.0.0
+ version: 6.0.0
+ '@nanoforge-dev/utils-eslint-config':
+ specifier: workspace:^
+ version: link:../../utils/eslint-config
+ '@nanoforge-dev/utils-prettier-config':
+ specifier: workspace:^
+ version: link:../../utils/prettier-config
+ '@types/node':
+ specifier: ^24.10.1
+ version: 24.10.1
+ eslint:
+ specifier: ^9.39.1
+ version: 9.39.1(jiti@2.6.1)
+ eslint-formatter-pretty:
+ specifier: ^7.0.0
+ version: 7.0.0
+ prettier:
+ specifier: ^3.6.2
+ version: 3.7.4
+ tsup:
+ specifier: ^8.5.1
+ version: 8.5.1(jiti@2.6.1)(postcss@8.5.6)(typescript@5.9.3)(yaml@2.8.2)
+ typescript:
+ specifier: ^5.9.3
+ version: 5.9.3
+ vitest:
+ specifier: ^4.0.15
+ version: 4.0.15(@types/node@24.10.1)(jiti@2.6.1)(yaml@2.8.2)
+
+ packages/ecs-server:
+ dependencies:
+ '@nanoforge-dev/common':
+ specifier: workspace:^
+ version: link:../common
+ '@nanoforge-dev/ecs-lib':
+ specifier: workspace:^
+ version: link:../ecs-lib
devDependencies:
'@favware/cliff-jumper':
specifier: ^6.0.0
@@ -228,16 +314,16 @@ importers:
version: 7.0.0
prettier:
specifier: ^3.6.2
- version: 3.6.2
+ version: 3.7.4
tsup:
specifier: ^8.5.1
- version: 8.5.1(jiti@2.6.1)(postcss@8.5.6)(typescript@5.9.3)(yaml@2.8.1)
+ version: 8.5.1(jiti@2.6.1)(postcss@8.5.6)(typescript@5.9.3)(yaml@2.8.2)
typescript:
specifier: ^5.9.3
version: 5.9.3
vitest:
specifier: ^4.0.15
- version: 4.0.15(@types/node@24.10.1)(jiti@2.6.1)(yaml@2.8.1)
+ version: 4.0.15(@types/node@24.10.1)(jiti@2.6.1)(yaml@2.8.2)
packages/graphics-2d:
dependencies:
@@ -265,16 +351,16 @@ importers:
version: 7.0.0
prettier:
specifier: ^3.6.2
- version: 3.6.2
+ version: 3.7.4
tsup:
specifier: ^8.5.1
- version: 8.5.1(jiti@2.6.1)(postcss@8.5.6)(typescript@5.9.3)(yaml@2.8.1)
+ version: 8.5.1(jiti@2.6.1)(postcss@8.5.6)(typescript@5.9.3)(yaml@2.8.2)
typescript:
specifier: ^5.9.3
version: 5.9.3
vitest:
specifier: ^4.0.15
- version: 4.0.15(@types/node@24.10.1)(jiti@2.6.1)(yaml@2.8.1)
+ version: 4.0.15(@types/node@24.10.1)(jiti@2.6.1)(yaml@2.8.2)
packages/input:
dependencies:
@@ -299,10 +385,10 @@ importers:
version: 7.0.0
prettier:
specifier: ^3.6.2
- version: 3.6.2
+ version: 3.7.4
tsup:
specifier: ^8.5.1
- version: 8.5.1(jiti@2.6.1)(postcss@8.5.6)(typescript@5.9.3)(yaml@2.8.1)
+ version: 8.5.1(jiti@2.6.1)(postcss@8.5.6)(typescript@5.9.3)(yaml@2.8.2)
typescript:
specifier: ^5.9.3
version: 5.9.3
@@ -330,10 +416,10 @@ importers:
version: 7.0.0
prettier:
specifier: ^3.6.2
- version: 3.6.2
+ version: 3.7.4
tsup:
specifier: ^8.5.1
- version: 8.5.1(jiti@2.6.1)(postcss@8.5.6)(typescript@5.9.3)(yaml@2.8.1)
+ version: 8.5.1(jiti@2.6.1)(postcss@8.5.6)(typescript@5.9.3)(yaml@2.8.2)
typescript:
specifier: ^5.9.3
version: 5.9.3
@@ -361,10 +447,10 @@ importers:
version: 7.0.0
prettier:
specifier: ^3.6.2
- version: 3.6.2
+ version: 3.7.4
tsup:
specifier: ^8.5.1
- version: 8.5.1(jiti@2.6.1)(postcss@8.5.6)(typescript@5.9.3)(yaml@2.8.1)
+ version: 8.5.1(jiti@2.6.1)(postcss@8.5.6)(typescript@5.9.3)(yaml@2.8.2)
typescript:
specifier: ^5.9.3
version: 5.9.3
@@ -379,7 +465,7 @@ importers:
version: link:../prettier-config
'@trivago/prettier-plugin-sort-imports':
specifier: ^6.0.0
- version: 6.0.0(prettier@3.6.2)
+ version: 6.0.0(prettier@3.7.4)
eslint:
specifier: ^9.39.1
version: 9.39.1(jiti@2.6.1)
@@ -388,19 +474,19 @@ importers:
version: 10.1.8(eslint@9.39.1(jiti@2.6.1))
eslint-plugin-format:
specifier: ^1.0.2
- version: 1.0.2(eslint@9.39.1(jiti@2.6.1))
+ version: 1.1.0(eslint@9.39.1(jiti@2.6.1))
eslint-plugin-jest:
specifier: ^29.1.0
- version: 29.2.1(@typescript-eslint/eslint-plugin@8.48.1(@typescript-eslint/parser@8.48.1(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.1(jiti@2.6.1))(jest@30.2.0(@types/node@24.10.1))(typescript@5.9.3)
+ version: 29.2.1(@typescript-eslint/eslint-plugin@8.48.1(@typescript-eslint/parser@8.48.1(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3)
eslint-plugin-prettier:
specifier: ^5.5.4
- version: 5.5.4(@types/eslint@9.6.1)(eslint-config-prettier@10.1.8(eslint@9.39.1(jiti@2.6.1)))(eslint@9.39.1(jiti@2.6.1))(prettier@3.6.2)
+ version: 5.5.4(@types/eslint@9.6.1)(eslint-config-prettier@10.1.8(eslint@9.39.1(jiti@2.6.1)))(eslint@9.39.1(jiti@2.6.1))(prettier@3.7.4)
globals:
specifier: ^16.5.0
version: 16.5.0
prettier:
specifier: ^3.6.2
- version: 3.6.2
+ version: 3.7.4
typescript-eslint:
specifier: ^8.47.0
version: 8.48.1(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3)
@@ -409,10 +495,10 @@ importers:
devDependencies:
'@trivago/prettier-plugin-sort-imports':
specifier: ^6.0.0
- version: 6.0.0(prettier@3.6.2)
+ version: 6.0.0(prettier@3.7.4)
prettier:
specifier: ^3.6.2
- version: 3.6.2
+ version: 3.7.4
packages:
@@ -420,40 +506,14 @@ packages:
resolution: {integrity: sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg==}
engines: {node: '>=6.9.0'}
- '@babel/compat-data@7.28.5':
- resolution: {integrity: sha512-6uFXyCayocRbqhZOB+6XcuZbkMNimwfVGFji8CTZnCzOHVGvDqzvitu1re2AU5LROliz7eQPhB8CpAMvnx9EjA==}
- engines: {node: '>=6.9.0'}
-
- '@babel/core@7.28.5':
- resolution: {integrity: sha512-e7jT4DxYvIDLk1ZHmU/m/mB19rex9sv0c2ftBtjSBv+kVM/902eh0fINUzD7UwLLNR+jU585GxUJ8/EBfAM5fw==}
- engines: {node: '>=6.9.0'}
-
'@babel/generator@7.28.5':
resolution: {integrity: sha512-3EwLFhZ38J4VyIP6WNtt2kUdW9dokXA9Cr4IVIFHuCpZ3H8/YFOl5JjZHisrn1fATPBmKKqXzDFvh9fUwHz6CQ==}
engines: {node: '>=6.9.0'}
- '@babel/helper-compilation-targets@7.27.2':
- resolution: {integrity: sha512-2+1thGUUWWjLTYTHZWK1n8Yga0ijBz1XAhUXcKy81rd5g6yh7hGqMp45v7cadSbEHc9G3OTv45SyneRN3ps4DQ==}
- engines: {node: '>=6.9.0'}
-
'@babel/helper-globals@7.28.0':
resolution: {integrity: sha512-+W6cISkXFa1jXsDEdYA8HeevQT/FULhxzR99pxphltZcVaugps53THCeiWA8SguxxpSp3gKPiuYfSWopkLQ4hw==}
engines: {node: '>=6.9.0'}
- '@babel/helper-module-imports@7.27.1':
- resolution: {integrity: sha512-0gSFWUPNXNopqtIPQvlD5WgXYI5GY2kP2cCvoT8kczjbfcfuIljTbcWrulD1CIPIX2gt1wghbDy08yE1p+/r3w==}
- engines: {node: '>=6.9.0'}
-
- '@babel/helper-module-transforms@7.28.3':
- resolution: {integrity: sha512-gytXUbs8k2sXS9PnQptz5o0QnpLL51SwASIORY6XaBKF88nsOT0Zw9szLqlSGQDP/4TljBAD5y98p2U1fqkdsw==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0
-
- '@babel/helper-plugin-utils@7.27.1':
- resolution: {integrity: sha512-1gn1Up5YXka3YYAHGKpbideQ5Yjf1tDa9qYcgysz+cNCXukyLl6DjPXhD3VRwSb8c0J9tA4b2+rHEZtc6R0tlw==}
- engines: {node: '>=6.9.0'}
-
'@babel/helper-string-parser@7.27.1':
resolution: {integrity: sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==}
engines: {node: '>=6.9.0'}
@@ -462,110 +522,11 @@ packages:
resolution: {integrity: sha512-qSs4ifwzKJSV39ucNjsvc6WVHs6b7S03sOh2OcHF9UHfVPqWWALUsNUVzhSBiItjRZoLHx7nIarVjqKVusUZ1Q==}
engines: {node: '>=6.9.0'}
- '@babel/helper-validator-option@7.27.1':
- resolution: {integrity: sha512-YvjJow9FxbhFFKDSuFnVCe2WxXk1zWc22fFePVNEaWJEu8IrZVlda6N0uHwzZrUM1il7NC9Mlp4MaJYbYd9JSg==}
- engines: {node: '>=6.9.0'}
-
- '@babel/helpers@7.28.4':
- resolution: {integrity: sha512-HFN59MmQXGHVyYadKLVumYsA9dBFun/ldYxipEjzA4196jpLZd8UjEEBLkbEkvfYreDqJhZxYAWFPtrfhNpj4w==}
- engines: {node: '>=6.9.0'}
-
'@babel/parser@7.28.5':
resolution: {integrity: sha512-KKBU1VGYR7ORr3At5HAtUQ+TV3SzRCXmA/8OdDZiLDBIZxVyzXuztPjfLd3BV1PRAQGCMWWSHYhL0F8d5uHBDQ==}
engines: {node: '>=6.0.0'}
hasBin: true
- '@babel/plugin-syntax-async-generators@7.8.4':
- resolution: {integrity: sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-syntax-bigint@7.8.3':
- resolution: {integrity: sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-syntax-class-properties@7.12.13':
- resolution: {integrity: sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-syntax-class-static-block@7.14.5':
- resolution: {integrity: sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-syntax-import-attributes@7.27.1':
- resolution: {integrity: sha512-oFT0FrKHgF53f4vOsZGi2Hh3I35PfSmVs4IBFLFj4dnafP+hIWDLg3VyKmUHfLoLHlyxY4C7DGtmHuJgn+IGww==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-syntax-import-meta@7.10.4':
- resolution: {integrity: sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-syntax-json-strings@7.8.3':
- resolution: {integrity: sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-syntax-jsx@7.27.1':
- resolution: {integrity: sha512-y8YTNIeKoyhGd9O0Jiyzyyqk8gdjnumGTQPsz0xOZOQ2RmkVJeZ1vmmfIvFEKqucBG6axJGBZDE/7iI5suUI/w==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-syntax-logical-assignment-operators@7.10.4':
- resolution: {integrity: sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-syntax-nullish-coalescing-operator@7.8.3':
- resolution: {integrity: sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-syntax-numeric-separator@7.10.4':
- resolution: {integrity: sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-syntax-object-rest-spread@7.8.3':
- resolution: {integrity: sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-syntax-optional-catch-binding@7.8.3':
- resolution: {integrity: sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-syntax-optional-chaining@7.8.3':
- resolution: {integrity: sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-syntax-private-property-in-object@7.14.5':
- resolution: {integrity: sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-syntax-top-level-await@7.14.5':
- resolution: {integrity: sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-syntax-typescript@7.27.1':
- resolution: {integrity: sha512-xfYCBMxveHrRMnAWl1ZlPXOZjzkN82THFvLhQhFXFt81Z5HnN+EtUkZhv/zcKpmT3fzmWZB0ywiBrbC3vogbwQ==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
'@babel/template@7.27.2':
resolution: {integrity: sha512-LPDZ85aEJyYSd18/DkjNh4/y1ntkE5KwUHWTiqgRxruuZL2F1yuHligVHLvcHY2vMHXttKFpJn6LwfI7cw7ODw==}
engines: {node: '>=6.9.0'}
@@ -578,68 +539,65 @@ packages:
resolution: {integrity: sha512-qQ5m48eI/MFLQ5PxQj4PFaprjyCTLI37ElWMmNs0K8Lk3dVeOdNpB3ks8jc7yM5CDmVC73eMVk/trk3fgmrUpA==}
engines: {node: '>=6.9.0'}
- '@bcoe/v8-coverage@0.2.3':
- resolution: {integrity: sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==}
-
'@bcoe/v8-coverage@1.0.2':
resolution: {integrity: sha512-6zABk/ECA/QYSCQ1NGiVwwbQerUCZ+TQbp64Q3AgmfNvurHH0j8TtXa1qbShXA6qqkpAj4V5W8pP6mLe1mcMqA==}
engines: {node: '>=18'}
- '@commitlint/cli@20.1.0':
- resolution: {integrity: sha512-pW5ujjrOovhq5RcYv5xCpb4GkZxkO2+GtOdBW2/qrr0Ll9tl3PX0aBBobGQl3mdZUbOBgwAexEQLeH6uxL0VYg==}
+ '@commitlint/cli@20.2.0':
+ resolution: {integrity: sha512-l37HkrPZ2DZy26rKiTUvdq/LZtlMcxz+PeLv9dzK9NzoFGuJdOQyYU7IEkEQj0pO++uYue89wzOpZ0hcTtoqUA==}
engines: {node: '>=v18'}
hasBin: true
- '@commitlint/config-conventional@20.0.0':
- resolution: {integrity: sha512-q7JroPIkDBtyOkVe9Bca0p7kAUYxZMxkrBArCfuD3yN4KjRAenP9PmYwnn7rsw8Q+hHq1QB2BRmBh0/Z19ZoJw==}
+ '@commitlint/config-conventional@20.2.0':
+ resolution: {integrity: sha512-MsRac+yNIbTB4Q/psstKK4/ciVzACHicSwz+04Sxve+4DW+PiJeTjU0JnS4m/oOnulrXYN+yBPlKaBSGemRfgQ==}
engines: {node: '>=v18'}
- '@commitlint/config-validator@20.0.0':
- resolution: {integrity: sha512-BeyLMaRIJDdroJuYM2EGhDMGwVBMZna9UiIqV9hxj+J551Ctc6yoGuGSmghOy/qPhBSuhA6oMtbEiTmxECafsg==}
+ '@commitlint/config-validator@20.2.0':
+ resolution: {integrity: sha512-SQCBGsL9MFk8utWNSthdxd9iOD1pIVZSHxGBwYIGfd67RTjxqzFOSAYeQVXOu3IxRC3YrTOH37ThnTLjUlyF2w==}
engines: {node: '>=v18'}
- '@commitlint/ensure@20.0.0':
- resolution: {integrity: sha512-WBV47Fffvabe68n+13HJNFBqiMH5U1Ryls4W3ieGwPC0C7kJqp3OVQQzG2GXqOALmzrgAB+7GXmyy8N9ct8/Fg==}
+ '@commitlint/ensure@20.2.0':
+ resolution: {integrity: sha512-+8TgIGv89rOWyt3eC6lcR1H7hqChAKkpawytlq9P1i/HYugFRVqgoKJ8dhd89fMnlrQTLjA5E97/4sF09QwdoA==}
engines: {node: '>=v18'}
'@commitlint/execute-rule@20.0.0':
resolution: {integrity: sha512-xyCoOShoPuPL44gVa+5EdZsBVao/pNzpQhkzq3RdtlFdKZtjWcLlUFQHSWBuhk5utKYykeJPSz2i8ABHQA+ZZw==}
engines: {node: '>=v18'}
- '@commitlint/format@20.0.0':
- resolution: {integrity: sha512-zrZQXUcSDmQ4eGGrd+gFESiX0Rw+WFJk7nW4VFOmxub4mAATNKBQ4vNw5FgMCVehLUKG2OT2LjOqD0Hk8HvcRg==}
+ '@commitlint/format@20.2.0':
+ resolution: {integrity: sha512-PhNoLNhxpfIBlW/i90uZ3yG3hwSSYx7n4d9Yc+2FAorAHS0D9btYRK4ZZXX+Gm3W5tDtu911ow/eWRfcRVgNWg==}
engines: {node: '>=v18'}
- '@commitlint/is-ignored@20.0.0':
- resolution: {integrity: sha512-ayPLicsqqGAphYIQwh9LdAYOVAQ9Oe5QCgTNTj+BfxZb9b/JW222V5taPoIBzYnAP0z9EfUtljgBk+0BN4T4Cw==}
+ '@commitlint/is-ignored@20.2.0':
+ resolution: {integrity: sha512-Lz0OGeZCo/QHUDLx5LmZc0EocwanneYJUM8z0bfWexArk62HKMLfLIodwXuKTO5y0s6ddXaTexrYHs7v96EOmw==}
engines: {node: '>=v18'}
- '@commitlint/lint@20.0.0':
- resolution: {integrity: sha512-kWrX8SfWk4+4nCexfLaQT3f3EcNjJwJBsSZ5rMBw6JCd6OzXufFHgel2Curos4LKIxwec9WSvs2YUD87rXlxNQ==}
+ '@commitlint/lint@20.2.0':
+ resolution: {integrity: sha512-cQEEB+jlmyQbyiji/kmh8pUJSDeUmPiWq23kFV0EtW3eM+uAaMLMuoTMajbrtWYWQpPzOMDjYltQ8jxHeHgITg==}
engines: {node: '>=v18'}
- '@commitlint/load@20.1.0':
- resolution: {integrity: sha512-qo9ER0XiAimATQR5QhvvzePfeDfApi/AFlC1G+YN+ZAY8/Ua6IRrDrxRvQAr+YXUKAxUsTDSp9KXeXLBPsNRWg==}
+ '@commitlint/load@20.2.0':
+ resolution: {integrity: sha512-iAK2GaBM8sPFTSwtagI67HrLKHIUxQc2BgpgNc/UMNme6LfmtHpIxQoN1TbP+X1iz58jq32HL1GbrFTCzcMi6g==}
engines: {node: '>=v18'}
'@commitlint/message@20.0.0':
resolution: {integrity: sha512-gLX4YmKnZqSwkmSB9OckQUrI5VyXEYiv3J5JKZRxIp8jOQsWjZgHSG/OgEfMQBK9ibdclEdAyIPYggwXoFGXjQ==}
engines: {node: '>=v18'}
- '@commitlint/parse@20.0.0':
- resolution: {integrity: sha512-j/PHCDX2bGM5xGcWObOvpOc54cXjn9g6xScXzAeOLwTsScaL4Y+qd0pFC6HBwTtrH92NvJQc+2Lx9HFkVi48cg==}
+ '@commitlint/parse@20.2.0':
+ resolution: {integrity: sha512-LXStagGU1ivh07X7sM+hnEr4BvzFYn1iBJ6DRg2QsIN8lBfSzyvkUcVCDwok9Ia4PWiEgei5HQjju6xfJ1YaSQ==}
engines: {node: '>=v18'}
- '@commitlint/read@20.0.0':
- resolution: {integrity: sha512-Ti7Y7aEgxsM1nkwA4ZIJczkTFRX/+USMjNrL9NXwWQHqNqrBX2iMi+zfuzZXqfZ327WXBjdkRaytJ+z5vNqTOA==}
+ '@commitlint/read@20.2.0':
+ resolution: {integrity: sha512-+SjF9mxm5JCbe+8grOpXCXMMRzAnE0WWijhhtasdrpJoAFJYd5UgRTj/oCq5W3HJTwbvTOsijEJ0SUGImECD7Q==}
engines: {node: '>=v18'}
- '@commitlint/resolve-extends@20.1.0':
- resolution: {integrity: sha512-cxKXQrqHjZT3o+XPdqDCwOWVFQiae++uwd9dUBC7f2MdV58ons3uUvASdW7m55eat5sRiQ6xUHyMWMRm6atZWw==}
+ '@commitlint/resolve-extends@20.2.0':
+ resolution: {integrity: sha512-KVoLDi9BEuqeq+G0wRABn4azLRiCC22/YHR2aCquwx6bzCHAIN8hMt3Nuf1VFxq/c8ai6s8qBxE8+ZD4HeFTlQ==}
engines: {node: '>=v18'}
- '@commitlint/rules@20.0.0':
- resolution: {integrity: sha512-gvg2k10I/RfvHn5I5sxvVZKM1fl72Sqrv2YY/BnM7lMHcYqO0E2jnRWoYguvBfEcZ39t+rbATlciggVe77E4zA==}
+ '@commitlint/rules@20.2.0':
+ resolution: {integrity: sha512-27rHGpeAjnYl/A+qUUiYDa7Yn1WIjof/dFJjYW4gA1Ug+LUGa1P0AexzGZ5NBxTbAlmDgaxSZkLLxtLVqtg8PQ==}
engines: {node: '>=v18'}
'@commitlint/to-lines@20.0.0':
@@ -650,8 +608,8 @@ packages:
resolution: {integrity: sha512-drXaPSP2EcopukrUXvUXmsQMu3Ey/FuJDc/5oiW4heoCfoE5BdLQyuc7veGeE3aoQaTVqZnh4D5WTWe2vefYKg==}
engines: {node: '>=v18'}
- '@commitlint/types@20.0.0':
- resolution: {integrity: sha512-bVUNBqG6aznYcYjTjnc3+Cat/iBgbgpflxbIBTnsHTX0YVpnmINPEkSRWymT2Q8aSH3Y7aKnEbunilkYe8TybA==}
+ '@commitlint/types@20.2.0':
+ resolution: {integrity: sha512-KTy0OqRDLR5y/zZMnizyx09z/rPlPC/zKhYgH8o/q6PuAjoQAKlRfY4zzv0M64yybQ//6//4H1n14pxaLZfUnA==}
engines: {node: '>=v18'}
'@conventional-changelog/git-client@1.0.1':
@@ -675,23 +633,14 @@ packages:
'@dprint/toml@0.6.4':
resolution: {integrity: sha512-bZXIUjxr0LIuHWshZr/5mtUkOrnh0NKVZEF6ACojW5z7zkJu7s9sV2mMXm8XQDqN4cJzdHYUYzUyEGdfciaLJA==}
- '@emnapi/core@1.7.1':
- resolution: {integrity: sha512-o1uhUASyo921r2XtHYOHy7gdkGLge8ghBEQHMWmyJFoXlpU58kIrhhN3w26lpQb6dspetweapMn2CSNwQ8I4wg==}
-
- '@emnapi/runtime@1.7.1':
- resolution: {integrity: sha512-PVtJr5CmLwYAU9PZDMITZoR5iAOShYREoR45EyyLrbntV50mdePTgUn4AmOw90Ifcj+x2kRjdzr1HP3RrNiHGA==}
-
- '@emnapi/wasi-threads@1.1.0':
- resolution: {integrity: sha512-WI0DdZ8xFSbgMjR1sFsKABJ/C5OnRrjT06JXbZKexJGrDuPTzZdDYfFlsgcCXCyf+suG5QU2e/y1Wo2V/OapLQ==}
-
'@esbuild/aix-ppc64@0.25.12':
resolution: {integrity: sha512-Hhmwd6CInZ3dwpuGTF8fJG6yoWmsToE+vYgD4nytZVxcu1ulHpUQRAB1UJ8+N1Am3Mz4+xOByoQoSZf4D+CpkA==}
engines: {node: '>=18'}
cpu: [ppc64]
os: [aix]
- '@esbuild/aix-ppc64@0.27.0':
- resolution: {integrity: sha512-KuZrd2hRjz01y5JK9mEBSD3Vj3mbCvemhT466rSuJYeE/hjuBrHfjjcjMdTm/sz7au+++sdbJZJmuBwQLuw68A==}
+ '@esbuild/aix-ppc64@0.27.1':
+ resolution: {integrity: sha512-HHB50pdsBX6k47S4u5g/CaLjqS3qwaOVE5ILsq64jyzgMhLuCuZ8rGzM9yhsAjfjkbgUPMzZEPa7DAp7yz6vuA==}
engines: {node: '>=18'}
cpu: [ppc64]
os: [aix]
@@ -702,8 +651,8 @@ packages:
cpu: [arm64]
os: [android]
- '@esbuild/android-arm64@0.27.0':
- resolution: {integrity: sha512-CC3vt4+1xZrs97/PKDkl0yN7w8edvU2vZvAFGD16n9F0Cvniy5qvzRXjfO1l94efczkkQE6g1x0i73Qf5uthOQ==}
+ '@esbuild/android-arm64@0.27.1':
+ resolution: {integrity: sha512-45fuKmAJpxnQWixOGCrS+ro4Uvb4Re9+UTieUY2f8AEc+t7d4AaZ6eUJ3Hva7dtrxAAWHtlEFsXFMAgNnGU9uQ==}
engines: {node: '>=18'}
cpu: [arm64]
os: [android]
@@ -714,8 +663,8 @@ packages:
cpu: [arm]
os: [android]
- '@esbuild/android-arm@0.27.0':
- resolution: {integrity: sha512-j67aezrPNYWJEOHUNLPj9maeJte7uSMM6gMoxfPC9hOg8N02JuQi/T7ewumf4tNvJadFkvLZMlAq73b9uwdMyQ==}
+ '@esbuild/android-arm@0.27.1':
+ resolution: {integrity: sha512-kFqa6/UcaTbGm/NncN9kzVOODjhZW8e+FRdSeypWe6j33gzclHtwlANs26JrupOntlcWmB0u8+8HZo8s7thHvg==}
engines: {node: '>=18'}
cpu: [arm]
os: [android]
@@ -726,8 +675,8 @@ packages:
cpu: [x64]
os: [android]
- '@esbuild/android-x64@0.27.0':
- resolution: {integrity: sha512-wurMkF1nmQajBO1+0CJmcN17U4BP6GqNSROP8t0X/Jiw2ltYGLHpEksp9MpoBqkrFR3kv2/te6Sha26k3+yZ9Q==}
+ '@esbuild/android-x64@0.27.1':
+ resolution: {integrity: sha512-LBEpOz0BsgMEeHgenf5aqmn/lLNTFXVfoWMUox8CtWWYK9X4jmQzWjoGoNb8lmAYml/tQ/Ysvm8q7szu7BoxRQ==}
engines: {node: '>=18'}
cpu: [x64]
os: [android]
@@ -738,8 +687,8 @@ packages:
cpu: [arm64]
os: [darwin]
- '@esbuild/darwin-arm64@0.27.0':
- resolution: {integrity: sha512-uJOQKYCcHhg07DL7i8MzjvS2LaP7W7Pn/7uA0B5S1EnqAirJtbyw4yC5jQ5qcFjHK9l6o/MX9QisBg12kNkdHg==}
+ '@esbuild/darwin-arm64@0.27.1':
+ resolution: {integrity: sha512-veg7fL8eMSCVKL7IW4pxb54QERtedFDfY/ASrumK/SbFsXnRazxY4YykN/THYqFnFwJ0aVjiUrVG2PwcdAEqQQ==}
engines: {node: '>=18'}
cpu: [arm64]
os: [darwin]
@@ -750,8 +699,8 @@ packages:
cpu: [x64]
os: [darwin]
- '@esbuild/darwin-x64@0.27.0':
- resolution: {integrity: sha512-8mG6arH3yB/4ZXiEnXof5MK72dE6zM9cDvUcPtxhUZsDjESl9JipZYW60C3JGreKCEP+p8P/72r69m4AZGJd5g==}
+ '@esbuild/darwin-x64@0.27.1':
+ resolution: {integrity: sha512-+3ELd+nTzhfWb07Vol7EZ+5PTbJ/u74nC6iv4/lwIU99Ip5uuY6QoIf0Hn4m2HoV0qcnRivN3KSqc+FyCHjoVQ==}
engines: {node: '>=18'}
cpu: [x64]
os: [darwin]
@@ -762,8 +711,8 @@ packages:
cpu: [arm64]
os: [freebsd]
- '@esbuild/freebsd-arm64@0.27.0':
- resolution: {integrity: sha512-9FHtyO988CwNMMOE3YIeci+UV+x5Zy8fI2qHNpsEtSF83YPBmE8UWmfYAQg6Ux7Gsmd4FejZqnEUZCMGaNQHQw==}
+ '@esbuild/freebsd-arm64@0.27.1':
+ resolution: {integrity: sha512-/8Rfgns4XD9XOSXlzUDepG8PX+AVWHliYlUkFI3K3GB6tqbdjYqdhcb4BKRd7C0BhZSoaCxhv8kTcBrcZWP+xg==}
engines: {node: '>=18'}
cpu: [arm64]
os: [freebsd]
@@ -774,8 +723,8 @@ packages:
cpu: [x64]
os: [freebsd]
- '@esbuild/freebsd-x64@0.27.0':
- resolution: {integrity: sha512-zCMeMXI4HS/tXvJz8vWGexpZj2YVtRAihHLk1imZj4efx1BQzN76YFeKqlDr3bUWI26wHwLWPd3rwh6pe4EV7g==}
+ '@esbuild/freebsd-x64@0.27.1':
+ resolution: {integrity: sha512-GITpD8dK9C+r+5yRT/UKVT36h/DQLOHdwGVwwoHidlnA168oD3uxA878XloXebK4Ul3gDBBIvEdL7go9gCUFzQ==}
engines: {node: '>=18'}
cpu: [x64]
os: [freebsd]
@@ -786,8 +735,8 @@ packages:
cpu: [arm64]
os: [linux]
- '@esbuild/linux-arm64@0.27.0':
- resolution: {integrity: sha512-AS18v0V+vZiLJyi/4LphvBE+OIX682Pu7ZYNsdUHyUKSoRwdnOsMf6FDekwoAFKej14WAkOef3zAORJgAtXnlQ==}
+ '@esbuild/linux-arm64@0.27.1':
+ resolution: {integrity: sha512-W9//kCrh/6in9rWIBdKaMtuTTzNj6jSeG/haWBADqLLa9P8O5YSRDzgD5y9QBok4AYlzS6ARHifAb75V6G670Q==}
engines: {node: '>=18'}
cpu: [arm64]
os: [linux]
@@ -798,8 +747,8 @@ packages:
cpu: [arm]
os: [linux]
- '@esbuild/linux-arm@0.27.0':
- resolution: {integrity: sha512-t76XLQDpxgmq2cNXKTVEB7O7YMb42atj2Re2Haf45HkaUpjM2J0UuJZDuaGbPbamzZ7bawyGFUkodL+zcE+jvQ==}
+ '@esbuild/linux-arm@0.27.1':
+ resolution: {integrity: sha512-ieMID0JRZY/ZeCrsFQ3Y3NlHNCqIhTprJfDgSB3/lv5jJZ8FX3hqPyXWhe+gvS5ARMBJ242PM+VNz/ctNj//eA==}
engines: {node: '>=18'}
cpu: [arm]
os: [linux]
@@ -810,8 +759,8 @@ packages:
cpu: [ia32]
os: [linux]
- '@esbuild/linux-ia32@0.27.0':
- resolution: {integrity: sha512-Mz1jxqm/kfgKkc/KLHC5qIujMvnnarD9ra1cEcrs7qshTUSksPihGrWHVG5+osAIQ68577Zpww7SGapmzSt4Nw==}
+ '@esbuild/linux-ia32@0.27.1':
+ resolution: {integrity: sha512-VIUV4z8GD8rtSVMfAj1aXFahsi/+tcoXXNYmXgzISL+KB381vbSTNdeZHHHIYqFyXcoEhu9n5cT+05tRv13rlw==}
engines: {node: '>=18'}
cpu: [ia32]
os: [linux]
@@ -822,8 +771,8 @@ packages:
cpu: [loong64]
os: [linux]
- '@esbuild/linux-loong64@0.27.0':
- resolution: {integrity: sha512-QbEREjdJeIreIAbdG2hLU1yXm1uu+LTdzoq1KCo4G4pFOLlvIspBm36QrQOar9LFduavoWX2msNFAAAY9j4BDg==}
+ '@esbuild/linux-loong64@0.27.1':
+ resolution: {integrity: sha512-l4rfiiJRN7sTNI//ff65zJ9z8U+k6zcCg0LALU5iEWzY+a1mVZ8iWC1k5EsNKThZ7XCQ6YWtsZ8EWYm7r1UEsg==}
engines: {node: '>=18'}
cpu: [loong64]
os: [linux]
@@ -834,8 +783,8 @@ packages:
cpu: [mips64el]
os: [linux]
- '@esbuild/linux-mips64el@0.27.0':
- resolution: {integrity: sha512-sJz3zRNe4tO2wxvDpH/HYJilb6+2YJxo/ZNbVdtFiKDufzWq4JmKAiHy9iGoLjAV7r/W32VgaHGkk35cUXlNOg==}
+ '@esbuild/linux-mips64el@0.27.1':
+ resolution: {integrity: sha512-U0bEuAOLvO/DWFdygTHWY8C067FXz+UbzKgxYhXC0fDieFa0kDIra1FAhsAARRJbvEyso8aAqvPdNxzWuStBnA==}
engines: {node: '>=18'}
cpu: [mips64el]
os: [linux]
@@ -846,8 +795,8 @@ packages:
cpu: [ppc64]
os: [linux]
- '@esbuild/linux-ppc64@0.27.0':
- resolution: {integrity: sha512-z9N10FBD0DCS2dmSABDBb5TLAyF1/ydVb+N4pi88T45efQ/w4ohr/F/QYCkxDPnkhkp6AIpIcQKQ8F0ANoA2JA==}
+ '@esbuild/linux-ppc64@0.27.1':
+ resolution: {integrity: sha512-NzdQ/Xwu6vPSf/GkdmRNsOfIeSGnh7muundsWItmBsVpMoNPVpM61qNzAVY3pZ1glzzAxLR40UyYM23eaDDbYQ==}
engines: {node: '>=18'}
cpu: [ppc64]
os: [linux]
@@ -858,8 +807,8 @@ packages:
cpu: [riscv64]
os: [linux]
- '@esbuild/linux-riscv64@0.27.0':
- resolution: {integrity: sha512-pQdyAIZ0BWIC5GyvVFn5awDiO14TkT/19FTmFcPdDec94KJ1uZcmFs21Fo8auMXzD4Tt+diXu1LW1gHus9fhFQ==}
+ '@esbuild/linux-riscv64@0.27.1':
+ resolution: {integrity: sha512-7zlw8p3IApcsN7mFw0O1Z1PyEk6PlKMu18roImfl3iQHTnr/yAfYv6s4hXPidbDoI2Q0pW+5xeoM4eTCC0UdrQ==}
engines: {node: '>=18'}
cpu: [riscv64]
os: [linux]
@@ -870,8 +819,8 @@ packages:
cpu: [s390x]
os: [linux]
- '@esbuild/linux-s390x@0.27.0':
- resolution: {integrity: sha512-hPlRWR4eIDDEci953RI1BLZitgi5uqcsjKMxwYfmi4LcwyWo2IcRP+lThVnKjNtk90pLS8nKdroXYOqW+QQH+w==}
+ '@esbuild/linux-s390x@0.27.1':
+ resolution: {integrity: sha512-cGj5wli+G+nkVQdZo3+7FDKC25Uh4ZVwOAK6A06Hsvgr8WqBBuOy/1s+PUEd/6Je+vjfm6stX0kmib5b/O2Ykw==}
engines: {node: '>=18'}
cpu: [s390x]
os: [linux]
@@ -882,8 +831,8 @@ packages:
cpu: [x64]
os: [linux]
- '@esbuild/linux-x64@0.27.0':
- resolution: {integrity: sha512-1hBWx4OUJE2cab++aVZ7pObD6s+DK4mPGpemtnAORBvb5l/g5xFGk0vc0PjSkrDs0XaXj9yyob3d14XqvnQ4gw==}
+ '@esbuild/linux-x64@0.27.1':
+ resolution: {integrity: sha512-z3H/HYI9MM0HTv3hQZ81f+AKb+yEoCRlUby1F80vbQ5XdzEMyY/9iNlAmhqiBKw4MJXwfgsh7ERGEOhrM1niMA==}
engines: {node: '>=18'}
cpu: [x64]
os: [linux]
@@ -894,8 +843,8 @@ packages:
cpu: [arm64]
os: [netbsd]
- '@esbuild/netbsd-arm64@0.27.0':
- resolution: {integrity: sha512-6m0sfQfxfQfy1qRuecMkJlf1cIzTOgyaeXaiVaaki8/v+WB+U4hc6ik15ZW6TAllRlg/WuQXxWj1jx6C+dfy3w==}
+ '@esbuild/netbsd-arm64@0.27.1':
+ resolution: {integrity: sha512-wzC24DxAvk8Em01YmVXyjl96Mr+ecTPyOuADAvjGg+fyBpGmxmcr2E5ttf7Im8D0sXZihpxzO1isus8MdjMCXQ==}
engines: {node: '>=18'}
cpu: [arm64]
os: [netbsd]
@@ -906,8 +855,8 @@ packages:
cpu: [x64]
os: [netbsd]
- '@esbuild/netbsd-x64@0.27.0':
- resolution: {integrity: sha512-xbbOdfn06FtcJ9d0ShxxvSn2iUsGd/lgPIO2V3VZIPDbEaIj1/3nBBe1AwuEZKXVXkMmpr6LUAgMkLD/4D2PPA==}
+ '@esbuild/netbsd-x64@0.27.1':
+ resolution: {integrity: sha512-1YQ8ybGi2yIXswu6eNzJsrYIGFpnlzEWRl6iR5gMgmsrR0FcNoV1m9k9sc3PuP5rUBLshOZylc9nqSgymI+TYg==}
engines: {node: '>=18'}
cpu: [x64]
os: [netbsd]
@@ -918,8 +867,8 @@ packages:
cpu: [arm64]
os: [openbsd]
- '@esbuild/openbsd-arm64@0.27.0':
- resolution: {integrity: sha512-fWgqR8uNbCQ/GGv0yhzttj6sU/9Z5/Sv/VGU3F5OuXK6J6SlriONKrQ7tNlwBrJZXRYk5jUhuWvF7GYzGguBZQ==}
+ '@esbuild/openbsd-arm64@0.27.1':
+ resolution: {integrity: sha512-5Z+DzLCrq5wmU7RDaMDe2DVXMRm2tTDvX2KU14JJVBN2CT/qov7XVix85QoJqHltpvAOZUAc3ndU56HSMWrv8g==}
engines: {node: '>=18'}
cpu: [arm64]
os: [openbsd]
@@ -930,8 +879,8 @@ packages:
cpu: [x64]
os: [openbsd]
- '@esbuild/openbsd-x64@0.27.0':
- resolution: {integrity: sha512-aCwlRdSNMNxkGGqQajMUza6uXzR/U0dIl1QmLjPtRbLOx3Gy3otfFu/VjATy4yQzo9yFDGTxYDo1FfAD9oRD2A==}
+ '@esbuild/openbsd-x64@0.27.1':
+ resolution: {integrity: sha512-Q73ENzIdPF5jap4wqLtsfh8YbYSZ8Q0wnxplOlZUOyZy7B4ZKW8DXGWgTCZmF8VWD7Tciwv5F4NsRf6vYlZtqg==}
engines: {node: '>=18'}
cpu: [x64]
os: [openbsd]
@@ -942,8 +891,8 @@ packages:
cpu: [arm64]
os: [openharmony]
- '@esbuild/openharmony-arm64@0.27.0':
- resolution: {integrity: sha512-nyvsBccxNAsNYz2jVFYwEGuRRomqZ149A39SHWk4hV0jWxKM0hjBPm3AmdxcbHiFLbBSwG6SbpIcUbXjgyECfA==}
+ '@esbuild/openharmony-arm64@0.27.1':
+ resolution: {integrity: sha512-ajbHrGM/XiK+sXM0JzEbJAen+0E+JMQZ2l4RR4VFwvV9JEERx+oxtgkpoKv1SevhjavK2z2ReHk32pjzktWbGg==}
engines: {node: '>=18'}
cpu: [arm64]
os: [openharmony]
@@ -954,8 +903,8 @@ packages:
cpu: [x64]
os: [sunos]
- '@esbuild/sunos-x64@0.27.0':
- resolution: {integrity: sha512-Q1KY1iJafM+UX6CFEL+F4HRTgygmEW568YMqDA5UV97AuZSm21b7SXIrRJDwXWPzr8MGr75fUZPV67FdtMHlHA==}
+ '@esbuild/sunos-x64@0.27.1':
+ resolution: {integrity: sha512-IPUW+y4VIjuDVn+OMzHc5FV4GubIwPnsz6ubkvN8cuhEqH81NovB53IUlrlBkPMEPxvNnf79MGBoz8rZ2iW8HA==}
engines: {node: '>=18'}
cpu: [x64]
os: [sunos]
@@ -966,8 +915,8 @@ packages:
cpu: [arm64]
os: [win32]
- '@esbuild/win32-arm64@0.27.0':
- resolution: {integrity: sha512-W1eyGNi6d+8kOmZIwi/EDjrL9nxQIQ0MiGqe/AWc6+IaHloxHSGoeRgDRKHFISThLmsewZ5nHFvGFWdBYlgKPg==}
+ '@esbuild/win32-arm64@0.27.1':
+ resolution: {integrity: sha512-RIVRWiljWA6CdVu8zkWcRmGP7iRRIIwvhDKem8UMBjPql2TXM5PkDVvvrzMtj1V+WFPB4K7zkIGM7VzRtFkjdg==}
engines: {node: '>=18'}
cpu: [arm64]
os: [win32]
@@ -978,8 +927,8 @@ packages:
cpu: [ia32]
os: [win32]
- '@esbuild/win32-ia32@0.27.0':
- resolution: {integrity: sha512-30z1aKL9h22kQhilnYkORFYt+3wp7yZsHWus+wSKAJR8JtdfI76LJ4SBdMsCopTR3z/ORqVu5L1vtnHZWVj4cQ==}
+ '@esbuild/win32-ia32@0.27.1':
+ resolution: {integrity: sha512-2BR5M8CPbptC1AK5JbJT1fWrHLvejwZidKx3UMSF0ecHMa+smhi16drIrCEggkgviBwLYd5nwrFLSl5Kho96RQ==}
engines: {node: '>=18'}
cpu: [ia32]
os: [win32]
@@ -990,8 +939,8 @@ packages:
cpu: [x64]
os: [win32]
- '@esbuild/win32-x64@0.27.0':
- resolution: {integrity: sha512-aIitBcjQeyOhMTImhLZmtxfdOcuNRpwlPNmlFKPcHQYPhEssw75Cl1TSXJXpMkzaua9FUetx/4OQKq7eJul5Cg==}
+ '@esbuild/win32-x64@0.27.1':
+ resolution: {integrity: sha512-d5X6RMYv6taIymSk8JBP+nxv8DQAMY6A51GPgusqLdK9wBz5wWIXy1KjTck6HnjE9hqJzJRdk+1p/t5soSbCtw==}
engines: {node: '>=18'}
cpu: [x64]
os: [win32]
@@ -1018,8 +967,8 @@ packages:
resolution: {integrity: sha512-yL/sLrpmtDaFEiUj1osRP4TI2MDz1AddJL+jZ7KSqvBuliN4xqYY54IfdN8qD8Toa6g1iloph1fxQNkjOxrrpQ==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
- '@eslint/eslintrc@3.3.1':
- resolution: {integrity: sha512-gtF186CXhIl1p4pJNGZw8Yc6RlshoePRvE0X91oPGb3vZ8pM3qOS9W9NGPat9LziaBV7XrJWGylNQXkGcnM3IQ==}
+ '@eslint/eslintrc@3.3.3':
+ resolution: {integrity: sha512-Kr+LPIUVKz2qkx1HAMH8q1q6azbqBAsXJUxBl/ODDuVPX45Z9DfwB8tPjTi6nNZ8BuM3nbJxC5zCAg5elnBUTQ==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
'@eslint/js@9.39.1':
@@ -1059,106 +1008,9 @@ packages:
resolution: {integrity: sha512-bV0Tgo9K4hfPCek+aMAn81RppFKv2ySDQeMoSZuvTASywNTnVJCArCZE2FWqpvIatKu7VMRLWlR1EazvVhDyhQ==}
engines: {node: '>=18.18'}
- '@isaacs/cliui@8.0.2':
- resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==}
- engines: {node: '>=12'}
-
- '@istanbuljs/load-nyc-config@1.1.0':
- resolution: {integrity: sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==}
- engines: {node: '>=8'}
-
- '@istanbuljs/schema@0.1.3':
- resolution: {integrity: sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==}
- engines: {node: '>=8'}
-
- '@jest/console@30.2.0':
- resolution: {integrity: sha512-+O1ifRjkvYIkBqASKWgLxrpEhQAAE7hY77ALLUufSk5717KfOShg6IbqLmdsLMPdUiFvA2kTs0R7YZy+l0IzZQ==}
- engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
-
- '@jest/core@30.2.0':
- resolution: {integrity: sha512-03W6IhuhjqTlpzh/ojut/pDB2LPRygyWX8ExpgHtQA8H/3K7+1vKmcINx5UzeOX1se6YEsBsOHQ1CRzf3fOwTQ==}
- engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
- peerDependencies:
- node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0
- peerDependenciesMeta:
- node-notifier:
- optional: true
-
- '@jest/diff-sequences@30.0.1':
- resolution: {integrity: sha512-n5H8QLDJ47QqbCNn5SuFjCRDrOLEZ0h8vAHCK5RL9Ls7Xa8AQLa/YxAc9UjFqoEDM48muwtBGjtMY5cr0PLDCw==}
- engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
-
- '@jest/environment@30.2.0':
- resolution: {integrity: sha512-/QPTL7OBJQ5ac09UDRa3EQes4gt1FTEG/8jZ/4v5IVzx+Cv7dLxlVIvfvSVRiiX2drWyXeBjkMSR8hvOWSog5g==}
- engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
-
- '@jest/expect-utils@30.2.0':
- resolution: {integrity: sha512-1JnRfhqpD8HGpOmQp180Fo9Zt69zNtC+9lR+kT7NVL05tNXIi+QC8Csz7lfidMoVLPD3FnOtcmp0CEFnxExGEA==}
- engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
-
- '@jest/expect@30.2.0':
- resolution: {integrity: sha512-V9yxQK5erfzx99Sf+7LbhBwNWEZ9eZay8qQ9+JSC0TrMR1pMDHLMY+BnVPacWU6Jamrh252/IKo4F1Xn/zfiqA==}
- engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
-
- '@jest/fake-timers@30.2.0':
- resolution: {integrity: sha512-HI3tRLjRxAbBy0VO8dqqm7Hb2mIa8d5bg/NJkyQcOk7V118ObQML8RC5luTF/Zsg4474a+gDvhce7eTnP4GhYw==}
- engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
-
- '@jest/get-type@30.1.0':
- resolution: {integrity: sha512-eMbZE2hUnx1WV0pmURZY9XoXPkUYjpc55mb0CrhtdWLtzMQPFvu/rZkTLZFTsdaVQa+Tr4eWAteqcUzoawq/uA==}
- engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
-
- '@jest/globals@30.2.0':
- resolution: {integrity: sha512-b63wmnKPaK+6ZZfpYhz9K61oybvbI1aMcIs80++JI1O1rR1vaxHUCNqo3ITu6NU0d4V34yZFoHMn/uoKr/Rwfw==}
- engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
-
- '@jest/pattern@30.0.1':
- resolution: {integrity: sha512-gWp7NfQW27LaBQz3TITS8L7ZCQ0TLvtmI//4OwlQRx4rnWxcPNIYjxZpDcN4+UlGxgm3jS5QPz8IPTCkb59wZA==}
- engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
-
- '@jest/reporters@30.2.0':
- resolution: {integrity: sha512-DRyW6baWPqKMa9CzeiBjHwjd8XeAyco2Vt8XbcLFjiwCOEKOvy82GJ8QQnJE9ofsxCMPjH4MfH8fCWIHHDKpAQ==}
- engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
- peerDependencies:
- node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0
- peerDependenciesMeta:
- node-notifier:
- optional: true
-
- '@jest/schemas@30.0.5':
- resolution: {integrity: sha512-DmdYgtezMkh3cpU8/1uyXakv3tJRcmcXxBOcO0tbaozPwpmh4YMsnWrQm9ZmZMfa5ocbxzbFk6O4bDPEc/iAnA==}
- engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
-
- '@jest/snapshot-utils@30.2.0':
- resolution: {integrity: sha512-0aVxM3RH6DaiLcjj/b0KrIBZhSX1373Xci4l3cW5xiUWPctZ59zQ7jj4rqcJQ/Z8JuN/4wX3FpJSa3RssVvCug==}
- engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
-
- '@jest/source-map@30.0.1':
- resolution: {integrity: sha512-MIRWMUUR3sdbP36oyNyhbThLHyJ2eEDClPCiHVbrYAe5g3CHRArIVpBw7cdSB5fr+ofSfIb2Tnsw8iEHL0PYQg==}
- engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
-
- '@jest/test-result@30.2.0':
- resolution: {integrity: sha512-RF+Z+0CCHkARz5HT9mcQCBulb1wgCP3FBvl9VFokMX27acKphwyQsNuWH3c+ojd1LeWBLoTYoxF0zm6S/66mjg==}
- engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
-
- '@jest/test-sequencer@30.2.0':
- resolution: {integrity: sha512-wXKgU/lk8fKXMu/l5Hog1R61bL4q5GCdT6OJvdAFz1P+QrpoFuLU68eoKuVc4RbrTtNnTL5FByhWdLgOPSph+Q==}
- engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
-
- '@jest/transform@30.2.0':
- resolution: {integrity: sha512-XsauDV82o5qXbhalKxD7p4TZYYdwcaEXC77PPD2HixEFF+6YGppjrAAQurTl2ECWcEomHBMMNS9AH3kcCFx8jA==}
- engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
-
- '@jest/types@30.2.0':
- resolution: {integrity: sha512-H9xg1/sfVvyfU7o3zMfBEjQ1gcsdeTMgqHoYdN79tuLqfTtuu7WckRA1R5whDwOzxaZAeMKTYWqP+WCAi0CHsg==}
- engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
-
'@jridgewell/gen-mapping@0.3.13':
resolution: {integrity: sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==}
- '@jridgewell/remapping@2.3.5':
- resolution: {integrity: sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ==}
-
'@jridgewell/resolve-uri@3.1.2':
resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==}
engines: {node: '>=6.0.0'}
@@ -1169,9 +1021,6 @@ packages:
'@jridgewell/trace-mapping@0.3.31':
resolution: {integrity: sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==}
- '@napi-rs/wasm-runtime@0.2.12':
- resolution: {integrity: sha512-ZVWUcfwY4E/yPitQJl481FjFo3K22D6qF0DuFH6Y/nbnE11GY5uguDxZMGXPQ8WQ0128MXQD7TnfHyK4oWoIJQ==}
-
'@octokit/auth-token@5.1.2':
resolution: {integrity: sha512-JcQDsBdg49Yky2w2ld20IHAlwr8d/d8N6NiOXbtuoPCqzbsiJgF633mVUw3x4mo0H5ypataQIX7SFu3yy44Mpw==}
engines: {node: '>= 18'}
@@ -1208,14 +1057,6 @@ packages:
'@octokit/types@14.1.0':
resolution: {integrity: sha512-1y6DgTy8Jomcpu33N+p5w58l6xyt55Ar2I91RPiIA0xCJBXyUAhXCcmZaDWSANiha7R9a6qJJ2CRomGPZ6f46g==}
- '@pkgjs/parseargs@0.11.0':
- resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==}
- engines: {node: '>=14'}
-
- '@pkgr/core@0.1.2':
- resolution: {integrity: sha512-fdDH1LSGfZdTH2sxdpVMw31BanV28K/Gry0cVFxaNP77neJSkd82mM8ErPNYs9e+0O7SdHBLTDzDgwUuy18RnQ==}
- engines: {node: ^12.20.0 || ^14.18.0 || >=16.0.0}
-
'@pkgr/core@0.2.9':
resolution: {integrity: sha512-QNqXyfVS2wm9hweSYD2O7F0G06uurj9kZ96TRQE5Y9hU7+tgdZwIkbAKc5Ocy1HxEY2kuDQa6cQ1WRs/O5LFKA==}
engines: {node: ^12.20.0 || ^14.18.0 || >=16.0.0}
@@ -1341,19 +1182,10 @@ packages:
'@sec-ant/readable-stream@0.4.1':
resolution: {integrity: sha512-831qok9r2t8AlxLko40y2ebgSDhenenCatLVeW/uBtnHPyhHOvG0C7TvfgecV+wHzIm5KUICgzmVpWS+IMEAeg==}
- '@sinclair/typebox@0.34.41':
- resolution: {integrity: sha512-6gS8pZzSXdyRHTIqoqSVknxolr1kzfy4/CeDnrzsVz8TTIWUbOBr6gnzOmTYJ3eXQNh4IYHIGi5aIL7sOZ2G/g==}
-
'@sindresorhus/merge-streams@4.0.0':
resolution: {integrity: sha512-tlqY9xq5ukxTUZBmoOp+m61cqwQD5pHJtFY3Mn8CA8ps6yghLH/Hw8UPdqg4OLmFW3IFlcXnQNmo/dh8HzXYIQ==}
engines: {node: '>=18'}
- '@sinonjs/commons@3.0.1':
- resolution: {integrity: sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ==}
-
- '@sinonjs/fake-timers@13.0.5':
- resolution: {integrity: sha512-36/hTbH2uaWuGVERyC6da9YwGWnzUZXuPro/F2LfsdOsLnCojz/iSH8MxUt/FD2S5XBSVPhmArFUXcpCQ2Hkiw==}
-
'@standard-schema/spec@1.0.0':
resolution: {integrity: sha512-m2bOd0f2RT9k8QJx1JN85cZYyH1RqFBdlwtkSlf4tBDYLCiiZnv1fIIwacK6cqwXavOydf0NPToMQgpKq+dVlA==}
@@ -1376,21 +1208,6 @@ packages:
svelte:
optional: true
- '@tybys/wasm-util@0.10.1':
- resolution: {integrity: sha512-9tTaPJLSiejZKx+Bmog4uSubteqTvFrVrURwkmHixBo0G4seD0zUxp98E1DzUBJxLQ3NPwXrGKDiVjwx/DpPsg==}
-
- '@types/babel__core@7.20.5':
- resolution: {integrity: sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==}
-
- '@types/babel__generator@7.27.0':
- resolution: {integrity: sha512-ufFd2Xi92OAVPYsy+P4n7/U7e68fex0+Ee8gSG9KX7eo084CWiQ4sdxktvdl0bOPupXtVJPY19zk6EwWqUQ8lg==}
-
- '@types/babel__template@7.4.4':
- resolution: {integrity: sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==}
-
- '@types/babel__traverse@7.28.0':
- resolution: {integrity: sha512-8PvcXf70gTDZBgt9ptxJ8elBeBjcLOAcOtoO/mPJjtji1+CdGbHgm77om1GrsPxsiE+uXIpNSK64UYaIwQXd4Q==}
-
'@types/chai@5.2.3':
resolution: {integrity: sha512-Mw558oeA9fFbv65/y4mHtXDs9bPnFMZAL/jxdPFUpOHHIXX91mcgEHbS5Lahr+pwZFR8A7GQleRWeI6cGFC2UA==}
@@ -1406,15 +1223,6 @@ packages:
'@types/estree@1.0.8':
resolution: {integrity: sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==}
- '@types/istanbul-lib-coverage@2.0.6':
- resolution: {integrity: sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==}
-
- '@types/istanbul-lib-report@3.0.3':
- resolution: {integrity: sha512-NQn7AHQnk/RSLOxrBbGyJM/aVQ+pjj5HCgasFxc0K/KhoATfQ/47AyUl15I2yBUpihjmas+a+VJBOqecrFH+uA==}
-
- '@types/istanbul-reports@3.0.4':
- resolution: {integrity: sha512-pk2B1NWalF9toCRu6gjBzR69syFjP4Od8WRAX+0mmf9lAjCRicLOWc+ZrxZHx/0XRjotgkF9t6iaMJ+aXcOdZQ==}
-
'@types/json-schema@7.0.15':
resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==}
@@ -1424,18 +1232,9 @@ packages:
'@types/semver@7.7.1':
resolution: {integrity: sha512-FmgJfu+MOcQ370SD0ev7EI8TlCAfKYU+B4m5T3yXc1CiRN94g/SZPtsCkk506aUDtlMnFZvasDwHHUcZUEaYuA==}
- '@types/stack-utils@2.0.3':
- resolution: {integrity: sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw==}
-
'@types/validator@13.15.10':
resolution: {integrity: sha512-T8L6i7wCuyoK8A/ZeLYt1+q0ty3Zb9+qbSSvrIVitzT3YjZqkTZ40IbRsPanlB4h1QB3JVL1SYCdR6ngtFYcuA==}
- '@types/yargs-parser@21.0.3':
- resolution: {integrity: sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==}
-
- '@types/yargs@17.0.35':
- resolution: {integrity: sha512-qUHkeCyQFxMXg79wQfTtfndEC+N9ZZg76HJftDJp+qH2tV7Gj4OJi7l+PiWwJ+pWtW8GwSmqsDj/oymhrTWXjg==}
-
'@typescript-eslint/eslint-plugin@8.48.1':
resolution: {integrity: sha512-X63hI1bxl5ohelzr0LY5coufyl0LJNthld+abwxpCoo6Gq+hSqhKwci7MUWkXo67mzgUK6YFByhmaHmUcuBJmA==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
@@ -1495,104 +1294,6 @@ packages:
resolution: {integrity: sha512-BmxxndzEWhE4TIEEMBs8lP3MBWN3jFPs/p6gPm/wkv02o41hI6cq9AuSmGAaTTHPtA1FTi2jBre4A9rm5ZmX+Q==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
- '@ungap/structured-clone@1.3.0':
- resolution: {integrity: sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g==}
-
- '@unrs/resolver-binding-android-arm-eabi@1.11.1':
- resolution: {integrity: sha512-ppLRUgHVaGRWUx0R0Ut06Mjo9gBaBkg3v/8AxusGLhsIotbBLuRk51rAzqLC8gq6NyyAojEXglNjzf6R948DNw==}
- cpu: [arm]
- os: [android]
-
- '@unrs/resolver-binding-android-arm64@1.11.1':
- resolution: {integrity: sha512-lCxkVtb4wp1v+EoN+HjIG9cIIzPkX5OtM03pQYkG+U5O/wL53LC4QbIeazgiKqluGeVEeBlZahHalCaBvU1a2g==}
- cpu: [arm64]
- os: [android]
-
- '@unrs/resolver-binding-darwin-arm64@1.11.1':
- resolution: {integrity: sha512-gPVA1UjRu1Y/IsB/dQEsp2V1pm44Of6+LWvbLc9SDk1c2KhhDRDBUkQCYVWe6f26uJb3fOK8saWMgtX8IrMk3g==}
- cpu: [arm64]
- os: [darwin]
-
- '@unrs/resolver-binding-darwin-x64@1.11.1':
- resolution: {integrity: sha512-cFzP7rWKd3lZaCsDze07QX1SC24lO8mPty9vdP+YVa3MGdVgPmFc59317b2ioXtgCMKGiCLxJ4HQs62oz6GfRQ==}
- cpu: [x64]
- os: [darwin]
-
- '@unrs/resolver-binding-freebsd-x64@1.11.1':
- resolution: {integrity: sha512-fqtGgak3zX4DCB6PFpsH5+Kmt/8CIi4Bry4rb1ho6Av2QHTREM+47y282Uqiu3ZRF5IQioJQ5qWRV6jduA+iGw==}
- cpu: [x64]
- os: [freebsd]
-
- '@unrs/resolver-binding-linux-arm-gnueabihf@1.11.1':
- resolution: {integrity: sha512-u92mvlcYtp9MRKmP+ZvMmtPN34+/3lMHlyMj7wXJDeXxuM0Vgzz0+PPJNsro1m3IZPYChIkn944wW8TYgGKFHw==}
- cpu: [arm]
- os: [linux]
-
- '@unrs/resolver-binding-linux-arm-musleabihf@1.11.1':
- resolution: {integrity: sha512-cINaoY2z7LVCrfHkIcmvj7osTOtm6VVT16b5oQdS4beibX2SYBwgYLmqhBjA1t51CarSaBuX5YNsWLjsqfW5Cw==}
- cpu: [arm]
- os: [linux]
-
- '@unrs/resolver-binding-linux-arm64-gnu@1.11.1':
- resolution: {integrity: sha512-34gw7PjDGB9JgePJEmhEqBhWvCiiWCuXsL9hYphDF7crW7UgI05gyBAi6MF58uGcMOiOqSJ2ybEeCvHcq0BCmQ==}
- cpu: [arm64]
- os: [linux]
-
- '@unrs/resolver-binding-linux-arm64-musl@1.11.1':
- resolution: {integrity: sha512-RyMIx6Uf53hhOtJDIamSbTskA99sPHS96wxVE/bJtePJJtpdKGXO1wY90oRdXuYOGOTuqjT8ACccMc4K6QmT3w==}
- cpu: [arm64]
- os: [linux]
-
- '@unrs/resolver-binding-linux-ppc64-gnu@1.11.1':
- resolution: {integrity: sha512-D8Vae74A4/a+mZH0FbOkFJL9DSK2R6TFPC9M+jCWYia/q2einCubX10pecpDiTmkJVUH+y8K3BZClycD8nCShA==}
- cpu: [ppc64]
- os: [linux]
-
- '@unrs/resolver-binding-linux-riscv64-gnu@1.11.1':
- resolution: {integrity: sha512-frxL4OrzOWVVsOc96+V3aqTIQl1O2TjgExV4EKgRY09AJ9leZpEg8Ak9phadbuX0BA4k8U5qtvMSQQGGmaJqcQ==}
- cpu: [riscv64]
- os: [linux]
-
- '@unrs/resolver-binding-linux-riscv64-musl@1.11.1':
- resolution: {integrity: sha512-mJ5vuDaIZ+l/acv01sHoXfpnyrNKOk/3aDoEdLO/Xtn9HuZlDD6jKxHlkN8ZhWyLJsRBxfv9GYM2utQ1SChKew==}
- cpu: [riscv64]
- os: [linux]
-
- '@unrs/resolver-binding-linux-s390x-gnu@1.11.1':
- resolution: {integrity: sha512-kELo8ebBVtb9sA7rMe1Cph4QHreByhaZ2QEADd9NzIQsYNQpt9UkM9iqr2lhGr5afh885d/cB5QeTXSbZHTYPg==}
- cpu: [s390x]
- os: [linux]
-
- '@unrs/resolver-binding-linux-x64-gnu@1.11.1':
- resolution: {integrity: sha512-C3ZAHugKgovV5YvAMsxhq0gtXuwESUKc5MhEtjBpLoHPLYM+iuwSj3lflFwK3DPm68660rZ7G8BMcwSro7hD5w==}
- cpu: [x64]
- os: [linux]
-
- '@unrs/resolver-binding-linux-x64-musl@1.11.1':
- resolution: {integrity: sha512-rV0YSoyhK2nZ4vEswT/QwqzqQXw5I6CjoaYMOX0TqBlWhojUf8P94mvI7nuJTeaCkkds3QE4+zS8Ko+GdXuZtA==}
- cpu: [x64]
- os: [linux]
-
- '@unrs/resolver-binding-wasm32-wasi@1.11.1':
- resolution: {integrity: sha512-5u4RkfxJm+Ng7IWgkzi3qrFOvLvQYnPBmjmZQ8+szTK/b31fQCnleNl1GgEt7nIsZRIf5PLhPwT0WM+q45x/UQ==}
- engines: {node: '>=14.0.0'}
- cpu: [wasm32]
-
- '@unrs/resolver-binding-win32-arm64-msvc@1.11.1':
- resolution: {integrity: sha512-nRcz5Il4ln0kMhfL8S3hLkxI85BXs3o8EYoattsJNdsX4YUU89iOkVn7g0VHSRxFuVMdM4Q1jEpIId1Ihim/Uw==}
- cpu: [arm64]
- os: [win32]
-
- '@unrs/resolver-binding-win32-ia32-msvc@1.11.1':
- resolution: {integrity: sha512-DCEI6t5i1NmAZp6pFonpD5m7i6aFrpofcp4LA2i8IIq60Jyo28hamKBxNrZcyOwVOZkgsRp9O2sXWBWP8MnvIQ==}
- cpu: [ia32]
- os: [win32]
-
- '@unrs/resolver-binding-win32-x64-msvc@1.11.1':
- resolution: {integrity: sha512-lrW200hZdbfRtztbygyaq/6jP6AKE8qQN2KvPcJ+x7wiD038YtnYtZ82IMNJ69GJibV7bwL3y9FgK+5w/pYt6g==}
- cpu: [x64]
- os: [win32]
-
'@vitest/coverage-v8@4.0.15':
resolution: {integrity: sha512-FUJ+1RkpTFW7rQITdgTi93qOCWJobWhBirEPCeXh2SW2wsTlFxy51apDz5gzG+ZEYt/THvWeNmhdAoS9DTwpCw==}
peerDependencies:
@@ -1651,10 +1352,6 @@ packages:
ajv@8.17.1:
resolution: {integrity: sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==}
- ansi-escapes@4.3.2:
- resolution: {integrity: sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==}
- engines: {node: '>=8'}
-
ansi-escapes@7.2.0:
resolution: {integrity: sha512-g6LhBsl+GBPRWGWsBtutpzBYuIIdBkLEvad5C/va/74Db018+5TZiyA26cZJAr3Rft5lprVqOIPxf5Vid6tqAw==}
engines: {node: '>=18'}
@@ -1671,10 +1368,6 @@ packages:
resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==}
engines: {node: '>=8'}
- ansi-styles@5.2.0:
- resolution: {integrity: sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==}
- engines: {node: '>=10'}
-
ansi-styles@6.2.3:
resolution: {integrity: sha512-4Dj6M28JB+oAH8kFkTLUo+a2jwOFkuqb3yucU0CANcRRUbxS0cP0nZYCGjcc3BNXwRIsUVmDGgzawme7zvJHvg==}
engines: {node: '>=12'}
@@ -1682,13 +1375,6 @@ packages:
any-promise@1.3.0:
resolution: {integrity: sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==}
- anymatch@3.1.3:
- resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==}
- engines: {node: '>= 8'}
-
- argparse@1.0.10:
- resolution: {integrity: sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==}
-
argparse@2.0.1:
resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==}
@@ -1702,40 +1388,11 @@ packages:
ast-v8-to-istanbul@0.3.8:
resolution: {integrity: sha512-szgSZqUxI5T8mLKvS7WTjF9is+MVbOeLADU73IseOcrqhxr/VAvy6wfoVE39KnKzA7JRhjF5eUagNlHwvZPlKQ==}
- babel-jest@30.2.0:
- resolution: {integrity: sha512-0YiBEOxWqKkSQWL9nNGGEgndoeL0ZpWrbLMNL5u/Kaxrli3Eaxlt3ZtIDktEvXt4L/R9r3ODr2zKwGM/2BjxVw==}
- engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
- peerDependencies:
- '@babel/core': ^7.11.0 || ^8.0.0-0
-
- babel-plugin-istanbul@7.0.1:
- resolution: {integrity: sha512-D8Z6Qm8jCvVXtIRkBnqNHX0zJ37rQcFJ9u8WOS6tkYOsRdHBzypCstaxWiu5ZIlqQtviRYbgnRLSoCEvjqcqbA==}
- engines: {node: '>=12'}
+ balanced-match@1.0.2:
+ resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==}
- babel-plugin-jest-hoist@30.2.0:
- resolution: {integrity: sha512-ftzhzSGMUnOzcCXd6WHdBGMyuwy15Wnn0iyyWGKgBDLxf9/s5ABuraCSpBX2uG0jUg4rqJnxsLc5+oYBqoxVaA==}
- engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
-
- babel-preset-current-node-syntax@1.2.0:
- resolution: {integrity: sha512-E/VlAEzRrsLEb2+dv8yp3bo4scof3l9nR4lrld+Iy5NyVqgVYUJnDAmunkhPMisRI32Qc4iRiz425d8vM++2fg==}
- peerDependencies:
- '@babel/core': ^7.0.0 || ^8.0.0-0
-
- babel-preset-jest@30.2.0:
- resolution: {integrity: sha512-US4Z3NOieAQumwFnYdUWKvUKh8+YSnS/gB3t6YBiz0bskpu7Pine8pPCheNxlPEW4wnUkma2a94YuW2q3guvCQ==}
- engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
- peerDependencies:
- '@babel/core': ^7.11.0 || ^8.0.0-beta.1
-
- balanced-match@1.0.2:
- resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==}
-
- baseline-browser-mapping@2.8.29:
- resolution: {integrity: sha512-sXdt2elaVnhpDNRDz+1BDx1JQoJRuNk7oVlAlbGiFkLikHCAQiccexF/9e91zVi6RCgqspl04aP+6Cnl9zRLrA==}
- hasBin: true
-
- before-after-hook@3.0.2:
- resolution: {integrity: sha512-Nik3Sc0ncrMK4UUdXQmAnRtzmNQTAAXmXIopizwZ1W1t8QmfJj+zL4OA2I7XPTPW5z5TDqv4hRo/JzouDJnX3A==}
+ before-after-hook@3.0.2:
+ resolution: {integrity: sha512-Nik3Sc0ncrMK4UUdXQmAnRtzmNQTAAXmXIopizwZ1W1t8QmfJj+zL4OA2I7XPTPW5z5TDqv4hRo/JzouDJnX3A==}
bottleneck@2.19.5:
resolution: {integrity: sha512-VHiNCbI1lKdl44tGrhNfU3lup0Tj/ZBMJB5/2ZbNXRCPuRCO7ed2mgcK4r17y+KB2EfuYuRaVlwNbAeaWGSpbw==}
@@ -1750,17 +1407,6 @@ packages:
resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==}
engines: {node: '>=8'}
- browserslist@4.28.0:
- resolution: {integrity: sha512-tbydkR/CxfMwelN0vwdP/pLkDwyAASZ+VfWm4EOwlB6SWhx1sYnWLqo8N5j0rAzPfzfRaxt0mM/4wPU/Su84RQ==}
- engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7}
- hasBin: true
-
- bser@2.1.1:
- resolution: {integrity: sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==}
-
- buffer-from@1.1.2:
- resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==}
-
bundle-require@5.1.0:
resolution: {integrity: sha512-3WrrOuZiyaaZPWiEt4G3+IffISVC9HYlWueJEBWED4ZH4aIAC2PnkdnuRrR94M+w6yGWn4AglWtJtBI8YqvgoA==}
engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
@@ -1775,17 +1421,6 @@ packages:
resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==}
engines: {node: '>=6'}
- camelcase@5.3.1:
- resolution: {integrity: sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==}
- engines: {node: '>=6'}
-
- camelcase@6.3.0:
- resolution: {integrity: sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==}
- engines: {node: '>=10'}
-
- caniuse-lite@1.0.30001756:
- resolution: {integrity: sha512-4HnCNKbMLkLdhJz3TToeVWHSnfJvPaq6vu/eRP0Ahub/07n484XHhBF5AJoSGHdVrS8tKFauUQz8Bp9P7LVx7A==}
-
chai@6.2.1:
resolution: {integrity: sha512-p4Z49OGG5W/WBCPSS/dH3jQ73kD6tiMmUM+bckNK6Jr5JHMG3k9bg/BvKR8lKmtVBKmOiuVaV2ws8s9oSbwysg==}
engines: {node: '>=18'}
@@ -1798,26 +1433,15 @@ packages:
resolution: {integrity: sha512-7NzBL0rN6fMUW+f7A6Io4h40qQlG+xGmtMxfbnH/K7TAtt8JQWVQK+6g0UXKMeVJoyV5EkkNsErQ8pVD3bLHbA==}
engines: {node: ^12.17.0 || ^14.13 || >=16.0.0}
- char-regex@1.0.2:
- resolution: {integrity: sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==}
- engines: {node: '>=10'}
-
chokidar@4.0.3:
resolution: {integrity: sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==}
engines: {node: '>= 14.16.0'}
- ci-info@4.3.1:
- resolution: {integrity: sha512-Wdy2Igu8OcBpI2pZePZ5oWjPC38tmDVx5WKUXKwlLYkA0ozo85sLsLvkBbBn/sZaSCMFOGZJ14fvW9t5/d7kdA==}
- engines: {node: '>=8'}
-
- cjs-module-lexer@2.1.1:
- resolution: {integrity: sha512-+CmxIZ/L2vNcEfvNtLdU0ZQ6mbq3FZnwAP2PPTiKP+1QOoKwlKlPgb8UKV0Dds7QVaMnHm+FwSft2VB0s/SLjQ==}
-
class-transformer@0.5.1:
resolution: {integrity: sha512-SQa1Ws6hUbfC98vKGxZH3KFY0Y1lm5Zm0SY8XX9zbK7FJCyVEac3ATW0RIpwzW+oOfmHE5PMPufDG9hCfoEOMw==}
- class-validator@0.14.2:
- resolution: {integrity: sha512-3kMVRF2io8N8pY1IFIXlho9r8IPUUIfHe2hYVtiebvAzU2XeQFXTv+XI4WX+TnXmtwXMDcjngcpkiPM0O9PvLw==}
+ class-validator@0.14.3:
+ resolution: {integrity: sha512-rXXekcjofVN1LTOSw+u4u9WXVEUvNBVjORW154q/IdmYWy1nMbOU9aNtZB0t8m+FJQ9q91jlr2f9CwwUFdFMRA==}
cli-cursor@5.0.0:
resolution: {integrity: sha512-aCj4O5wKyszjMmDT4tZj93kxyydN/K5zPWSCe6/0AV/AA1pqe5ZBIw0a2ZfPQV7lL5/yb5HsUreJ6UFAF1tEQw==}
@@ -1831,13 +1455,6 @@ packages:
resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==}
engines: {node: '>=12'}
- co@4.6.0:
- resolution: {integrity: sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==}
- engines: {iojs: '>= 1.0.0', node: '>= 0.12.0'}
-
- collect-v8-coverage@1.0.3:
- resolution: {integrity: sha512-1L5aqIkwPfiodaMgQunkF1zRhNqifHBmtbbbxcr6yVxxBnliw4TDOW6NxpO8DJLgJ16OT+Y4ztZqP6p/FtXnAw==}
-
color-convert@2.0.1:
resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==}
engines: {node: '>=7.0.0'}
@@ -1904,9 +1521,6 @@ packages:
engines: {node: '>=18'}
hasBin: true
- convert-source-map@2.0.0:
- resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==}
-
cosmiconfig-typescript-loader@6.2.0:
resolution: {integrity: sha512-GEN39v7TgdxgIoNcdkRE3uiAzQt3UXLyHbRHD6YoL048XAeOomyxaP+Hh/+2C6C2wYjxJ2onhJcsQp+L4YEkVQ==}
engines: {node: '>=v18'}
@@ -1941,48 +1555,19 @@ packages:
supports-color:
optional: true
- dedent@1.7.0:
- resolution: {integrity: sha512-HGFtf8yhuhGhqO07SV79tRp+br4MnbdjeVxotpn1QBl30pcLLCQjX5b2295ll0fv8RKDKsmWYrl05usHM9CewQ==}
- peerDependencies:
- babel-plugin-macros: ^3.1.0
- peerDependenciesMeta:
- babel-plugin-macros:
- optional: true
-
deep-is@0.1.4:
resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==}
- deepmerge@4.3.1:
- resolution: {integrity: sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==}
- engines: {node: '>=0.10.0'}
-
- detect-newline@3.1.0:
- resolution: {integrity: sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==}
- engines: {node: '>=8'}
-
dot-prop@5.3.0:
resolution: {integrity: sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==}
engines: {node: '>=8'}
- eastasianwidth@0.2.0:
- resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==}
-
- electron-to-chromium@1.5.257:
- resolution: {integrity: sha512-VNSOB6JZan5IQNMqaurYpZC4bDPXcvKlUwVD/ztMeVD7SwOpMYGOY7dgt+4lNiIHIpvv/FdULnZKqKEy2KcuHQ==}
-
- emittery@0.13.1:
- resolution: {integrity: sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ==}
- engines: {node: '>=12'}
-
emoji-regex@10.6.0:
resolution: {integrity: sha512-toUI84YS5YmxW219erniWD0CIVOo46xGKColeNQRgOzDorgBi1v4D71/OFzgD9GO2UGKIv1C3Sp8DAn0+j5w7A==}
emoji-regex@8.0.0:
resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==}
- emoji-regex@9.2.2:
- resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==}
-
env-paths@2.2.1:
resolution: {integrity: sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==}
engines: {node: '>=6'}
@@ -2002,8 +1587,8 @@ packages:
engines: {node: '>=18'}
hasBin: true
- esbuild@0.27.0:
- resolution: {integrity: sha512-jd0f4NHbD6cALCyGElNpGAOtWxSq46l9X/sWB0Nzd5er4Kz2YTm+Vl0qKFT9KUJvD8+fiO8AvoHhFvEatfVixA==}
+ esbuild@0.27.1:
+ resolution: {integrity: sha512-yY35KZckJJuVVPXpvjgxiCuVEJT67F6zDeVTv4rizyPrfGBUpZQsvmxnN+C371c2esD/hNMjj4tpBhuueLN7aA==}
engines: {node: '>=18'}
hasBin: true
@@ -2011,10 +1596,6 @@ 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'}
@@ -2037,8 +1618,8 @@ packages:
eslint-parser-plain@0.1.1:
resolution: {integrity: sha512-KRgd6wuxH4U8kczqPp+Oyk4irThIhHWxgFgLDtpgjUGVIS3wGrJntvZW/p6hHq1T4FOwnOtCNkvAI4Kr+mQ/Hw==}
- eslint-plugin-format@1.0.2:
- resolution: {integrity: sha512-ySrDaLQZbreNAr/Betq6ocd5Hxy3+LBIfWNV2621EQQ6yGf/ZSLtN2MiM62WO2YQTX+nSFhv332Tpp51q+AkZQ==}
+ eslint-plugin-format@1.1.0:
+ resolution: {integrity: sha512-zjGPZcftddkO9GydBwvTKBV4ICN6a++XK0zIPi3HZHlU8W9EaftTA3XAanJvGAXQUYEqAADtgQi08SX+afbPrg==}
peerDependencies:
eslint: ^8.40.0 || ^9.0.0
@@ -2098,11 +1679,6 @@ packages:
resolution: {integrity: sha512-j6PAQ2uUr79PZhBjP5C5fhl8e39FmRnOjsD5lGnWrFU8i2G776tBK7+nP8KuQUTTyAZUwfQqXAgrVH5MbH9CYQ==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
- esprima@4.0.1:
- resolution: {integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==}
- engines: {node: '>=4'}
- hasBin: true
-
esquery@1.6.0:
resolution: {integrity: sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==}
engines: {node: '>=0.10'}
@@ -2125,26 +1701,14 @@ packages:
eventemitter3@5.0.1:
resolution: {integrity: sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA==}
- execa@5.1.1:
- resolution: {integrity: sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==}
- engines: {node: '>=10'}
-
- execa@9.6.0:
- resolution: {integrity: sha512-jpWzZ1ZhwUmeWRhS7Qv3mhpOhLfwI+uAX4e5fOcXqwMR7EcJ0pj2kV1CVzHVMX/LphnKWD3LObjZCoJ71lKpHw==}
+ execa@9.6.1:
+ resolution: {integrity: sha512-9Be3ZoN4LmYR90tUoVu2te2BsbzHfhJyfEiAVfz7N5/zv+jduIfLrV2xdQXOHbaD6KgpGdO9PRPM1Y4Q9QkPkA==}
engines: {node: ^18.19.0 || >=20.5.0}
- exit-x@0.2.2:
- resolution: {integrity: sha512-+I6B/IkJc1o/2tiURyz/ivu/O0nKNEArIUB5O7zBrlDVJr22SCLH3xTeEry428LvFhRzIA1g8izguxJ/gbNcVQ==}
- engines: {node: '>= 0.8.0'}
-
expect-type@1.2.2:
resolution: {integrity: sha512-JhFGDVJ7tmDJItKhYgJCGLOWjuK9vPxiXoUFLwLDc99NlmklilbiQJwoctZtt13+xMw91MCk/REan6MWHqDjyA==}
engines: {node: '>=12.0.0'}
- expect@30.2.0:
- resolution: {integrity: sha512-u/feCi0GPsI+988gU2FLcsHyAHTU0MX1Wg68NhAnN7z/+C5wqG+CY8J53N9ioe8RXgaoz0nBR/TYMf3AycUuPw==}
- engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
-
fast-content-type-parse@2.0.1:
resolution: {integrity: sha512-nGqtvLrj5w0naR6tDPfB4cUmYCqouzyQiz6C5y/LtcDllJdrcc6WaWW6iXyIIOErTa/XRybj28aasdn4LkVk6Q==}
@@ -2163,9 +1727,6 @@ packages:
fast-uri@3.1.0:
resolution: {integrity: sha512-iPeeDKJSWf4IEOasVVrknXpaBV0IApz/gp7S2bb7Z4Lljbl2MGJRqInZiUrQwV16cpzw/D3S5j5Julj/gT52AA==}
- fb-watchman@2.0.2:
- resolution: {integrity: sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==}
-
fdir@6.5.0:
resolution: {integrity: sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==}
engines: {node: '>=12.0.0'}
@@ -2187,10 +1748,6 @@ packages:
resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==}
engines: {node: '>=8'}
- find-up@4.1.0:
- resolution: {integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==}
- engines: {node: '>=8'}
-
find-up@5.0.0:
resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==}
engines: {node: '>=10'}
@@ -2209,22 +1766,11 @@ packages:
flatted@3.3.3:
resolution: {integrity: sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==}
- foreground-child@3.3.1:
- resolution: {integrity: sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==}
- engines: {node: '>=14'}
-
- fs.realpath@1.0.0:
- resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==}
-
fsevents@2.3.3:
resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==}
engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0}
os: [darwin]
- gensync@1.0.0-beta.2:
- resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==}
- engines: {node: '>=6.9.0'}
-
get-caller-file@2.0.5:
resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==}
engines: {node: 6.* || 8.* || >= 10.*}
@@ -2233,14 +1779,6 @@ packages:
resolution: {integrity: sha512-QZjmEOC+IT1uk6Rx0sX22V6uHWVwbdbxf1faPqJ1QhLdGgsRGCZoyaQBm/piRdJy/D2um6hM1UP7ZEeQ4EkP+Q==}
engines: {node: '>=18'}
- get-package-type@0.1.0:
- resolution: {integrity: sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==}
- engines: {node: '>=8.0.0'}
-
- get-stream@6.0.1:
- resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==}
- engines: {node: '>=10'}
-
get-stream@9.0.1:
resolution: {integrity: sha512-kVCxPF3vQM/N0B1PmoqVUqgHP+EeVjmZSQn+1oCRPxd2P21P2F19lIgbR3HBosbB1PUhOAoctJnfEn2GbN2eZA==}
engines: {node: '>=18'}
@@ -2289,14 +1827,6 @@ packages:
resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==}
engines: {node: '>=10.13.0'}
- glob@10.5.0:
- resolution: {integrity: sha512-DfXN8DfhJ7NH3Oe7cFmu3NCu1wKbkReJ8TorzSAFbSKrlNaQSKfIzqYqVY8zlbs2NLBbWpRiU52GX2PbaBVNkg==}
- hasBin: true
-
- glob@7.2.3:
- resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==}
- deprecated: Glob versions prior to v9 are no longer supported
-
global-directory@4.0.1:
resolution: {integrity: sha512-wHTUcDUoZ1H5/0iVqEudYW4/kAlN5cZ3j/bXn0Dpbizl9iaUVeWSHqiOjsgk6OW2bkLclbBjzewBz6weQ1zA2Q==}
engines: {node: '>=18'}
@@ -2309,9 +1839,6 @@ packages:
resolution: {integrity: sha512-c/c15i26VrJ4IRt5Z89DnIzCGDn9EcebibhAOjw5ibqEHsE1wLUgkPn9RDmNcUKyU87GeaL633nyJ+pplFR2ZQ==}
engines: {node: '>=18'}
- graceful-fs@4.2.11:
- resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==}
-
graphemer@1.4.0:
resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==}
@@ -2326,10 +1853,6 @@ packages:
html-escaper@2.0.2:
resolution: {integrity: sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==}
- human-signals@2.1.0:
- resolution: {integrity: sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==}
- engines: {node: '>=10.17.0'}
-
human-signals@8.0.1:
resolution: {integrity: sha512-eKCa6bwnJhvxj14kZk5NCPc6Hb6BdsU9DZcOnmQKSnO1VKrfV0zCvtttPZUsBvjmNDn8rpcJfpwSYnHBjc95MQ==}
engines: {node: '>=18.18.0'}
@@ -2351,11 +1874,6 @@ packages:
resolution: {integrity: sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==}
engines: {node: '>=6'}
- import-local@3.2.0:
- resolution: {integrity: sha512-2SPlun1JUPWoM6t3F0dw0FkCF/jWY8kttcY4f599GLTSjh2OCuuhdTkJQsEcZzBqbXZGKMK2OqW1oZsjtf/gQA==}
- engines: {node: '>=8'}
- hasBin: true
-
import-meta-resolve@4.2.0:
resolution: {integrity: sha512-Iqv2fzaTQN28s/FwZAoFq0ZSs/7hMAHJVX+w8PZl3cY19Pxk6jFFalxQoIfW2826i/fDLXv8IiEZRIT0lDuWcg==}
@@ -2363,13 +1881,6 @@ packages:
resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==}
engines: {node: '>=0.8.19'}
- inflight@1.0.6:
- resolution: {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.
-
- inherits@2.0.4:
- resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==}
-
ini@4.1.1:
resolution: {integrity: sha512-QQnnxNyfvmHFIsj7gkPcYymR8Jdw/o7mp5ZFihxn6h8Ci6fh3Dx4E1gPjpQEpIuPo9XVNY/ZUwh4BPMjGyL01g==}
engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0}
@@ -2393,10 +1904,6 @@ packages:
resolution: {integrity: sha512-5XHYaSyiqADb4RnZ1Bdad6cPp8Toise4TzEjcOYDHZkTCbKgiUl7WTUCpNWHuxmDt91wnsZBc9xinNzopv3JMQ==}
engines: {node: '>=18'}
- is-generator-fn@2.1.0:
- resolution: {integrity: sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==}
- engines: {node: '>=6'}
-
is-glob@4.0.3:
resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==}
engines: {node: '>=0.10.0'}
@@ -2413,10 +1920,6 @@ packages:
resolution: {integrity: sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==}
engines: {node: '>=12'}
- is-stream@2.0.1:
- resolution: {integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==}
- engines: {node: '>=8'}
-
is-stream@4.0.1:
resolution: {integrity: sha512-Dnz92NInDqYckGEUJv689RbRiTSEHCQ7wOVeALbkOz999YpqT46yMRIGtSNl2iCL1waAZSx40+h59NV/EwzV/A==}
engines: {node: '>=18'}
@@ -2436,10 +1939,6 @@ packages:
resolution: {integrity: sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==}
engines: {node: '>=8'}
- istanbul-lib-instrument@6.0.3:
- resolution: {integrity: sha512-Vtgk7L/R2JHyyGW07spoFlB8/lpjiOLTjMdms6AFMraYt3BaJauod/NGrfnVG/y4Ix1JEuMRPDPEj2ua+zz1/Q==}
- engines: {node: '>=10'}
-
istanbul-lib-report@3.0.1:
resolution: {integrity: sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==}
engines: {node: '>=10'}
@@ -2452,140 +1951,9 @@ packages:
resolution: {integrity: sha512-HGYWWS/ehqTV3xN10i23tkPkpH46MLCIMFNCaaKNavAXTF1RkqxawEPtnjnGZ6XKSInBKkiOA5BKS+aZiY3AvA==}
engines: {node: '>=8'}
- jackspeak@3.4.3:
- resolution: {integrity: sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==}
-
javascript-natural-sort@0.7.1:
resolution: {integrity: sha512-nO6jcEfZWQXDhOiBtG2KvKyEptz7RVbpGP4vTD2hLBdmNQSsCiicO2Ioinv6UI4y9ukqnBpy+XZ9H6uLNgJTlw==}
- jest-changed-files@30.2.0:
- resolution: {integrity: sha512-L8lR1ChrRnSdfeOvTrwZMlnWV8G/LLjQ0nG9MBclwWZidA2N5FviRki0Bvh20WRMOX31/JYvzdqTJrk5oBdydQ==}
- engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
-
- jest-circus@30.2.0:
- resolution: {integrity: sha512-Fh0096NC3ZkFx05EP2OXCxJAREVxj1BcW/i6EWqqymcgYKWjyyDpral3fMxVcHXg6oZM7iULer9wGRFvfpl+Tg==}
- engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
-
- jest-cli@30.2.0:
- resolution: {integrity: sha512-Os9ukIvADX/A9sLt6Zse3+nmHtHaE6hqOsjQtNiugFTbKRHYIYtZXNGNK9NChseXy7djFPjndX1tL0sCTlfpAA==}
- engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
- hasBin: true
- peerDependencies:
- node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0
- peerDependenciesMeta:
- node-notifier:
- optional: true
-
- jest-config@30.2.0:
- resolution: {integrity: sha512-g4WkyzFQVWHtu6uqGmQR4CQxz/CH3yDSlhzXMWzNjDx843gYjReZnMRanjRCq5XZFuQrGDxgUaiYWE8BRfVckA==}
- engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
- peerDependencies:
- '@types/node': '*'
- esbuild-register: '>=3.4.0'
- ts-node: '>=9.0.0'
- peerDependenciesMeta:
- '@types/node':
- optional: true
- esbuild-register:
- optional: true
- ts-node:
- optional: true
-
- jest-diff@30.2.0:
- resolution: {integrity: sha512-dQHFo3Pt4/NLlG5z4PxZ/3yZTZ1C7s9hveiOj+GCN+uT109NC2QgsoVZsVOAvbJ3RgKkvyLGXZV9+piDpWbm6A==}
- engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
-
- jest-docblock@30.2.0:
- resolution: {integrity: sha512-tR/FFgZKS1CXluOQzZvNH3+0z9jXr3ldGSD8bhyuxvlVUwbeLOGynkunvlTMxchC5urrKndYiwCFC0DLVjpOCA==}
- engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
-
- jest-each@30.2.0:
- resolution: {integrity: sha512-lpWlJlM7bCUf1mfmuqTA8+j2lNURW9eNafOy99knBM01i5CQeY5UH1vZjgT9071nDJac1M4XsbyI44oNOdhlDQ==}
- engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
-
- jest-environment-node@30.2.0:
- resolution: {integrity: sha512-ElU8v92QJ9UrYsKrxDIKCxu6PfNj4Hdcktcn0JX12zqNdqWHB0N+hwOnnBBXvjLd2vApZtuLUGs1QSY+MsXoNA==}
- engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
-
- jest-haste-map@30.2.0:
- resolution: {integrity: sha512-sQA/jCb9kNt+neM0anSj6eZhLZUIhQgwDt7cPGjumgLM4rXsfb9kpnlacmvZz3Q5tb80nS+oG/if+NBKrHC+Xw==}
- engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
-
- jest-leak-detector@30.2.0:
- resolution: {integrity: sha512-M6jKAjyzjHG0SrQgwhgZGy9hFazcudwCNovY/9HPIicmNSBuockPSedAP9vlPK6ONFJ1zfyH/M2/YYJxOz5cdQ==}
- engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
-
- jest-matcher-utils@30.2.0:
- resolution: {integrity: sha512-dQ94Nq4dbzmUWkQ0ANAWS9tBRfqCrn0bV9AMYdOi/MHW726xn7eQmMeRTpX2ViC00bpNaWXq+7o4lIQ3AX13Hg==}
- engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
-
- jest-message-util@30.2.0:
- resolution: {integrity: sha512-y4DKFLZ2y6DxTWD4cDe07RglV88ZiNEdlRfGtqahfbIjfsw1nMCPx49Uev4IA/hWn3sDKyAnSPwoYSsAEdcimw==}
- engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
-
- jest-mock@30.2.0:
- resolution: {integrity: sha512-JNNNl2rj4b5ICpmAcq+WbLH83XswjPbjH4T7yvGzfAGCPh1rw+xVNbtk+FnRslvt9lkCcdn9i1oAoKUuFsOxRw==}
- engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
-
- jest-pnp-resolver@1.2.3:
- resolution: {integrity: sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==}
- engines: {node: '>=6'}
- peerDependencies:
- jest-resolve: '*'
- peerDependenciesMeta:
- jest-resolve:
- optional: true
-
- jest-regex-util@30.0.1:
- resolution: {integrity: sha512-jHEQgBXAgc+Gh4g0p3bCevgRCVRkB4VB70zhoAE48gxeSr1hfUOsM/C2WoJgVL7Eyg//hudYENbm3Ne+/dRVVA==}
- engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
-
- jest-resolve-dependencies@30.2.0:
- resolution: {integrity: sha512-xTOIGug/0RmIe3mmCqCT95yO0vj6JURrn1TKWlNbhiAefJRWINNPgwVkrVgt/YaerPzY3iItufd80v3lOrFJ2w==}
- engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
-
- jest-resolve@30.2.0:
- resolution: {integrity: sha512-TCrHSxPlx3tBY3hWNtRQKbtgLhsXa1WmbJEqBlTBrGafd5fiQFByy2GNCEoGR+Tns8d15GaL9cxEzKOO3GEb2A==}
- engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
-
- jest-runner@30.2.0:
- resolution: {integrity: sha512-PqvZ2B2XEyPEbclp+gV6KO/F1FIFSbIwewRgmROCMBo/aZ6J1w8Qypoj2pEOcg3G2HzLlaP6VUtvwCI8dM3oqQ==}
- engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
-
- jest-runtime@30.2.0:
- resolution: {integrity: sha512-p1+GVX/PJqTucvsmERPMgCPvQJpFt4hFbM+VN3n8TMo47decMUcJbt+rgzwrEme0MQUA/R+1de2axftTHkKckg==}
- engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
-
- jest-snapshot@30.2.0:
- resolution: {integrity: sha512-5WEtTy2jXPFypadKNpbNkZ72puZCa6UjSr/7djeecHWOu7iYhSXSnHScT8wBz3Rn8Ena5d5RYRcsyKIeqG1IyA==}
- engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
-
- jest-util@30.2.0:
- resolution: {integrity: sha512-QKNsM0o3Xe6ISQU869e+DhG+4CK/48aHYdJZGlFQVTjnbvgpcKyxpzk29fGiO7i/J8VENZ+d2iGnSsvmuHywlA==}
- engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
-
- jest-validate@30.2.0:
- resolution: {integrity: sha512-FBGWi7dP2hpdi8nBoWxSsLvBFewKAg0+uSQwBaof4Y4DPgBabXgpSYC5/lR7VmnIlSpASmCi/ntRWPbv7089Pw==}
- engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
-
- jest-watcher@30.2.0:
- resolution: {integrity: sha512-PYxa28dxJ9g777pGm/7PrbnMeA0Jr7osHP9bS7eJy9DuAjMgdGtxgf0uKMyoIsTWAkIbUW5hSDdJ3urmgXBqxg==}
- engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
-
- jest-worker@30.2.0:
- resolution: {integrity: sha512-0Q4Uk8WF7BUwqXHuAjc23vmopWJw5WH7w2tqBoUOZpOjW/ZnR44GXXd1r82RvnmI2GZge3ivrYXk/BE2+VtW2g==}
- engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
-
- jest@30.2.0:
- resolution: {integrity: sha512-F26gjC0yWN8uAA5m5Ss8ZQf5nDHWGlN/xWZIh8S5SRbsEKBovwZhxGd6LJlbZYxBgCYOtreSUyb8hpXyGC5O4A==}
- engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
- hasBin: true
- peerDependencies:
- node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0
- peerDependenciesMeta:
- node-notifier:
- optional: true
-
jiti@2.6.1:
resolution: {integrity: sha512-ekilCSN1jwRvIbgeg/57YFh8qQDNbwDb9xT/qu2DAHbFFZUicIl4ygVaAvzveMhMVr3LnpSKTNnwt8PoOfmKhQ==}
hasBin: true
@@ -2600,14 +1968,6 @@ packages:
js-tokens@9.0.1:
resolution: {integrity: sha512-mxa9E9ITFOt0ban3j6L5MpjwegGz6lBQmM1IJkWeBZGcMxto50+eWdjC/52xDbS2vy0k7vIMK0Fe2wfL9OQSpQ==}
- js-yaml@3.14.2:
- resolution: {integrity: sha512-PMSmkqxr106Xa156c2M265Z+FTrPl+oxd/rgOQy2tijQeK5TxQ43psO1ZCwhVOSdnn+RzkzlRz/eY4BgJBYVpg==}
- hasBin: true
-
- js-yaml@4.1.0:
- resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==}
- hasBin: true
-
js-yaml@4.1.1:
resolution: {integrity: sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA==}
hasBin: true
@@ -2632,11 +1992,6 @@ packages:
json-stable-stringify-without-jsonify@1.0.1:
resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==}
- json5@2.2.3:
- resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==}
- engines: {node: '>=6'}
- hasBin: true
-
jsonparse@1.3.1:
resolution: {integrity: sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==}
engines: {'0': node >= 0.2.0}
@@ -2647,16 +2002,12 @@ packages:
konva@10.0.12:
resolution: {integrity: sha512-DHmkeG5FbW6tLCkbMQTi1ihWycfzljrn0V7umUUuewxx7aoINcI71ksgBX9fTPNXhlsK4/JoMgKwI/iCde+BRw==}
- leven@3.1.0:
- resolution: {integrity: sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==}
- engines: {node: '>=6'}
-
levn@0.4.1:
resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==}
engines: {node: '>= 0.8.0'}
- libphonenumber-js@1.12.27:
- resolution: {integrity: sha512-8gHhHzzcnY1EF4BS5L/lrjv2VAZWd6ltU7c/sqoktRZSQvZl4g8hrgXtXHXGkSFKFYArFON12zUNJrNVqJ9u4g==}
+ libphonenumber-js@1.12.31:
+ resolution: {integrity: sha512-Z3IhgVgrqO1S5xPYM3K5XwbkDasU67/Vys4heW+lfSBALcUZjeIIzI8zCLifY+OCzSq+fpDdywMDa7z+4srJPQ==}
lilconfig@3.1.3:
resolution: {integrity: sha512-/vlFKAoH5Cgt3Ie+JLhRbwOsCQePABiU3tJ1egGvyQ+33R/vcwM2Zl2QR/LzjsBeItPt3oSVXapn+m4nQDvpzw==}
@@ -2678,10 +2029,6 @@ packages:
resolution: {integrity: sha512-IXO6OCs9yg8tMKzfPZ1YmheJbZCiEsnBdcB03l0OcfK9prKnJb96siuHCr5Fl37/yo9DnKU+TLpxzTUspw9shg==}
engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
- locate-path@5.0.0:
- resolution: {integrity: sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==}
- engines: {node: '>=8'}
-
locate-path@6.0.0:
resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==}
engines: {node: '>=10'}
@@ -2728,12 +2075,6 @@ packages:
resolution: {integrity: sha512-9ie8ItPR6tjY5uYJh8K/Zrv/RMZ5VOlOWvtZdEHYSTFKZfIBPQa9tOAEeAWhd+AnIneLJ22w5fjOYtoutpWq5w==}
engines: {node: '>=18'}
- lru-cache@10.4.3:
- resolution: {integrity: sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==}
-
- lru-cache@5.1.1:
- resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==}
-
magic-string@0.30.21:
resolution: {integrity: sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==}
@@ -2744,9 +2085,6 @@ packages:
resolution: {integrity: sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==}
engines: {node: '>=10'}
- makeerror@1.0.12:
- resolution: {integrity: sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==}
-
meow@12.1.1:
resolution: {integrity: sha512-BhXM0Au22RwUneMPwSCnyhTOizdWoIEPU9sp0Aqa1PnDMR5Wv2FGXYDjuzJEIX+Eo2Rb8xuYe5jrnm5QowQFkw==}
engines: {node: '>=16.10'}
@@ -2755,17 +2093,10 @@ packages:
resolution: {integrity: sha512-pxQJQzB6djGPXh08dacEloMFopsOqGVRKFPYvPOt9XDZ1HasbgDZA74CJGreSU4G3Ak7EFJGoiH2auq+yXISgA==}
engines: {node: '>=18'}
- merge-stream@2.0.0:
- resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==}
-
micromatch@4.0.8:
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'}
@@ -2780,10 +2111,6 @@ packages:
minimist@1.2.8:
resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==}
- minipass@7.1.2:
- resolution: {integrity: sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==}
- engines: {node: '>=16 || 14 >=14.17'}
-
mlly@1.8.0:
resolution: {integrity: sha512-l8D9ODSRWLe2KHJSifWGwBqpTZXIXTeo8mlKjY+E2HAakaTeNpqAyBZ8GSqLzHgw4XmHmC8whvpjJNMbFZN7/g==}
@@ -2802,28 +2129,9 @@ packages:
engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1}
hasBin: true
- napi-postinstall@0.3.4:
- resolution: {integrity: sha512-PHI5f1O0EP5xJ9gQmFGMS6IZcrVvTjpXjz7Na41gTE7eE2hK11lg04CECCYEEjdc17EV4DO+fkGEtt7TpTaTiQ==}
- engines: {node: ^12.20.0 || ^14.18.0 || >=16.0.0}
- hasBin: true
-
natural-compare@1.4.0:
resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==}
- node-int64@0.4.0:
- resolution: {integrity: sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==}
-
- node-releases@2.0.27:
- resolution: {integrity: sha512-nmh3lCkYZ3grZvqcCH+fjmQ7X+H0OeZgP40OierEaAptX4XofMh5kwNbWh7lBduUzCcV/8kZ+NDLCwm2iorIlA==}
-
- normalize-path@3.0.0:
- resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==}
- engines: {node: '>=0.10.0'}
-
- npm-run-path@4.0.1:
- resolution: {integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==}
- engines: {node: '>=8'}
-
npm-run-path@6.0.0:
resolution: {integrity: sha512-9qny7Z9DsQU8Ou39ERsPU4OZQlSTP47ShQzuKZ6PRXpYLtIFgl/DEBYEXKlvcEa+9tHVcK8CF81Y2V72qaZhWA==}
engines: {node: '>=18'}
@@ -2835,13 +2143,6 @@ packages:
obug@2.1.1:
resolution: {integrity: sha512-uTqF9MuPraAQ+IsnPf366RG4cP9RtUi7MLO1N3KEc+wb0a6yKpeL0lmk2IB1jY5KHPAlTc6T/JRdC/YqxHNwkQ==}
- once@1.4.0:
- resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==}
-
- 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'}
@@ -2850,10 +2151,6 @@ packages:
resolution: {integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==}
engines: {node: '>= 0.8.0'}
- p-limit@2.3.0:
- resolution: {integrity: sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==}
- engines: {node: '>=6'}
-
p-limit@3.1.0:
resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==}
engines: {node: '>=10'}
@@ -2862,10 +2159,6 @@ packages:
resolution: {integrity: sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==}
engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
- p-locate@4.1.0:
- resolution: {integrity: sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==}
- engines: {node: '>=8'}
-
p-locate@5.0.0:
resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==}
engines: {node: '>=10'}
@@ -2874,13 +2167,6 @@ packages:
resolution: {integrity: sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw==}
engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
- p-try@2.2.0:
- resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==}
- engines: {node: '>=6'}
-
- package-json-from-dist@1.0.1:
- resolution: {integrity: sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==}
-
parent-module@1.0.1:
resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==}
engines: {node: '>=6'}
@@ -2907,10 +2193,6 @@ packages:
resolution: {integrity: sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ==}
engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
- path-is-absolute@1.0.1:
- resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==}
- engines: {node: '>=0.10.0'}
-
path-key@3.1.1:
resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==}
engines: {node: '>=8'}
@@ -2919,10 +2201,6 @@ packages:
resolution: {integrity: sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==}
engines: {node: '>=12'}
- path-scurry@1.11.1:
- resolution: {integrity: sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==}
- engines: {node: '>=16 || 14 >=14.18'}
-
pathe@2.0.3:
resolution: {integrity: sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w==}
@@ -2946,10 +2224,6 @@ packages:
resolution: {integrity: sha512-TfySrs/5nm8fQJDcBDuUng3VOUKsd7S+zqvbOTiGXHfxX4wK31ard+hoNuvkicM/2YFzlpDgABOevKSsB4G/FA==}
engines: {node: '>= 6'}
- pkg-dir@4.2.0:
- resolution: {integrity: sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==}
- engines: {node: '>=8'}
-
pkg-types@1.3.1:
resolution: {integrity: sha512-/Jm5M4RvtBFVkKWRu2BLUTNP8/M2a+UwuAX+ae4770q1qVGtfjG+WTCupoZixokjmHiry8uI+dlY8KXYV5HVVQ==}
@@ -2987,15 +2261,11 @@ packages:
resolution: {integrity: sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==}
engines: {node: '>=6.0.0'}
- prettier@3.6.2:
- resolution: {integrity: sha512-I7AIg5boAr5R0FFtJ6rCfD+LFsWHp81dolrFD8S79U9tb8Az2nGrJncnMSnys+bpQJfRUzqs9hnA81OAA3hCuQ==}
+ prettier@3.7.4:
+ resolution: {integrity: sha512-v6UNi1+3hSlVvv8fSaoUbggEM5VErKmmpGA7Pl3HF8V6uKY7rvClBOJlH6yNwQtfTueNkGVpOv/mtWL9L4bgRA==}
engines: {node: '>=14'}
hasBin: true
- pretty-format@30.2.0:
- resolution: {integrity: sha512-9uBdv/B4EefsuAL+pWqueZyZS2Ba+LxfFeQ9DN14HU4bN8bhaxKdkpjpB6fs9+pSjIBu+FXQHImEg8j/Lw0+vA==}
- engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
-
pretty-ms@9.3.0:
resolution: {integrity: sha512-gjVS5hOP+M3wMm5nmNOucbIrqudzs9v/57bWRHQWLYklXqoXKrVfYW2W9+glfGsqtPgpiz5WwyEEB+ksXIx3gQ==}
engines: {node: '>=18'}
@@ -3004,12 +2274,6 @@ packages:
resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==}
engines: {node: '>=6'}
- pure-rand@7.0.1:
- resolution: {integrity: sha512-oTUZM/NAZS8p7ANR3SHh30kXB+zK2r2BPcEn/awJIbOvq82WoMN4p62AWWp3Hhw50G0xMsw1mhIBLqHw64EcNQ==}
-
- react-is@18.3.1:
- resolution: {integrity: sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==}
-
readdirp@4.1.2:
resolution: {integrity: sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==}
engines: {node: '>= 14.18.0'}
@@ -3022,10 +2286,6 @@ packages:
resolution: {integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==}
engines: {node: '>=0.10.0'}
- resolve-cwd@3.0.0:
- resolution: {integrity: sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==}
- engines: {node: '>=8'}
-
resolve-from@4.0.0:
resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==}
engines: {node: '>=4'}
@@ -3046,10 +2306,6 @@ packages:
engines: {node: '>=18.0.0', npm: '>=8.0.0'}
hasBin: true
- semver@6.3.1:
- resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==}
- hasBin: true
-
semver@7.7.3:
resolution: {integrity: sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==}
engines: {node: '>=10'}
@@ -3066,17 +2322,10 @@ 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'}
- slash@3.0.0:
- resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==}
- engines: {node: '>=8'}
-
slice-ansi@7.1.2:
resolution: {integrity: sha512-iOBWFgUX7caIZiuutICxVgX1SdxwAVFFKwt1EvMYYec/NWO5meOJ6K5uQxhrYBdQJne4KxiqZc+KptFOWFSI9w==}
engines: {node: '>=18'}
@@ -3089,13 +2338,6 @@ packages:
resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==}
engines: {node: '>=0.10.0'}
- source-map-support@0.5.13:
- resolution: {integrity: sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w==}
-
- source-map@0.6.1:
- resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==}
- engines: {node: '>=0.10.0'}
-
source-map@0.7.6:
resolution: {integrity: sha512-i5uvt8C3ikiWeNZSVZNWcfZPItFQOsYTUAOkcUPGd8DqDy1uOUikjt5dG+uRlwyvR108Fb9DOd4GvXfT0N2/uQ==}
engines: {node: '>= 12'}
@@ -3104,13 +2346,6 @@ packages:
resolution: {integrity: sha512-UcjcJOWknrNkF6PLX83qcHM6KHgVKNkV62Y8a5uYDVv9ydGQVwAHMKqHdJje1VTWpljG0WYpCDhrCdAOYH4TWg==}
engines: {node: '>= 10.x'}
- sprintf-js@1.0.3:
- resolution: {integrity: sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==}
-
- 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==}
@@ -3121,18 +2356,10 @@ packages:
resolution: {integrity: sha512-aqD2Q0144Z+/RqG52NeHEkZauTAUWJO8c6yTftGJKO3Tja5tUgIfmIl6kExvhtxSDP7fXB6DvzkfMpCd/F3G+Q==}
engines: {node: '>=0.6.19'}
- string-length@4.0.2:
- resolution: {integrity: sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==}
- engines: {node: '>=10'}
-
string-width@4.2.3:
resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==}
engines: {node: '>=8'}
- string-width@5.1.2:
- resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==}
- engines: {node: '>=12'}
-
string-width@7.2.0:
resolution: {integrity: sha512-tsaTIkKW9b4N+AEj+SVA+WhJzV7/zMhcSu78mLKWSk7cXMOSHsBKFWUs0fWwq8QyK3MgJBQRX6Gbi4kYbdvGkQ==}
engines: {node: '>=18'}
@@ -3149,14 +2376,6 @@ packages:
resolution: {integrity: sha512-gmBGslpoQJtgnMAvOVqGZpEz9dyoKTCzy2nfz/n8aIFhN/jCE/rCmcxabB6jOOHV+0WNnylOxaxBQPSvcWklhA==}
engines: {node: '>=12'}
- strip-bom@4.0.0:
- resolution: {integrity: sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==}
- engines: {node: '>=8'}
-
- strip-final-newline@2.0.0:
- resolution: {integrity: sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==}
- engines: {node: '>=6'}
-
strip-final-newline@4.0.0:
resolution: {integrity: sha512-aulFJcD6YK8V1G7iRB5tigAP4TsHBZZrOV8pjV++zdUwmeV8uzbY7yn6h9MswN62adStNZFuCIx4haBnRuMDaw==}
engines: {node: '>=18'}
@@ -3178,10 +2397,6 @@ packages:
resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==}
engines: {node: '>=8'}
- supports-color@8.1.1:
- resolution: {integrity: sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==}
- engines: {node: '>=10'}
-
supports-hyperlinks@4.3.0:
resolution: {integrity: sha512-i6sWEzuwadSlcr2mOnb0ktlIl+K5FVxsPXmoPfknDd2gyw4ZBIAZ5coc0NQzYqDdEYXMHy8NaY9rWwa1Q1myiQ==}
engines: {node: '>=20'}
@@ -3190,14 +2405,6 @@ packages:
resolution: {integrity: sha512-MeQTA1r0litLUf0Rp/iisCaL8761lKAZHaimlbGK4j0HysC4PLfqygQj9srcs0m2RdtDYnF8UuYyKpbjHYp7Jw==}
engines: {node: ^14.18.0 || >=16.0.0}
- synckit@0.9.3:
- resolution: {integrity: sha512-JJoOEKTfL1urb1mDoEblhD9NhEbWmq9jHEMEnxoC4ujUaZ4itA8vKgwkFAyNClgxplLi9tsUKX+EduK0p/l7sg==}
- engines: {node: ^14.18.0 || >=16.0.0}
-
- test-exclude@6.0.0:
- resolution: {integrity: sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==}
- engines: {node: '>=8'}
-
text-extensions@2.4.0:
resolution: {integrity: sha512-te/NtwBwfiNRLf9Ijqx3T0nlqZiQ2XrrtBvu+cLL8ZRrGkO0NHTug8MYFKyoSrv/sHTaSKfilUkizV6XhxMJ3g==}
engines: {node: '>=8'}
@@ -3230,9 +2437,6 @@ packages:
resolution: {integrity: sha512-PSkbLUoxOFRzJYjjxHJt9xro7D+iilgMX/C9lawzVuYiIdcihh9DXmVibBe8lmcFrRi/VzlPjBxbN7rH24q8/Q==}
engines: {node: '>=14.0.0'}
- tmpl@1.0.5:
- resolution: {integrity: sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==}
-
to-regex-range@5.0.1:
resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==}
engines: {node: '>=8.0'}
@@ -3272,52 +2476,44 @@ packages:
typescript:
optional: true
- turbo-darwin-64@2.6.1:
- resolution: {integrity: sha512-Dm0HwhyZF4J0uLqkhUyCVJvKM9Rw7M03v3J9A7drHDQW0qAbIGBrUijQ8g4Q9Cciw/BXRRd8Uzkc3oue+qn+ZQ==}
+ turbo-darwin-64@2.6.3:
+ resolution: {integrity: sha512-BlJJDc1CQ7SK5Y5qnl7AzpkvKSnpkfPmnA+HeU/sgny3oHZckPV2776ebO2M33CYDSor7+8HQwaodY++IINhYg==}
cpu: [x64]
os: [darwin]
- turbo-darwin-arm64@2.6.1:
- resolution: {integrity: sha512-U0PIPTPyxdLsrC3jN7jaJUwgzX5sVUBsKLO7+6AL+OASaa1NbT1pPdiZoTkblBAALLP76FM0LlnsVQOnmjYhyw==}
+ turbo-darwin-arm64@2.6.3:
+ resolution: {integrity: sha512-MwVt7rBKiOK7zdYerenfCRTypefw4kZCue35IJga9CH1+S50+KTiCkT6LBqo0hHeoH2iKuI0ldTF2a0aB72z3w==}
cpu: [arm64]
os: [darwin]
- turbo-linux-64@2.6.1:
- resolution: {integrity: sha512-eM1uLWgzv89bxlK29qwQEr9xYWBhmO/EGiH22UGfq+uXr+QW1OvNKKMogSN65Ry8lElMH4LZh0aX2DEc7eC0Mw==}
+ turbo-linux-64@2.6.3:
+ resolution: {integrity: sha512-cqpcw+dXxbnPtNnzeeSyWprjmuFVpHJqKcs7Jym5oXlu/ZcovEASUIUZVN3OGEM6Y/OTyyw0z09tOHNt5yBAVg==}
cpu: [x64]
os: [linux]
- turbo-linux-arm64@2.6.1:
- resolution: {integrity: sha512-MFFh7AxAQAycXKuZDrbeutfWM5Ep0CEZ9u7zs4Hn2FvOViTCzIfEhmuJou3/a5+q5VX1zTxQrKGy+4Lf5cdpsA==}
+ turbo-linux-arm64@2.6.3:
+ resolution: {integrity: sha512-MterpZQmjXyr4uM7zOgFSFL3oRdNKeflY7nsjxJb2TklsYqiu3Z9pQ4zRVFFH8n0mLGna7MbQMZuKoWqqHb45w==}
cpu: [arm64]
os: [linux]
- turbo-windows-64@2.6.1:
- resolution: {integrity: sha512-buq7/VAN7KOjMYi4tSZT5m+jpqyhbRU2EUTTvp6V0Ii8dAkY2tAAjQN1q5q2ByflYWKecbQNTqxmVploE0LVwQ==}
+ turbo-windows-64@2.6.3:
+ resolution: {integrity: sha512-biDU70v9dLwnBdLf+daoDlNJVvqOOP8YEjqNipBHzgclbQlXbsi6Gqqelp5er81Qo3BiRgmTNx79oaZQTPb07Q==}
cpu: [x64]
os: [win32]
- turbo-windows-arm64@2.6.1:
- resolution: {integrity: sha512-7w+AD5vJp3R+FB0YOj1YJcNcOOvBior7bcHTodqp90S3x3bLgpr7tE6xOea1e8JkP7GK6ciKVUpQvV7psiwU5Q==}
+ turbo-windows-arm64@2.6.3:
+ resolution: {integrity: sha512-dDHVKpSeukah3VsI/xMEKeTnV9V9cjlpFSUs4bmsUiLu3Yv2ENlgVEZv65wxbeE0bh0jjpmElDT+P1KaCxArQQ==}
cpu: [arm64]
os: [win32]
- turbo@2.6.1:
- resolution: {integrity: sha512-qBwXXuDT3rA53kbNafGbT5r++BrhRgx3sAo0cHoDAeG9g1ItTmUMgltz3Hy7Hazy1ODqNpR+C7QwqL6DYB52yA==}
+ turbo@2.6.3:
+ resolution: {integrity: sha512-bf6YKUv11l5Xfcmg76PyWoy/e2vbkkxFNBGJSnfdSXQC33ZiUfutYh6IXidc5MhsnrFkWfdNNLyaRk+kHMLlwA==}
hasBin: true
type-check@0.4.0:
resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==}
engines: {node: '>= 0.8.0'}
- type-detect@4.0.8:
- resolution: {integrity: sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==}
- engines: {node: '>=4'}
-
- type-fest@0.21.3:
- resolution: {integrity: sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==}
- engines: {node: '>=10'}
-
typescript-eslint@8.48.1:
resolution: {integrity: sha512-FbOKN1fqNoXp1hIl5KYpObVrp0mCn+CLgn479nmu2IsRMrx2vyv74MmsBLVlhg8qVwNFGbXSp8fh1zp8pEoC2A==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
@@ -3347,22 +2543,9 @@ packages:
universal-user-agent@7.0.3:
resolution: {integrity: sha512-TmnEAEAsBJVZM/AADELsK76llnwcf9vMKuPz8JflO1frO8Lchitr0fNaN9d+Ap0BjKtqWqd/J17qeDnXh8CL2A==}
- unrs-resolver@1.11.1:
- resolution: {integrity: sha512-bSjt9pjaEBnNiGgc9rUiHGKv5l4/TGzDmYw3RhnkJGtLhbnnA/5qJj7x3dNDCRx/PJxu774LlH8lCOlB4hEfKg==}
-
- update-browserslist-db@1.1.4:
- resolution: {integrity: sha512-q0SPT4xyU84saUX+tomz1WLkxUbuaJnR1xWt17M7fJtEJigJeWUNGUqrauFXsHnqev9y9JTRGwk13tFBuKby4A==}
- hasBin: true
- peerDependencies:
- browserslist: '>= 4.21.0'
-
uri-js@4.4.1:
resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==}
- v8-to-istanbul@9.3.0:
- resolution: {integrity: sha512-kiGUalWN+rgBJ/1OHZsBtU4rXZOfj/7rKQxULKlIzwzQSvMJUUNgPwJEEh7gU6xEVxC0ahoOBvN2YI8GH6FNgA==}
- engines: {node: '>=10.12.0'}
-
validator@13.15.23:
resolution: {integrity: sha512-4yoz1kEWqUjzi5zsPbAS/903QXSYp0UOtHsPpp7p9rHAw/W+dkInskAE386Fat3oKRROwO98d9ZB0G4cObgUyw==}
engines: {node: '>= 0.10'}
@@ -3441,9 +2624,6 @@ packages:
jsdom:
optional: true
- walker@1.0.8:
- resolution: {integrity: sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==}
-
which@2.0.2:
resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==}
engines: {node: '>= 8'}
@@ -3462,30 +2642,16 @@ packages:
resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==}
engines: {node: '>=10'}
- wrap-ansi@8.1.0:
- resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==}
- engines: {node: '>=12'}
-
wrap-ansi@9.0.2:
resolution: {integrity: sha512-42AtmgqjV+X1VpdOfyTGOYRi0/zsoLqtXQckTmqTeybT+BDIbM/Guxo7x3pE2vtpr1ok6xRqM9OpBe+Jyoqyww==}
engines: {node: '>=18'}
- wrappy@1.0.2:
- resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==}
-
- write-file-atomic@5.0.1:
- resolution: {integrity: sha512-+QU2zd6OTD8XWIJCbffaiQeH9U73qIqafo1x6V1snCWYGJf6cVE0cDR4D8xRzcEnfI21IFrUPzPGtcPf8AC+Rw==}
- engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0}
-
y18n@5.0.8:
resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==}
engines: {node: '>=10'}
- yallist@3.1.1:
- resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==}
-
- yaml@2.8.1:
- resolution: {integrity: sha512-lcYcMxX2PO9XMGvAJkJ3OsNMw+/7FKes7/hgerGUYWIoWu5j/+YQqcZr5JnPZWzOsEBgMbSbiSTn/dv/69Mkpw==}
+ yaml@2.8.2:
+ resolution: {integrity: sha512-mplynKqc1C2hTVYxd0PU2xQAc22TI1vShAYGksCCfxbn/dFwnHTNi1bvYsBTkhdUNtGIf5xNOg938rrSSYvS9A==}
engines: {node: '>= 14.6'}
hasBin: true
@@ -3517,30 +2683,6 @@ snapshots:
js-tokens: 4.0.0
picocolors: 1.1.1
- '@babel/compat-data@7.28.5':
- optional: true
-
- '@babel/core@7.28.5':
- dependencies:
- '@babel/code-frame': 7.27.1
- '@babel/generator': 7.28.5
- '@babel/helper-compilation-targets': 7.27.2
- '@babel/helper-module-transforms': 7.28.3(@babel/core@7.28.5)
- '@babel/helpers': 7.28.4
- '@babel/parser': 7.28.5
- '@babel/template': 7.27.2
- '@babel/traverse': 7.28.5
- '@babel/types': 7.28.5
- '@jridgewell/remapping': 2.3.5
- convert-source-map: 2.0.0
- debug: 4.4.3
- gensync: 1.0.0-beta.2
- json5: 2.2.3
- semver: 6.3.1
- transitivePeerDependencies:
- - supports-color
- optional: true
-
'@babel/generator@7.28.5':
dependencies:
'@babel/parser': 7.28.5
@@ -3549,161 +2691,20 @@ snapshots:
'@jridgewell/trace-mapping': 0.3.31
jsesc: 3.1.0
- '@babel/helper-compilation-targets@7.27.2':
- dependencies:
- '@babel/compat-data': 7.28.5
- '@babel/helper-validator-option': 7.27.1
- browserslist: 4.28.0
- lru-cache: 5.1.1
- semver: 6.3.1
- optional: true
-
'@babel/helper-globals@7.28.0': {}
- '@babel/helper-module-imports@7.27.1':
- dependencies:
- '@babel/traverse': 7.28.5
- '@babel/types': 7.28.5
- transitivePeerDependencies:
- - supports-color
- optional: true
-
- '@babel/helper-module-transforms@7.28.3(@babel/core@7.28.5)':
- dependencies:
- '@babel/core': 7.28.5
- '@babel/helper-module-imports': 7.27.1
- '@babel/helper-validator-identifier': 7.28.5
- '@babel/traverse': 7.28.5
- transitivePeerDependencies:
- - supports-color
- optional: true
-
- '@babel/helper-plugin-utils@7.27.1':
- optional: true
-
'@babel/helper-string-parser@7.27.1': {}
'@babel/helper-validator-identifier@7.28.5': {}
- '@babel/helper-validator-option@7.27.1':
- optional: true
-
- '@babel/helpers@7.28.4':
+ '@babel/parser@7.28.5':
dependencies:
- '@babel/template': 7.27.2
'@babel/types': 7.28.5
- optional: true
- '@babel/parser@7.28.5':
+ '@babel/template@7.27.2':
dependencies:
- '@babel/types': 7.28.5
-
- '@babel/plugin-syntax-async-generators@7.8.4(@babel/core@7.28.5)':
- dependencies:
- '@babel/core': 7.28.5
- '@babel/helper-plugin-utils': 7.27.1
- optional: true
-
- '@babel/plugin-syntax-bigint@7.8.3(@babel/core@7.28.5)':
- dependencies:
- '@babel/core': 7.28.5
- '@babel/helper-plugin-utils': 7.27.1
- optional: true
-
- '@babel/plugin-syntax-class-properties@7.12.13(@babel/core@7.28.5)':
- dependencies:
- '@babel/core': 7.28.5
- '@babel/helper-plugin-utils': 7.27.1
- optional: true
-
- '@babel/plugin-syntax-class-static-block@7.14.5(@babel/core@7.28.5)':
- dependencies:
- '@babel/core': 7.28.5
- '@babel/helper-plugin-utils': 7.27.1
- optional: true
-
- '@babel/plugin-syntax-import-attributes@7.27.1(@babel/core@7.28.5)':
- dependencies:
- '@babel/core': 7.28.5
- '@babel/helper-plugin-utils': 7.27.1
- optional: true
-
- '@babel/plugin-syntax-import-meta@7.10.4(@babel/core@7.28.5)':
- dependencies:
- '@babel/core': 7.28.5
- '@babel/helper-plugin-utils': 7.27.1
- optional: true
-
- '@babel/plugin-syntax-json-strings@7.8.3(@babel/core@7.28.5)':
- dependencies:
- '@babel/core': 7.28.5
- '@babel/helper-plugin-utils': 7.27.1
- optional: true
-
- '@babel/plugin-syntax-jsx@7.27.1(@babel/core@7.28.5)':
- dependencies:
- '@babel/core': 7.28.5
- '@babel/helper-plugin-utils': 7.27.1
- optional: true
-
- '@babel/plugin-syntax-logical-assignment-operators@7.10.4(@babel/core@7.28.5)':
- dependencies:
- '@babel/core': 7.28.5
- '@babel/helper-plugin-utils': 7.27.1
- optional: true
-
- '@babel/plugin-syntax-nullish-coalescing-operator@7.8.3(@babel/core@7.28.5)':
- dependencies:
- '@babel/core': 7.28.5
- '@babel/helper-plugin-utils': 7.27.1
- optional: true
-
- '@babel/plugin-syntax-numeric-separator@7.10.4(@babel/core@7.28.5)':
- dependencies:
- '@babel/core': 7.28.5
- '@babel/helper-plugin-utils': 7.27.1
- optional: true
-
- '@babel/plugin-syntax-object-rest-spread@7.8.3(@babel/core@7.28.5)':
- dependencies:
- '@babel/core': 7.28.5
- '@babel/helper-plugin-utils': 7.27.1
- optional: true
-
- '@babel/plugin-syntax-optional-catch-binding@7.8.3(@babel/core@7.28.5)':
- dependencies:
- '@babel/core': 7.28.5
- '@babel/helper-plugin-utils': 7.27.1
- optional: true
-
- '@babel/plugin-syntax-optional-chaining@7.8.3(@babel/core@7.28.5)':
- dependencies:
- '@babel/core': 7.28.5
- '@babel/helper-plugin-utils': 7.27.1
- optional: true
-
- '@babel/plugin-syntax-private-property-in-object@7.14.5(@babel/core@7.28.5)':
- dependencies:
- '@babel/core': 7.28.5
- '@babel/helper-plugin-utils': 7.27.1
- optional: true
-
- '@babel/plugin-syntax-top-level-await@7.14.5(@babel/core@7.28.5)':
- dependencies:
- '@babel/core': 7.28.5
- '@babel/helper-plugin-utils': 7.27.1
- optional: true
-
- '@babel/plugin-syntax-typescript@7.27.1(@babel/core@7.28.5)':
- dependencies:
- '@babel/core': 7.28.5
- '@babel/helper-plugin-utils': 7.27.1
- optional: true
-
- '@babel/template@7.27.2':
- dependencies:
- '@babel/code-frame': 7.27.1
- '@babel/parser': 7.28.5
+ '@babel/code-frame': 7.27.1
+ '@babel/parser': 7.28.5
'@babel/types': 7.28.5
'@babel/traverse@7.28.5':
@@ -3723,37 +2724,34 @@ snapshots:
'@babel/helper-string-parser': 7.27.1
'@babel/helper-validator-identifier': 7.28.5
- '@bcoe/v8-coverage@0.2.3':
- optional: true
-
'@bcoe/v8-coverage@1.0.2': {}
- '@commitlint/cli@20.1.0(@types/node@24.10.1)(typescript@5.9.3)':
+ '@commitlint/cli@20.2.0(@types/node@24.10.1)(typescript@5.9.3)':
dependencies:
- '@commitlint/format': 20.0.0
- '@commitlint/lint': 20.0.0
- '@commitlint/load': 20.1.0(@types/node@24.10.1)(typescript@5.9.3)
- '@commitlint/read': 20.0.0
- '@commitlint/types': 20.0.0
+ '@commitlint/format': 20.2.0
+ '@commitlint/lint': 20.2.0
+ '@commitlint/load': 20.2.0(@types/node@24.10.1)(typescript@5.9.3)
+ '@commitlint/read': 20.2.0
+ '@commitlint/types': 20.2.0
tinyexec: 1.0.2
yargs: 17.7.2
transitivePeerDependencies:
- '@types/node'
- typescript
- '@commitlint/config-conventional@20.0.0':
+ '@commitlint/config-conventional@20.2.0':
dependencies:
- '@commitlint/types': 20.0.0
+ '@commitlint/types': 20.2.0
conventional-changelog-conventionalcommits: 7.0.2
- '@commitlint/config-validator@20.0.0':
+ '@commitlint/config-validator@20.2.0':
dependencies:
- '@commitlint/types': 20.0.0
+ '@commitlint/types': 20.2.0
ajv: 8.17.1
- '@commitlint/ensure@20.0.0':
+ '@commitlint/ensure@20.2.0':
dependencies:
- '@commitlint/types': 20.0.0
+ '@commitlint/types': 20.2.0
lodash.camelcase: 4.3.0
lodash.kebabcase: 4.1.1
lodash.snakecase: 4.1.1
@@ -3762,29 +2760,29 @@ snapshots:
'@commitlint/execute-rule@20.0.0': {}
- '@commitlint/format@20.0.0':
+ '@commitlint/format@20.2.0':
dependencies:
- '@commitlint/types': 20.0.0
+ '@commitlint/types': 20.2.0
chalk: 5.6.2
- '@commitlint/is-ignored@20.0.0':
+ '@commitlint/is-ignored@20.2.0':
dependencies:
- '@commitlint/types': 20.0.0
+ '@commitlint/types': 20.2.0
semver: 7.7.3
- '@commitlint/lint@20.0.0':
+ '@commitlint/lint@20.2.0':
dependencies:
- '@commitlint/is-ignored': 20.0.0
- '@commitlint/parse': 20.0.0
- '@commitlint/rules': 20.0.0
- '@commitlint/types': 20.0.0
+ '@commitlint/is-ignored': 20.2.0
+ '@commitlint/parse': 20.2.0
+ '@commitlint/rules': 20.2.0
+ '@commitlint/types': 20.2.0
- '@commitlint/load@20.1.0(@types/node@24.10.1)(typescript@5.9.3)':
+ '@commitlint/load@20.2.0(@types/node@24.10.1)(typescript@5.9.3)':
dependencies:
- '@commitlint/config-validator': 20.0.0
+ '@commitlint/config-validator': 20.2.0
'@commitlint/execute-rule': 20.0.0
- '@commitlint/resolve-extends': 20.1.0
- '@commitlint/types': 20.0.0
+ '@commitlint/resolve-extends': 20.2.0
+ '@commitlint/types': 20.2.0
chalk: 5.6.2
cosmiconfig: 9.0.0(typescript@5.9.3)
cosmiconfig-typescript-loader: 6.2.0(@types/node@24.10.1)(cosmiconfig@9.0.0(typescript@5.9.3))(typescript@5.9.3)
@@ -3797,35 +2795,35 @@ snapshots:
'@commitlint/message@20.0.0': {}
- '@commitlint/parse@20.0.0':
+ '@commitlint/parse@20.2.0':
dependencies:
- '@commitlint/types': 20.0.0
+ '@commitlint/types': 20.2.0
conventional-changelog-angular: 7.0.0
conventional-commits-parser: 5.0.0
- '@commitlint/read@20.0.0':
+ '@commitlint/read@20.2.0':
dependencies:
'@commitlint/top-level': 20.0.0
- '@commitlint/types': 20.0.0
+ '@commitlint/types': 20.2.0
git-raw-commits: 4.0.0
minimist: 1.2.8
tinyexec: 1.0.2
- '@commitlint/resolve-extends@20.1.0':
+ '@commitlint/resolve-extends@20.2.0':
dependencies:
- '@commitlint/config-validator': 20.0.0
- '@commitlint/types': 20.0.0
+ '@commitlint/config-validator': 20.2.0
+ '@commitlint/types': 20.2.0
global-directory: 4.0.1
import-meta-resolve: 4.2.0
lodash.mergewith: 4.6.2
resolve-from: 5.0.0
- '@commitlint/rules@20.0.0':
+ '@commitlint/rules@20.2.0':
dependencies:
- '@commitlint/ensure': 20.0.0
+ '@commitlint/ensure': 20.2.0
'@commitlint/message': 20.0.0
'@commitlint/to-lines': 20.0.0
- '@commitlint/types': 20.0.0
+ '@commitlint/types': 20.2.0
'@commitlint/to-lines@20.0.0': {}
@@ -3833,7 +2831,7 @@ snapshots:
dependencies:
find-up: 7.0.0
- '@commitlint/types@20.0.0':
+ '@commitlint/types@20.2.0':
dependencies:
'@types/conventional-commits-parser': 5.0.2
chalk: 5.6.2
@@ -3852,176 +2850,160 @@ snapshots:
'@dprint/toml@0.6.4': {}
- '@emnapi/core@1.7.1':
- dependencies:
- '@emnapi/wasi-threads': 1.1.0
- tslib: 2.8.1
- optional: true
-
- '@emnapi/runtime@1.7.1':
- dependencies:
- tslib: 2.8.1
- optional: true
-
- '@emnapi/wasi-threads@1.1.0':
- dependencies:
- tslib: 2.8.1
- optional: true
-
'@esbuild/aix-ppc64@0.25.12':
optional: true
- '@esbuild/aix-ppc64@0.27.0':
+ '@esbuild/aix-ppc64@0.27.1':
optional: true
'@esbuild/android-arm64@0.25.12':
optional: true
- '@esbuild/android-arm64@0.27.0':
+ '@esbuild/android-arm64@0.27.1':
optional: true
'@esbuild/android-arm@0.25.12':
optional: true
- '@esbuild/android-arm@0.27.0':
+ '@esbuild/android-arm@0.27.1':
optional: true
'@esbuild/android-x64@0.25.12':
optional: true
- '@esbuild/android-x64@0.27.0':
+ '@esbuild/android-x64@0.27.1':
optional: true
'@esbuild/darwin-arm64@0.25.12':
optional: true
- '@esbuild/darwin-arm64@0.27.0':
+ '@esbuild/darwin-arm64@0.27.1':
optional: true
'@esbuild/darwin-x64@0.25.12':
optional: true
- '@esbuild/darwin-x64@0.27.0':
+ '@esbuild/darwin-x64@0.27.1':
optional: true
'@esbuild/freebsd-arm64@0.25.12':
optional: true
- '@esbuild/freebsd-arm64@0.27.0':
+ '@esbuild/freebsd-arm64@0.27.1':
optional: true
'@esbuild/freebsd-x64@0.25.12':
optional: true
- '@esbuild/freebsd-x64@0.27.0':
+ '@esbuild/freebsd-x64@0.27.1':
optional: true
'@esbuild/linux-arm64@0.25.12':
optional: true
- '@esbuild/linux-arm64@0.27.0':
+ '@esbuild/linux-arm64@0.27.1':
optional: true
'@esbuild/linux-arm@0.25.12':
optional: true
- '@esbuild/linux-arm@0.27.0':
+ '@esbuild/linux-arm@0.27.1':
optional: true
'@esbuild/linux-ia32@0.25.12':
optional: true
- '@esbuild/linux-ia32@0.27.0':
+ '@esbuild/linux-ia32@0.27.1':
optional: true
'@esbuild/linux-loong64@0.25.12':
optional: true
- '@esbuild/linux-loong64@0.27.0':
+ '@esbuild/linux-loong64@0.27.1':
optional: true
'@esbuild/linux-mips64el@0.25.12':
optional: true
- '@esbuild/linux-mips64el@0.27.0':
+ '@esbuild/linux-mips64el@0.27.1':
optional: true
'@esbuild/linux-ppc64@0.25.12':
optional: true
- '@esbuild/linux-ppc64@0.27.0':
+ '@esbuild/linux-ppc64@0.27.1':
optional: true
'@esbuild/linux-riscv64@0.25.12':
optional: true
- '@esbuild/linux-riscv64@0.27.0':
+ '@esbuild/linux-riscv64@0.27.1':
optional: true
'@esbuild/linux-s390x@0.25.12':
optional: true
- '@esbuild/linux-s390x@0.27.0':
+ '@esbuild/linux-s390x@0.27.1':
optional: true
'@esbuild/linux-x64@0.25.12':
optional: true
- '@esbuild/linux-x64@0.27.0':
+ '@esbuild/linux-x64@0.27.1':
optional: true
'@esbuild/netbsd-arm64@0.25.12':
optional: true
- '@esbuild/netbsd-arm64@0.27.0':
+ '@esbuild/netbsd-arm64@0.27.1':
optional: true
'@esbuild/netbsd-x64@0.25.12':
optional: true
- '@esbuild/netbsd-x64@0.27.0':
+ '@esbuild/netbsd-x64@0.27.1':
optional: true
'@esbuild/openbsd-arm64@0.25.12':
optional: true
- '@esbuild/openbsd-arm64@0.27.0':
+ '@esbuild/openbsd-arm64@0.27.1':
optional: true
'@esbuild/openbsd-x64@0.25.12':
optional: true
- '@esbuild/openbsd-x64@0.27.0':
+ '@esbuild/openbsd-x64@0.27.1':
optional: true
'@esbuild/openharmony-arm64@0.25.12':
optional: true
- '@esbuild/openharmony-arm64@0.27.0':
+ '@esbuild/openharmony-arm64@0.27.1':
optional: true
'@esbuild/sunos-x64@0.25.12':
optional: true
- '@esbuild/sunos-x64@0.27.0':
+ '@esbuild/sunos-x64@0.27.1':
optional: true
'@esbuild/win32-arm64@0.25.12':
optional: true
- '@esbuild/win32-arm64@0.27.0':
+ '@esbuild/win32-arm64@0.27.1':
optional: true
'@esbuild/win32-ia32@0.25.12':
optional: true
- '@esbuild/win32-ia32@0.27.0':
+ '@esbuild/win32-ia32@0.27.1':
optional: true
'@esbuild/win32-x64@0.25.12':
optional: true
- '@esbuild/win32-x64@0.27.0':
+ '@esbuild/win32-x64@0.27.1':
optional: true
'@eslint-community/eslint-utils@4.9.0(eslint@9.39.1(jiti@2.6.1))':
@@ -4047,7 +3029,7 @@ snapshots:
dependencies:
'@types/json-schema': 7.0.15
- '@eslint/eslintrc@3.3.1':
+ '@eslint/eslintrc@3.3.3':
dependencies:
ajv: 6.12.6
debug: 4.4.3
@@ -4081,7 +3063,7 @@ snapshots:
colorette: 2.0.20
commander: 13.1.0
conventional-recommended-bump: 10.0.0
- execa: 9.6.0
+ execa: 9.6.1
git-cliff: 2.10.1
js-yaml: 4.1.1
semver: 7.7.3
@@ -4102,236 +3084,11 @@ snapshots:
'@humanwhocodes/retry@0.4.3': {}
- '@isaacs/cliui@8.0.2':
- dependencies:
- string-width: 5.1.2
- string-width-cjs: string-width@4.2.3
- strip-ansi: 7.1.2
- strip-ansi-cjs: strip-ansi@6.0.1
- wrap-ansi: 8.1.0
- wrap-ansi-cjs: wrap-ansi@7.0.0
- optional: true
-
- '@istanbuljs/load-nyc-config@1.1.0':
- dependencies:
- camelcase: 5.3.1
- find-up: 4.1.0
- get-package-type: 0.1.0
- js-yaml: 3.14.2
- resolve-from: 5.0.0
- optional: true
-
- '@istanbuljs/schema@0.1.3':
- optional: true
-
- '@jest/console@30.2.0':
- dependencies:
- '@jest/types': 30.2.0
- '@types/node': 24.10.1
- chalk: 4.1.2
- jest-message-util: 30.2.0
- jest-util: 30.2.0
- slash: 3.0.0
- optional: true
-
- '@jest/core@30.2.0':
- dependencies:
- '@jest/console': 30.2.0
- '@jest/pattern': 30.0.1
- '@jest/reporters': 30.2.0
- '@jest/test-result': 30.2.0
- '@jest/transform': 30.2.0
- '@jest/types': 30.2.0
- '@types/node': 24.10.1
- ansi-escapes: 4.3.2
- chalk: 4.1.2
- ci-info: 4.3.1
- exit-x: 0.2.2
- graceful-fs: 4.2.11
- jest-changed-files: 30.2.0
- jest-config: 30.2.0(@types/node@24.10.1)
- jest-haste-map: 30.2.0
- jest-message-util: 30.2.0
- jest-regex-util: 30.0.1
- jest-resolve: 30.2.0
- jest-resolve-dependencies: 30.2.0
- jest-runner: 30.2.0
- jest-runtime: 30.2.0
- jest-snapshot: 30.2.0
- jest-util: 30.2.0
- jest-validate: 30.2.0
- jest-watcher: 30.2.0
- micromatch: 4.0.8
- pretty-format: 30.2.0
- slash: 3.0.0
- transitivePeerDependencies:
- - babel-plugin-macros
- - esbuild-register
- - supports-color
- - ts-node
- optional: true
-
- '@jest/diff-sequences@30.0.1':
- optional: true
-
- '@jest/environment@30.2.0':
- dependencies:
- '@jest/fake-timers': 30.2.0
- '@jest/types': 30.2.0
- '@types/node': 24.10.1
- jest-mock: 30.2.0
- optional: true
-
- '@jest/expect-utils@30.2.0':
- dependencies:
- '@jest/get-type': 30.1.0
- optional: true
-
- '@jest/expect@30.2.0':
- dependencies:
- expect: 30.2.0
- jest-snapshot: 30.2.0
- transitivePeerDependencies:
- - supports-color
- optional: true
-
- '@jest/fake-timers@30.2.0':
- dependencies:
- '@jest/types': 30.2.0
- '@sinonjs/fake-timers': 13.0.5
- '@types/node': 24.10.1
- jest-message-util: 30.2.0
- jest-mock: 30.2.0
- jest-util: 30.2.0
- optional: true
-
- '@jest/get-type@30.1.0':
- optional: true
-
- '@jest/globals@30.2.0':
- dependencies:
- '@jest/environment': 30.2.0
- '@jest/expect': 30.2.0
- '@jest/types': 30.2.0
- jest-mock: 30.2.0
- transitivePeerDependencies:
- - supports-color
- optional: true
-
- '@jest/pattern@30.0.1':
- dependencies:
- '@types/node': 24.10.1
- jest-regex-util: 30.0.1
- optional: true
-
- '@jest/reporters@30.2.0':
- dependencies:
- '@bcoe/v8-coverage': 0.2.3
- '@jest/console': 30.2.0
- '@jest/test-result': 30.2.0
- '@jest/transform': 30.2.0
- '@jest/types': 30.2.0
- '@jridgewell/trace-mapping': 0.3.31
- '@types/node': 24.10.1
- chalk: 4.1.2
- collect-v8-coverage: 1.0.3
- exit-x: 0.2.2
- glob: 10.5.0
- graceful-fs: 4.2.11
- istanbul-lib-coverage: 3.2.2
- istanbul-lib-instrument: 6.0.3
- istanbul-lib-report: 3.0.1
- istanbul-lib-source-maps: 5.0.6
- istanbul-reports: 3.2.0
- jest-message-util: 30.2.0
- jest-util: 30.2.0
- jest-worker: 30.2.0
- slash: 3.0.0
- string-length: 4.0.2
- v8-to-istanbul: 9.3.0
- transitivePeerDependencies:
- - supports-color
- optional: true
-
- '@jest/schemas@30.0.5':
- dependencies:
- '@sinclair/typebox': 0.34.41
- optional: true
-
- '@jest/snapshot-utils@30.2.0':
- dependencies:
- '@jest/types': 30.2.0
- chalk: 4.1.2
- graceful-fs: 4.2.11
- natural-compare: 1.4.0
- optional: true
-
- '@jest/source-map@30.0.1':
- dependencies:
- '@jridgewell/trace-mapping': 0.3.31
- callsites: 3.1.0
- graceful-fs: 4.2.11
- optional: true
-
- '@jest/test-result@30.2.0':
- dependencies:
- '@jest/console': 30.2.0
- '@jest/types': 30.2.0
- '@types/istanbul-lib-coverage': 2.0.6
- collect-v8-coverage: 1.0.3
- optional: true
-
- '@jest/test-sequencer@30.2.0':
- dependencies:
- '@jest/test-result': 30.2.0
- graceful-fs: 4.2.11
- jest-haste-map: 30.2.0
- slash: 3.0.0
- optional: true
-
- '@jest/transform@30.2.0':
- dependencies:
- '@babel/core': 7.28.5
- '@jest/types': 30.2.0
- '@jridgewell/trace-mapping': 0.3.31
- babel-plugin-istanbul: 7.0.1
- chalk: 4.1.2
- convert-source-map: 2.0.0
- fast-json-stable-stringify: 2.1.0
- graceful-fs: 4.2.11
- jest-haste-map: 30.2.0
- jest-regex-util: 30.0.1
- jest-util: 30.2.0
- micromatch: 4.0.8
- pirates: 4.0.7
- slash: 3.0.0
- write-file-atomic: 5.0.1
- transitivePeerDependencies:
- - supports-color
- optional: true
-
- '@jest/types@30.2.0':
- dependencies:
- '@jest/pattern': 30.0.1
- '@jest/schemas': 30.0.5
- '@types/istanbul-lib-coverage': 2.0.6
- '@types/istanbul-reports': 3.0.4
- '@types/node': 24.10.1
- '@types/yargs': 17.0.35
- chalk: 4.1.2
- optional: true
-
'@jridgewell/gen-mapping@0.3.13':
dependencies:
'@jridgewell/sourcemap-codec': 1.5.5
'@jridgewell/trace-mapping': 0.3.31
- '@jridgewell/remapping@2.3.5':
- dependencies:
- '@jridgewell/gen-mapping': 0.3.13
- '@jridgewell/trace-mapping': 0.3.31
- optional: true
-
'@jridgewell/resolve-uri@3.1.2': {}
'@jridgewell/sourcemap-codec@1.5.5': {}
@@ -4341,13 +3098,6 @@ snapshots:
'@jridgewell/resolve-uri': 3.1.2
'@jridgewell/sourcemap-codec': 1.5.5
- '@napi-rs/wasm-runtime@0.2.12':
- dependencies:
- '@emnapi/core': 1.7.1
- '@emnapi/runtime': 1.7.1
- '@tybys/wasm-util': 0.10.1
- optional: true
-
'@octokit/auth-token@5.1.2': {}
'@octokit/core@6.1.6':
@@ -4396,11 +3146,6 @@ snapshots:
dependencies:
'@octokit/openapi-types': 25.1.0
- '@pkgjs/parseargs@0.11.0':
- optional: true
-
- '@pkgr/core@0.1.2': {}
-
'@pkgr/core@0.2.9': {}
'@rollup/rollup-android-arm-eabi@4.53.3':
@@ -4475,24 +3220,11 @@ snapshots:
'@sec-ant/readable-stream@0.4.1': {}
- '@sinclair/typebox@0.34.41':
- optional: true
-
'@sindresorhus/merge-streams@4.0.0': {}
- '@sinonjs/commons@3.0.1':
- dependencies:
- type-detect: 4.0.8
- optional: true
-
- '@sinonjs/fake-timers@13.0.5':
- dependencies:
- '@sinonjs/commons': 3.0.1
- optional: true
-
'@standard-schema/spec@1.0.0': {}
- '@trivago/prettier-plugin-sort-imports@6.0.0(prettier@3.6.2)':
+ '@trivago/prettier-plugin-sort-imports@6.0.0(prettier@3.7.4)':
dependencies:
'@babel/generator': 7.28.5
'@babel/parser': 7.28.5
@@ -4502,40 +3234,10 @@ snapshots:
lodash-es: 4.17.21
minimatch: 9.0.5
parse-imports-exports: 0.2.4
- prettier: 3.6.2
+ prettier: 3.7.4
transitivePeerDependencies:
- supports-color
- '@tybys/wasm-util@0.10.1':
- dependencies:
- tslib: 2.8.1
- optional: true
-
- '@types/babel__core@7.20.5':
- dependencies:
- '@babel/parser': 7.28.5
- '@babel/types': 7.28.5
- '@types/babel__generator': 7.27.0
- '@types/babel__template': 7.4.4
- '@types/babel__traverse': 7.28.0
- optional: true
-
- '@types/babel__generator@7.27.0':
- dependencies:
- '@babel/types': 7.28.5
- optional: true
-
- '@types/babel__template@7.4.4':
- dependencies:
- '@babel/parser': 7.28.5
- '@babel/types': 7.28.5
- optional: true
-
- '@types/babel__traverse@7.28.0':
- dependencies:
- '@babel/types': 7.28.5
- optional: true
-
'@types/chai@5.2.3':
dependencies:
'@types/deep-eql': 4.0.2
@@ -4554,19 +3256,6 @@ snapshots:
'@types/estree@1.0.8': {}
- '@types/istanbul-lib-coverage@2.0.6':
- optional: true
-
- '@types/istanbul-lib-report@3.0.3':
- dependencies:
- '@types/istanbul-lib-coverage': 2.0.6
- optional: true
-
- '@types/istanbul-reports@3.0.4':
- dependencies:
- '@types/istanbul-lib-report': 3.0.3
- optional: true
-
'@types/json-schema@7.0.15': {}
'@types/node@24.10.1':
@@ -4575,19 +3264,8 @@ snapshots:
'@types/semver@7.7.1': {}
- '@types/stack-utils@2.0.3':
- optional: true
-
'@types/validator@13.15.10': {}
- '@types/yargs-parser@21.0.3':
- optional: true
-
- '@types/yargs@17.0.35':
- dependencies:
- '@types/yargs-parser': 21.0.3
- optional: true
-
'@typescript-eslint/eslint-plugin@8.48.1(@typescript-eslint/parser@8.48.1(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3)':
dependencies:
'@eslint-community/regexpp': 4.12.2
@@ -4680,105 +3358,43 @@ snapshots:
'@typescript-eslint/types': 8.48.1
eslint-visitor-keys: 4.2.1
- '@ungap/structured-clone@1.3.0':
- optional: true
+ '@vitest/coverage-v8@4.0.15(vitest@4.0.15(@types/node@24.10.1)(jiti@2.6.1)(yaml@2.8.2))':
+ dependencies:
+ '@bcoe/v8-coverage': 1.0.2
+ '@vitest/utils': 4.0.15
+ ast-v8-to-istanbul: 0.3.8
+ istanbul-lib-coverage: 3.2.2
+ istanbul-lib-report: 3.0.1
+ istanbul-lib-source-maps: 5.0.6
+ istanbul-reports: 3.2.0
+ magicast: 0.5.1
+ obug: 2.1.1
+ std-env: 3.10.0
+ tinyrainbow: 3.0.3
+ vitest: 4.0.15(@types/node@24.10.1)(jiti@2.6.1)(yaml@2.8.2)
+ transitivePeerDependencies:
+ - supports-color
- '@unrs/resolver-binding-android-arm-eabi@1.11.1':
- optional: true
+ '@vitest/expect@4.0.15':
+ dependencies:
+ '@standard-schema/spec': 1.0.0
+ '@types/chai': 5.2.3
+ '@vitest/spy': 4.0.15
+ '@vitest/utils': 4.0.15
+ chai: 6.2.1
+ tinyrainbow: 3.0.3
- '@unrs/resolver-binding-android-arm64@1.11.1':
- optional: true
+ '@vitest/mocker@4.0.15(vite@7.2.6(@types/node@24.10.1)(jiti@2.6.1)(yaml@2.8.2))':
+ dependencies:
+ '@vitest/spy': 4.0.15
+ estree-walker: 3.0.3
+ magic-string: 0.30.21
+ optionalDependencies:
+ vite: 7.2.6(@types/node@24.10.1)(jiti@2.6.1)(yaml@2.8.2)
- '@unrs/resolver-binding-darwin-arm64@1.11.1':
- optional: true
-
- '@unrs/resolver-binding-darwin-x64@1.11.1':
- optional: true
-
- '@unrs/resolver-binding-freebsd-x64@1.11.1':
- optional: true
-
- '@unrs/resolver-binding-linux-arm-gnueabihf@1.11.1':
- optional: true
-
- '@unrs/resolver-binding-linux-arm-musleabihf@1.11.1':
- optional: true
-
- '@unrs/resolver-binding-linux-arm64-gnu@1.11.1':
- optional: true
-
- '@unrs/resolver-binding-linux-arm64-musl@1.11.1':
- optional: true
-
- '@unrs/resolver-binding-linux-ppc64-gnu@1.11.1':
- optional: true
-
- '@unrs/resolver-binding-linux-riscv64-gnu@1.11.1':
- optional: true
-
- '@unrs/resolver-binding-linux-riscv64-musl@1.11.1':
- optional: true
-
- '@unrs/resolver-binding-linux-s390x-gnu@1.11.1':
- optional: true
-
- '@unrs/resolver-binding-linux-x64-gnu@1.11.1':
- optional: true
-
- '@unrs/resolver-binding-linux-x64-musl@1.11.1':
- optional: true
-
- '@unrs/resolver-binding-wasm32-wasi@1.11.1':
- dependencies:
- '@napi-rs/wasm-runtime': 0.2.12
- optional: true
-
- '@unrs/resolver-binding-win32-arm64-msvc@1.11.1':
- optional: true
-
- '@unrs/resolver-binding-win32-ia32-msvc@1.11.1':
- optional: true
-
- '@unrs/resolver-binding-win32-x64-msvc@1.11.1':
- optional: true
-
- '@vitest/coverage-v8@4.0.15(vitest@4.0.15(@types/node@24.10.1)(jiti@2.6.1)(yaml@2.8.1))':
- dependencies:
- '@bcoe/v8-coverage': 1.0.2
- '@vitest/utils': 4.0.15
- ast-v8-to-istanbul: 0.3.8
- istanbul-lib-coverage: 3.2.2
- istanbul-lib-report: 3.0.1
- istanbul-lib-source-maps: 5.0.6
- istanbul-reports: 3.2.0
- magicast: 0.5.1
- obug: 2.1.1
- std-env: 3.10.0
- tinyrainbow: 3.0.3
- vitest: 4.0.15(@types/node@24.10.1)(jiti@2.6.1)(yaml@2.8.1)
- transitivePeerDependencies:
- - supports-color
-
- '@vitest/expect@4.0.15':
- dependencies:
- '@standard-schema/spec': 1.0.0
- '@types/chai': 5.2.3
- '@vitest/spy': 4.0.15
- '@vitest/utils': 4.0.15
- chai: 6.2.1
- tinyrainbow: 3.0.3
-
- '@vitest/mocker@4.0.15(vite@7.2.6(@types/node@24.10.1)(jiti@2.6.1)(yaml@2.8.1))':
- dependencies:
- '@vitest/spy': 4.0.15
- estree-walker: 3.0.3
- magic-string: 0.30.21
- optionalDependencies:
- vite: 7.2.6(@types/node@24.10.1)(jiti@2.6.1)(yaml@2.8.1)
-
- '@vitest/pretty-format@4.0.15':
- dependencies:
- tinyrainbow: 3.0.3
+ '@vitest/pretty-format@4.0.15':
+ dependencies:
+ tinyrainbow: 3.0.3
'@vitest/runner@4.0.15':
dependencies:
@@ -4823,11 +3439,6 @@ snapshots:
json-schema-traverse: 1.0.0
require-from-string: 2.0.2
- ansi-escapes@4.3.2:
- dependencies:
- type-fest: 0.21.3
- optional: true
-
ansi-escapes@7.2.0:
dependencies:
environment: 1.1.0
@@ -4840,24 +3451,10 @@ snapshots:
dependencies:
color-convert: 2.0.1
- ansi-styles@5.2.0:
- optional: true
-
ansi-styles@6.2.3: {}
any-promise@1.3.0: {}
- anymatch@3.1.3:
- dependencies:
- normalize-path: 3.0.0
- picomatch: 2.3.1
- optional: true
-
- argparse@1.0.10:
- dependencies:
- sprintf-js: 1.0.3
- optional: true
-
argparse@2.0.1: {}
array-ify@1.0.0: {}
@@ -4870,68 +3467,8 @@ snapshots:
estree-walker: 3.0.3
js-tokens: 9.0.1
- babel-jest@30.2.0(@babel/core@7.28.5):
- dependencies:
- '@babel/core': 7.28.5
- '@jest/transform': 30.2.0
- '@types/babel__core': 7.20.5
- babel-plugin-istanbul: 7.0.1
- babel-preset-jest: 30.2.0(@babel/core@7.28.5)
- chalk: 4.1.2
- graceful-fs: 4.2.11
- slash: 3.0.0
- transitivePeerDependencies:
- - supports-color
- optional: true
-
- babel-plugin-istanbul@7.0.1:
- dependencies:
- '@babel/helper-plugin-utils': 7.27.1
- '@istanbuljs/load-nyc-config': 1.1.0
- '@istanbuljs/schema': 0.1.3
- istanbul-lib-instrument: 6.0.3
- test-exclude: 6.0.0
- transitivePeerDependencies:
- - supports-color
- optional: true
-
- babel-plugin-jest-hoist@30.2.0:
- dependencies:
- '@types/babel__core': 7.20.5
- optional: true
-
- babel-preset-current-node-syntax@1.2.0(@babel/core@7.28.5):
- dependencies:
- '@babel/core': 7.28.5
- '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.28.5)
- '@babel/plugin-syntax-bigint': 7.8.3(@babel/core@7.28.5)
- '@babel/plugin-syntax-class-properties': 7.12.13(@babel/core@7.28.5)
- '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.28.5)
- '@babel/plugin-syntax-import-attributes': 7.27.1(@babel/core@7.28.5)
- '@babel/plugin-syntax-import-meta': 7.10.4(@babel/core@7.28.5)
- '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.28.5)
- '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.28.5)
- '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.28.5)
- '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.28.5)
- '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.28.5)
- '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.28.5)
- '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.28.5)
- '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.28.5)
- '@babel/plugin-syntax-top-level-await': 7.14.5(@babel/core@7.28.5)
- optional: true
-
- babel-preset-jest@30.2.0(@babel/core@7.28.5):
- dependencies:
- '@babel/core': 7.28.5
- babel-plugin-jest-hoist: 30.2.0
- babel-preset-current-node-syntax: 1.2.0(@babel/core@7.28.5)
- optional: true
-
balanced-match@1.0.2: {}
- baseline-browser-mapping@2.8.29:
- optional: true
-
before-after-hook@3.0.2: {}
bottleneck@2.19.5: {}
@@ -4949,41 +3486,15 @@ snapshots:
dependencies:
fill-range: 7.1.1
- browserslist@4.28.0:
- dependencies:
- baseline-browser-mapping: 2.8.29
- caniuse-lite: 1.0.30001756
- electron-to-chromium: 1.5.257
- node-releases: 2.0.27
- update-browserslist-db: 1.1.4(browserslist@4.28.0)
- optional: true
-
- bser@2.1.1:
- dependencies:
- node-int64: 0.4.0
- optional: true
-
- buffer-from@1.1.2:
- optional: true
-
- bundle-require@5.1.0(esbuild@0.27.0):
+ bundle-require@5.1.0(esbuild@0.27.1):
dependencies:
- esbuild: 0.27.0
+ esbuild: 0.27.1
load-tsconfig: 0.2.5
cac@6.7.14: {}
callsites@3.1.0: {}
- camelcase@5.3.1:
- optional: true
-
- camelcase@6.3.0:
- optional: true
-
- caniuse-lite@1.0.30001756:
- optional: true
-
chai@6.2.1: {}
chalk@4.1.2:
@@ -4993,25 +3504,16 @@ snapshots:
chalk@5.6.2: {}
- char-regex@1.0.2:
- optional: true
-
chokidar@4.0.3:
dependencies:
readdirp: 4.1.2
- ci-info@4.3.1:
- optional: true
-
- cjs-module-lexer@2.1.1:
- optional: true
-
class-transformer@0.5.1: {}
- class-validator@0.14.2:
+ class-validator@0.14.3:
dependencies:
'@types/validator': 13.15.10
- libphonenumber-js: 1.12.27
+ libphonenumber-js: 1.12.31
validator: 13.15.23
cli-cursor@5.0.0:
@@ -5029,12 +3531,6 @@ snapshots:
strip-ansi: 6.0.1
wrap-ansi: 7.0.0
- co@4.6.0:
- optional: true
-
- collect-v8-coverage@1.0.3:
- optional: true
-
color-convert@2.0.1:
dependencies:
color-name: 1.1.4
@@ -5091,9 +3587,6 @@ snapshots:
conventional-commits-parser: 6.2.1
meow: 13.2.0
- convert-source-map@2.0.0:
- optional: true
-
cosmiconfig-typescript-loader@6.2.0(@types/node@24.10.1)(cosmiconfig@9.0.0(typescript@5.9.3))(typescript@5.9.3):
dependencies:
'@types/node': 24.10.1
@@ -5105,7 +3598,7 @@ snapshots:
dependencies:
env-paths: 2.2.1
import-fresh: 3.3.1
- js-yaml: 4.1.0
+ js-yaml: 4.1.1
parse-json: 5.2.0
optionalDependencies:
typescript: 5.9.3
@@ -5122,37 +3615,16 @@ snapshots:
dependencies:
ms: 2.1.3
- dedent@1.7.0:
- optional: true
-
deep-is@0.1.4: {}
- deepmerge@4.3.1:
- optional: true
-
- detect-newline@3.1.0:
- optional: true
-
dot-prop@5.3.0:
dependencies:
is-obj: 2.0.0
- eastasianwidth@0.2.0:
- optional: true
-
- electron-to-chromium@1.5.257:
- optional: true
-
- emittery@0.13.1:
- optional: true
-
emoji-regex@10.6.0: {}
emoji-regex@8.0.0: {}
- emoji-regex@9.2.2:
- optional: true
-
env-paths@2.2.1: {}
environment@1.1.0: {}
@@ -5192,40 +3664,37 @@ snapshots:
'@esbuild/win32-ia32': 0.25.12
'@esbuild/win32-x64': 0.25.12
- esbuild@0.27.0:
+ esbuild@0.27.1:
optionalDependencies:
- '@esbuild/aix-ppc64': 0.27.0
- '@esbuild/android-arm': 0.27.0
- '@esbuild/android-arm64': 0.27.0
- '@esbuild/android-x64': 0.27.0
- '@esbuild/darwin-arm64': 0.27.0
- '@esbuild/darwin-x64': 0.27.0
- '@esbuild/freebsd-arm64': 0.27.0
- '@esbuild/freebsd-x64': 0.27.0
- '@esbuild/linux-arm': 0.27.0
- '@esbuild/linux-arm64': 0.27.0
- '@esbuild/linux-ia32': 0.27.0
- '@esbuild/linux-loong64': 0.27.0
- '@esbuild/linux-mips64el': 0.27.0
- '@esbuild/linux-ppc64': 0.27.0
- '@esbuild/linux-riscv64': 0.27.0
- '@esbuild/linux-s390x': 0.27.0
- '@esbuild/linux-x64': 0.27.0
- '@esbuild/netbsd-arm64': 0.27.0
- '@esbuild/netbsd-x64': 0.27.0
- '@esbuild/openbsd-arm64': 0.27.0
- '@esbuild/openbsd-x64': 0.27.0
- '@esbuild/openharmony-arm64': 0.27.0
- '@esbuild/sunos-x64': 0.27.0
- '@esbuild/win32-arm64': 0.27.0
- '@esbuild/win32-ia32': 0.27.0
- '@esbuild/win32-x64': 0.27.0
+ '@esbuild/aix-ppc64': 0.27.1
+ '@esbuild/android-arm': 0.27.1
+ '@esbuild/android-arm64': 0.27.1
+ '@esbuild/android-x64': 0.27.1
+ '@esbuild/darwin-arm64': 0.27.1
+ '@esbuild/darwin-x64': 0.27.1
+ '@esbuild/freebsd-arm64': 0.27.1
+ '@esbuild/freebsd-x64': 0.27.1
+ '@esbuild/linux-arm': 0.27.1
+ '@esbuild/linux-arm64': 0.27.1
+ '@esbuild/linux-ia32': 0.27.1
+ '@esbuild/linux-loong64': 0.27.1
+ '@esbuild/linux-mips64el': 0.27.1
+ '@esbuild/linux-ppc64': 0.27.1
+ '@esbuild/linux-riscv64': 0.27.1
+ '@esbuild/linux-s390x': 0.27.1
+ '@esbuild/linux-x64': 0.27.1
+ '@esbuild/netbsd-arm64': 0.27.1
+ '@esbuild/netbsd-x64': 0.27.1
+ '@esbuild/openbsd-arm64': 0.27.1
+ '@esbuild/openbsd-x64': 0.27.1
+ '@esbuild/openharmony-arm64': 0.27.1
+ '@esbuild/sunos-x64': 0.27.1
+ '@esbuild/win32-arm64': 0.27.1
+ '@esbuild/win32-ia32': 0.27.1
+ '@esbuild/win32-x64': 0.27.1
escalade@3.2.0: {}
- escape-string-regexp@2.0.0:
- optional: true
-
escape-string-regexp@4.0.0: {}
eslint-config-prettier@10.1.8(eslint@9.39.1(jiti@2.6.1)):
@@ -5250,7 +3719,7 @@ snapshots:
eslint-parser-plain@0.1.1: {}
- eslint-plugin-format@1.0.2(eslint@9.39.1(jiti@2.6.1)):
+ eslint-plugin-format@1.1.0(eslint@9.39.1(jiti@2.6.1)):
dependencies:
'@dprint/formatter': 0.3.0
'@dprint/markdown': 0.17.8
@@ -5258,24 +3727,23 @@ snapshots:
eslint: 9.39.1(jiti@2.6.1)
eslint-formatting-reporter: 0.0.0(eslint@9.39.1(jiti@2.6.1))
eslint-parser-plain: 0.1.1
- prettier: 3.6.2
- synckit: 0.9.3
+ prettier: 3.7.4
+ synckit: 0.11.11
- eslint-plugin-jest@29.2.1(@typescript-eslint/eslint-plugin@8.48.1(@typescript-eslint/parser@8.48.1(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.1(jiti@2.6.1))(jest@30.2.0(@types/node@24.10.1))(typescript@5.9.3):
+ eslint-plugin-jest@29.2.1(@typescript-eslint/eslint-plugin@8.48.1(@typescript-eslint/parser@8.48.1(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3):
dependencies:
'@typescript-eslint/utils': 8.48.1(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3)
eslint: 9.39.1(jiti@2.6.1)
optionalDependencies:
'@typescript-eslint/eslint-plugin': 8.48.1(@typescript-eslint/parser@8.48.1(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3)
- jest: 30.2.0(@types/node@24.10.1)
transitivePeerDependencies:
- supports-color
- typescript
- eslint-plugin-prettier@5.5.4(@types/eslint@9.6.1)(eslint-config-prettier@10.1.8(eslint@9.39.1(jiti@2.6.1)))(eslint@9.39.1(jiti@2.6.1))(prettier@3.6.2):
+ eslint-plugin-prettier@5.5.4(@types/eslint@9.6.1)(eslint-config-prettier@10.1.8(eslint@9.39.1(jiti@2.6.1)))(eslint@9.39.1(jiti@2.6.1))(prettier@3.7.4):
dependencies:
eslint: 9.39.1(jiti@2.6.1)
- prettier: 3.6.2
+ prettier: 3.7.4
prettier-linter-helpers: 1.0.0
synckit: 0.11.11
optionalDependencies:
@@ -5300,7 +3768,7 @@ snapshots:
'@eslint/config-array': 0.21.1
'@eslint/config-helpers': 0.4.2
'@eslint/core': 0.17.0
- '@eslint/eslintrc': 3.3.1
+ '@eslint/eslintrc': 3.3.3
'@eslint/js': 9.39.1
'@eslint/plugin-kit': 0.4.1
'@humanfs/node': 0.16.7
@@ -5340,9 +3808,6 @@ snapshots:
acorn-jsx: 5.3.2(acorn@8.15.0)
eslint-visitor-keys: 4.2.1
- esprima@4.0.1:
- optional: true
-
esquery@1.6.0:
dependencies:
estraverse: 5.3.0
@@ -5361,20 +3826,7 @@ snapshots:
eventemitter3@5.0.1: {}
- execa@5.1.1:
- dependencies:
- cross-spawn: 7.0.6
- get-stream: 6.0.1
- human-signals: 2.1.0
- is-stream: 2.0.1
- merge-stream: 2.0.0
- npm-run-path: 4.0.1
- onetime: 5.1.2
- signal-exit: 3.0.7
- strip-final-newline: 2.0.0
- optional: true
-
- execa@9.6.0:
+ execa@9.6.1:
dependencies:
'@sindresorhus/merge-streams': 4.0.0
cross-spawn: 7.0.6
@@ -5389,21 +3841,8 @@ snapshots:
strip-final-newline: 4.0.0
yoctocolors: 2.1.2
- exit-x@0.2.2:
- optional: true
-
expect-type@1.2.2: {}
- expect@30.2.0:
- dependencies:
- '@jest/expect-utils': 30.2.0
- '@jest/get-type': 30.1.0
- jest-matcher-utils: 30.2.0
- jest-message-util: 30.2.0
- jest-mock: 30.2.0
- jest-util: 30.2.0
- optional: true
-
fast-content-type-parse@2.0.1: {}
fast-deep-equal@3.1.3: {}
@@ -5416,11 +3855,6 @@ snapshots:
fast-uri@3.1.0: {}
- fb-watchman@2.0.2:
- dependencies:
- bser: 2.1.1
- optional: true
-
fdir@6.5.0(picomatch@4.0.3):
optionalDependencies:
picomatch: 4.0.3
@@ -5437,12 +3871,6 @@ snapshots:
dependencies:
to-regex-range: 5.0.1
- find-up@4.1.0:
- dependencies:
- locate-path: 5.0.0
- path-exists: 4.0.0
- optional: true
-
find-up@5.0.0:
dependencies:
locate-path: 6.0.0
@@ -5467,31 +3895,13 @@ snapshots:
flatted@3.3.3: {}
- foreground-child@3.3.1:
- dependencies:
- cross-spawn: 7.0.6
- signal-exit: 4.1.0
- optional: true
-
- fs.realpath@1.0.0:
- optional: true
-
fsevents@2.3.3:
optional: true
- gensync@1.0.0-beta.2:
- optional: true
-
get-caller-file@2.0.5: {}
get-east-asian-width@1.4.0: {}
- get-package-type@0.1.0:
- optional: true
-
- get-stream@6.0.1:
- optional: true
-
get-stream@9.0.1:
dependencies:
'@sec-ant/readable-stream': 0.4.1
@@ -5517,7 +3927,7 @@ snapshots:
git-cliff@2.10.1:
dependencies:
- execa: 9.6.0
+ execa: 9.6.1
optionalDependencies:
git-cliff-darwin-arm64: 2.10.1
git-cliff-darwin-x64: 2.10.1
@@ -5536,26 +3946,6 @@ snapshots:
dependencies:
is-glob: 4.0.3
- glob@10.5.0:
- dependencies:
- foreground-child: 3.3.1
- jackspeak: 3.4.3
- minimatch: 9.0.5
- minipass: 7.1.2
- package-json-from-dist: 1.0.1
- path-scurry: 1.11.1
- optional: true
-
- glob@7.2.3:
- dependencies:
- fs.realpath: 1.0.0
- inflight: 1.0.6
- inherits: 2.0.4
- minimatch: 3.1.2
- once: 1.4.0
- path-is-absolute: 1.0.1
- optional: true
-
global-directory@4.0.1:
dependencies:
ini: 4.1.1
@@ -5564,9 +3954,6 @@ snapshots:
globals@16.5.0: {}
- graceful-fs@4.2.11:
- optional: true
-
graphemer@1.4.0: {}
has-flag@4.0.0: {}
@@ -5575,457 +3962,79 @@ snapshots:
html-escaper@2.0.2: {}
- human-signals@2.1.0:
- optional: true
-
human-signals@8.0.1: {}
husky@9.1.7: {}
ignore@5.3.2: {}
- ignore@7.0.5: {}
-
- import-fresh@3.3.1:
- dependencies:
- parent-module: 1.0.1
- resolve-from: 4.0.0
-
- import-local@3.2.0:
- dependencies:
- pkg-dir: 4.2.0
- resolve-cwd: 3.0.0
- optional: true
-
- import-meta-resolve@4.2.0: {}
-
- imurmurhash@0.1.4: {}
-
- inflight@1.0.6:
- dependencies:
- once: 1.4.0
- wrappy: 1.0.2
- optional: true
-
- inherits@2.0.4:
- optional: true
-
- ini@4.1.1: {}
-
- irregular-plurals@3.5.0: {}
-
- is-arrayish@0.2.1: {}
-
- is-extglob@2.1.1: {}
-
- is-fullwidth-code-point@3.0.0: {}
-
- is-fullwidth-code-point@5.1.0:
- dependencies:
- get-east-asian-width: 1.4.0
-
- is-generator-fn@2.1.0:
- optional: true
-
- is-glob@4.0.3:
- dependencies:
- is-extglob: 2.1.1
-
- is-number@7.0.0: {}
-
- is-obj@2.0.0: {}
-
- is-plain-obj@4.1.0: {}
-
- is-stream@2.0.1:
- optional: true
-
- is-stream@4.0.1: {}
-
- is-text-path@2.0.0:
- dependencies:
- text-extensions: 2.4.0
-
- is-unicode-supported@2.1.0: {}
-
- isexe@2.0.0: {}
-
- istanbul-lib-coverage@3.2.2: {}
-
- istanbul-lib-instrument@6.0.3:
- dependencies:
- '@babel/core': 7.28.5
- '@babel/parser': 7.28.5
- '@istanbuljs/schema': 0.1.3
- istanbul-lib-coverage: 3.2.2
- semver: 7.7.3
- transitivePeerDependencies:
- - supports-color
- optional: true
-
- istanbul-lib-report@3.0.1:
- dependencies:
- istanbul-lib-coverage: 3.2.2
- make-dir: 4.0.0
- supports-color: 7.2.0
-
- istanbul-lib-source-maps@5.0.6:
- dependencies:
- '@jridgewell/trace-mapping': 0.3.31
- debug: 4.4.3
- istanbul-lib-coverage: 3.2.2
- transitivePeerDependencies:
- - supports-color
-
- istanbul-reports@3.2.0:
- dependencies:
- html-escaper: 2.0.2
- istanbul-lib-report: 3.0.1
-
- jackspeak@3.4.3:
- dependencies:
- '@isaacs/cliui': 8.0.2
- optionalDependencies:
- '@pkgjs/parseargs': 0.11.0
- optional: true
-
- javascript-natural-sort@0.7.1: {}
-
- jest-changed-files@30.2.0:
- dependencies:
- execa: 5.1.1
- jest-util: 30.2.0
- p-limit: 3.1.0
- optional: true
-
- jest-circus@30.2.0:
- dependencies:
- '@jest/environment': 30.2.0
- '@jest/expect': 30.2.0
- '@jest/test-result': 30.2.0
- '@jest/types': 30.2.0
- '@types/node': 24.10.1
- chalk: 4.1.2
- co: 4.6.0
- dedent: 1.7.0
- is-generator-fn: 2.1.0
- jest-each: 30.2.0
- jest-matcher-utils: 30.2.0
- jest-message-util: 30.2.0
- jest-runtime: 30.2.0
- jest-snapshot: 30.2.0
- jest-util: 30.2.0
- p-limit: 3.1.0
- pretty-format: 30.2.0
- pure-rand: 7.0.1
- slash: 3.0.0
- stack-utils: 2.0.6
- transitivePeerDependencies:
- - babel-plugin-macros
- - supports-color
- optional: true
-
- jest-cli@30.2.0(@types/node@24.10.1):
- dependencies:
- '@jest/core': 30.2.0
- '@jest/test-result': 30.2.0
- '@jest/types': 30.2.0
- chalk: 4.1.2
- exit-x: 0.2.2
- import-local: 3.2.0
- jest-config: 30.2.0(@types/node@24.10.1)
- jest-util: 30.2.0
- jest-validate: 30.2.0
- yargs: 17.7.2
- transitivePeerDependencies:
- - '@types/node'
- - babel-plugin-macros
- - esbuild-register
- - supports-color
- - ts-node
- optional: true
-
- jest-config@30.2.0(@types/node@24.10.1):
- dependencies:
- '@babel/core': 7.28.5
- '@jest/get-type': 30.1.0
- '@jest/pattern': 30.0.1
- '@jest/test-sequencer': 30.2.0
- '@jest/types': 30.2.0
- babel-jest: 30.2.0(@babel/core@7.28.5)
- chalk: 4.1.2
- ci-info: 4.3.1
- deepmerge: 4.3.1
- glob: 10.5.0
- graceful-fs: 4.2.11
- jest-circus: 30.2.0
- jest-docblock: 30.2.0
- jest-environment-node: 30.2.0
- jest-regex-util: 30.0.1
- jest-resolve: 30.2.0
- jest-runner: 30.2.0
- jest-util: 30.2.0
- jest-validate: 30.2.0
- micromatch: 4.0.8
- parse-json: 5.2.0
- pretty-format: 30.2.0
- slash: 3.0.0
- strip-json-comments: 3.1.1
- optionalDependencies:
- '@types/node': 24.10.1
- transitivePeerDependencies:
- - babel-plugin-macros
- - supports-color
- optional: true
-
- jest-diff@30.2.0:
- dependencies:
- '@jest/diff-sequences': 30.0.1
- '@jest/get-type': 30.1.0
- chalk: 4.1.2
- pretty-format: 30.2.0
- optional: true
-
- jest-docblock@30.2.0:
- dependencies:
- detect-newline: 3.1.0
- optional: true
-
- jest-each@30.2.0:
- dependencies:
- '@jest/get-type': 30.1.0
- '@jest/types': 30.2.0
- chalk: 4.1.2
- jest-util: 30.2.0
- pretty-format: 30.2.0
- optional: true
-
- jest-environment-node@30.2.0:
- dependencies:
- '@jest/environment': 30.2.0
- '@jest/fake-timers': 30.2.0
- '@jest/types': 30.2.0
- '@types/node': 24.10.1
- jest-mock: 30.2.0
- jest-util: 30.2.0
- jest-validate: 30.2.0
- optional: true
+ ignore@7.0.5: {}
- jest-haste-map@30.2.0:
+ import-fresh@3.3.1:
dependencies:
- '@jest/types': 30.2.0
- '@types/node': 24.10.1
- anymatch: 3.1.3
- fb-watchman: 2.0.2
- graceful-fs: 4.2.11
- jest-regex-util: 30.0.1
- jest-util: 30.2.0
- jest-worker: 30.2.0
- micromatch: 4.0.8
- walker: 1.0.8
- optionalDependencies:
- fsevents: 2.3.3
- optional: true
+ parent-module: 1.0.1
+ resolve-from: 4.0.0
- jest-leak-detector@30.2.0:
- dependencies:
- '@jest/get-type': 30.1.0
- pretty-format: 30.2.0
- optional: true
+ import-meta-resolve@4.2.0: {}
- jest-matcher-utils@30.2.0:
- dependencies:
- '@jest/get-type': 30.1.0
- chalk: 4.1.2
- jest-diff: 30.2.0
- pretty-format: 30.2.0
- optional: true
+ imurmurhash@0.1.4: {}
- jest-message-util@30.2.0:
- dependencies:
- '@babel/code-frame': 7.27.1
- '@jest/types': 30.2.0
- '@types/stack-utils': 2.0.3
- chalk: 4.1.2
- graceful-fs: 4.2.11
- micromatch: 4.0.8
- pretty-format: 30.2.0
- slash: 3.0.0
- stack-utils: 2.0.6
- optional: true
+ ini@4.1.1: {}
- jest-mock@30.2.0:
- dependencies:
- '@jest/types': 30.2.0
- '@types/node': 24.10.1
- jest-util: 30.2.0
- optional: true
+ irregular-plurals@3.5.0: {}
- jest-pnp-resolver@1.2.3(jest-resolve@30.2.0):
- optionalDependencies:
- jest-resolve: 30.2.0
- optional: true
+ is-arrayish@0.2.1: {}
- jest-regex-util@30.0.1:
- optional: true
+ is-extglob@2.1.1: {}
- jest-resolve-dependencies@30.2.0:
- dependencies:
- jest-regex-util: 30.0.1
- jest-snapshot: 30.2.0
- transitivePeerDependencies:
- - supports-color
- optional: true
+ is-fullwidth-code-point@3.0.0: {}
- jest-resolve@30.2.0:
+ is-fullwidth-code-point@5.1.0:
dependencies:
- chalk: 4.1.2
- graceful-fs: 4.2.11
- jest-haste-map: 30.2.0
- jest-pnp-resolver: 1.2.3(jest-resolve@30.2.0)
- jest-util: 30.2.0
- jest-validate: 30.2.0
- slash: 3.0.0
- unrs-resolver: 1.11.1
- optional: true
+ get-east-asian-width: 1.4.0
- jest-runner@30.2.0:
+ is-glob@4.0.3:
dependencies:
- '@jest/console': 30.2.0
- '@jest/environment': 30.2.0
- '@jest/test-result': 30.2.0
- '@jest/transform': 30.2.0
- '@jest/types': 30.2.0
- '@types/node': 24.10.1
- chalk: 4.1.2
- emittery: 0.13.1
- exit-x: 0.2.2
- graceful-fs: 4.2.11
- jest-docblock: 30.2.0
- jest-environment-node: 30.2.0
- jest-haste-map: 30.2.0
- jest-leak-detector: 30.2.0
- jest-message-util: 30.2.0
- jest-resolve: 30.2.0
- jest-runtime: 30.2.0
- jest-util: 30.2.0
- jest-watcher: 30.2.0
- jest-worker: 30.2.0
- p-limit: 3.1.0
- source-map-support: 0.5.13
- transitivePeerDependencies:
- - supports-color
- optional: true
+ is-extglob: 2.1.1
- jest-runtime@30.2.0:
- dependencies:
- '@jest/environment': 30.2.0
- '@jest/fake-timers': 30.2.0
- '@jest/globals': 30.2.0
- '@jest/source-map': 30.0.1
- '@jest/test-result': 30.2.0
- '@jest/transform': 30.2.0
- '@jest/types': 30.2.0
- '@types/node': 24.10.1
- chalk: 4.1.2
- cjs-module-lexer: 2.1.1
- collect-v8-coverage: 1.0.3
- glob: 10.5.0
- graceful-fs: 4.2.11
- jest-haste-map: 30.2.0
- jest-message-util: 30.2.0
- jest-mock: 30.2.0
- jest-regex-util: 30.0.1
- jest-resolve: 30.2.0
- jest-snapshot: 30.2.0
- jest-util: 30.2.0
- slash: 3.0.0
- strip-bom: 4.0.0
- transitivePeerDependencies:
- - supports-color
- optional: true
+ is-number@7.0.0: {}
- jest-snapshot@30.2.0:
- dependencies:
- '@babel/core': 7.28.5
- '@babel/generator': 7.28.5
- '@babel/plugin-syntax-jsx': 7.27.1(@babel/core@7.28.5)
- '@babel/plugin-syntax-typescript': 7.27.1(@babel/core@7.28.5)
- '@babel/types': 7.28.5
- '@jest/expect-utils': 30.2.0
- '@jest/get-type': 30.1.0
- '@jest/snapshot-utils': 30.2.0
- '@jest/transform': 30.2.0
- '@jest/types': 30.2.0
- babel-preset-current-node-syntax: 1.2.0(@babel/core@7.28.5)
- chalk: 4.1.2
- expect: 30.2.0
- graceful-fs: 4.2.11
- jest-diff: 30.2.0
- jest-matcher-utils: 30.2.0
- jest-message-util: 30.2.0
- jest-util: 30.2.0
- pretty-format: 30.2.0
- semver: 7.7.3
- synckit: 0.11.11
- transitivePeerDependencies:
- - supports-color
- optional: true
+ is-obj@2.0.0: {}
- jest-util@30.2.0:
- dependencies:
- '@jest/types': 30.2.0
- '@types/node': 24.10.1
- chalk: 4.1.2
- ci-info: 4.3.1
- graceful-fs: 4.2.11
- picomatch: 4.0.3
- optional: true
+ is-plain-obj@4.1.0: {}
- jest-validate@30.2.0:
- dependencies:
- '@jest/get-type': 30.1.0
- '@jest/types': 30.2.0
- camelcase: 6.3.0
- chalk: 4.1.2
- leven: 3.1.0
- pretty-format: 30.2.0
- optional: true
+ is-stream@4.0.1: {}
- jest-watcher@30.2.0:
+ is-text-path@2.0.0:
dependencies:
- '@jest/test-result': 30.2.0
- '@jest/types': 30.2.0
- '@types/node': 24.10.1
- ansi-escapes: 4.3.2
- chalk: 4.1.2
- emittery: 0.13.1
- jest-util: 30.2.0
- string-length: 4.0.2
- optional: true
+ text-extensions: 2.4.0
+
+ is-unicode-supported@2.1.0: {}
+
+ isexe@2.0.0: {}
+
+ istanbul-lib-coverage@3.2.2: {}
- jest-worker@30.2.0:
+ istanbul-lib-report@3.0.1:
dependencies:
- '@types/node': 24.10.1
- '@ungap/structured-clone': 1.3.0
- jest-util: 30.2.0
- merge-stream: 2.0.0
- supports-color: 8.1.1
- optional: true
+ istanbul-lib-coverage: 3.2.2
+ make-dir: 4.0.0
+ supports-color: 7.2.0
- jest@30.2.0(@types/node@24.10.1):
+ istanbul-lib-source-maps@5.0.6:
dependencies:
- '@jest/core': 30.2.0
- '@jest/types': 30.2.0
- import-local: 3.2.0
- jest-cli: 30.2.0(@types/node@24.10.1)
+ '@jridgewell/trace-mapping': 0.3.31
+ debug: 4.4.3
+ istanbul-lib-coverage: 3.2.2
transitivePeerDependencies:
- - '@types/node'
- - babel-plugin-macros
- - esbuild-register
- supports-color
- - ts-node
- optional: true
+
+ istanbul-reports@3.2.0:
+ dependencies:
+ html-escaper: 2.0.2
+ istanbul-lib-report: 3.0.1
+
+ javascript-natural-sort@0.7.1: {}
jiti@2.6.1: {}
@@ -6035,16 +4044,6 @@ snapshots:
js-tokens@9.0.1: {}
- js-yaml@3.14.2:
- dependencies:
- argparse: 1.0.10
- esprima: 4.0.1
- optional: true
-
- js-yaml@4.1.0:
- dependencies:
- argparse: 2.0.1
-
js-yaml@4.1.1:
dependencies:
argparse: 2.0.1
@@ -6061,9 +4060,6 @@ snapshots:
json-stable-stringify-without-jsonify@1.0.1: {}
- json5@2.2.3:
- optional: true
-
jsonparse@1.3.1: {}
keyv@4.5.4:
@@ -6072,15 +4068,12 @@ snapshots:
konva@10.0.12: {}
- leven@3.1.0:
- optional: true
-
levn@0.4.1:
dependencies:
prelude-ls: 1.2.1
type-check: 0.4.0
- libphonenumber-js@1.12.27: {}
+ libphonenumber-js@1.12.31: {}
lilconfig@3.1.3: {}
@@ -6094,7 +4087,7 @@ snapshots:
nano-spawn: 2.0.0
pidtree: 0.6.0
string-argv: 0.3.2
- yaml: 2.8.1
+ yaml: 2.8.2
listr2@9.0.5:
dependencies:
@@ -6107,11 +4100,6 @@ snapshots:
load-tsconfig@0.2.5: {}
- locate-path@5.0.0:
- dependencies:
- p-locate: 4.1.0
- optional: true
-
locate-path@6.0.0:
dependencies:
p-locate: 5.0.0
@@ -6153,14 +4141,6 @@ snapshots:
strip-ansi: 7.1.2
wrap-ansi: 9.0.2
- lru-cache@10.4.3:
- optional: true
-
- lru-cache@5.1.1:
- dependencies:
- yallist: 3.1.1
- optional: true
-
magic-string@0.30.21:
dependencies:
'@jridgewell/sourcemap-codec': 1.5.5
@@ -6175,26 +4155,15 @@ snapshots:
dependencies:
semver: 7.7.3
- makeerror@1.0.12:
- dependencies:
- tmpl: 1.0.5
- optional: true
-
meow@12.1.1: {}
meow@13.2.0: {}
- merge-stream@2.0.0:
- optional: true
-
micromatch@4.0.8:
dependencies:
braces: 3.0.3
picomatch: 2.3.1
- mimic-fn@2.1.0:
- optional: true
-
mimic-function@5.0.1: {}
minimatch@3.1.2:
@@ -6207,9 +4176,6 @@ snapshots:
minimist@1.2.8: {}
- minipass@7.1.2:
- optional: true
-
mlly@1.8.0:
dependencies:
acorn: 8.15.0
@@ -6229,25 +4195,8 @@ snapshots:
nanoid@3.3.11: {}
- napi-postinstall@0.3.4:
- optional: true
-
natural-compare@1.4.0: {}
- node-int64@0.4.0:
- optional: true
-
- node-releases@2.0.27:
- optional: true
-
- normalize-path@3.0.0:
- optional: true
-
- npm-run-path@4.0.1:
- dependencies:
- path-key: 3.1.1
- optional: true
-
npm-run-path@6.0.0:
dependencies:
path-key: 4.0.0
@@ -6257,16 +4206,6 @@ snapshots:
obug@2.1.1: {}
- once@1.4.0:
- dependencies:
- wrappy: 1.0.2
- optional: true
-
- onetime@5.1.2:
- dependencies:
- mimic-fn: 2.1.0
- optional: true
-
onetime@7.0.0:
dependencies:
mimic-function: 5.0.1
@@ -6280,11 +4219,6 @@ snapshots:
type-check: 0.4.0
word-wrap: 1.2.5
- p-limit@2.3.0:
- dependencies:
- p-try: 2.2.0
- optional: true
-
p-limit@3.1.0:
dependencies:
yocto-queue: 0.1.0
@@ -6293,11 +4227,6 @@ snapshots:
dependencies:
yocto-queue: 1.2.2
- p-locate@4.1.0:
- dependencies:
- p-limit: 2.3.0
- optional: true
-
p-locate@5.0.0:
dependencies:
p-limit: 3.1.0
@@ -6306,12 +4235,6 @@ snapshots:
dependencies:
p-limit: 4.0.0
- p-try@2.2.0:
- optional: true
-
- package-json-from-dist@1.0.1:
- optional: true
-
parent-module@1.0.1:
dependencies:
callsites: 3.1.0
@@ -6335,19 +4258,10 @@ snapshots:
path-exists@5.0.0: {}
- path-is-absolute@1.0.1:
- optional: true
-
path-key@3.1.1: {}
path-key@4.0.0: {}
- path-scurry@1.11.1:
- dependencies:
- lru-cache: 10.4.3
- minipass: 7.1.2
- optional: true
-
pathe@2.0.3: {}
picocolors@1.1.1: {}
@@ -6360,11 +4274,6 @@ snapshots:
pirates@4.0.7: {}
- pkg-dir@4.2.0:
- dependencies:
- find-up: 4.1.0
- optional: true
-
pkg-types@1.3.1:
dependencies:
confbox: 0.1.8
@@ -6375,13 +4284,13 @@ snapshots:
dependencies:
irregular-plurals: 3.5.0
- postcss-load-config@6.0.1(jiti@2.6.1)(postcss@8.5.6)(yaml@2.8.1):
+ postcss-load-config@6.0.1(jiti@2.6.1)(postcss@8.5.6)(yaml@2.8.2):
dependencies:
lilconfig: 3.1.3
optionalDependencies:
jiti: 2.6.1
postcss: 8.5.6
- yaml: 2.8.1
+ yaml: 2.8.2
postcss@8.5.6:
dependencies:
@@ -6395,14 +4304,7 @@ snapshots:
dependencies:
fast-diff: 1.3.0
- prettier@3.6.2: {}
-
- pretty-format@30.2.0:
- dependencies:
- '@jest/schemas': 30.0.5
- ansi-styles: 5.2.0
- react-is: 18.3.1
- optional: true
+ prettier@3.7.4: {}
pretty-ms@9.3.0:
dependencies:
@@ -6410,23 +4312,12 @@ snapshots:
punycode@2.3.1: {}
- pure-rand@7.0.1:
- optional: true
-
- react-is@18.3.1:
- optional: true
-
readdirp@4.1.2: {}
require-directory@2.1.1: {}
require-from-string@2.0.2: {}
- resolve-cwd@3.0.0:
- dependencies:
- resolve-from: 5.0.0
- optional: true
-
resolve-from@4.0.0: {}
resolve-from@5.0.0: {}
@@ -6466,9 +4357,6 @@ snapshots:
'@rollup/rollup-win32-x64-msvc': 4.53.3
fsevents: 2.3.3
- semver@6.3.1:
- optional: true
-
semver@7.7.3: {}
shebang-command@2.0.0:
@@ -6479,14 +4367,8 @@ snapshots:
siginfo@2.0.0: {}
- signal-exit@3.0.7:
- optional: true
-
signal-exit@4.1.0: {}
- slash@3.0.0:
- optional: true
-
slice-ansi@7.1.2:
dependencies:
ansi-styles: 6.2.3
@@ -6496,52 +4378,22 @@ snapshots:
source-map-js@1.2.1: {}
- source-map-support@0.5.13:
- dependencies:
- buffer-from: 1.1.2
- source-map: 0.6.1
- optional: true
-
- source-map@0.6.1:
- optional: true
-
source-map@0.7.6: {}
split2@4.2.0: {}
- sprintf-js@1.0.3:
- optional: true
-
- stack-utils@2.0.6:
- dependencies:
- escape-string-regexp: 2.0.0
- optional: true
-
stackback@0.0.2: {}
std-env@3.10.0: {}
string-argv@0.3.2: {}
- string-length@4.0.2:
- dependencies:
- char-regex: 1.0.2
- strip-ansi: 6.0.1
- optional: true
-
string-width@4.2.3:
dependencies:
emoji-regex: 8.0.0
is-fullwidth-code-point: 3.0.0
strip-ansi: 6.0.1
- string-width@5.1.2:
- dependencies:
- eastasianwidth: 0.2.0
- emoji-regex: 9.2.2
- strip-ansi: 7.1.2
- optional: true
-
string-width@7.2.0:
dependencies:
emoji-regex: 10.6.0
@@ -6561,12 +4413,6 @@ snapshots:
dependencies:
ansi-regex: 6.2.2
- strip-bom@4.0.0:
- optional: true
-
- strip-final-newline@2.0.0:
- optional: true
-
strip-final-newline@4.0.0: {}
strip-json-comments@3.1.1: {}
@@ -6587,11 +4433,6 @@ snapshots:
dependencies:
has-flag: 4.0.0
- supports-color@8.1.1:
- dependencies:
- has-flag: 4.0.0
- optional: true
-
supports-hyperlinks@4.3.0:
dependencies:
has-flag: 5.0.1
@@ -6601,18 +4442,6 @@ snapshots:
dependencies:
'@pkgr/core': 0.2.9
- synckit@0.9.3:
- dependencies:
- '@pkgr/core': 0.1.2
- tslib: 2.8.1
-
- test-exclude@6.0.0:
- dependencies:
- '@istanbuljs/schema': 0.1.3
- glob: 7.2.3
- minimatch: 3.1.2
- optional: true
-
text-extensions@2.4.0: {}
thenify-all@1.6.0:
@@ -6638,9 +4467,6 @@ snapshots:
tinyrainbow@3.0.3: {}
- tmpl@1.0.5:
- optional: true
-
to-regex-range@5.0.1:
dependencies:
is-number: 7.0.0
@@ -6655,18 +4481,18 @@ snapshots:
tslib@2.8.1: {}
- tsup@8.5.1(jiti@2.6.1)(postcss@8.5.6)(typescript@5.9.3)(yaml@2.8.1):
+ tsup@8.5.1(jiti@2.6.1)(postcss@8.5.6)(typescript@5.9.3)(yaml@2.8.2):
dependencies:
- bundle-require: 5.1.0(esbuild@0.27.0)
+ bundle-require: 5.1.0(esbuild@0.27.1)
cac: 6.7.14
chokidar: 4.0.3
consola: 3.4.2
debug: 4.4.3
- esbuild: 0.27.0
+ esbuild: 0.27.1
fix-dts-default-cjs-exports: 1.0.1
joycon: 3.1.1
picocolors: 1.1.1
- postcss-load-config: 6.0.1(jiti@2.6.1)(postcss@8.5.6)(yaml@2.8.1)
+ postcss-load-config: 6.0.1(jiti@2.6.1)(postcss@8.5.6)(yaml@2.8.2)
resolve-from: 5.0.0
rollup: 4.53.3
source-map: 0.7.6
@@ -6683,43 +4509,37 @@ snapshots:
- tsx
- yaml
- turbo-darwin-64@2.6.1:
+ turbo-darwin-64@2.6.3:
optional: true
- turbo-darwin-arm64@2.6.1:
+ turbo-darwin-arm64@2.6.3:
optional: true
- turbo-linux-64@2.6.1:
+ turbo-linux-64@2.6.3:
optional: true
- turbo-linux-arm64@2.6.1:
+ turbo-linux-arm64@2.6.3:
optional: true
- turbo-windows-64@2.6.1:
+ turbo-windows-64@2.6.3:
optional: true
- turbo-windows-arm64@2.6.1:
+ turbo-windows-arm64@2.6.3:
optional: true
- turbo@2.6.1:
+ turbo@2.6.3:
optionalDependencies:
- turbo-darwin-64: 2.6.1
- turbo-darwin-arm64: 2.6.1
- turbo-linux-64: 2.6.1
- turbo-linux-arm64: 2.6.1
- turbo-windows-64: 2.6.1
- turbo-windows-arm64: 2.6.1
+ turbo-darwin-64: 2.6.3
+ turbo-darwin-arm64: 2.6.3
+ turbo-linux-64: 2.6.3
+ turbo-linux-arm64: 2.6.3
+ turbo-windows-64: 2.6.3
+ turbo-windows-arm64: 2.6.3
type-check@0.4.0:
dependencies:
prelude-ls: 1.2.1
- type-detect@4.0.8:
- optional: true
-
- type-fest@0.21.3:
- optional: true
-
typescript-eslint@8.48.1(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3):
dependencies:
'@typescript-eslint/eslint-plugin': 8.48.1(@typescript-eslint/parser@8.48.1(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3)
@@ -6743,52 +4563,13 @@ snapshots:
universal-user-agent@7.0.3: {}
- unrs-resolver@1.11.1:
- dependencies:
- napi-postinstall: 0.3.4
- optionalDependencies:
- '@unrs/resolver-binding-android-arm-eabi': 1.11.1
- '@unrs/resolver-binding-android-arm64': 1.11.1
- '@unrs/resolver-binding-darwin-arm64': 1.11.1
- '@unrs/resolver-binding-darwin-x64': 1.11.1
- '@unrs/resolver-binding-freebsd-x64': 1.11.1
- '@unrs/resolver-binding-linux-arm-gnueabihf': 1.11.1
- '@unrs/resolver-binding-linux-arm-musleabihf': 1.11.1
- '@unrs/resolver-binding-linux-arm64-gnu': 1.11.1
- '@unrs/resolver-binding-linux-arm64-musl': 1.11.1
- '@unrs/resolver-binding-linux-ppc64-gnu': 1.11.1
- '@unrs/resolver-binding-linux-riscv64-gnu': 1.11.1
- '@unrs/resolver-binding-linux-riscv64-musl': 1.11.1
- '@unrs/resolver-binding-linux-s390x-gnu': 1.11.1
- '@unrs/resolver-binding-linux-x64-gnu': 1.11.1
- '@unrs/resolver-binding-linux-x64-musl': 1.11.1
- '@unrs/resolver-binding-wasm32-wasi': 1.11.1
- '@unrs/resolver-binding-win32-arm64-msvc': 1.11.1
- '@unrs/resolver-binding-win32-ia32-msvc': 1.11.1
- '@unrs/resolver-binding-win32-x64-msvc': 1.11.1
- optional: true
-
- update-browserslist-db@1.1.4(browserslist@4.28.0):
- dependencies:
- browserslist: 4.28.0
- escalade: 3.2.0
- picocolors: 1.1.1
- optional: true
-
uri-js@4.4.1:
dependencies:
punycode: 2.3.1
- v8-to-istanbul@9.3.0:
- dependencies:
- '@jridgewell/trace-mapping': 0.3.31
- '@types/istanbul-lib-coverage': 2.0.6
- convert-source-map: 2.0.0
- optional: true
-
validator@13.15.23: {}
- vite@7.2.6(@types/node@24.10.1)(jiti@2.6.1)(yaml@2.8.1):
+ vite@7.2.6(@types/node@24.10.1)(jiti@2.6.1)(yaml@2.8.2):
dependencies:
esbuild: 0.25.12
fdir: 6.5.0(picomatch@4.0.3)
@@ -6800,12 +4581,12 @@ snapshots:
'@types/node': 24.10.1
fsevents: 2.3.3
jiti: 2.6.1
- yaml: 2.8.1
+ yaml: 2.8.2
- vitest@4.0.15(@types/node@24.10.1)(jiti@2.6.1)(yaml@2.8.1):
+ vitest@4.0.15(@types/node@24.10.1)(jiti@2.6.1)(yaml@2.8.2):
dependencies:
'@vitest/expect': 4.0.15
- '@vitest/mocker': 4.0.15(vite@7.2.6(@types/node@24.10.1)(jiti@2.6.1)(yaml@2.8.1))
+ '@vitest/mocker': 4.0.15(vite@7.2.6(@types/node@24.10.1)(jiti@2.6.1)(yaml@2.8.2))
'@vitest/pretty-format': 4.0.15
'@vitest/runner': 4.0.15
'@vitest/snapshot': 4.0.15
@@ -6822,7 +4603,7 @@ snapshots:
tinyexec: 1.0.2
tinyglobby: 0.2.15
tinyrainbow: 3.0.3
- vite: 7.2.6(@types/node@24.10.1)(jiti@2.6.1)(yaml@2.8.1)
+ vite: 7.2.6(@types/node@24.10.1)(jiti@2.6.1)(yaml@2.8.2)
why-is-node-running: 2.3.0
optionalDependencies:
'@types/node': 24.10.1
@@ -6839,11 +4620,6 @@ snapshots:
- tsx
- yaml
- walker@1.0.8:
- dependencies:
- makeerror: 1.0.12
- optional: true
-
which@2.0.2:
dependencies:
isexe: 2.0.0
@@ -6861,34 +4637,15 @@ snapshots:
string-width: 4.2.3
strip-ansi: 6.0.1
- wrap-ansi@8.1.0:
- dependencies:
- ansi-styles: 6.2.3
- string-width: 5.1.2
- strip-ansi: 7.1.2
- optional: true
-
wrap-ansi@9.0.2:
dependencies:
ansi-styles: 6.2.3
string-width: 7.2.0
strip-ansi: 7.1.2
- wrappy@1.0.2:
- optional: true
-
- write-file-atomic@5.0.1:
- dependencies:
- imurmurhash: 0.1.4
- signal-exit: 4.1.0
- optional: true
-
y18n@5.0.8: {}
- yallist@3.1.1:
- optional: true
-
- yaml@2.8.1: {}
+ yaml@2.8.2: {}
yargs-parser@21.1.1: {}