From b470872ea10337607b498fb5ca8cd07627a72465 Mon Sep 17 00:00:00 2001
From: BlobMaster41 <96896824+BlobMaster41@users.noreply.github.com>
Date: Sun, 8 Mar 2026 03:30:21 -0400
Subject: [PATCH 1/6] Bump dev deps and update generated .wat tests
Update development dependencies (notably @eslint/js -> 10.0.1, eslint -> 10.0.3, @typescript-eslint/* -> 8.56.1, @types/node -> 25.3.5, esbuild -> 0.27.3, and other tooling packages) and update package-lock.json accordingly. Regenerate a large set of compiler test outputs (.wat) so recorded test artifacts match the updated toolchain/formatting changes.
Add generated UMD bundle for rtrace
Add a generated UMD build for lib/rtrace (do not edit). The bundle exports Rtrace and overhead constants (BLOCK_OVERHEAD, OBJECT_OVERHEAD, TOTAL_OVERHEAD) and implements shadow-memory management, block bookkeeping, runtime instrumentation hooks (oninit, onalloc, onresize, onmove, onvisit, onfree, oninterrupt, onyield, oncollect, onstore, onload), GC profiling, and error/info reporting. This file is a generated wrapper intended for UMD consumers of the rtrace runtime.
Update test.yml
Revert "Update test.yml"
This reverts commit fd8d90826760a19c52b86d61a10671972ac1f94b.
Update eslint.config.js
Update eslint.config.js
Update .eslintrc.cjs
Update test.yml
Update test.yml
Rename loader package to @btc-vision/as-loader
Rebrand the loader package from @assemblyscript/loader to @btc-vision/as-loader. Update README references (root and loader README), import example, loader package.json and UMD entry, and related test build artifacts. Also update rtrace package metadata and UMD build, and add a package-lock for the rtrace package.
Support runtime 'none' and related fixes
Add support for a 'none' runtime option and adjust compiler/CLI behavior accordingly. CLI: map runtime 'none' and report compile diagnostics before crashing. Compiler: skip exporting runtime functions and managed runtime calls when runtime is None; improve instance lookup safety. Shadow stack: use unreachable() when exception handling is enabled, otherwise keep static abort. Program: emit diagnostics when required standard library elements are missing. asconfig: set a default stackSize of 65536.
Add 'none' runtime and simple allocator
Introduce a memory-only "none" runtime with basic allocation APIs and no GC: add std/assembly/rt/none.ts and an index file, and register Runtime.None in shared/runtime.ts. Implement __alloc/__realloc/__free and object helpers (__new/__renew) plus no-op __link/__visit; handle linear memory growth and allocation alignment. Also change abort feature check in builtins (use direct ASC_FEATURE_EXCEPTION_HANDLING flag) and tighten envOwners lookup in src/compiler.ts to return null when missing.
Add Memory runtime and conditional GC linking
Introduce a new Memory runtime (renamed from None) that provides a memory-only allocator without GC and update code to avoid GC hooks in this mode. Updated CLI to accept the "memory" runtime flag, adjusted compiler checks to compare against Runtime.Memory, and added a memory-only runtime implementation (std/assembly/rt/memory-runtime.ts and index-memory.ts). Multiple std/assembly modules now import Runtime and guard calls to __link and __visit so references and GC visitation are skipped when ASC_RUNTIME == Runtime.Memory.
---
.eslintrc.cjs | 3 +
.github/workflows/test.yml | 199 +--
cli/index.js | 7 +
eslint.config.js | 6 +-
lib/README.md | 2 +-
lib/loader/README.md | 10 +-
lib/loader/package-lock.json | 1339 ++++-------------
lib/loader/package.json | 4 +-
lib/loader/tests/build/default.wasm | Bin 7739 -> 11809 bytes
lib/loader/tests/build/legacy.wasm | Bin 7739 -> 11809 bytes
lib/loader/umd/index.js | 228 +--
lib/rtrace/package.json | 4 +-
lib/rtrace/umd/index.js | 188 +--
package-lock.json | 956 ++++--------
package.json | 18 +-
src/asconfig.json | 1 +
src/compiler.ts | 10 +-
src/passes/shadowstack.ts | 10 +-
src/program.ts | 10 +-
std/assembly/array.ts | 62 +-
std/assembly/builtins.ts | 2 +-
std/assembly/function.ts | 8 +-
std/assembly/map.ts | 57 +-
std/assembly/rt.ts | 5 +-
std/assembly/rt/index-memory.ts | 1 +
std/assembly/rt/memory-runtime.ts | 94 ++
std/assembly/set.ts | 35 +-
std/assembly/shared/runtime.ts | 2 +
std/assembly/staticarray.ts | 56 +-
std/assembly/string.ts | 5 +-
std/assembly/typedarray.ts | 17 +-
tests/compiler/NonNullable.debug.wat | 15 +-
tests/compiler/NonNullable.release.wat | 8 +-
tests/compiler/abi.debug.wat | 15 +-
tests/compiler/assert-nonnull.debug.wat | 15 +-
tests/compiler/assert-nonnull.release.wat | 8 +-
tests/compiler/bigint-integration.debug.wat | 15 +-
tests/compiler/bigint-integration.release.wat | 8 +-
tests/compiler/bool.debug.wat | 15 +-
tests/compiler/builtins.debug.wat | 15 +-
tests/compiler/builtins.release.wat | 8 +-
tests/compiler/call-optional.debug.wat | 15 +-
tests/compiler/call-optional.release.wat | 8 +-
tests/compiler/class-extends.debug.wat | 15 +-
tests/compiler/class-extends.release.wat | 8 +-
.../compiler/class-static-function.debug.wat | 15 +-
.../class-static-function.release.wat | 8 +-
tests/compiler/closure-class.debug.wat | 15 +-
tests/compiler/closure-class.release.wat | 8 +-
tests/compiler/closure-complex.debug.wat | 15 +-
tests/compiler/closure-complex.release.wat | 8 +-
tests/compiler/closure-stress.debug.wat | 15 +-
tests/compiler/closure-stress.release.wat | 8 +-
tests/compiler/closure.debug.wat | 15 +-
tests/compiler/closure.release.wat | 8 +-
tests/compiler/comma.debug.wat | 15 +-
tests/compiler/comma.release.wat | 8 +-
tests/compiler/declare.debug.wat | 15 +-
tests/compiler/declare.release.wat | 8 +-
tests/compiler/enum-to-string.debug.wat | 15 +-
tests/compiler/enum-to-string.release.wat | 8 +-
tests/compiler/exceptions.debug.wat | 15 +-
tests/compiler/exceptions.release.wat | 8 +-
tests/compiler/features/gc.debug.wat | 15 +-
.../features/reference-types.debug.wat | 15 +-
.../features/reference-types.release.wat | 8 +-
tests/compiler/function-types.debug.wat | 15 +-
tests/compiler/function-types.release.wat | 8 +-
tests/compiler/getter-setter.debug.wat | 15 +-
tests/compiler/getter-setter.release.wat | 8 +-
tests/compiler/heap.debug.wat | 15 +-
tests/compiler/heap.release.wat | 8 +-
tests/compiler/if.debug.wat | 15 +-
tests/compiler/if.release.wat | 8 +-
tests/compiler/import-memory.debug.wat | 15 +-
tests/compiler/import-memory.release.wat | 8 +-
.../incremental-gc/call-indirect.debug.wat | 15 +-
tests/compiler/inlining-blocklocals.debug.wat | 15 +-
.../compiler/inlining-blocklocals.release.wat | 8 +-
tests/compiler/issues/1714.debug.wat | 15 +-
tests/compiler/issues/1714.release.wat | 8 +-
tests/compiler/issues/2825.debug.wat | 15 +-
tests/compiler/issues/2825.release.wat | 8 +-
tests/compiler/loop-flow.debug.wat | 15 +-
tests/compiler/loop-flow.release.wat | 8 +-
tests/compiler/many-locals.debug.wat | 15 +-
tests/compiler/memcpy.debug.wat | 15 +-
tests/compiler/memcpy.release.wat | 8 +-
tests/compiler/memmove.debug.wat | 15 +-
tests/compiler/memmove.release.wat | 8 +-
tests/compiler/memory.debug.wat | 15 +-
tests/compiler/memory.release.wat | 8 +-
tests/compiler/memset.debug.wat | 15 +-
tests/compiler/memset.release.wat | 8 +-
tests/compiler/mutable-globals.debug.wat | 15 +-
tests/compiler/mutable-globals.release.wat | 8 +-
tests/compiler/overflow.debug.wat | 15 +-
tests/compiler/polyfills.debug.wat | 15 +-
tests/compiler/portable-conversions.debug.wat | 15 +-
tests/compiler/possibly-null.debug.wat | 15 +-
tests/compiler/possibly-null.release.wat | 8 +-
.../resolve-function-expression.release.wat | 8 +-
tests/compiler/resolve-localortype.debug.wat | 15 +-
.../compiler/resolve-localortype.release.wat | 8 +-
tests/compiler/resolve-nested.debug.wat | 15 +-
tests/compiler/resolve-nested.release.wat | 8 +-
tests/compiler/retain-i32.debug.wat | 15 +-
tests/compiler/return.debug.wat | 15 +-
tests/compiler/return.release.wat | 8 +-
.../compiler/rt/alloc-large-memory.debug.wat | 15 +-
.../rt/alloc-large-memory.release.wat | 8 +-
tests/compiler/rt/flags.debug.wat | 15 +-
tests/compiler/rt/flags.release.wat | 8 +-
tests/compiler/static-this.debug.wat | 15 +-
tests/compiler/std/array-access.debug.wat | 15 +-
tests/compiler/std/array-access.release.wat | 8 +-
tests/compiler/std/console.debug.wat | 15 +-
tests/compiler/std/console.release.wat | 8 +-
tests/compiler/std/hash.debug.wat | 15 +-
tests/compiler/std/hash.release.wat | 8 +-
tests/compiler/std/math.debug.wat | 15 +-
tests/compiler/std/math.release.wat | 8 +-
tests/compiler/std/mod.debug.wat | 15 +-
tests/compiler/std/mod.release.wat | 8 +-
tests/compiler/std/pointer.debug.wat | 15 +-
tests/compiler/std/pointer.release.wat | 8 +-
tests/compiler/std/static-array.release.wat | 8 +-
tests/compiler/std/string-nonnull.debug.wat | 15 +-
tests/compiler/std/string-nonnull.release.wat | 8 +-
tests/compiler/tablebase.debug.wat | 15 +-
tests/compiler/tablebase.release.wat | 8 +-
tests/compiler/ternary.debug.wat | 15 +-
tests/compiler/ternary.release.wat | 8 +-
tests/compiler/throw.debug.wat | 15 +-
tests/compiler/throw.release.wat | 8 +-
tests/compiler/typealias.debug.wat | 15 +-
tests/compiler/typealias.release.wat | 8 +-
137 files changed, 1777 insertions(+), 2809 deletions(-)
create mode 100644 std/assembly/rt/index-memory.ts
create mode 100644 std/assembly/rt/memory-runtime.ts
diff --git a/.eslintrc.cjs b/.eslintrc.cjs
index 3ba62e3992..c31a2152d2 100644
--- a/.eslintrc.cjs
+++ b/.eslintrc.cjs
@@ -65,6 +65,9 @@ module.exports = {
// Quite often, dealing with multiple related cases at once or otherwise
// falling through is exactly the point of using a switch.
"no-fallthrough": "off",
+ "no-useless-assignment": "off",
+ "no-unassigned-vars": "off",
+ "preserve-caught-error": "off",
// Typical false-positives here are `do { ... } while (true)` statements or
// similar, but the only option provided here is not checking any loops.
diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml
index 310874b297..6719d58bec 100644
--- a/.github/workflows/test.yml
+++ b/.github/workflows/test.yml
@@ -2,24 +2,27 @@ name: Test
on:
push:
branches:
- - main
+ - main
pull_request:
jobs:
check:
name: "Check"
runs-on: ubuntu-latest
steps:
- - uses: actions/checkout@v6
- - name: "Check that distribution files are unmodified"
- if: github.event_name == 'pull_request'
- run: |
- if git --no-pager diff --name-only $(git rev-parse origin/${{ github.base_ref }})...${{ github.sha }} | grep -q "^dist/"; then
- printf "\nThe pull request modifies distribution files, but it shouldn't.\n" &&
- printf "Please see https://github.com/AssemblyScript/assemblyscript/blob/main/CONTRIBUTING.md\n" &&
- exit 1;
- else
- printf "\nOK: Distributions files have not been modified.\n";
- fi
+ - uses: actions/checkout@v6
+ - uses: actions/setup-node@v6
+ with:
+ node-version: '24'
+ - name: "Check that distribution files are unmodified"
+ if: github.event_name == 'pull_request'
+ run: |
+ if git --no-pager diff --name-only $(git rev-parse origin/${{ github.base_ref }})...${{ github.sha }} | grep -q "^dist/"; then
+ printf "\nThe pull request modifies distribution files, but it shouldn't.\n" &&
+ printf "Please see https://github.com/AssemblyScript/assemblyscript/blob/main/CONTRIBUTING.md\n" &&
+ exit 1;
+ else
+ printf "\nOK: Distributions files have not been modified.\n";
+ fi
compiler:
name: "Compiler (${{ matrix.os }}, node ${{ matrix.node_version }})"
runs-on: ${{ matrix.os }}-latest
@@ -27,20 +30,20 @@ jobs:
strategy:
matrix:
os: ["ubuntu", "macos", "windows"]
- node_version: ["current", "lts/*"]
+ node_version: ["25", "lts/*"]
steps:
- - uses: actions/checkout@v6
- - uses: actions/setup-node@v6
- with:
- node-version: ${{ matrix.node_version }}
- - name: Install dependencies
- run: npm ci --no-audit
- - name: Build
- run: npm run build
- - name: Check
- run: npm run check
- - name: Test
- run: npm test
+ - uses: actions/checkout@v6
+ - uses: actions/setup-node@v6
+ with:
+ node-version: ${{ matrix.node_version }}
+ - name: Install dependencies
+ run: npm ci --no-audit
+ - name: Build
+ run: npm run build
+ - name: Check
+ run: npm run check
+ - name: Test
+ run: npm test
bootstrap:
name: "Bootstrap (${{ matrix.target }})"
runs-on: ubuntu-latest
@@ -49,95 +52,97 @@ jobs:
matrix:
target: ["debug", "release"]
steps:
- - uses: actions/checkout@v6
- - uses: actions/setup-node@v6
- with:
- node-version: current
- - name: Install dependencies
- run: npm ci --no-audit
- - name: Build
- run: npm run build
- - name: "Bootstrap ${{ matrix.target }}"
- run: npm run bootstrap:${{ matrix.target }}
- - name: "Test ${{ matrix.target }}"
- run: npm run test:compiler -- --wasm build/assemblyscript.${{ matrix.target }}-bootstrap.js
- - name: "Compile ${{ matrix.target }} -> ${{ matrix.target == 'debug' && 'release' || 'debug' }}"
- run: node bin/asc --config src/asconfig.json --target ${{ matrix.target == 'debug' && 'release' || 'debug' }}-bootstrap --wasm ./build/assemblyscript.${{ matrix.target }}-bootstrap.js
- - name: "Test ${{ matrix.target == 'debug' && 'release' || 'debug' }}"
- run: npm run test:compiler -- --wasm build/assemblyscript.${{ matrix.target == 'debug' && 'release' || 'debug' }}-bootstrap.js
+ - uses: actions/checkout@v6
+ - uses: actions/setup-node@v6
+ with:
+ node-version: current
+ - name: Install dependencies
+ run: npm ci --no-audit
+ - name: Build
+ run: npm run build
+ - name: "Bootstrap ${{ matrix.target }}"
+ run: npm run bootstrap:${{ matrix.target }}
+ - name: "Test ${{ matrix.target }}"
+ run: npm run test:compiler -- --wasm build/assemblyscript.${{ matrix.target }}-bootstrap.js
+ - name: "Compile ${{ matrix.target }} -> ${{ matrix.target == 'debug' && 'release' || 'debug' }}"
+ run: node bin/asc --config src/asconfig.json --target ${{ matrix.target == 'debug' && 'release' || 'debug' }}-bootstrap --wasm ./build/assemblyscript.${{ matrix.target }}-bootstrap.js
+ - name: "Test ${{ matrix.target == 'debug' && 'release' || 'debug' }}"
+ run: npm run test:compiler -- --wasm build/assemblyscript.${{ matrix.target == 'debug' && 'release' || 'debug' }}-bootstrap.js
features:
name: "Features"
runs-on: ubuntu-latest
needs: check
steps:
- - uses: actions/checkout@v6
- - uses: actions/setup-node@v6
- - name: Install dependencies
- run: npm ci --no-audit
- - name: Build
- run: npm run build
- - name: Test experimental features
- env:
- ASC_FEATURES: threads,reference-types,gc,exception-handling
- run: |
- npm run test:compiler features/threads features/reference-types features/gc features/exception-handling bindings/esm bindings/raw
+ - uses: actions/checkout@v6
+ - uses: actions/setup-node@v6
+ with:
+ node-version: '24'
+ - name: Install dependencies
+ run: npm ci --no-audit
+ - name: Build
+ run: npm run build
+ - name: Test experimental features
+ env:
+ ASC_FEATURES: threads,reference-types,gc,exception-handling
+ run: |
+ npm run test:compiler features/threads features/reference-types features/gc features/exception-handling bindings/esm bindings/raw
runtimes:
name: "Runtimes"
runs-on: ubuntu-latest
needs: check
steps:
- - uses: actions/checkout@v6
- - uses: actions/setup-node@v6
- with:
- node-version: current
- - name: Install dependencies
- run: npm ci --no-audit
- - name: Build
- run: npm run build
- - name: Test default allocator
- run: |
- cd tests/allocators/default
- npm run build
- cd ..
- npm test default
- - name: Test stub allocator
- run: |
- cd tests/allocators/stub
- npm run build
- cd ..
- npm test stub
+ - uses: actions/checkout@v6
+ - uses: actions/setup-node@v6
+ with:
+ node-version: current
+ - name: Install dependencies
+ run: npm ci --no-audit
+ - name: Build
+ run: npm run build
+ - name: Test default allocator
+ run: |
+ cd tests/allocators/default
+ npm run build
+ cd ..
+ npm test default
+ - name: Test stub allocator
+ run: |
+ cd tests/allocators/stub
+ npm run build
+ cd ..
+ npm test stub
loader:
name: "Loader"
runs-on: ubuntu-latest
needs: check
steps:
- - uses: actions/checkout@v6
- - uses: actions/setup-node@v6
- with:
- node-version: current
- - name: Install dependencies
- run: npm ci --no-audit
- - name: Build
- run: npm run build
- - name: Test the loader
- run: |
- cd lib/loader
- npm run asbuild
- npm run test
+ - uses: actions/checkout@v6
+ - uses: actions/setup-node@v6
+ with:
+ node-version: current
+ - name: Install dependencies
+ run: npm ci --no-audit
+ - name: Build
+ run: npm run build
+ - name: Test the loader
+ run: |
+ cd lib/loader
+ npm run asbuild
+ npm run test
coverage:
name: "Coverage"
runs-on: ubuntu-latest
needs: check
steps:
- - uses: actions/checkout@v6
- - uses: actions/setup-node@v6
- with:
- node-version: 24
- - name: Install dependencies
- run: npm ci --no-audit
- - name: Build
- run: npm run build
- - name: Collect coverage
- run: npx c8 -r none -- npm test
- - name: Output coverage summary
- run: npx c8 report -r text-summary
+ - uses: actions/checkout@v6
+ - uses: actions/setup-node@v6
+ with:
+ node-version: 24
+ - name: Install dependencies
+ run: npm ci --no-audit
+ - name: Build
+ run: npm run build
+ - name: Collect coverage
+ run: npx c8 -r none -- npm test
+ - name: Output coverage summary
+ run: npx c8 report -r text-summary
diff --git a/cli/index.js b/cli/index.js
index 04577edf78..eecf68137e 100644
--- a/cli/index.js
+++ b/cli/index.js
@@ -300,6 +300,7 @@ export async function main(argv, options) {
switch (opts.runtime) {
case "stub": runtime = 0; break;
case "minimal": runtime = 1; break;
+ case "memory": runtime = 3; break;
/* incremental */
default: runtime = 2; break;
}
@@ -731,6 +732,12 @@ export async function main(argv, options) {
try {
module = assemblyscript.compile(program);
} catch (e) {
+ let numErrors = checkDiagnostics(program, stderr, opts.disableWarning, options.reportDiagnostic, stderrColors.enabled);
+ if (numErrors) {
+ const err = Error(`${numErrors} compile error(s)`);
+ err.stack = err.message;
+ return prepareResult(err);
+ }
crash("compile", e);
}
stats.compileTime += stats.end(begin);
diff --git a/eslint.config.js b/eslint.config.js
index bc13c8b249..fb4bcdb183 100644
--- a/eslint.config.js
+++ b/eslint.config.js
@@ -14,6 +14,7 @@ export default tseslint.config(
]
},
+
eslint.configs.recommended,
// === General rules =========================================================
@@ -65,6 +66,9 @@ export default tseslint.config(
// It is perfectly fine to declare top-level variables with `var`, yet this
// rule doesn't provide configuration options that would help.
"no-var": "off",
+ "no-useless-assignment": "off",
+ "no-unassigned-vars": "off",
+ "preserve-caught-error": "off",
// Quite often, dealing with multiple related cases at once or otherwise
// falling through is exactly the point of using a switch.
@@ -72,7 +76,7 @@ export default tseslint.config(
// Typical false-positives here are `do { ... } while (true)` statements or
// similar, but the only option provided here is not checking any loops.
- "no-constant-condition": ["error", { checkLoops: false }],
+ "no-constant-condition": ["error", {checkLoops: false}],
// Functions are nested in blocks occasionally, and there haven't been any
// problems with this so far, so turning the check off.
diff --git a/lib/README.md b/lib/README.md
index 9ac01cc665..148eefc2c5 100644
--- a/lib/README.md
+++ b/lib/README.md
@@ -5,7 +5,7 @@ Additional packages provided by the main package.
| Package | Description
|------------------------------------|-------------------------
-| [@assemblyscript/loader](./loader) | Module loader utility
+| [@btc-vision/as-loader](./loader) | Module loader utility
| [@assemblyscript/rtrace](./rtrace) | Runtime tracing utility
| binaryen | Binaryen proxy
diff --git a/lib/loader/README.md b/lib/loader/README.md
index ff1e805977..c8a70e0d5a 100644
--- a/lib/loader/README.md
+++ b/lib/loader/README.md
@@ -7,7 +7,7 @@ A tiny module loader that makes working with AssemblyScript modules as convenien
## Example
```ts
-import loader from "@assemblyscript/loader"; // or require
+import loader from "@btc-vision/as-loader"; // or require
loader.instantiate(
// Binary to instantiate
fetch("optimized.wasm"), // or fs.readFileSync
@@ -24,19 +24,19 @@ The loader basically instantiates the module using `WebAssembly` APIs, but also
## Installation
-The loader can be installed from [npm](https://www.npmjs.com/package/@assemblyscript/loader):
+The loader can be installed from [npm](https://www.npmjs.com/package/@btc-vision/as-loader):
```sh
-npm install --save @assemblyscript/loader
+npm install --save @btc-vision/as-loader
```
On the web:
```html
-
+
-
+
```
## Usage
diff --git a/lib/loader/package-lock.json b/lib/loader/package-lock.json
index a6d2d6962f..7a9f7fb32b 100644
--- a/lib/loader/package-lock.json
+++ b/lib/loader/package-lock.json
@@ -1,73 +1,64 @@
{
- "name": "@assemblyscript/loader",
+ "name": "@btc-vision/as-loader",
"version": "0.0.0",
- "lockfileVersion": 2,
+ "lockfileVersion": 3,
"requires": true,
"packages": {
"": {
- "name": "@assemblyscript/loader",
+ "name": "@btc-vision/as-loader",
"version": "0.0.0",
"license": "Apache-2.0",
"devDependencies": {
- "esm2umd": "^0.1.2"
- }
- },
- "node_modules/@ampproject/remapping": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz",
- "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==",
- "dev": true,
- "dependencies": {
- "@jridgewell/gen-mapping": "^0.1.0",
- "@jridgewell/trace-mapping": "^0.3.9"
- },
- "engines": {
- "node": ">=6.0.0"
+ "esm2umd": "^0.3.1"
}
},
"node_modules/@babel/code-frame": {
- "version": "7.22.13",
- "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.13.tgz",
- "integrity": "sha512-XktuhWlJ5g+3TJXc5upd9Ks1HutSArik6jf2eAjYFyIOf4ej3RN+184cZbzDvbPnuTJIUhPKKJE3cIsYTiAT3w==",
+ "version": "7.29.0",
+ "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.29.0.tgz",
+ "integrity": "sha512-9NhCeYjq9+3uxgdtp20LSiJXJvN0FeCtNGpJxuMFZ1Kv3cWUNb6DOhJwUvcVCzKGR66cw4njwM6hrJLqgOwbcw==",
"dev": true,
+ "license": "MIT",
"dependencies": {
- "@babel/highlight": "^7.22.13",
- "chalk": "^2.4.2"
+ "@babel/helper-validator-identifier": "^7.28.5",
+ "js-tokens": "^4.0.0",
+ "picocolors": "^1.1.1"
},
"engines": {
"node": ">=6.9.0"
}
},
"node_modules/@babel/compat-data": {
- "version": "7.17.10",
- "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.17.10.tgz",
- "integrity": "sha512-GZt/TCsG70Ms19gfZO1tM4CVnXsPgEPBCpJu+Qz3L0LUDsY5nZqFZglIoPC1kIYOtNBZlrnFT+klg12vFGZXrw==",
+ "version": "7.29.0",
+ "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.29.0.tgz",
+ "integrity": "sha512-T1NCJqT/j9+cn8fvkt7jtwbLBfLC/1y1c7NtCeXFRgzGTsafi68MRv8yzkYSapBnFA6L3U2VSc02ciDzoAJhJg==",
"dev": true,
+ "license": "MIT",
"engines": {
"node": ">=6.9.0"
}
},
"node_modules/@babel/core": {
- "version": "7.18.2",
- "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.18.2.tgz",
- "integrity": "sha512-A8pri1YJiC5UnkdrWcmfZTJTV85b4UXTAfImGmCfYmax4TR9Cw8sDS0MOk++Gp2mE/BefVJ5nwy5yzqNJbP/DQ==",
- "dev": true,
- "dependencies": {
- "@ampproject/remapping": "^2.1.0",
- "@babel/code-frame": "^7.16.7",
- "@babel/generator": "^7.18.2",
- "@babel/helper-compilation-targets": "^7.18.2",
- "@babel/helper-module-transforms": "^7.18.0",
- "@babel/helpers": "^7.18.2",
- "@babel/parser": "^7.18.0",
- "@babel/template": "^7.16.7",
- "@babel/traverse": "^7.18.2",
- "@babel/types": "^7.18.2",
- "convert-source-map": "^1.7.0",
+ "version": "7.29.0",
+ "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.29.0.tgz",
+ "integrity": "sha512-CGOfOJqWjg2qW/Mb6zNsDm+u5vFQ8DxXfbM09z69p5Z6+mE1ikP2jUXw+j42Pf1XTYED2Rni5f95npYeuwMDQA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@babel/code-frame": "^7.29.0",
+ "@babel/generator": "^7.29.0",
+ "@babel/helper-compilation-targets": "^7.28.6",
+ "@babel/helper-module-transforms": "^7.28.6",
+ "@babel/helpers": "^7.28.6",
+ "@babel/parser": "^7.29.0",
+ "@babel/template": "^7.28.6",
+ "@babel/traverse": "^7.29.0",
+ "@babel/types": "^7.29.0",
+ "@jridgewell/remapping": "^2.3.5",
+ "convert-source-map": "^2.0.0",
"debug": "^4.1.0",
"gensync": "^1.0.0-beta.2",
- "json5": "^2.2.1",
- "semver": "^6.3.0"
+ "json5": "^2.2.3",
+ "semver": "^6.3.1"
},
"engines": {
"node": ">=6.9.0"
@@ -78,210 +69,144 @@
}
},
"node_modules/@babel/generator": {
- "version": "7.23.0",
- "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.23.0.tgz",
- "integrity": "sha512-lN85QRR+5IbYrMWM6Y4pE/noaQtg4pNiqeNGX60eqOfo6gtEj6uw/JagelB8vVztSd7R6M5n1+PQkDbHbBRU4g==",
+ "version": "7.29.1",
+ "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.29.1.tgz",
+ "integrity": "sha512-qsaF+9Qcm2Qv8SRIMMscAvG4O3lJ0F1GuMo5HR/Bp02LopNgnZBC/EkbevHFeGs4ls/oPz9v+Bsmzbkbe+0dUw==",
"dev": true,
+ "license": "MIT",
"dependencies": {
- "@babel/types": "^7.23.0",
- "@jridgewell/gen-mapping": "^0.3.2",
- "@jridgewell/trace-mapping": "^0.3.17",
- "jsesc": "^2.5.1"
+ "@babel/parser": "^7.29.0",
+ "@babel/types": "^7.29.0",
+ "@jridgewell/gen-mapping": "^0.3.12",
+ "@jridgewell/trace-mapping": "^0.3.28",
+ "jsesc": "^3.0.2"
},
"engines": {
"node": ">=6.9.0"
}
},
- "node_modules/@babel/generator/node_modules/@jridgewell/gen-mapping": {
- "version": "0.3.3",
- "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz",
- "integrity": "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==",
- "dev": true,
- "dependencies": {
- "@jridgewell/set-array": "^1.0.1",
- "@jridgewell/sourcemap-codec": "^1.4.10",
- "@jridgewell/trace-mapping": "^0.3.9"
- },
- "engines": {
- "node": ">=6.0.0"
- }
- },
"node_modules/@babel/helper-compilation-targets": {
- "version": "7.18.2",
- "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.18.2.tgz",
- "integrity": "sha512-s1jnPotJS9uQnzFtiZVBUxe67CuBa679oWFHpxYYnTpRL/1ffhyX44R9uYiXoa/pLXcY9H2moJta0iaanlk/rQ==",
+ "version": "7.28.6",
+ "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.28.6.tgz",
+ "integrity": "sha512-JYtls3hqi15fcx5GaSNL7SCTJ2MNmjrkHXg4FSpOA/grxK8KwyZ5bubHsCq8FXCkua6xhuaaBit+3b7+VZRfcA==",
"dev": true,
+ "license": "MIT",
"dependencies": {
- "@babel/compat-data": "^7.17.10",
- "@babel/helper-validator-option": "^7.16.7",
- "browserslist": "^4.20.2",
- "semver": "^6.3.0"
+ "@babel/compat-data": "^7.28.6",
+ "@babel/helper-validator-option": "^7.27.1",
+ "browserslist": "^4.24.0",
+ "lru-cache": "^5.1.1",
+ "semver": "^6.3.1"
},
"engines": {
"node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0"
}
},
- "node_modules/@babel/helper-environment-visitor": {
- "version": "7.22.20",
- "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz",
- "integrity": "sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==",
+ "node_modules/@babel/helper-globals": {
+ "version": "7.28.0",
+ "resolved": "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.28.0.tgz",
+ "integrity": "sha512-+W6cISkXFa1jXsDEdYA8HeevQT/FULhxzR99pxphltZcVaugps53THCeiWA8SguxxpSp3gKPiuYfSWopkLQ4hw==",
"dev": true,
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/helper-function-name": {
- "version": "7.23.0",
- "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.23.0.tgz",
- "integrity": "sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==",
- "dev": true,
- "dependencies": {
- "@babel/template": "^7.22.15",
- "@babel/types": "^7.23.0"
- },
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/helper-hoist-variables": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz",
- "integrity": "sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==",
- "dev": true,
- "dependencies": {
- "@babel/types": "^7.22.5"
- },
+ "license": "MIT",
"engines": {
"node": ">=6.9.0"
}
},
"node_modules/@babel/helper-module-imports": {
- "version": "7.16.7",
- "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.16.7.tgz",
- "integrity": "sha512-LVtS6TqjJHFc+nYeITRo6VLXve70xmq7wPhWTqDJusJEgGmkAACWwMiTNrvfoQo6hEhFwAIixNkvB0jPXDL8Wg==",
+ "version": "7.28.6",
+ "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.28.6.tgz",
+ "integrity": "sha512-l5XkZK7r7wa9LucGw9LwZyyCUscb4x37JWTPz7swwFE/0FMQAGpiWUZn8u9DzkSBWEcK25jmvubfpw2dnAMdbw==",
"dev": true,
+ "license": "MIT",
"dependencies": {
- "@babel/types": "^7.16.7"
+ "@babel/traverse": "^7.28.6",
+ "@babel/types": "^7.28.6"
},
"engines": {
"node": ">=6.9.0"
}
},
"node_modules/@babel/helper-module-transforms": {
- "version": "7.18.0",
- "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.18.0.tgz",
- "integrity": "sha512-kclUYSUBIjlvnzN2++K9f2qzYKFgjmnmjwL4zlmU5f8ZtzgWe8s0rUPSTGy2HmK4P8T52MQsS+HTQAgZd3dMEA==",
+ "version": "7.28.6",
+ "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.28.6.tgz",
+ "integrity": "sha512-67oXFAYr2cDLDVGLXTEABjdBJZ6drElUSI7WKp70NrpyISso3plG9SAGEF6y7zbha/wOzUByWWTJvEDVNIUGcA==",
"dev": true,
+ "license": "MIT",
"dependencies": {
- "@babel/helper-environment-visitor": "^7.16.7",
- "@babel/helper-module-imports": "^7.16.7",
- "@babel/helper-simple-access": "^7.17.7",
- "@babel/helper-split-export-declaration": "^7.16.7",
- "@babel/helper-validator-identifier": "^7.16.7",
- "@babel/template": "^7.16.7",
- "@babel/traverse": "^7.18.0",
- "@babel/types": "^7.18.0"
+ "@babel/helper-module-imports": "^7.28.6",
+ "@babel/helper-validator-identifier": "^7.28.5",
+ "@babel/traverse": "^7.28.6"
},
"engines": {
"node": ">=6.9.0"
- }
- },
- "node_modules/@babel/helper-plugin-utils": {
- "version": "7.17.12",
- "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.17.12.tgz",
- "integrity": "sha512-JDkf04mqtN3y4iAbO1hv9U2ARpPyPL1zqyWs/2WG1pgSq9llHFjStX5jdxb84himgJm+8Ng+x0oiWF/nw/XQKA==",
- "dev": true,
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/helper-simple-access": {
- "version": "7.18.2",
- "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.18.2.tgz",
- "integrity": "sha512-7LIrjYzndorDY88MycupkpQLKS1AFfsVRm2k/9PtKScSy5tZq0McZTj+DiMRynboZfIqOKvo03pmhTaUgiD6fQ==",
- "dev": true,
- "dependencies": {
- "@babel/types": "^7.18.2"
},
- "engines": {
- "node": ">=6.9.0"
+ "peerDependencies": {
+ "@babel/core": "^7.0.0"
}
},
- "node_modules/@babel/helper-split-export-declaration": {
- "version": "7.22.6",
- "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz",
- "integrity": "sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==",
+ "node_modules/@babel/helper-plugin-utils": {
+ "version": "7.28.6",
+ "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.28.6.tgz",
+ "integrity": "sha512-S9gzZ/bz83GRysI7gAD4wPT/AI3uCnY+9xn+Mx/KPs2JwHJIz1W8PZkg2cqyt3RNOBM8ejcXhV6y8Og7ly/Dug==",
"dev": true,
- "dependencies": {
- "@babel/types": "^7.22.5"
- },
+ "license": "MIT",
"engines": {
"node": ">=6.9.0"
}
},
"node_modules/@babel/helper-string-parser": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.22.5.tgz",
- "integrity": "sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw==",
+ "version": "7.27.1",
+ "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.27.1.tgz",
+ "integrity": "sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==",
"dev": true,
+ "license": "MIT",
"engines": {
"node": ">=6.9.0"
}
},
"node_modules/@babel/helper-validator-identifier": {
- "version": "7.22.20",
- "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz",
- "integrity": "sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==",
+ "version": "7.28.5",
+ "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.28.5.tgz",
+ "integrity": "sha512-qSs4ifwzKJSV39ucNjsvc6WVHs6b7S03sOh2OcHF9UHfVPqWWALUsNUVzhSBiItjRZoLHx7nIarVjqKVusUZ1Q==",
"dev": true,
+ "license": "MIT",
"engines": {
"node": ">=6.9.0"
}
},
"node_modules/@babel/helper-validator-option": {
- "version": "7.16.7",
- "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.16.7.tgz",
- "integrity": "sha512-TRtenOuRUVo9oIQGPC5G9DgK4743cdxvtOw0weQNpZXaS16SCBi5MNjZF8vba3ETURjZpTbVn7Vvcf2eAwFozQ==",
+ "version": "7.27.1",
+ "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.27.1.tgz",
+ "integrity": "sha512-YvjJow9FxbhFFKDSuFnVCe2WxXk1zWc22fFePVNEaWJEu8IrZVlda6N0uHwzZrUM1il7NC9Mlp4MaJYbYd9JSg==",
"dev": true,
+ "license": "MIT",
"engines": {
"node": ">=6.9.0"
}
},
"node_modules/@babel/helpers": {
- "version": "7.18.2",
- "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.18.2.tgz",
- "integrity": "sha512-j+d+u5xT5utcQSzrh9p+PaJX94h++KN+ng9b9WEJq7pkUPAd61FGqhjuUEdfknb3E/uDBb7ruwEeKkIxNJPIrg==",
+ "version": "7.28.6",
+ "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.28.6.tgz",
+ "integrity": "sha512-xOBvwq86HHdB7WUDTfKfT/Vuxh7gElQ+Sfti2Cy6yIWNW05P8iUslOVcZ4/sKbE+/jQaukQAdz/gf3724kYdqw==",
"dev": true,
+ "license": "MIT",
"dependencies": {
- "@babel/template": "^7.16.7",
- "@babel/traverse": "^7.18.2",
- "@babel/types": "^7.18.2"
+ "@babel/template": "^7.28.6",
+ "@babel/types": "^7.28.6"
},
"engines": {
"node": ">=6.9.0"
}
},
- "node_modules/@babel/highlight": {
- "version": "7.22.20",
- "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.20.tgz",
- "integrity": "sha512-dkdMCN3py0+ksCgYmGG8jKeGA/8Tk+gJwSYYlFGxG5lmhfKNoAy004YpLxpS1W2J8m/EK2Ew+yOs9pVRwO89mg==",
+ "node_modules/@babel/parser": {
+ "version": "7.29.0",
+ "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.29.0.tgz",
+ "integrity": "sha512-IyDgFV5GeDUVX4YdF/3CPULtVGSXXMLh1xVIgdCgxApktqnQV0r7/8Nqthg+8YLGaAtdyIlo2qIdZrbCv4+7ww==",
"dev": true,
+ "license": "MIT",
"dependencies": {
- "@babel/helper-validator-identifier": "^7.22.20",
- "chalk": "^2.4.2",
- "js-tokens": "^4.0.0"
+ "@babel/types": "^7.29.0"
},
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/parser": {
- "version": "7.23.0",
- "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.23.0.tgz",
- "integrity": "sha512-vvPKKdMemU85V9WE/l5wZEmImpCtLqbnTvqDS2U1fJ96KrxoW7KrXhNsNCblQlg8Ck4b85yxdTyelsMUgFUXiw==",
- "dev": true,
"bin": {
"parser": "bin/babel-parser.js"
},
@@ -289,145 +214,121 @@
"node": ">=6.0.0"
}
},
- "node_modules/@babel/plugin-transform-modules-commonjs": {
- "version": "7.18.2",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.18.2.tgz",
- "integrity": "sha512-f5A865gFPAJAEE0K7F/+nm5CmAE3y8AWlMBG9unu5j9+tk50UQVK0QS8RNxSp7MJf0wh97uYyLWt3Zvu71zyOQ==",
- "dev": true,
- "dependencies": {
- "@babel/helper-module-transforms": "^7.18.0",
- "@babel/helper-plugin-utils": "^7.17.12",
- "@babel/helper-simple-access": "^7.18.2",
- "babel-plugin-dynamic-import-node": "^2.3.3"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
"node_modules/@babel/template": {
- "version": "7.22.15",
- "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.15.tgz",
- "integrity": "sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w==",
+ "version": "7.28.6",
+ "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.28.6.tgz",
+ "integrity": "sha512-YA6Ma2KsCdGb+WC6UpBVFJGXL58MDA6oyONbjyF/+5sBgxY/dwkhLogbMT2GXXyU84/IhRw/2D1Os1B/giz+BQ==",
"dev": true,
+ "license": "MIT",
"dependencies": {
- "@babel/code-frame": "^7.22.13",
- "@babel/parser": "^7.22.15",
- "@babel/types": "^7.22.15"
+ "@babel/code-frame": "^7.28.6",
+ "@babel/parser": "^7.28.6",
+ "@babel/types": "^7.28.6"
},
"engines": {
"node": ">=6.9.0"
}
},
"node_modules/@babel/traverse": {
- "version": "7.23.2",
- "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.23.2.tgz",
- "integrity": "sha512-azpe59SQ48qG6nu2CzcMLbxUudtN+dOM9kDbUqGq3HXUJRlo7i8fvPoxQUzYgLZ4cMVmuZgm8vvBpNeRhd6XSw==",
+ "version": "7.29.0",
+ "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.29.0.tgz",
+ "integrity": "sha512-4HPiQr0X7+waHfyXPZpWPfWL/J7dcN1mx9gL6WdQVMbPnF3+ZhSMs8tCxN7oHddJE9fhNE7+lxdnlyemKfJRuA==",
"dev": true,
+ "license": "MIT",
"dependencies": {
- "@babel/code-frame": "^7.22.13",
- "@babel/generator": "^7.23.0",
- "@babel/helper-environment-visitor": "^7.22.20",
- "@babel/helper-function-name": "^7.23.0",
- "@babel/helper-hoist-variables": "^7.22.5",
- "@babel/helper-split-export-declaration": "^7.22.6",
- "@babel/parser": "^7.23.0",
- "@babel/types": "^7.23.0",
- "debug": "^4.1.0",
- "globals": "^11.1.0"
+ "@babel/code-frame": "^7.29.0",
+ "@babel/generator": "^7.29.0",
+ "@babel/helper-globals": "^7.28.0",
+ "@babel/parser": "^7.29.0",
+ "@babel/template": "^7.28.6",
+ "@babel/types": "^7.29.0",
+ "debug": "^4.3.1"
},
"engines": {
"node": ">=6.9.0"
}
},
"node_modules/@babel/types": {
- "version": "7.23.0",
- "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.23.0.tgz",
- "integrity": "sha512-0oIyUfKoI3mSqMvsxBdclDwxXKXAUA8v/apZbc+iSyARYou1o8ZGDxbUYyLFoW2arqS2jDGqJuZvv1d/io1axg==",
+ "version": "7.29.0",
+ "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.29.0.tgz",
+ "integrity": "sha512-LwdZHpScM4Qz8Xw2iKSzS+cfglZzJGvofQICy7W7v4caru4EaAmyUuO6BGrbyQ2mYV11W0U8j5mBhd14dd3B0A==",
"dev": true,
+ "license": "MIT",
"dependencies": {
- "@babel/helper-string-parser": "^7.22.5",
- "@babel/helper-validator-identifier": "^7.22.20",
- "to-fast-properties": "^2.0.0"
+ "@babel/helper-string-parser": "^7.27.1",
+ "@babel/helper-validator-identifier": "^7.28.5"
},
"engines": {
"node": ">=6.9.0"
}
},
"node_modules/@jridgewell/gen-mapping": {
- "version": "0.1.1",
- "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz",
- "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==",
+ "version": "0.3.13",
+ "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.13.tgz",
+ "integrity": "sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==",
"dev": true,
+ "license": "MIT",
"dependencies": {
- "@jridgewell/set-array": "^1.0.0",
- "@jridgewell/sourcemap-codec": "^1.4.10"
- },
- "engines": {
- "node": ">=6.0.0"
+ "@jridgewell/sourcemap-codec": "^1.5.0",
+ "@jridgewell/trace-mapping": "^0.3.24"
}
},
- "node_modules/@jridgewell/resolve-uri": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz",
- "integrity": "sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==",
+ "node_modules/@jridgewell/remapping": {
+ "version": "2.3.5",
+ "resolved": "https://registry.npmjs.org/@jridgewell/remapping/-/remapping-2.3.5.tgz",
+ "integrity": "sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ==",
"dev": true,
- "engines": {
- "node": ">=6.0.0"
+ "license": "MIT",
+ "dependencies": {
+ "@jridgewell/gen-mapping": "^0.3.5",
+ "@jridgewell/trace-mapping": "^0.3.24"
}
},
- "node_modules/@jridgewell/set-array": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.1.tgz",
- "integrity": "sha512-Ct5MqZkLGEXTVmQYbGtx9SVqD2fqwvdubdps5D3djjAkgkKwT918VNOz65pEHFaYTeWcukmJmH5SwsA9Tn2ObQ==",
+ "node_modules/@jridgewell/resolve-uri": {
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz",
+ "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==",
"dev": true,
+ "license": "MIT",
"engines": {
"node": ">=6.0.0"
}
},
"node_modules/@jridgewell/sourcemap-codec": {
- "version": "1.4.15",
- "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz",
- "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==",
- "dev": true
+ "version": "1.5.5",
+ "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.5.tgz",
+ "integrity": "sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==",
+ "dev": true,
+ "license": "MIT"
},
"node_modules/@jridgewell/trace-mapping": {
- "version": "0.3.19",
- "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.19.tgz",
- "integrity": "sha512-kf37QtfW+Hwx/buWGMPcR60iF9ziHa6r/CZJIHbmcm4+0qrXiVdxegAH0F6yddEVQ7zdkjcGCgCzUu+BcbhQxw==",
+ "version": "0.3.31",
+ "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.31.tgz",
+ "integrity": "sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==",
"dev": true,
+ "license": "MIT",
"dependencies": {
"@jridgewell/resolve-uri": "^3.1.0",
"@jridgewell/sourcemap-codec": "^1.4.14"
}
},
- "node_modules/ansi-styles": {
- "version": "3.2.1",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
- "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
+ "node_modules/baseline-browser-mapping": {
+ "version": "2.10.0",
+ "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.10.0.tgz",
+ "integrity": "sha512-lIyg0szRfYbiy67j9KN8IyeD7q7hcmqnJ1ddWmNt19ItGpNN64mnllmxUNFIOdOm6by97jlL6wfpTTJrmnjWAA==",
"dev": true,
- "dependencies": {
- "color-convert": "^1.9.0"
+ "license": "Apache-2.0",
+ "bin": {
+ "baseline-browser-mapping": "dist/cli.cjs"
},
"engines": {
- "node": ">=4"
- }
- },
- "node_modules/babel-plugin-dynamic-import-node": {
- "version": "2.3.3",
- "resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz",
- "integrity": "sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ==",
- "dev": true,
- "dependencies": {
- "object.assign": "^4.1.0"
+ "node": ">=6.0.0"
}
},
"node_modules/browserslist": {
- "version": "4.20.3",
- "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.20.3.tgz",
- "integrity": "sha512-NBhymBQl1zM0Y5dQT/O+xiLP9/rzOIQdKM/eMJBAq7yBgaB6krIYLGejrwVYnSHZdqjscB1SPuAjHwxjvN6Wdg==",
+ "version": "4.28.1",
+ "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.28.1.tgz",
+ "integrity": "sha512-ZC5Bd0LgJXgwGqUknZY/vkUQ04r8NXnJZ3yYi4vDmSiZmC/pdSN0NbNRPxZpbtO4uAfDUAFffO8IZoM3Gj8IkA==",
"dev": true,
"funding": [
{
@@ -437,14 +338,19 @@
{
"type": "tidelift",
"url": "https://tidelift.com/funding/github/npm/browserslist"
+ },
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/ai"
}
],
+ "license": "MIT",
"dependencies": {
- "caniuse-lite": "^1.0.30001332",
- "electron-to-chromium": "^1.4.118",
- "escalade": "^3.1.1",
- "node-releases": "^2.0.3",
- "picocolors": "^1.0.0"
+ "baseline-browser-mapping": "^2.9.0",
+ "caniuse-lite": "^1.0.30001759",
+ "electron-to-chromium": "^1.5.263",
+ "node-releases": "^2.0.27",
+ "update-browserslist-db": "^1.2.0"
},
"bin": {
"browserslist": "cli.js"
@@ -453,23 +359,10 @@
"node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7"
}
},
- "node_modules/call-bind": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz",
- "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==",
- "dev": true,
- "dependencies": {
- "function-bind": "^1.1.1",
- "get-intrinsic": "^1.0.2"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
"node_modules/caniuse-lite": {
- "version": "1.0.30001344",
- "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001344.tgz",
- "integrity": "sha512-0ZFjnlCaXNOAYcV7i+TtdKBp0L/3XEU2MF/x6Du1lrh+SRX4IfzIVL4HNJg5pB2PmFb8rszIGyOvsZnqqRoc2g==",
+ "version": "1.0.30001777",
+ "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001777.tgz",
+ "integrity": "sha512-tmN+fJxroPndC74efCdp12j+0rk0RHwV5Jwa1zWaFVyw2ZxAuPeG8ZgWC3Wz7uSjT3qMRQ5XHZ4COgQmsCMJAQ==",
"dev": true,
"funding": [
{
@@ -479,54 +372,29 @@
{
"type": "tidelift",
"url": "https://tidelift.com/funding/github/npm/caniuse-lite"
+ },
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/ai"
}
- ]
- },
- "node_modules/chalk": {
- "version": "2.4.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
- "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
- "dev": true,
- "dependencies": {
- "ansi-styles": "^3.2.1",
- "escape-string-regexp": "^1.0.5",
- "supports-color": "^5.3.0"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/color-convert": {
- "version": "1.9.3",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz",
- "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==",
- "dev": true,
- "dependencies": {
- "color-name": "1.1.3"
- }
- },
- "node_modules/color-name": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
- "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==",
- "dev": true
+ ],
+ "license": "CC-BY-4.0"
},
"node_modules/convert-source-map": {
- "version": "1.8.0",
- "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz",
- "integrity": "sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==",
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz",
+ "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==",
"dev": true,
- "dependencies": {
- "safe-buffer": "~5.1.1"
- }
+ "license": "MIT"
},
"node_modules/debug": {
- "version": "4.3.4",
- "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
- "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
+ "version": "4.4.3",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz",
+ "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==",
"dev": true,
+ "license": "MIT",
"dependencies": {
- "ms": "2.1.2"
+ "ms": "^2.1.3"
},
"engines": {
"node": ">=6.0"
@@ -537,158 +405,65 @@
}
}
},
- "node_modules/define-properties": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.4.tgz",
- "integrity": "sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==",
- "dev": true,
- "dependencies": {
- "has-property-descriptors": "^1.0.0",
- "object-keys": "^1.1.1"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
"node_modules/electron-to-chromium": {
- "version": "1.4.141",
- "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.141.tgz",
- "integrity": "sha512-mfBcbqc0qc6RlxrsIgLG2wCqkiPAjEezHxGTu7p3dHHFOurH4EjS9rFZndX5axC8264rI1Pcbw8uQP39oZckeA==",
- "dev": true
+ "version": "1.5.307",
+ "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.307.tgz",
+ "integrity": "sha512-5z3uFKBWjiNR44nFcYdkcXjKMbg5KXNdciu7mhTPo9tB7NbqSNP2sSnGR+fqknZSCwKkBN+oxiiajWs4dT6ORg==",
+ "dev": true,
+ "license": "ISC"
},
"node_modules/escalade": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz",
- "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==",
+ "version": "3.2.0",
+ "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz",
+ "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==",
"dev": true,
+ "license": "MIT",
"engines": {
"node": ">=6"
}
},
- "node_modules/escape-string-regexp": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
- "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==",
- "dev": true,
- "engines": {
- "node": ">=0.8.0"
- }
- },
"node_modules/esm2umd": {
- "version": "0.1.2",
- "resolved": "https://registry.npmjs.org/esm2umd/-/esm2umd-0.1.2.tgz",
- "integrity": "sha512-SoCump2d/jzZJ9/0ZY/2AVOWJbyd5bGOMlRSSNqChPvQrwa9Rqzo9wPP+kT77Gys03Sb+rIgseAReVvIrqvglA==",
+ "version": "0.3.1",
+ "resolved": "https://registry.npmjs.org/esm2umd/-/esm2umd-0.3.1.tgz",
+ "integrity": "sha512-5WcGtkITdTHoLSkM/ZGWgsieCvlPUJLJdGOAmnmXPjjNBU/lwMGg3D4Tx/FWe32pY0ZhhAwoM8Oy+1hBI7BKQg==",
"dev": true,
+ "license": "MIT",
"dependencies": {
- "@babel/core": "^7",
- "@babel/plugin-transform-modules-commonjs": "^7"
+ "@babel/core": "^7.26.8",
+ "@babel/helper-plugin-utils": "^7.26.5"
},
"bin": {
"esm2umd": "bin/esm2umd.js"
}
},
- "node_modules/function-bind": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz",
- "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==",
- "dev": true
- },
"node_modules/gensync": {
"version": "1.0.0-beta.2",
"resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz",
"integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==",
"dev": true,
+ "license": "MIT",
"engines": {
"node": ">=6.9.0"
}
},
- "node_modules/get-intrinsic": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz",
- "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==",
- "dev": true,
- "dependencies": {
- "function-bind": "^1.1.1",
- "has": "^1.0.3",
- "has-symbols": "^1.0.1"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/globals": {
- "version": "11.12.0",
- "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz",
- "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==",
- "dev": true,
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/has": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz",
- "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==",
- "dev": true,
- "dependencies": {
- "function-bind": "^1.1.1"
- },
- "engines": {
- "node": ">= 0.4.0"
- }
- },
- "node_modules/has-flag": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
- "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==",
- "dev": true,
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/has-property-descriptors": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz",
- "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==",
- "dev": true,
- "dependencies": {
- "get-intrinsic": "^1.1.1"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/has-symbols": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz",
- "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==",
- "dev": true,
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
"node_modules/js-tokens": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz",
"integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==",
- "dev": true
+ "dev": true,
+ "license": "MIT"
},
"node_modules/jsesc": {
- "version": "2.5.2",
- "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz",
- "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==",
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz",
+ "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==",
"dev": true,
+ "license": "MIT",
"bin": {
"jsesc": "bin/jsesc"
},
"engines": {
- "node": ">=4"
+ "node": ">=6"
}
},
"node_modules/json5": {
@@ -696,6 +471,7 @@
"resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz",
"integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==",
"dev": true,
+ "license": "MIT",
"bin": {
"json5": "lib/cli.js"
},
@@ -703,653 +479,84 @@
"node": ">=6"
}
},
- "node_modules/ms": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
- "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
- "dev": true
- },
- "node_modules/node-releases": {
- "version": "2.0.5",
- "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.5.tgz",
- "integrity": "sha512-U9h1NLROZTq9uE1SNffn6WuPDg8icmi3ns4rEl/oTfIle4iLjTliCzgTsbaIFMq/Xn078/lfY/BL0GWZ+psK4Q==",
- "dev": true
- },
- "node_modules/object-keys": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz",
- "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==",
+ "node_modules/lru-cache": {
+ "version": "5.1.1",
+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz",
+ "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==",
"dev": true,
- "engines": {
- "node": ">= 0.4"
+ "license": "ISC",
+ "dependencies": {
+ "yallist": "^3.0.2"
}
},
- "node_modules/object.assign": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz",
- "integrity": "sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==",
+ "node_modules/ms": {
+ "version": "2.1.3",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
+ "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==",
"dev": true,
- "dependencies": {
- "call-bind": "^1.0.0",
- "define-properties": "^1.1.3",
- "has-symbols": "^1.0.1",
- "object-keys": "^1.1.1"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
+ "license": "MIT"
},
- "node_modules/picocolors": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz",
- "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==",
- "dev": true
+ "node_modules/node-releases": {
+ "version": "2.0.36",
+ "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.36.tgz",
+ "integrity": "sha512-TdC8FSgHz8Mwtw9g5L4gR/Sh9XhSP/0DEkQxfEFXOpiul5IiHgHan2VhYYb6agDSfp4KuvltmGApc8HMgUrIkA==",
+ "dev": true,
+ "license": "MIT"
},
- "node_modules/safe-buffer": {
- "version": "5.1.2",
- "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
- "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==",
- "dev": true
+ "node_modules/picocolors": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz",
+ "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==",
+ "dev": true,
+ "license": "ISC"
},
"node_modules/semver": {
- "version": "6.3.0",
- "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
- "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
+ "version": "6.3.1",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
+ "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
"dev": true,
+ "license": "ISC",
"bin": {
"semver": "bin/semver.js"
}
},
- "node_modules/supports-color": {
- "version": "5.5.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
- "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
+ "node_modules/update-browserslist-db": {
+ "version": "1.2.3",
+ "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.2.3.tgz",
+ "integrity": "sha512-Js0m9cx+qOgDxo0eMiFGEueWztz+d4+M3rGlmKPT+T4IS/jP4ylw3Nwpu6cpTTP8R1MAC1kF4VbdLt3ARf209w==",
"dev": true,
+ "funding": [
+ {
+ "type": "opencollective",
+ "url": "https://opencollective.com/browserslist"
+ },
+ {
+ "type": "tidelift",
+ "url": "https://tidelift.com/funding/github/npm/browserslist"
+ },
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/ai"
+ }
+ ],
+ "license": "MIT",
"dependencies": {
- "has-flag": "^3.0.0"
+ "escalade": "^3.2.0",
+ "picocolors": "^1.1.1"
},
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/to-fast-properties": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz",
- "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=",
- "dev": true,
- "engines": {
- "node": ">=4"
- }
- }
- },
- "dependencies": {
- "@ampproject/remapping": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz",
- "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==",
- "dev": true,
- "requires": {
- "@jridgewell/gen-mapping": "^0.1.0",
- "@jridgewell/trace-mapping": "^0.3.9"
- }
- },
- "@babel/code-frame": {
- "version": "7.22.13",
- "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.13.tgz",
- "integrity": "sha512-XktuhWlJ5g+3TJXc5upd9Ks1HutSArik6jf2eAjYFyIOf4ej3RN+184cZbzDvbPnuTJIUhPKKJE3cIsYTiAT3w==",
- "dev": true,
- "requires": {
- "@babel/highlight": "^7.22.13",
- "chalk": "^2.4.2"
- }
- },
- "@babel/compat-data": {
- "version": "7.17.10",
- "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.17.10.tgz",
- "integrity": "sha512-GZt/TCsG70Ms19gfZO1tM4CVnXsPgEPBCpJu+Qz3L0LUDsY5nZqFZglIoPC1kIYOtNBZlrnFT+klg12vFGZXrw==",
- "dev": true
- },
- "@babel/core": {
- "version": "7.18.2",
- "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.18.2.tgz",
- "integrity": "sha512-A8pri1YJiC5UnkdrWcmfZTJTV85b4UXTAfImGmCfYmax4TR9Cw8sDS0MOk++Gp2mE/BefVJ5nwy5yzqNJbP/DQ==",
- "dev": true,
- "requires": {
- "@ampproject/remapping": "^2.1.0",
- "@babel/code-frame": "^7.16.7",
- "@babel/generator": "^7.18.2",
- "@babel/helper-compilation-targets": "^7.18.2",
- "@babel/helper-module-transforms": "^7.18.0",
- "@babel/helpers": "^7.18.2",
- "@babel/parser": "^7.18.0",
- "@babel/template": "^7.16.7",
- "@babel/traverse": "^7.18.2",
- "@babel/types": "^7.18.2",
- "convert-source-map": "^1.7.0",
- "debug": "^4.1.0",
- "gensync": "^1.0.0-beta.2",
- "json5": "^2.2.1",
- "semver": "^6.3.0"
- }
- },
- "@babel/generator": {
- "version": "7.23.0",
- "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.23.0.tgz",
- "integrity": "sha512-lN85QRR+5IbYrMWM6Y4pE/noaQtg4pNiqeNGX60eqOfo6gtEj6uw/JagelB8vVztSd7R6M5n1+PQkDbHbBRU4g==",
- "dev": true,
- "requires": {
- "@babel/types": "^7.23.0",
- "@jridgewell/gen-mapping": "^0.3.2",
- "@jridgewell/trace-mapping": "^0.3.17",
- "jsesc": "^2.5.1"
+ "bin": {
+ "update-browserslist-db": "cli.js"
},
- "dependencies": {
- "@jridgewell/gen-mapping": {
- "version": "0.3.3",
- "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz",
- "integrity": "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==",
- "dev": true,
- "requires": {
- "@jridgewell/set-array": "^1.0.1",
- "@jridgewell/sourcemap-codec": "^1.4.10",
- "@jridgewell/trace-mapping": "^0.3.9"
- }
- }
- }
- },
- "@babel/helper-compilation-targets": {
- "version": "7.18.2",
- "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.18.2.tgz",
- "integrity": "sha512-s1jnPotJS9uQnzFtiZVBUxe67CuBa679oWFHpxYYnTpRL/1ffhyX44R9uYiXoa/pLXcY9H2moJta0iaanlk/rQ==",
- "dev": true,
- "requires": {
- "@babel/compat-data": "^7.17.10",
- "@babel/helper-validator-option": "^7.16.7",
- "browserslist": "^4.20.2",
- "semver": "^6.3.0"
- }
- },
- "@babel/helper-environment-visitor": {
- "version": "7.22.20",
- "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz",
- "integrity": "sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==",
- "dev": true
- },
- "@babel/helper-function-name": {
- "version": "7.23.0",
- "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.23.0.tgz",
- "integrity": "sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==",
- "dev": true,
- "requires": {
- "@babel/template": "^7.22.15",
- "@babel/types": "^7.23.0"
- }
- },
- "@babel/helper-hoist-variables": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz",
- "integrity": "sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==",
- "dev": true,
- "requires": {
- "@babel/types": "^7.22.5"
- }
- },
- "@babel/helper-module-imports": {
- "version": "7.16.7",
- "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.16.7.tgz",
- "integrity": "sha512-LVtS6TqjJHFc+nYeITRo6VLXve70xmq7wPhWTqDJusJEgGmkAACWwMiTNrvfoQo6hEhFwAIixNkvB0jPXDL8Wg==",
- "dev": true,
- "requires": {
- "@babel/types": "^7.16.7"
- }
- },
- "@babel/helper-module-transforms": {
- "version": "7.18.0",
- "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.18.0.tgz",
- "integrity": "sha512-kclUYSUBIjlvnzN2++K9f2qzYKFgjmnmjwL4zlmU5f8ZtzgWe8s0rUPSTGy2HmK4P8T52MQsS+HTQAgZd3dMEA==",
- "dev": true,
- "requires": {
- "@babel/helper-environment-visitor": "^7.16.7",
- "@babel/helper-module-imports": "^7.16.7",
- "@babel/helper-simple-access": "^7.17.7",
- "@babel/helper-split-export-declaration": "^7.16.7",
- "@babel/helper-validator-identifier": "^7.16.7",
- "@babel/template": "^7.16.7",
- "@babel/traverse": "^7.18.0",
- "@babel/types": "^7.18.0"
- }
- },
- "@babel/helper-plugin-utils": {
- "version": "7.17.12",
- "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.17.12.tgz",
- "integrity": "sha512-JDkf04mqtN3y4iAbO1hv9U2ARpPyPL1zqyWs/2WG1pgSq9llHFjStX5jdxb84himgJm+8Ng+x0oiWF/nw/XQKA==",
- "dev": true
- },
- "@babel/helper-simple-access": {
- "version": "7.18.2",
- "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.18.2.tgz",
- "integrity": "sha512-7LIrjYzndorDY88MycupkpQLKS1AFfsVRm2k/9PtKScSy5tZq0McZTj+DiMRynboZfIqOKvo03pmhTaUgiD6fQ==",
- "dev": true,
- "requires": {
- "@babel/types": "^7.18.2"
- }
- },
- "@babel/helper-split-export-declaration": {
- "version": "7.22.6",
- "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz",
- "integrity": "sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==",
- "dev": true,
- "requires": {
- "@babel/types": "^7.22.5"
- }
- },
- "@babel/helper-string-parser": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.22.5.tgz",
- "integrity": "sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw==",
- "dev": true
- },
- "@babel/helper-validator-identifier": {
- "version": "7.22.20",
- "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz",
- "integrity": "sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==",
- "dev": true
- },
- "@babel/helper-validator-option": {
- "version": "7.16.7",
- "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.16.7.tgz",
- "integrity": "sha512-TRtenOuRUVo9oIQGPC5G9DgK4743cdxvtOw0weQNpZXaS16SCBi5MNjZF8vba3ETURjZpTbVn7Vvcf2eAwFozQ==",
- "dev": true
- },
- "@babel/helpers": {
- "version": "7.18.2",
- "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.18.2.tgz",
- "integrity": "sha512-j+d+u5xT5utcQSzrh9p+PaJX94h++KN+ng9b9WEJq7pkUPAd61FGqhjuUEdfknb3E/uDBb7ruwEeKkIxNJPIrg==",
- "dev": true,
- "requires": {
- "@babel/template": "^7.16.7",
- "@babel/traverse": "^7.18.2",
- "@babel/types": "^7.18.2"
- }
- },
- "@babel/highlight": {
- "version": "7.22.20",
- "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.20.tgz",
- "integrity": "sha512-dkdMCN3py0+ksCgYmGG8jKeGA/8Tk+gJwSYYlFGxG5lmhfKNoAy004YpLxpS1W2J8m/EK2Ew+yOs9pVRwO89mg==",
- "dev": true,
- "requires": {
- "@babel/helper-validator-identifier": "^7.22.20",
- "chalk": "^2.4.2",
- "js-tokens": "^4.0.0"
- }
- },
- "@babel/parser": {
- "version": "7.23.0",
- "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.23.0.tgz",
- "integrity": "sha512-vvPKKdMemU85V9WE/l5wZEmImpCtLqbnTvqDS2U1fJ96KrxoW7KrXhNsNCblQlg8Ck4b85yxdTyelsMUgFUXiw==",
- "dev": true
- },
- "@babel/plugin-transform-modules-commonjs": {
- "version": "7.18.2",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.18.2.tgz",
- "integrity": "sha512-f5A865gFPAJAEE0K7F/+nm5CmAE3y8AWlMBG9unu5j9+tk50UQVK0QS8RNxSp7MJf0wh97uYyLWt3Zvu71zyOQ==",
- "dev": true,
- "requires": {
- "@babel/helper-module-transforms": "^7.18.0",
- "@babel/helper-plugin-utils": "^7.17.12",
- "@babel/helper-simple-access": "^7.18.2",
- "babel-plugin-dynamic-import-node": "^2.3.3"
- }
- },
- "@babel/template": {
- "version": "7.22.15",
- "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.15.tgz",
- "integrity": "sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w==",
- "dev": true,
- "requires": {
- "@babel/code-frame": "^7.22.13",
- "@babel/parser": "^7.22.15",
- "@babel/types": "^7.22.15"
- }
- },
- "@babel/traverse": {
- "version": "7.23.2",
- "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.23.2.tgz",
- "integrity": "sha512-azpe59SQ48qG6nu2CzcMLbxUudtN+dOM9kDbUqGq3HXUJRlo7i8fvPoxQUzYgLZ4cMVmuZgm8vvBpNeRhd6XSw==",
- "dev": true,
- "requires": {
- "@babel/code-frame": "^7.22.13",
- "@babel/generator": "^7.23.0",
- "@babel/helper-environment-visitor": "^7.22.20",
- "@babel/helper-function-name": "^7.23.0",
- "@babel/helper-hoist-variables": "^7.22.5",
- "@babel/helper-split-export-declaration": "^7.22.6",
- "@babel/parser": "^7.23.0",
- "@babel/types": "^7.23.0",
- "debug": "^4.1.0",
- "globals": "^11.1.0"
- }
- },
- "@babel/types": {
- "version": "7.23.0",
- "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.23.0.tgz",
- "integrity": "sha512-0oIyUfKoI3mSqMvsxBdclDwxXKXAUA8v/apZbc+iSyARYou1o8ZGDxbUYyLFoW2arqS2jDGqJuZvv1d/io1axg==",
- "dev": true,
- "requires": {
- "@babel/helper-string-parser": "^7.22.5",
- "@babel/helper-validator-identifier": "^7.22.20",
- "to-fast-properties": "^2.0.0"
- }
- },
- "@jridgewell/gen-mapping": {
- "version": "0.1.1",
- "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz",
- "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==",
- "dev": true,
- "requires": {
- "@jridgewell/set-array": "^1.0.0",
- "@jridgewell/sourcemap-codec": "^1.4.10"
- }
- },
- "@jridgewell/resolve-uri": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz",
- "integrity": "sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==",
- "dev": true
- },
- "@jridgewell/set-array": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.1.tgz",
- "integrity": "sha512-Ct5MqZkLGEXTVmQYbGtx9SVqD2fqwvdubdps5D3djjAkgkKwT918VNOz65pEHFaYTeWcukmJmH5SwsA9Tn2ObQ==",
- "dev": true
- },
- "@jridgewell/sourcemap-codec": {
- "version": "1.4.15",
- "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz",
- "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==",
- "dev": true
- },
- "@jridgewell/trace-mapping": {
- "version": "0.3.19",
- "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.19.tgz",
- "integrity": "sha512-kf37QtfW+Hwx/buWGMPcR60iF9ziHa6r/CZJIHbmcm4+0qrXiVdxegAH0F6yddEVQ7zdkjcGCgCzUu+BcbhQxw==",
- "dev": true,
- "requires": {
- "@jridgewell/resolve-uri": "^3.1.0",
- "@jridgewell/sourcemap-codec": "^1.4.14"
- }
- },
- "ansi-styles": {
- "version": "3.2.1",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
- "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
- "dev": true,
- "requires": {
- "color-convert": "^1.9.0"
- }
- },
- "babel-plugin-dynamic-import-node": {
- "version": "2.3.3",
- "resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz",
- "integrity": "sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ==",
- "dev": true,
- "requires": {
- "object.assign": "^4.1.0"
- }
- },
- "browserslist": {
- "version": "4.20.3",
- "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.20.3.tgz",
- "integrity": "sha512-NBhymBQl1zM0Y5dQT/O+xiLP9/rzOIQdKM/eMJBAq7yBgaB6krIYLGejrwVYnSHZdqjscB1SPuAjHwxjvN6Wdg==",
- "dev": true,
- "requires": {
- "caniuse-lite": "^1.0.30001332",
- "electron-to-chromium": "^1.4.118",
- "escalade": "^3.1.1",
- "node-releases": "^2.0.3",
- "picocolors": "^1.0.0"
- }
- },
- "call-bind": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz",
- "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==",
- "dev": true,
- "requires": {
- "function-bind": "^1.1.1",
- "get-intrinsic": "^1.0.2"
- }
- },
- "caniuse-lite": {
- "version": "1.0.30001344",
- "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001344.tgz",
- "integrity": "sha512-0ZFjnlCaXNOAYcV7i+TtdKBp0L/3XEU2MF/x6Du1lrh+SRX4IfzIVL4HNJg5pB2PmFb8rszIGyOvsZnqqRoc2g==",
- "dev": true
- },
- "chalk": {
- "version": "2.4.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
- "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
- "dev": true,
- "requires": {
- "ansi-styles": "^3.2.1",
- "escape-string-regexp": "^1.0.5",
- "supports-color": "^5.3.0"
- }
- },
- "color-convert": {
- "version": "1.9.3",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz",
- "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==",
- "dev": true,
- "requires": {
- "color-name": "1.1.3"
- }
- },
- "color-name": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
- "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==",
- "dev": true
- },
- "convert-source-map": {
- "version": "1.8.0",
- "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz",
- "integrity": "sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==",
- "dev": true,
- "requires": {
- "safe-buffer": "~5.1.1"
- }
- },
- "debug": {
- "version": "4.3.4",
- "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
- "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
- "dev": true,
- "requires": {
- "ms": "2.1.2"
- }
- },
- "define-properties": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.4.tgz",
- "integrity": "sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==",
- "dev": true,
- "requires": {
- "has-property-descriptors": "^1.0.0",
- "object-keys": "^1.1.1"
+ "peerDependencies": {
+ "browserslist": ">= 4.21.0"
}
},
- "electron-to-chromium": {
- "version": "1.4.141",
- "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.141.tgz",
- "integrity": "sha512-mfBcbqc0qc6RlxrsIgLG2wCqkiPAjEezHxGTu7p3dHHFOurH4EjS9rFZndX5axC8264rI1Pcbw8uQP39oZckeA==",
- "dev": true
- },
- "escalade": {
+ "node_modules/yallist": {
"version": "3.1.1",
- "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz",
- "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==",
- "dev": true
- },
- "escape-string-regexp": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
- "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==",
- "dev": true
- },
- "esm2umd": {
- "version": "0.1.2",
- "resolved": "https://registry.npmjs.org/esm2umd/-/esm2umd-0.1.2.tgz",
- "integrity": "sha512-SoCump2d/jzZJ9/0ZY/2AVOWJbyd5bGOMlRSSNqChPvQrwa9Rqzo9wPP+kT77Gys03Sb+rIgseAReVvIrqvglA==",
+ "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz",
+ "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==",
"dev": true,
- "requires": {
- "@babel/core": "^7",
- "@babel/plugin-transform-modules-commonjs": "^7"
- }
- },
- "function-bind": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz",
- "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==",
- "dev": true
- },
- "gensync": {
- "version": "1.0.0-beta.2",
- "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz",
- "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==",
- "dev": true
- },
- "get-intrinsic": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz",
- "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==",
- "dev": true,
- "requires": {
- "function-bind": "^1.1.1",
- "has": "^1.0.3",
- "has-symbols": "^1.0.1"
- }
- },
- "globals": {
- "version": "11.12.0",
- "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz",
- "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==",
- "dev": true
- },
- "has": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz",
- "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==",
- "dev": true,
- "requires": {
- "function-bind": "^1.1.1"
- }
- },
- "has-flag": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
- "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==",
- "dev": true
- },
- "has-property-descriptors": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz",
- "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==",
- "dev": true,
- "requires": {
- "get-intrinsic": "^1.1.1"
- }
- },
- "has-symbols": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz",
- "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==",
- "dev": true
- },
- "js-tokens": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz",
- "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==",
- "dev": true
- },
- "jsesc": {
- "version": "2.5.2",
- "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz",
- "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==",
- "dev": true
- },
- "json5": {
- "version": "2.2.3",
- "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz",
- "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==",
- "dev": true
- },
- "ms": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
- "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
- "dev": true
- },
- "node-releases": {
- "version": "2.0.5",
- "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.5.tgz",
- "integrity": "sha512-U9h1NLROZTq9uE1SNffn6WuPDg8icmi3ns4rEl/oTfIle4iLjTliCzgTsbaIFMq/Xn078/lfY/BL0GWZ+psK4Q==",
- "dev": true
- },
- "object-keys": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz",
- "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==",
- "dev": true
- },
- "object.assign": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz",
- "integrity": "sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==",
- "dev": true,
- "requires": {
- "call-bind": "^1.0.0",
- "define-properties": "^1.1.3",
- "has-symbols": "^1.0.1",
- "object-keys": "^1.1.1"
- }
- },
- "picocolors": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz",
- "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==",
- "dev": true
- },
- "safe-buffer": {
- "version": "5.1.2",
- "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
- "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==",
- "dev": true
- },
- "semver": {
- "version": "6.3.0",
- "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
- "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
- "dev": true
- },
- "supports-color": {
- "version": "5.5.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
- "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
- "dev": true,
- "requires": {
- "has-flag": "^3.0.0"
- }
- },
- "to-fast-properties": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz",
- "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=",
- "dev": true
+ "license": "ISC"
}
}
}
diff --git a/lib/loader/package.json b/lib/loader/package.json
index 7715af1e5b..a2b3e78b60 100644
--- a/lib/loader/package.json
+++ b/lib/loader/package.json
@@ -1,5 +1,5 @@
{
- "name": "@assemblyscript/loader",
+ "name": "@btc-vision/as-loader",
"description": "A convenient loader for AssemblyScript modules.",
"keywords": [
"@btc-vision/assemblyscript",
@@ -48,6 +48,6 @@
"README.md"
],
"devDependencies": {
- "esm2umd": "^0.1.2"
+ "esm2umd": "^0.3.1"
}
}
diff --git a/lib/loader/tests/build/default.wasm b/lib/loader/tests/build/default.wasm
index b9188bb52ef0adcf8c81b9ef4d6c3aa27ed81b56..fa45ab76ac60a05552fc6f99e80166428d3e8881 100644
GIT binary patch
literal 11809
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
BXPp25
diff --git a/lib/loader/tests/build/legacy.wasm b/lib/loader/tests/build/legacy.wasm
index b9188bb52ef0adcf8c81b9ef4d6c3aa27ed81b56..fa45ab76ac60a05552fc6f99e80166428d3e8881 100644
GIT binary patch
literal 11809
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
BXPp25
diff --git a/lib/loader/umd/index.js b/lib/loader/umd/index.js
index 3625fc2cc7..13efee721e 100644
--- a/lib/loader/umd/index.js
+++ b/lib/loader/umd/index.js
@@ -1,41 +1,64 @@
// GENERATED FILE. DO NOT EDIT.
-var loader = (function(exports) {
+(function (global, factory) {
+ function preferDefault(exports) {
+ return exports.default || exports;
+ }
+ if (typeof define === "function" && define.amd) {
+ define([], function () {
+ var exports = {};
+ factory(exports);
+ return preferDefault(exports);
+ });
+ } else if (typeof exports === "object") {
+ factory(exports);
+ if (typeof module === "object") module.exports = preferDefault(exports);
+ } else {
+ (function () {
+ var exports = {};
+ factory(exports);
+ global.loader = preferDefault(exports);
+ })();
+ }
+})(typeof globalThis !== "undefined" ? globalThis : typeof self !== "undefined" ? self : this, function (_exports) {
"use strict";
-
- Object.defineProperty(exports, "__esModule", {
+
+ Object.defineProperty(_exports, "__esModule", {
value: true
});
- exports.instantiate = instantiate;
- exports.instantiateSync = instantiateSync;
- exports.instantiateStreaming = instantiateStreaming;
- exports.demangle = demangle;
- exports.default = void 0;
+ _exports.default = void 0;
+ _exports.demangle = demangle;
+ _exports.instantiate = instantiate;
+ _exports.instantiateStreaming = instantiateStreaming;
+ _exports.instantiateSync = instantiateSync;
// Runtime header offsets
const ID_OFFSET = -8;
- const SIZE_OFFSET = -4; // Runtime ids
+ const SIZE_OFFSET = -4;
+
+ // Runtime ids
// const OBJECT_ID = 0;
-
const ARRAYBUFFER_ID = 1;
- const STRING_ID = 2; // Runtime type information
-
+ const STRING_ID = 2;
+
+ // Runtime type information
const ARRAYBUFFERVIEW = 1 << 0;
const ARRAY = 1 << 1;
- const STATICARRAY = 1 << 2; // const SET = 1 << 3;
+ const STATICARRAY = 1 << 2;
+ // const SET = 1 << 3;
// const MAP = 1 << 4;
-
- const VAL_ALIGN_OFFSET = 6; // const VAL_ALIGN = 1 << VAL_ALIGN_OFFSET;
-
+ const VAL_ALIGN_OFFSET = 6;
+ // const VAL_ALIGN = 1 << VAL_ALIGN_OFFSET;
const VAL_SIGNED = 1 << 11;
- const VAL_FLOAT = 1 << 12; // const VAL_NULLABLE = 1 << 13;
-
- const VAL_MANAGED = 1 << 14; // const KEY_ALIGN_OFFSET = 15;
+ const VAL_FLOAT = 1 << 12;
+ // const VAL_NULLABLE = 1 << 13;
+ const VAL_MANAGED = 1 << 14;
+ // const KEY_ALIGN_OFFSET = 15;
// const KEY_ALIGN = 1 << KEY_ALIGN_OFFSET;
// const KEY_SIGNED = 1 << 20;
// const KEY_FLOAT = 1 << 21;
// const KEY_NULLABLE = 1 << 22;
// const KEY_MANAGED = 1 << 23;
+
// Array(BufferView) layout
-
const ARRAYBUFFERVIEW_BUFFER_OFFSET = 0;
const ARRAYBUFFERVIEW_DATASTART_OFFSET = 4;
const ARRAYBUFFERVIEW_BYTELENGTH_OFFSET = 8;
@@ -44,158 +67,126 @@ var loader = (function(exports) {
const ARRAY_SIZE = 16;
const E_NO_EXPORT_TABLE = "Operation requires compiling with --exportTable";
const E_NO_EXPORT_RUNTIME = "Operation requires compiling with --exportRuntime";
-
const F_NO_EXPORT_RUNTIME = () => {
throw Error(E_NO_EXPORT_RUNTIME);
};
-
const BIGINT = typeof BigUint64Array !== "undefined";
const THIS = Symbol();
const STRING_SMALLSIZE = 192; // break-even point in V8
-
const STRING_CHUNKSIZE = 1024; // mitigate stack overflow
-
const utf16 = new TextDecoder("utf-16le", {
fatal: true
}); // != wtf16
-
+
/** polyfill for Object.hasOwn */
-
Object.hasOwn = Object.hasOwn || function (obj, prop) {
return Object.prototype.hasOwnProperty.call(obj, prop);
};
+
/** Gets a string from memory. */
-
-
function getStringImpl(buffer, ptr) {
let len = new Uint32Array(buffer)[ptr + SIZE_OFFSET >>> 2] >>> 1;
const wtf16 = new Uint16Array(buffer, ptr, len);
if (len <= STRING_SMALLSIZE) return String.fromCharCode(...wtf16);
-
try {
return utf16.decode(wtf16);
} catch {
let str = "",
- off = 0;
-
+ off = 0;
while (len - off > STRING_CHUNKSIZE) {
str += String.fromCharCode(...wtf16.subarray(off, off += STRING_CHUNKSIZE));
}
-
return str + String.fromCharCode(...wtf16.subarray(off));
}
}
+
/** Prepares the base module prior to instantiation. */
-
-
function preInstantiate(imports) {
const extendedExports = {};
-
function getString(memory, ptr) {
if (!memory) return "";
return getStringImpl(memory.buffer, ptr);
- } // add common imports used by stdlib for convenience
-
-
+ }
+
+ // add common imports used by stdlib for convenience
const env = imports.env = imports.env || {};
-
env.abort = env.abort || function abort(msg, file, line, colm) {
const memory = extendedExports.memory || env.memory; // prefer exported, otherwise try imported
-
throw Error(`abort: ${getString(memory, msg)} at ${getString(memory, file)}:${line}:${colm}`);
};
-
env.trace = env.trace || function trace(msg, n, ...args) {
const memory = extendedExports.memory || env.memory;
console.log(`trace: ${getString(memory, msg)}${n ? " " : ""}${args.slice(0, n).join(", ")}`);
};
-
env.seed = env.seed || Date.now;
imports.Math = imports.Math || Math;
imports.Date = imports.Date || Date;
return extendedExports;
}
+
/** Prepares the final module once instantiation is complete. */
-
-
function postInstantiate(extendedExports, instance) {
const exports = instance.exports;
const memory = exports.memory;
const table = exports.table;
-
const __new = exports.__new || F_NO_EXPORT_RUNTIME;
-
const __pin = exports.__pin || F_NO_EXPORT_RUNTIME;
-
const __unpin = exports.__unpin || F_NO_EXPORT_RUNTIME;
-
const __collect = exports.__collect || F_NO_EXPORT_RUNTIME;
-
const __rtti_base = exports.__rtti_base;
const getTypeinfoCount = __rtti_base ? arr => arr[__rtti_base >>> 2] : F_NO_EXPORT_RUNTIME;
extendedExports.__new = __new;
extendedExports.__pin = __pin;
extendedExports.__unpin = __unpin;
extendedExports.__collect = __collect;
+
/** Gets the runtime type info for the given id. */
-
function getTypeinfo(id) {
const U32 = new Uint32Array(memory.buffer);
if ((id >>>= 0) >= getTypeinfoCount(U32)) throw Error(`invalid id: ${id}`);
return U32[(__rtti_base + 4 >>> 2) + id];
}
+
/** Gets and validates runtime type info for the given id for array like objects */
-
-
function getArrayInfo(id) {
const info = getTypeinfo(id);
if (!(info & (ARRAYBUFFERVIEW | ARRAY | STATICARRAY))) throw Error(`not an array: ${id}, flags=${info}`);
return info;
}
+
/** Gets the runtime alignment of a collection's values. */
-
-
function getValueAlign(info) {
return 31 - Math.clz32(info >>> VAL_ALIGN_OFFSET & 31); // -1 if none
}
+
/** Gets the runtime alignment of a collection's keys. */
// function getKeyAlign(info) {
// return 31 - Math.clz32((info >>> KEY_ALIGN_OFFSET) & 31); // -1 if none
// }
-
+
/** Allocates a new string in the module's memory and returns its pointer. */
-
-
function __newString(str) {
if (str == null) return 0;
const length = str.length;
-
const ptr = __new(length << 1, STRING_ID);
-
const U16 = new Uint16Array(memory.buffer);
-
for (let i = 0, p = ptr >>> 1; i < length; ++i) U16[p + i] = str.charCodeAt(i);
-
return ptr;
}
-
extendedExports.__newString = __newString;
+
/** Allocates a new ArrayBuffer in the module's memory and returns its pointer. */
-
function __newArrayBuffer(buf) {
if (buf == null) return 0;
const bufview = new Uint8Array(buf);
-
const ptr = __new(bufview.length, ARRAYBUFFER_ID);
-
const U8 = new Uint8Array(memory.buffer);
U8.set(bufview, ptr);
return ptr;
}
-
extendedExports.__newArrayBuffer = __newArrayBuffer;
+
/** Reads a string from the module's memory by its pointer. */
-
function __getString(ptr) {
if (!ptr) return null;
const buffer = memory.buffer;
@@ -203,18 +194,15 @@ var loader = (function(exports) {
if (id !== STRING_ID) throw Error(`not a string: ${ptr}`);
return getStringImpl(buffer, ptr);
}
-
extendedExports.__getString = __getString;
+
/** Gets the view matching the specified alignment, signedness and floatness. */
-
function getView(alignLog2, signed, float) {
const buffer = memory.buffer;
-
if (float) {
switch (alignLog2) {
case 2:
return new Float32Array(buffer);
-
case 3:
return new Float64Array(buffer);
}
@@ -222,43 +210,32 @@ var loader = (function(exports) {
switch (alignLog2) {
case 0:
return new (signed ? Int8Array : Uint8Array)(buffer);
-
case 1:
return new (signed ? Int16Array : Uint16Array)(buffer);
-
case 2:
return new (signed ? Int32Array : Uint32Array)(buffer);
-
case 3:
return new (signed ? BigInt64Array : BigUint64Array)(buffer);
}
}
-
throw Error(`unsupported align: ${alignLog2}`);
}
+
/** Allocates a new array in the module's memory and returns its pointer. */
-
-
function __newArray(id, valuesOrCapacity = 0) {
const input = valuesOrCapacity;
const info = getArrayInfo(id);
const align = getValueAlign(info);
const isArrayLike = typeof input !== "number";
const length = isArrayLike ? input.length : input;
-
const buf = __new(length << align, info & STATICARRAY ? id : ARRAYBUFFER_ID);
-
let result;
-
if (info & STATICARRAY) {
result = buf;
} else {
__pin(buf);
-
const arr = __new(info & ARRAY ? ARRAY_SIZE : ARRAYBUFFERVIEW_SIZE, id);
-
__unpin(buf);
-
const U32 = new Uint32Array(memory.buffer);
U32[arr + ARRAYBUFFERVIEW_BUFFER_OFFSET >>> 2] = buf;
U32[arr + ARRAYBUFFERVIEW_DATASTART_OFFSET >>> 2] = buf;
@@ -266,11 +243,9 @@ var loader = (function(exports) {
if (info & ARRAY) U32[arr + ARRAY_LENGTH_OFFSET >>> 2] = length;
result = arr;
}
-
if (isArrayLike) {
const view = getView(align, info & VAL_SIGNED, info & VAL_FLOAT);
const start = buf >>> align;
-
if (info & VAL_MANAGED) {
for (let i = 0; i < length; ++i) {
view[start + i] = input[i];
@@ -279,13 +254,11 @@ var loader = (function(exports) {
view.set(input, start);
}
}
-
return result;
}
-
extendedExports.__newArray = __newArray;
+
/** Gets a live view on an array's values in the module's memory. Infers the array type from RTTI. */
-
function __getArrayView(arr) {
const U32 = new Uint32Array(memory.buffer);
const id = U32[arr + ID_OFFSET >>> 2];
@@ -295,88 +268,75 @@ var loader = (function(exports) {
const length = info & ARRAY ? U32[arr + ARRAY_LENGTH_OFFSET >>> 2] : U32[buf + SIZE_OFFSET >>> 2] >>> align;
return getView(align, info & VAL_SIGNED, info & VAL_FLOAT).subarray(buf >>>= align, buf + length);
}
-
extendedExports.__getArrayView = __getArrayView;
+
/** Copies an array's values from the module's memory. Infers the array type from RTTI. */
-
function __getArray(arr) {
const input = __getArrayView(arr);
-
const len = input.length;
const out = new Array(len);
-
for (let i = 0; i < len; i++) out[i] = input[i];
-
return out;
}
-
extendedExports.__getArray = __getArray;
+
/** Copies an ArrayBuffer's value from the module's memory. */
-
function __getArrayBuffer(ptr) {
const buffer = memory.buffer;
const length = new Uint32Array(buffer)[ptr + SIZE_OFFSET >>> 2];
return buffer.slice(ptr, ptr + length);
}
-
extendedExports.__getArrayBuffer = __getArrayBuffer;
+
/** Gets a function from poiner which contain table's index. */
-
function __getFunction(ptr) {
if (!table) throw Error(E_NO_EXPORT_TABLE);
const index = new Uint32Array(memory.buffer)[ptr >>> 2];
return table.get(index);
}
-
extendedExports.__getFunction = __getFunction;
+
/** Copies a typed array's values from the module's memory. */
-
function getTypedArray(Type, alignLog2, ptr) {
return new Type(getTypedArrayView(Type, alignLog2, ptr));
}
+
/** Gets a live view on a typed array's values in the module's memory. */
-
-
function getTypedArrayView(Type, alignLog2, ptr) {
const buffer = memory.buffer;
const U32 = new Uint32Array(buffer);
return new Type(buffer, U32[ptr + ARRAYBUFFERVIEW_DATASTART_OFFSET >>> 2], U32[ptr + ARRAYBUFFERVIEW_BYTELENGTH_OFFSET >>> 2] >>> alignLog2);
}
+
/** Attach a set of get TypedArray and View functions to the exports. */
-
-
function attachTypedArrayFunctions(ctor, name, align) {
extendedExports[`__get${name}`] = getTypedArray.bind(null, ctor, align);
extendedExports[`__get${name}View`] = getTypedArrayView.bind(null, ctor, align);
}
-
[Int8Array, Uint8Array, Uint8ClampedArray, Int16Array, Uint16Array, Int32Array, Uint32Array, Float32Array, Float64Array].forEach(ctor => {
attachTypedArrayFunctions(ctor, ctor.name, 31 - Math.clz32(ctor.BYTES_PER_ELEMENT));
});
-
if (BIGINT) {
[BigUint64Array, BigInt64Array].forEach(ctor => {
attachTypedArrayFunctions(ctor, ctor.name.slice(3), 3);
});
- } // Pull basic exports to extendedExports so code in preInstantiate can use them
-
-
+ }
+
+ // Pull basic exports to extendedExports so code in preInstantiate can use them
extendedExports.memory = extendedExports.memory || memory;
- extendedExports.table = extendedExports.table || table; // Demangle exports and provide the usual utility on the prototype
-
+ extendedExports.table = extendedExports.table || table;
+
+ // Demangle exports and provide the usual utility on the prototype
return demangle(exports, extendedExports);
}
-
function isResponse(src) {
return typeof Response !== "undefined" && src instanceof Response;
}
-
function isModule(src) {
return src instanceof WebAssembly.Module;
}
+
/** Asynchronously instantiates an AssemblyScript module from anything that can be instantiated. */
-
-
async function instantiate(source, imports = {}) {
if (isResponse(source = await source)) return instantiateStreaming(source, imports);
const module = isModule(source) ? source : await WebAssembly.compile(source);
@@ -389,9 +349,8 @@ var loader = (function(exports) {
exports
};
}
+
/** Synchronously instantiates an AssemblyScript module from a WebAssembly.Module or binary buffer. */
-
-
function instantiateSync(source, imports = {}) {
const module = isModule(source) ? source : new WebAssembly.Module(source);
const extended = preInstantiate(imports);
@@ -403,61 +362,49 @@ var loader = (function(exports) {
exports
};
}
+
/** Asynchronously instantiates an AssemblyScript module from a response, i.e. as obtained by `fetch`. */
-
-
async function instantiateStreaming(source, imports = {}) {
if (!WebAssembly.instantiateStreaming) {
return instantiate(isResponse(source = await source) ? source.arrayBuffer() : source, imports);
}
-
const extended = preInstantiate(imports);
const result = await WebAssembly.instantiateStreaming(source, imports);
const exports = postInstantiate(extended, result.instance);
- return { ...result,
+ return {
+ ...result,
exports
};
}
+
/** Demangles an AssemblyScript module's exports to a friendly object structure. */
-
-
function demangle(exports, extendedExports = {}) {
const setArgumentsLength = exports["__argumentsLength"] ? length => {
exports["__argumentsLength"].value = length;
- } : exports["__setArgumentsLength"] || exports["__setargc"] || (() => {
- /* nop */
- });
-
+ } : exports["__setArgumentsLength"] || exports["__setargc"] || (() => {/* nop */});
for (let internalName of Object.keys(exports)) {
const elem = exports[internalName];
let parts = internalName.split(".");
let curr = extendedExports;
-
while (parts.length > 1) {
let part = parts.shift();
if (!Object.hasOwn(curr, part)) curr[part] = {};
curr = curr[part];
}
-
let name = parts[0];
let hash = name.indexOf("#");
-
if (hash >= 0) {
const className = name.substring(0, hash);
const classElem = curr[className];
-
if (typeof classElem === "undefined" || !classElem.prototype) {
const ctor = function (...args) {
return ctor.wrap(ctor.prototype.constructor(0, ...args));
};
-
ctor.prototype = {
valueOf() {
return this[THIS];
}
-
};
-
ctor.wrap = function (thisValue) {
return Object.create(ctor.prototype, {
[THIS]: {
@@ -466,14 +413,11 @@ var loader = (function(exports) {
}
});
};
-
if (classElem) Object.getOwnPropertyNames(classElem).forEach(name => Object.defineProperty(ctor, name, Object.getOwnPropertyDescriptor(classElem, name)));
curr[className] = ctor;
}
-
name = name.substring(hash + 1);
curr = curr[className].prototype;
-
if (/^(get|set):/.test(name)) {
if (!Object.hasOwn(curr, name = name.substring(4))) {
let getter = exports[internalName.replace("set:", "get:")];
@@ -482,11 +426,9 @@ var loader = (function(exports) {
get() {
return getter(this[THIS]);
},
-
set(value) {
setter(this[THIS], value);
},
-
enumerable: true
});
}
@@ -524,18 +466,12 @@ var loader = (function(exports) {
}
}
}
-
return extendedExports;
}
-
- var _default = {
+ var _default = _exports.default = {
instantiate,
instantiateSync,
instantiateStreaming,
demangle
};
- exports.default = _default;
- return exports;
-})({});
-if (typeof define === 'function' && define.amd) define([], function() { return loader; });
-else if (typeof module === 'object' && typeof exports==='object') module.exports = loader;
+});
\ No newline at end of file
diff --git a/lib/rtrace/package.json b/lib/rtrace/package.json
index 9ea43cdd48..dbad11fc56 100644
--- a/lib/rtrace/package.json
+++ b/lib/rtrace/package.json
@@ -34,8 +34,8 @@
"test": "node tests"
},
"dependencies": {
- "d3": "^6.3.1",
- "jsdom": "^16.4.0"
+ "d3": "^7.9.0",
+ "jsdom": "^28.1.0"
},
"files": [
"index.d.ts",
diff --git a/lib/rtrace/umd/index.js b/lib/rtrace/umd/index.js
index f4fdb0ad10..bf25d0dcd0 100644
--- a/lib/rtrace/umd/index.js
+++ b/lib/rtrace/umd/index.js
@@ -1,61 +1,64 @@
// GENERATED FILE. DO NOT EDIT.
-var rtrace = (function(exports) {
+(function (global, factory) {
+ function preferDefault(exports) {
+ return exports.default || exports;
+ }
+ if (typeof define === "function" && define.amd) {
+ define([], function () {
+ var exports = {};
+ factory(exports);
+ return preferDefault(exports);
+ });
+ } else if (typeof exports === "object") {
+ factory(exports);
+ if (typeof module === "object") module.exports = preferDefault(exports);
+ } else {
+ (function () {
+ var exports = {};
+ factory(exports);
+ global.rtrace = preferDefault(exports);
+ })();
+ }
+})(typeof globalThis !== "undefined" ? globalThis : typeof self !== "undefined" ? self : this, function (_exports) {
"use strict";
-
- Object.defineProperty(exports, "__esModule", {
+
+ Object.defineProperty(_exports, "__esModule", {
value: true
});
- exports.default = exports.Rtrace = exports.TOTAL_OVERHEAD = exports.OBJECT_OVERHEAD = exports.BLOCK_OVERHEAD = void 0;
+ _exports.default = _exports.TOTAL_OVERHEAD = _exports.Rtrace = _exports.OBJECT_OVERHEAD = _exports.BLOCK_OVERHEAD = void 0;
// WebAssembly pages are 65536 kb
const PAGE_SIZE_BITS = 16;
const PAGE_SIZE = 1 << PAGE_SIZE_BITS;
- const PAGE_MASK = PAGE_SIZE - 1; // Wasm32 pointer size is 4 bytes
-
+ const PAGE_MASK = PAGE_SIZE - 1;
+
+ // Wasm32 pointer size is 4 bytes
const PTR_SIZE_BITS = 2;
const PTR_SIZE = 1 << PTR_SIZE_BITS;
const PTR_MASK = PTR_SIZE - 1;
const PTR_VIEW = Uint32Array;
- const BLOCK_OVERHEAD = PTR_SIZE;
- exports.BLOCK_OVERHEAD = BLOCK_OVERHEAD;
- const OBJECT_OVERHEAD = 16;
- exports.OBJECT_OVERHEAD = OBJECT_OVERHEAD;
- const TOTAL_OVERHEAD = BLOCK_OVERHEAD + OBJECT_OVERHEAD;
- exports.TOTAL_OVERHEAD = TOTAL_OVERHEAD;
-
+ const BLOCK_OVERHEAD = _exports.BLOCK_OVERHEAD = PTR_SIZE;
+ const OBJECT_OVERHEAD = _exports.OBJECT_OVERHEAD = 16;
+ const TOTAL_OVERHEAD = _exports.TOTAL_OVERHEAD = BLOCK_OVERHEAD + OBJECT_OVERHEAD;
function assert(x) {
if (!x) throw Error("assertion failed");
return x;
}
-
Error.stackTraceLimit = 15;
-
function trimStacktrace(stack, levels) {
return stack.split(/\r?\n/).slice(1 + levels);
}
-
const hrtime = typeof performance !== "undefined" && performance.now ? performance.now : typeof process !== "undefined" && process.hrtime ? () => {
let t = process.hrtime();
return t[0] * 1e3 + t[1] / 1e6;
} : Date.now;
const mmTagsToString = ["", "FREE", "LEFTFREE", "FREE+LEFTFREE"];
const gcColorToString = ["BLACK/WHITE", "WHITE/BLACK", "GRAY", "INVALID"];
-
class Rtrace {
constructor(options) {
this.options = options || {};
-
- this.onerror = this.options.onerror || function () {
- /* nop */
- };
-
- this.oninfo = this.options.oninfo || function () {
- /* nop */
- };
-
- this.oncollect_ = this.options.oncollect || function () {
- /* nop */
- };
-
+ this.onerror = this.options.onerror || function () {/* nop */};
+ this.oninfo = this.options.oninfo || function () {/* nop */};
+ this.oncollect_ = this.options.oncollect || function () {/* nop */};
this.memory = null;
this.shadow = null;
this.shadowStart = 0x100000000;
@@ -70,7 +73,6 @@ var rtrace = (function(exports) {
this.freeCount = 0;
this.heapBase = 0x100000000;
}
-
install(imports) {
if (!imports) imports = {};
imports.rtrace = Object.assign(imports.rtrace || {}, {
@@ -88,9 +90,8 @@ var rtrace = (function(exports) {
});
return imports;
}
+
/** Synchronizes the shadow memory with the module's memory. */
-
-
syncShadow() {
if (!this.memory) {
this.memory = assert(this.options.getMemory());
@@ -98,85 +99,71 @@ var rtrace = (function(exports) {
initial: (this.memory.buffer.byteLength + PAGE_MASK & ~PAGE_MASK) >>> PAGE_SIZE_BITS
});
} else {
- var diff = this.memory.buffer.byteLength - this.shadow.buffer.byteLength;
+ let diff = this.memory.buffer.byteLength - this.shadow.buffer.byteLength;
if (diff > 0) this.shadow.grow(diff >>> 16);
}
}
+
/** Marks a block's presence in shadow memory. */
-
-
markShadow(info, oldSize = 0) {
assert(this.shadow && this.shadow.byteLength == this.memory.byteLength);
assert((info.size & PTR_MASK) == 0);
-
if (info.ptr < this.shadowStart) {
this.shadowStart = info.ptr;
}
-
- var len = info.size >>> PTR_SIZE_BITS;
- var view = new PTR_VIEW(this.shadow.buffer, info.ptr, len);
- var errored = false;
- var start = oldSize >>> PTR_SIZE_BITS;
-
+ let len = info.size >>> PTR_SIZE_BITS;
+ let view = new PTR_VIEW(this.shadow.buffer, info.ptr, len);
+ let errored = false;
+ let start = oldSize >>> PTR_SIZE_BITS;
for (let i = 0; i < start; ++i) {
if (view[i] != info.ptr && !errored) {
this.onerror(Error("shadow region mismatch: " + view[i] + " != " + info.ptr), info);
errored = true;
}
}
-
errored = false;
-
for (let i = start; i < len; ++i) {
if (view[i] != 0 && !errored) {
this.onerror(Error("shadow region already in use: " + view[i] + " != 0"), info);
errored = true;
}
-
view[i] = info.ptr;
}
}
+
/** Unmarks a block's presence in shadow memory. */
-
-
unmarkShadow(info, oldSize = info.size) {
assert(this.shadow && this.shadow.byteLength == this.memory.byteLength);
- var len = oldSize >>> PTR_SIZE_BITS;
- var view = new PTR_VIEW(this.shadow.buffer, info.ptr, len);
- var errored = false;
- var start = 0;
-
+ let len = oldSize >>> PTR_SIZE_BITS;
+ let view = new PTR_VIEW(this.shadow.buffer, info.ptr, len);
+ let errored = false;
+ let start = 0;
if (oldSize != info.size) {
assert(oldSize > info.size);
start = info.size >>> PTR_SIZE_BITS;
}
-
for (let i = 0; i < len; ++i) {
if (view[i] != info.ptr && !errored) {
this.onerror(Error("shadow region mismatch: " + view[i] + " != " + info.ptr), info);
errored = true;
}
-
if (i >= start) view[i] = 0;
}
}
+
/** Performs an access to shadow memory. */
-
-
accessShadow(ptr, size, isLoad, isRT) {
this.syncShadow();
if (ptr < this.shadowStart) return;
- var value = new Uint32Array(this.shadow.buffer, ptr & ~PTR_MASK, 1)[0];
+ let value = new Uint32Array(this.shadow.buffer, ptr & ~PTR_MASK, 1)[0];
if (value != 0) return;
-
if (!isRT) {
let stack = trimStacktrace(new Error().stack, 2);
this.onerror(new Error("OOB " + (isLoad ? "load" : "store") + 8 * size + " at address " + ptr + "\n" + stack.join("\n")));
}
}
+
/** Obtains information about a block. */
-
-
getBlockInfo(ptr) {
const [mmInfo, gcInfo, gcInfo2, rtId, rtSize] = new Uint32Array(this.memory.buffer, ptr, 5);
const size = mmInfo & ~3;
@@ -187,7 +174,6 @@ var rtrace = (function(exports) {
mmInfo: {
tags: mmTagsToString[mmInfo & 3],
size: size // as stored excl. overhead
-
},
gcInfo: {
color: gcColorToString[gcInfo & 3],
@@ -198,71 +184,61 @@ var rtrace = (function(exports) {
rtSize
};
}
+
/** Checks if rtrace is active, i.e. at least one event has occurred. */
-
-
get active() {
return Boolean(this.allocCount || this.resizeCount || this.moveCount || this.freeCount);
}
+
/** Checks if there are any leaks and emits them via `oninfo`. Returns the number of live blocks. */
-
-
check() {
if (this.oninfo) {
for (let [ptr, info] of this.blocks) {
this.oninfo("LIVE " + ptr + "\n" + info.allocStack.join("\n"));
}
}
-
return this.blocks.size;
- } // Runtime instrumentation
-
-
+ }
+
+ // Runtime instrumentation
+
oninit(heapBase) {
this.heapBase = heapBase;
this.gcProfileStart = 0;
this.gcProfile.length = 0;
this.oninfo("INIT heapBase=" + heapBase);
}
-
onalloc(ptr) {
this.syncShadow();
++this.allocCount;
- var info = this.getBlockInfo(ptr);
-
+ let info = this.getBlockInfo(ptr);
if (this.blocks.has(ptr)) {
this.onerror(Error("duplicate alloc: " + ptr), info);
} else {
this.oninfo("ALLOC " + ptr + ".." + (ptr + info.size));
this.markShadow(info);
let allocStack = trimStacktrace(new Error().stack, 1); // strip onalloc
-
this.blocks.set(ptr, Object.assign(info, {
allocStack
}));
}
}
-
onresize(ptr, oldSize) {
this.syncShadow();
++this.resizeCount;
const info = this.getBlockInfo(ptr);
-
if (!this.blocks.has(ptr)) {
this.onerror(Error("orphaned resize: " + ptr), info);
} else {
const beforeInfo = this.blocks.get(ptr);
-
if (beforeInfo.size != oldSize) {
this.onerror(Error(`size mismatch upon resize: ${ptr} (${beforeInfo.size} != ${oldSize})`), info);
}
-
const newSize = info.size;
this.oninfo("RESIZE " + ptr + ".." + (ptr + newSize) + " (" + oldSize + "->" + newSize + ")");
this.blocks.set(ptr, Object.assign(info, {
allocStack: beforeInfo.allocStack
}));
-
if (newSize > oldSize) {
this.markShadow(info, oldSize);
} else if (newSize < oldSize) {
@@ -270,13 +246,11 @@ var rtrace = (function(exports) {
}
}
}
-
onmove(oldPtr, newPtr) {
this.syncShadow();
++this.moveCount;
- var oldInfo = this.getBlockInfo(oldPtr);
- var newInfo = this.getBlockInfo(newPtr);
-
+ let oldInfo = this.getBlockInfo(oldPtr);
+ let newInfo = this.getBlockInfo(newPtr);
if (!this.blocks.has(oldPtr)) {
this.onerror(Error("orphaned move (old): " + oldPtr), oldInfo);
} else {
@@ -286,48 +260,39 @@ var rtrace = (function(exports) {
const beforeInfo = this.blocks.get(oldPtr);
const oldSize = oldInfo.size;
const newSize = newInfo.size;
-
if (beforeInfo.size != oldSize) {
this.onerror(Error(`size mismatch upon move: ${oldPtr} (${beforeInfo.size} != ${oldSize})`), oldInfo);
}
-
- this.oninfo("MOVE " + oldPtr + ".." + (oldPtr + oldSize) + " -> " + newPtr + ".." + (newPtr + newSize)); // calls new alloc before and old free after
+ this.oninfo("MOVE " + oldPtr + ".." + (oldPtr + oldSize) + " -> " + newPtr + ".." + (newPtr + newSize));
+ // calls new alloc before and old free after
}
}
}
-
onvisit(ptr) {
// Indicates that a block has been freed but it still visited by the GC
if (ptr > this.heapBase && !this.blocks.has(ptr)) {
let err = Error("orphaned visit: " + ptr);
let info = this.freedBlocks.get(ptr);
-
if (info) {
err.stack += "\n^ allocated at:\n" + info.allocStack.join("\n");
err.stack += "\n^ freed at:\n" + info.freeStack.join("\n");
}
-
this.onerror(err, null);
return false;
}
-
return true;
}
-
onfree(ptr) {
this.syncShadow();
++this.freeCount;
- var info = this.getBlockInfo(ptr);
-
+ let info = this.getBlockInfo(ptr);
if (!this.blocks.has(ptr)) {
this.onerror(Error("orphaned free: " + ptr), info);
} else {
const oldInfo = this.blocks.get(ptr);
-
if (info.size != oldInfo.size) {
this.onerror(Error(`size mismatch upon free: ${ptr} (${oldInfo.size} != ${info.size})`), info);
}
-
this.oninfo("FREE " + ptr + ".." + (ptr + info.size));
this.unmarkShadow(info);
const allocInfo = this.blocks.get(ptr);
@@ -335,56 +300,47 @@ var rtrace = (function(exports) {
const allocStack = allocInfo.allocStack;
const freeStack = trimStacktrace(new Error().stack, 1); // strip onfree
// (not much) TODO: Maintaining these is essentially a memory leak
-
this.freedBlocks.set(ptr, {
allocStack,
freeStack
});
}
}
-
oncollect(total) {
this.oninfo(`COLLECT at ${total}`);
this.plot(total);
this.oncollect_();
- } // GC profiling
-
-
+ }
+
+ // GC profiling
+
plot(total, pause = 0) {
if (!this.gcProfileStart) this.gcProfileStart = Date.now();
this.gcProfile.push([Date.now() - this.gcProfileStart, total, pause]);
}
-
oninterrupt(total) {
this.interruptStart = hrtime();
this.plot(total);
}
-
onyield(total) {
- var pause = hrtime() - this.interruptStart;
+ let pause = hrtime() - this.interruptStart;
if (pause >= 1) console.log("interrupted for " + pause.toFixed(1) + "ms");
this.plot(total, pause);
- } // Memory instrumentation
-
-
+ }
+
+ // Memory instrumentation
+
onstore(ptr, offset, bytes, isRT) {
this.accessShadow(ptr + offset, bytes, false, isRT);
return ptr;
}
-
onload(ptr, offset, bytes, isRT) {
this.accessShadow(ptr + offset, bytes, true, isRT);
return ptr;
}
-
}
-
- exports.Rtrace = Rtrace;
- var _default = {
+ _exports.Rtrace = Rtrace;
+ var _default = _exports.default = {
Rtrace
};
- exports.default = _default;
- return exports;
-})({});
-if (typeof define === 'function' && define.amd) define([], function() { return rtrace; });
-else if (typeof module === 'object' && typeof exports==='object') module.exports = rtrace;
+});
\ No newline at end of file
diff --git a/package-lock.json b/package-lock.json
index 51fbae811f..8590fc82fd 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -17,18 +17,18 @@
"asinit": "bin/asinit.js"
},
"devDependencies": {
- "@eslint/js": "^9.39.2",
- "@types/node": "^25.2.0",
- "@typescript-eslint/eslint-plugin": "^8.54.0",
- "@typescript-eslint/parser": "^8.54.0",
+ "@eslint/js": "^10.0.1",
+ "@types/node": "^25.3.5",
+ "@typescript-eslint/eslint-plugin": "^8.56.1",
+ "@typescript-eslint/parser": "^8.56.1",
"as-float": "^1.0.1",
"diff": "^8.0.3",
- "esbuild": "^0.27.2",
- "eslint": "^9.39.2",
- "glob": "^13.0.1",
- "globals": "^17.3.0",
+ "esbuild": "^0.27.3",
+ "eslint": "^10.0.3",
+ "glob": "^13.0.6",
+ "globals": "^17.4.0",
"typescript": "^5.9.3",
- "typescript-eslint": "^8.54.0"
+ "typescript-eslint": "^8.56.1"
},
"engines": {
"node": ">=24",
@@ -40,9 +40,9 @@
}
},
"node_modules/@esbuild/aix-ppc64": {
- "version": "0.27.2",
- "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.27.2.tgz",
- "integrity": "sha512-GZMB+a0mOMZs4MpDbj8RJp4cw+w1WV5NYD6xzgvzUJ5Ek2jerwfO2eADyI6ExDSUED+1X8aMbegahsJi+8mgpw==",
+ "version": "0.27.3",
+ "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.27.3.tgz",
+ "integrity": "sha512-9fJMTNFTWZMh5qwrBItuziu834eOCUcEqymSH7pY+zoMVEZg3gcPuBNxH1EvfVYe9h0x/Ptw8KBzv7qxb7l8dg==",
"cpu": [
"ppc64"
],
@@ -57,9 +57,9 @@
}
},
"node_modules/@esbuild/android-arm": {
- "version": "0.27.2",
- "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.27.2.tgz",
- "integrity": "sha512-DVNI8jlPa7Ujbr1yjU2PfUSRtAUZPG9I1RwW4F4xFB1Imiu2on0ADiI/c3td+KmDtVKNbi+nffGDQMfcIMkwIA==",
+ "version": "0.27.3",
+ "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.27.3.tgz",
+ "integrity": "sha512-i5D1hPY7GIQmXlXhs2w8AWHhenb00+GxjxRncS2ZM7YNVGNfaMxgzSGuO8o8SJzRc/oZwU2bcScvVERk03QhzA==",
"cpu": [
"arm"
],
@@ -74,9 +74,9 @@
}
},
"node_modules/@esbuild/android-arm64": {
- "version": "0.27.2",
- "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.27.2.tgz",
- "integrity": "sha512-pvz8ZZ7ot/RBphf8fv60ljmaoydPU12VuXHImtAs0XhLLw+EXBi2BLe3OYSBslR4rryHvweW5gmkKFwTiFy6KA==",
+ "version": "0.27.3",
+ "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.27.3.tgz",
+ "integrity": "sha512-YdghPYUmj/FX2SYKJ0OZxf+iaKgMsKHVPF1MAq/P8WirnSpCStzKJFjOjzsW0QQ7oIAiccHdcqjbHmJxRb/dmg==",
"cpu": [
"arm64"
],
@@ -91,9 +91,9 @@
}
},
"node_modules/@esbuild/android-x64": {
- "version": "0.27.2",
- "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.27.2.tgz",
- "integrity": "sha512-z8Ank4Byh4TJJOh4wpz8g2vDy75zFL0TlZlkUkEwYXuPSgX8yzep596n6mT7905kA9uHZsf/o2OJZubl2l3M7A==",
+ "version": "0.27.3",
+ "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.27.3.tgz",
+ "integrity": "sha512-IN/0BNTkHtk8lkOM8JWAYFg4ORxBkZQf9zXiEOfERX/CzxW3Vg1ewAhU7QSWQpVIzTW+b8Xy+lGzdYXV6UZObQ==",
"cpu": [
"x64"
],
@@ -108,9 +108,9 @@
}
},
"node_modules/@esbuild/darwin-arm64": {
- "version": "0.27.2",
- "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.27.2.tgz",
- "integrity": "sha512-davCD2Zc80nzDVRwXTcQP/28fiJbcOwvdolL0sOiOsbwBa72kegmVU0Wrh1MYrbuCL98Omp5dVhQFWRKR2ZAlg==",
+ "version": "0.27.3",
+ "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.27.3.tgz",
+ "integrity": "sha512-Re491k7ByTVRy0t3EKWajdLIr0gz2kKKfzafkth4Q8A5n1xTHrkqZgLLjFEHVD+AXdUGgQMq+Godfq45mGpCKg==",
"cpu": [
"arm64"
],
@@ -125,9 +125,9 @@
}
},
"node_modules/@esbuild/darwin-x64": {
- "version": "0.27.2",
- "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.27.2.tgz",
- "integrity": "sha512-ZxtijOmlQCBWGwbVmwOF/UCzuGIbUkqB1faQRf5akQmxRJ1ujusWsb3CVfk/9iZKr2L5SMU5wPBi1UWbvL+VQA==",
+ "version": "0.27.3",
+ "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.27.3.tgz",
+ "integrity": "sha512-vHk/hA7/1AckjGzRqi6wbo+jaShzRowYip6rt6q7VYEDX4LEy1pZfDpdxCBnGtl+A5zq8iXDcyuxwtv3hNtHFg==",
"cpu": [
"x64"
],
@@ -142,9 +142,9 @@
}
},
"node_modules/@esbuild/freebsd-arm64": {
- "version": "0.27.2",
- "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.27.2.tgz",
- "integrity": "sha512-lS/9CN+rgqQ9czogxlMcBMGd+l8Q3Nj1MFQwBZJyoEKI50XGxwuzznYdwcav6lpOGv5BqaZXqvBSiB/kJ5op+g==",
+ "version": "0.27.3",
+ "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.27.3.tgz",
+ "integrity": "sha512-ipTYM2fjt3kQAYOvo6vcxJx3nBYAzPjgTCk7QEgZG8AUO3ydUhvelmhrbOheMnGOlaSFUoHXB6un+A7q4ygY9w==",
"cpu": [
"arm64"
],
@@ -159,9 +159,9 @@
}
},
"node_modules/@esbuild/freebsd-x64": {
- "version": "0.27.2",
- "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.27.2.tgz",
- "integrity": "sha512-tAfqtNYb4YgPnJlEFu4c212HYjQWSO/w/h/lQaBK7RbwGIkBOuNKQI9tqWzx7Wtp7bTPaGC6MJvWI608P3wXYA==",
+ "version": "0.27.3",
+ "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.27.3.tgz",
+ "integrity": "sha512-dDk0X87T7mI6U3K9VjWtHOXqwAMJBNN2r7bejDsc+j03SEjtD9HrOl8gVFByeM0aJksoUuUVU9TBaZa2rgj0oA==",
"cpu": [
"x64"
],
@@ -176,9 +176,9 @@
}
},
"node_modules/@esbuild/linux-arm": {
- "version": "0.27.2",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.27.2.tgz",
- "integrity": "sha512-vWfq4GaIMP9AIe4yj1ZUW18RDhx6EPQKjwe7n8BbIecFtCQG4CfHGaHuh7fdfq+y3LIA2vGS/o9ZBGVxIDi9hw==",
+ "version": "0.27.3",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.27.3.tgz",
+ "integrity": "sha512-s6nPv2QkSupJwLYyfS+gwdirm0ukyTFNl3KTgZEAiJDd+iHZcbTPPcWCcRYH+WlNbwChgH2QkE9NSlNrMT8Gfw==",
"cpu": [
"arm"
],
@@ -193,9 +193,9 @@
}
},
"node_modules/@esbuild/linux-arm64": {
- "version": "0.27.2",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.27.2.tgz",
- "integrity": "sha512-hYxN8pr66NsCCiRFkHUAsxylNOcAQaxSSkHMMjcpx0si13t1LHFphxJZUiGwojB1a/Hd5OiPIqDdXONia6bhTw==",
+ "version": "0.27.3",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.27.3.tgz",
+ "integrity": "sha512-sZOuFz/xWnZ4KH3YfFrKCf1WyPZHakVzTiqji3WDc0BCl2kBwiJLCXpzLzUBLgmp4veFZdvN5ChW4Eq/8Fc2Fg==",
"cpu": [
"arm64"
],
@@ -210,9 +210,9 @@
}
},
"node_modules/@esbuild/linux-ia32": {
- "version": "0.27.2",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.27.2.tgz",
- "integrity": "sha512-MJt5BRRSScPDwG2hLelYhAAKh9imjHK5+NE/tvnRLbIqUWa+0E9N4WNMjmp/kXXPHZGqPLxggwVhz7QP8CTR8w==",
+ "version": "0.27.3",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.27.3.tgz",
+ "integrity": "sha512-yGlQYjdxtLdh0a3jHjuwOrxQjOZYD/C9PfdbgJJF3TIZWnm/tMd/RcNiLngiu4iwcBAOezdnSLAwQDPqTmtTYg==",
"cpu": [
"ia32"
],
@@ -227,9 +227,9 @@
}
},
"node_modules/@esbuild/linux-loong64": {
- "version": "0.27.2",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.27.2.tgz",
- "integrity": "sha512-lugyF1atnAT463aO6KPshVCJK5NgRnU4yb3FUumyVz+cGvZbontBgzeGFO1nF+dPueHD367a2ZXe1NtUkAjOtg==",
+ "version": "0.27.3",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.27.3.tgz",
+ "integrity": "sha512-WO60Sn8ly3gtzhyjATDgieJNet/KqsDlX5nRC5Y3oTFcS1l0KWba+SEa9Ja1GfDqSF1z6hif/SkpQJbL63cgOA==",
"cpu": [
"loong64"
],
@@ -244,9 +244,9 @@
}
},
"node_modules/@esbuild/linux-mips64el": {
- "version": "0.27.2",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.27.2.tgz",
- "integrity": "sha512-nlP2I6ArEBewvJ2gjrrkESEZkB5mIoaTswuqNFRv/WYd+ATtUpe9Y09RnJvgvdag7he0OWgEZWhviS1OTOKixw==",
+ "version": "0.27.3",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.27.3.tgz",
+ "integrity": "sha512-APsymYA6sGcZ4pD6k+UxbDjOFSvPWyZhjaiPyl/f79xKxwTnrn5QUnXR5prvetuaSMsb4jgeHewIDCIWljrSxw==",
"cpu": [
"mips64el"
],
@@ -261,9 +261,9 @@
}
},
"node_modules/@esbuild/linux-ppc64": {
- "version": "0.27.2",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.27.2.tgz",
- "integrity": "sha512-C92gnpey7tUQONqg1n6dKVbx3vphKtTHJaNG2Ok9lGwbZil6DrfyecMsp9CrmXGQJmZ7iiVXvvZH6Ml5hL6XdQ==",
+ "version": "0.27.3",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.27.3.tgz",
+ "integrity": "sha512-eizBnTeBefojtDb9nSh4vvVQ3V9Qf9Df01PfawPcRzJH4gFSgrObw+LveUyDoKU3kxi5+9RJTCWlj4FjYXVPEA==",
"cpu": [
"ppc64"
],
@@ -278,9 +278,9 @@
}
},
"node_modules/@esbuild/linux-riscv64": {
- "version": "0.27.2",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.27.2.tgz",
- "integrity": "sha512-B5BOmojNtUyN8AXlK0QJyvjEZkWwy/FKvakkTDCziX95AowLZKR6aCDhG7LeF7uMCXEJqwa8Bejz5LTPYm8AvA==",
+ "version": "0.27.3",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.27.3.tgz",
+ "integrity": "sha512-3Emwh0r5wmfm3ssTWRQSyVhbOHvqegUDRd0WhmXKX2mkHJe1SFCMJhagUleMq+Uci34wLSipf8Lagt4LlpRFWQ==",
"cpu": [
"riscv64"
],
@@ -295,9 +295,9 @@
}
},
"node_modules/@esbuild/linux-s390x": {
- "version": "0.27.2",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.27.2.tgz",
- "integrity": "sha512-p4bm9+wsPwup5Z8f4EpfN63qNagQ47Ua2znaqGH6bqLlmJ4bx97Y9JdqxgGZ6Y8xVTixUnEkoKSHcpRlDnNr5w==",
+ "version": "0.27.3",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.27.3.tgz",
+ "integrity": "sha512-pBHUx9LzXWBc7MFIEEL0yD/ZVtNgLytvx60gES28GcWMqil8ElCYR4kvbV2BDqsHOvVDRrOxGySBM9Fcv744hw==",
"cpu": [
"s390x"
],
@@ -312,9 +312,9 @@
}
},
"node_modules/@esbuild/linux-x64": {
- "version": "0.27.2",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.27.2.tgz",
- "integrity": "sha512-uwp2Tip5aPmH+NRUwTcfLb+W32WXjpFejTIOWZFw/v7/KnpCDKG66u4DLcurQpiYTiYwQ9B7KOeMJvLCu/OvbA==",
+ "version": "0.27.3",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.27.3.tgz",
+ "integrity": "sha512-Czi8yzXUWIQYAtL/2y6vogER8pvcsOsk5cpwL4Gk5nJqH5UZiVByIY8Eorm5R13gq+DQKYg0+JyQoytLQas4dA==",
"cpu": [
"x64"
],
@@ -329,9 +329,9 @@
}
},
"node_modules/@esbuild/netbsd-arm64": {
- "version": "0.27.2",
- "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.27.2.tgz",
- "integrity": "sha512-Kj6DiBlwXrPsCRDeRvGAUb/LNrBASrfqAIok+xB0LxK8CHqxZ037viF13ugfsIpePH93mX7xfJp97cyDuTZ3cw==",
+ "version": "0.27.3",
+ "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.27.3.tgz",
+ "integrity": "sha512-sDpk0RgmTCR/5HguIZa9n9u+HVKf40fbEUt+iTzSnCaGvY9kFP0YKBWZtJaraonFnqef5SlJ8/TiPAxzyS+UoA==",
"cpu": [
"arm64"
],
@@ -346,9 +346,9 @@
}
},
"node_modules/@esbuild/netbsd-x64": {
- "version": "0.27.2",
- "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.27.2.tgz",
- "integrity": "sha512-HwGDZ0VLVBY3Y+Nw0JexZy9o/nUAWq9MlV7cahpaXKW6TOzfVno3y3/M8Ga8u8Yr7GldLOov27xiCnqRZf0tCA==",
+ "version": "0.27.3",
+ "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.27.3.tgz",
+ "integrity": "sha512-P14lFKJl/DdaE00LItAukUdZO5iqNH7+PjoBm+fLQjtxfcfFE20Xf5CrLsmZdq5LFFZzb5JMZ9grUwvtVYzjiA==",
"cpu": [
"x64"
],
@@ -363,9 +363,9 @@
}
},
"node_modules/@esbuild/openbsd-arm64": {
- "version": "0.27.2",
- "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.27.2.tgz",
- "integrity": "sha512-DNIHH2BPQ5551A7oSHD0CKbwIA/Ox7+78/AWkbS5QoRzaqlev2uFayfSxq68EkonB+IKjiuxBFoV8ESJy8bOHA==",
+ "version": "0.27.3",
+ "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.27.3.tgz",
+ "integrity": "sha512-AIcMP77AvirGbRl/UZFTq5hjXK+2wC7qFRGoHSDrZ5v5b8DK/GYpXW3CPRL53NkvDqb9D+alBiC/dV0Fb7eJcw==",
"cpu": [
"arm64"
],
@@ -380,9 +380,9 @@
}
},
"node_modules/@esbuild/openbsd-x64": {
- "version": "0.27.2",
- "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.27.2.tgz",
- "integrity": "sha512-/it7w9Nb7+0KFIzjalNJVR5bOzA9Vay+yIPLVHfIQYG/j+j9VTH84aNB8ExGKPU4AzfaEvN9/V4HV+F+vo8OEg==",
+ "version": "0.27.3",
+ "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.27.3.tgz",
+ "integrity": "sha512-DnW2sRrBzA+YnE70LKqnM3P+z8vehfJWHXECbwBmH/CU51z6FiqTQTHFenPlHmo3a8UgpLyH3PT+87OViOh1AQ==",
"cpu": [
"x64"
],
@@ -397,9 +397,9 @@
}
},
"node_modules/@esbuild/openharmony-arm64": {
- "version": "0.27.2",
- "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.27.2.tgz",
- "integrity": "sha512-LRBbCmiU51IXfeXk59csuX/aSaToeG7w48nMwA6049Y4J4+VbWALAuXcs+qcD04rHDuSCSRKdmY63sruDS5qag==",
+ "version": "0.27.3",
+ "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.27.3.tgz",
+ "integrity": "sha512-NinAEgr/etERPTsZJ7aEZQvvg/A6IsZG/LgZy+81wON2huV7SrK3e63dU0XhyZP4RKGyTm7aOgmQk0bGp0fy2g==",
"cpu": [
"arm64"
],
@@ -414,9 +414,9 @@
}
},
"node_modules/@esbuild/sunos-x64": {
- "version": "0.27.2",
- "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.27.2.tgz",
- "integrity": "sha512-kMtx1yqJHTmqaqHPAzKCAkDaKsffmXkPHThSfRwZGyuqyIeBvf08KSsYXl+abf5HDAPMJIPnbBfXvP2ZC2TfHg==",
+ "version": "0.27.3",
+ "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.27.3.tgz",
+ "integrity": "sha512-PanZ+nEz+eWoBJ8/f8HKxTTD172SKwdXebZ0ndd953gt1HRBbhMsaNqjTyYLGLPdoWHy4zLU7bDVJztF5f3BHA==",
"cpu": [
"x64"
],
@@ -431,9 +431,9 @@
}
},
"node_modules/@esbuild/win32-arm64": {
- "version": "0.27.2",
- "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.27.2.tgz",
- "integrity": "sha512-Yaf78O/B3Kkh+nKABUF++bvJv5Ijoy9AN1ww904rOXZFLWVc5OLOfL56W+C8F9xn5JQZa3UX6m+IktJnIb1Jjg==",
+ "version": "0.27.3",
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.27.3.tgz",
+ "integrity": "sha512-B2t59lWWYrbRDw/tjiWOuzSsFh1Y/E95ofKz7rIVYSQkUYBjfSgf6oeYPNWHToFRr2zx52JKApIcAS/D5TUBnA==",
"cpu": [
"arm64"
],
@@ -448,9 +448,9 @@
}
},
"node_modules/@esbuild/win32-ia32": {
- "version": "0.27.2",
- "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.27.2.tgz",
- "integrity": "sha512-Iuws0kxo4yusk7sw70Xa2E2imZU5HoixzxfGCdxwBdhiDgt9vX9VUCBhqcwY7/uh//78A1hMkkROMJq9l27oLQ==",
+ "version": "0.27.3",
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.27.3.tgz",
+ "integrity": "sha512-QLKSFeXNS8+tHW7tZpMtjlNb7HKau0QDpwm49u0vUp9y1WOF+PEzkU84y9GqYaAVW8aH8f3GcBck26jh54cX4Q==",
"cpu": [
"ia32"
],
@@ -465,9 +465,9 @@
}
},
"node_modules/@esbuild/win32-x64": {
- "version": "0.27.2",
- "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.27.2.tgz",
- "integrity": "sha512-sRdU18mcKf7F+YgheI/zGf5alZatMUTKj/jNS6l744f9u3WFu4v7twcUI9vu4mknF4Y9aDlblIie0IM+5xxaqQ==",
+ "version": "0.27.3",
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.27.3.tgz",
+ "integrity": "sha512-4uJGhsxuptu3OcpVAzli+/gWusVGwZZHTlS63hh++ehExkVT8SgiEf7/uC/PclrPPkLhZqGgCTjd0VWLo6xMqA==",
"cpu": [
"x64"
],
@@ -511,176 +511,89 @@
}
},
"node_modules/@eslint/config-array": {
- "version": "0.21.1",
- "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.21.1.tgz",
- "integrity": "sha512-aw1gNayWpdI/jSYVgzN5pL0cfzU02GT3NBpeT/DXbx1/1x7ZKxFPd9bwrzygx/qiwIQiJ1sw/zD8qY/kRvlGHA==",
+ "version": "0.23.3",
+ "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.23.3.tgz",
+ "integrity": "sha512-j+eEWmB6YYLwcNOdlwQ6L2OsptI/LO6lNBuLIqe5R7RetD658HLoF+Mn7LzYmAWWNNzdC6cqP+L6r8ujeYXWLw==",
"dev": true,
"license": "Apache-2.0",
"dependencies": {
- "@eslint/object-schema": "^2.1.7",
+ "@eslint/object-schema": "^3.0.3",
"debug": "^4.3.1",
- "minimatch": "^3.1.2"
+ "minimatch": "^10.2.4"
},
"engines": {
- "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
- }
- },
- "node_modules/@eslint/config-array/node_modules/brace-expansion": {
- "version": "1.1.12",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz",
- "integrity": "sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "balanced-match": "^1.0.0",
- "concat-map": "0.0.1"
- }
- },
- "node_modules/@eslint/config-array/node_modules/minimatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
- "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "brace-expansion": "^1.1.7"
- },
- "engines": {
- "node": "*"
+ "node": "^20.19.0 || ^22.13.0 || >=24"
}
},
"node_modules/@eslint/config-helpers": {
- "version": "0.4.2",
- "resolved": "https://registry.npmjs.org/@eslint/config-helpers/-/config-helpers-0.4.2.tgz",
- "integrity": "sha512-gBrxN88gOIf3R7ja5K9slwNayVcZgK6SOUORm2uBzTeIEfeVaIhOpCtTox3P6R7o2jLFwLFTLnC7kU/RGcYEgw==",
+ "version": "0.5.3",
+ "resolved": "https://registry.npmjs.org/@eslint/config-helpers/-/config-helpers-0.5.3.tgz",
+ "integrity": "sha512-lzGN0onllOZCGroKJmRwY6QcEHxbjBw1gwB8SgRSqK8YbbtEXMvKynsXc3553ckIEBxsbMBU7oOZXKIPGZNeZw==",
"dev": true,
"license": "Apache-2.0",
"dependencies": {
- "@eslint/core": "^0.17.0"
+ "@eslint/core": "^1.1.1"
},
"engines": {
- "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
+ "node": "^20.19.0 || ^22.13.0 || >=24"
}
},
"node_modules/@eslint/core": {
- "version": "0.17.0",
- "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.17.0.tgz",
- "integrity": "sha512-yL/sLrpmtDaFEiUj1osRP4TI2MDz1AddJL+jZ7KSqvBuliN4xqYY54IfdN8qD8Toa6g1iloph1fxQNkjOxrrpQ==",
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/@eslint/core/-/core-1.1.1.tgz",
+ "integrity": "sha512-QUPblTtE51/7/Zhfv8BDwO0qkkzQL7P/aWWbqcf4xWLEYn1oKjdO0gglQBB4GAsu7u6wjijbCmzsUTy6mnk6oQ==",
"dev": true,
"license": "Apache-2.0",
"dependencies": {
"@types/json-schema": "^7.0.15"
},
"engines": {
- "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
- }
- },
- "node_modules/@eslint/eslintrc": {
- "version": "3.3.3",
- "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.3.3.tgz",
- "integrity": "sha512-Kr+LPIUVKz2qkx1HAMH8q1q6azbqBAsXJUxBl/ODDuVPX45Z9DfwB8tPjTi6nNZ8BuM3nbJxC5zCAg5elnBUTQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ajv": "^6.12.4",
- "debug": "^4.3.2",
- "espree": "^10.0.1",
- "globals": "^14.0.0",
- "ignore": "^5.2.0",
- "import-fresh": "^3.2.1",
- "js-yaml": "^4.1.1",
- "minimatch": "^3.1.2",
- "strip-json-comments": "^3.1.1"
- },
- "engines": {
- "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
- },
- "funding": {
- "url": "https://opencollective.com/eslint"
- }
- },
- "node_modules/@eslint/eslintrc/node_modules/brace-expansion": {
- "version": "1.1.12",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz",
- "integrity": "sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "balanced-match": "^1.0.0",
- "concat-map": "0.0.1"
- }
- },
- "node_modules/@eslint/eslintrc/node_modules/globals": {
- "version": "14.0.0",
- "resolved": "https://registry.npmjs.org/globals/-/globals-14.0.0.tgz",
- "integrity": "sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=18"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/@eslint/eslintrc/node_modules/ignore": {
- "version": "5.3.2",
- "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz",
- "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 4"
- }
- },
- "node_modules/@eslint/eslintrc/node_modules/minimatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
- "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "brace-expansion": "^1.1.7"
- },
- "engines": {
- "node": "*"
+ "node": "^20.19.0 || ^22.13.0 || >=24"
}
},
"node_modules/@eslint/js": {
- "version": "9.39.2",
- "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.39.2.tgz",
- "integrity": "sha512-q1mjIoW1VX4IvSocvM/vbTiveKC4k9eLrajNEuSsmjymSDEbpGddtpfOoN7YGAqBK3NG+uqo8ia4PDTt8buCYA==",
+ "version": "10.0.1",
+ "resolved": "https://registry.npmjs.org/@eslint/js/-/js-10.0.1.tgz",
+ "integrity": "sha512-zeR9k5pd4gxjZ0abRoIaxdc7I3nDktoXZk2qOv9gCNWx3mVwEn32VRhyLaRsDiJjTs0xq/T8mfPtyuXu7GWBcA==",
"dev": true,
"license": "MIT",
"engines": {
- "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
+ "node": "^20.19.0 || ^22.13.0 || >=24"
},
"funding": {
"url": "https://eslint.org/donate"
+ },
+ "peerDependencies": {
+ "eslint": "^10.0.0"
+ },
+ "peerDependenciesMeta": {
+ "eslint": {
+ "optional": true
+ }
}
},
"node_modules/@eslint/object-schema": {
- "version": "2.1.7",
- "resolved": "https://registry.npmjs.org/@eslint/object-schema/-/object-schema-2.1.7.tgz",
- "integrity": "sha512-VtAOaymWVfZcmZbp6E2mympDIHvyjXs/12LqWYjVw6qjrfF+VK+fyG33kChz3nnK+SU5/NeHOqrTEHS8sXO3OA==",
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/@eslint/object-schema/-/object-schema-3.0.3.tgz",
+ "integrity": "sha512-iM869Pugn9Nsxbh/YHRqYiqd23AmIbxJOcpUMOuWCVNdoQJ5ZtwL6h3t0bcZzJUlC3Dq9jCFCESBZnX0GTv7iQ==",
"dev": true,
"license": "Apache-2.0",
"engines": {
- "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
+ "node": "^20.19.0 || ^22.13.0 || >=24"
}
},
"node_modules/@eslint/plugin-kit": {
- "version": "0.4.1",
- "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.4.1.tgz",
- "integrity": "sha512-43/qtrDUokr7LJqoF2c3+RInu/t4zfrpYdoSDfYyhg52rwLV6TnOvdG4fXm7IkSB3wErkcmJS9iEhjVtOSEjjA==",
+ "version": "0.6.1",
+ "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.6.1.tgz",
+ "integrity": "sha512-iH1B076HoAshH1mLpHMgwdGeTs0CYwL0SPMkGuSebZrwBp16v415e9NZXg2jtrqPVQjf6IANe2Vtlr5KswtcZQ==",
"dev": true,
"license": "Apache-2.0",
"dependencies": {
- "@eslint/core": "^0.17.0",
+ "@eslint/core": "^1.1.1",
"levn": "^0.4.1"
},
"engines": {
- "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
+ "node": "^20.19.0 || ^22.13.0 || >=24"
}
},
"node_modules/@humanfs/core": {
@@ -735,28 +648,12 @@
"url": "https://github.com/sponsors/nzakas"
}
},
- "node_modules/@isaacs/balanced-match": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/@isaacs/balanced-match/-/balanced-match-4.0.1.tgz",
- "integrity": "sha512-yzMTt9lEb8Gv7zRioUilSglI0c0smZ9k5D65677DLWLtWJaXIS3CqcGyUFByYKlnUj6TkjLVs54fBl6+TiGQDQ==",
+ "node_modules/@types/esrecurse": {
+ "version": "4.3.1",
+ "resolved": "https://registry.npmjs.org/@types/esrecurse/-/esrecurse-4.3.1.tgz",
+ "integrity": "sha512-xJBAbDifo5hpffDBuHl0Y8ywswbiAp/Wi7Y/GtAgSlZyIABppyurxVueOPE8LUQOxdlgi6Zqce7uoEpqNTeiUw==",
"dev": true,
- "license": "MIT",
- "engines": {
- "node": "20 || >=22"
- }
- },
- "node_modules/@isaacs/brace-expansion": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/@isaacs/brace-expansion/-/brace-expansion-5.0.1.tgz",
- "integrity": "sha512-WMz71T1JS624nWj2n2fnYAuPovhv7EUhk69R6i9dsVyzxt5eM3bjwvgk9L+APE1TRscGysAVMANkB0jh0LQZrQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@isaacs/balanced-match": "^4.0.1"
- },
- "engines": {
- "node": "20 || >=22"
- }
+ "license": "MIT"
},
"node_modules/@types/estree": {
"version": "1.0.8",
@@ -773,27 +670,27 @@
"license": "MIT"
},
"node_modules/@types/node": {
- "version": "25.2.0",
- "resolved": "https://registry.npmjs.org/@types/node/-/node-25.2.0.tgz",
- "integrity": "sha512-DZ8VwRFUNzuqJ5khrvwMXHmvPe+zGayJhr2CDNiKB1WBE1ST8Djl00D0IC4vvNmHMdj6DlbYRIaFE7WHjlDl5w==",
+ "version": "25.3.5",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-25.3.5.tgz",
+ "integrity": "sha512-oX8xrhvpiyRCQkG1MFchB09f+cXftgIXb3a7UUa4Y3wpmZPw5tyZGTLWhlESOLq1Rq6oDlc8npVU2/9xiCuXMA==",
"dev": true,
"license": "MIT",
"dependencies": {
- "undici-types": "~7.16.0"
+ "undici-types": "~7.18.0"
}
},
"node_modules/@typescript-eslint/eslint-plugin": {
- "version": "8.54.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.54.0.tgz",
- "integrity": "sha512-hAAP5io/7csFStuOmR782YmTthKBJ9ND3WVL60hcOjvtGFb+HJxH4O5huAcmcZ9v9G8P+JETiZ/G1B8MALnWZQ==",
+ "version": "8.56.1",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.56.1.tgz",
+ "integrity": "sha512-Jz9ZztpB37dNC+HU2HI28Bs9QXpzCz+y/twHOwhyrIRdbuVDxSytJNDl6z/aAKlaRIwC7y8wJdkBv7FxYGgi0A==",
"dev": true,
"license": "MIT",
"dependencies": {
"@eslint-community/regexpp": "^4.12.2",
- "@typescript-eslint/scope-manager": "8.54.0",
- "@typescript-eslint/type-utils": "8.54.0",
- "@typescript-eslint/utils": "8.54.0",
- "@typescript-eslint/visitor-keys": "8.54.0",
+ "@typescript-eslint/scope-manager": "8.56.1",
+ "@typescript-eslint/type-utils": "8.56.1",
+ "@typescript-eslint/utils": "8.56.1",
+ "@typescript-eslint/visitor-keys": "8.56.1",
"ignore": "^7.0.5",
"natural-compare": "^1.4.0",
"ts-api-utils": "^2.4.0"
@@ -806,22 +703,22 @@
"url": "https://opencollective.com/typescript-eslint"
},
"peerDependencies": {
- "@typescript-eslint/parser": "^8.54.0",
- "eslint": "^8.57.0 || ^9.0.0",
+ "@typescript-eslint/parser": "^8.56.1",
+ "eslint": "^8.57.0 || ^9.0.0 || ^10.0.0",
"typescript": ">=4.8.4 <6.0.0"
}
},
"node_modules/@typescript-eslint/parser": {
- "version": "8.54.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.54.0.tgz",
- "integrity": "sha512-BtE0k6cjwjLZoZixN0t5AKP0kSzlGu7FctRXYuPAm//aaiZhmfq1JwdYpYr1brzEspYyFeF+8XF5j2VK6oalrA==",
+ "version": "8.56.1",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.56.1.tgz",
+ "integrity": "sha512-klQbnPAAiGYFyI02+znpBRLyjL4/BrBd0nyWkdC0s/6xFLkXYQ8OoRrSkqacS1ddVxf/LDyODIKbQ5TgKAf/Fg==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@typescript-eslint/scope-manager": "8.54.0",
- "@typescript-eslint/types": "8.54.0",
- "@typescript-eslint/typescript-estree": "8.54.0",
- "@typescript-eslint/visitor-keys": "8.54.0",
+ "@typescript-eslint/scope-manager": "8.56.1",
+ "@typescript-eslint/types": "8.56.1",
+ "@typescript-eslint/typescript-estree": "8.56.1",
+ "@typescript-eslint/visitor-keys": "8.56.1",
"debug": "^4.4.3"
},
"engines": {
@@ -832,19 +729,19 @@
"url": "https://opencollective.com/typescript-eslint"
},
"peerDependencies": {
- "eslint": "^8.57.0 || ^9.0.0",
+ "eslint": "^8.57.0 || ^9.0.0 || ^10.0.0",
"typescript": ">=4.8.4 <6.0.0"
}
},
"node_modules/@typescript-eslint/project-service": {
- "version": "8.54.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.54.0.tgz",
- "integrity": "sha512-YPf+rvJ1s7MyiWM4uTRhE4DvBXrEV+d8oC3P9Y2eT7S+HBS0clybdMIPnhiATi9vZOYDc7OQ1L/i6ga6NFYK/g==",
+ "version": "8.56.1",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.56.1.tgz",
+ "integrity": "sha512-TAdqQTzHNNvlVFfR+hu2PDJrURiwKsUvxFn1M0h95BB8ah5jejas08jUWG4dBA68jDMI988IvtfdAI53JzEHOQ==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@typescript-eslint/tsconfig-utils": "^8.54.0",
- "@typescript-eslint/types": "^8.54.0",
+ "@typescript-eslint/tsconfig-utils": "^8.56.1",
+ "@typescript-eslint/types": "^8.56.1",
"debug": "^4.4.3"
},
"engines": {
@@ -859,14 +756,14 @@
}
},
"node_modules/@typescript-eslint/scope-manager": {
- "version": "8.54.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.54.0.tgz",
- "integrity": "sha512-27rYVQku26j/PbHYcVfRPonmOlVI6gihHtXFbTdB5sb6qA0wdAQAbyXFVarQ5t4HRojIz64IV90YtsjQSSGlQg==",
+ "version": "8.56.1",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.56.1.tgz",
+ "integrity": "sha512-YAi4VDKcIZp0O4tz/haYKhmIDZFEUPOreKbfdAN3SzUDMcPhJ8QI99xQXqX+HoUVq8cs85eRKnD+rne2UAnj2w==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@typescript-eslint/types": "8.54.0",
- "@typescript-eslint/visitor-keys": "8.54.0"
+ "@typescript-eslint/types": "8.56.1",
+ "@typescript-eslint/visitor-keys": "8.56.1"
},
"engines": {
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -877,9 +774,9 @@
}
},
"node_modules/@typescript-eslint/tsconfig-utils": {
- "version": "8.54.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.54.0.tgz",
- "integrity": "sha512-dRgOyT2hPk/JwxNMZDsIXDgyl9axdJI3ogZ2XWhBPsnZUv+hPesa5iuhdYt2gzwA9t8RE5ytOJ6xB0moV0Ujvw==",
+ "version": "8.56.1",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.56.1.tgz",
+ "integrity": "sha512-qOtCYzKEeyr3aR9f28mPJqBty7+DBqsdd63eO0yyDwc6vgThj2UjWfJIcsFeSucYydqcuudMOprZ+x1SpF3ZuQ==",
"dev": true,
"license": "MIT",
"engines": {
@@ -894,15 +791,15 @@
}
},
"node_modules/@typescript-eslint/type-utils": {
- "version": "8.54.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.54.0.tgz",
- "integrity": "sha512-hiLguxJWHjjwL6xMBwD903ciAwd7DmK30Y9Axs/etOkftC3ZNN9K44IuRD/EB08amu+Zw6W37x9RecLkOo3pMA==",
+ "version": "8.56.1",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.56.1.tgz",
+ "integrity": "sha512-yB/7dxi7MgTtGhZdaHCemf7PuwrHMenHjmzgUW1aJpO+bBU43OycnM3Wn+DdvDO/8zzA9HlhaJ0AUGuvri4oGg==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@typescript-eslint/types": "8.54.0",
- "@typescript-eslint/typescript-estree": "8.54.0",
- "@typescript-eslint/utils": "8.54.0",
+ "@typescript-eslint/types": "8.56.1",
+ "@typescript-eslint/typescript-estree": "8.56.1",
+ "@typescript-eslint/utils": "8.56.1",
"debug": "^4.4.3",
"ts-api-utils": "^2.4.0"
},
@@ -914,14 +811,14 @@
"url": "https://opencollective.com/typescript-eslint"
},
"peerDependencies": {
- "eslint": "^8.57.0 || ^9.0.0",
+ "eslint": "^8.57.0 || ^9.0.0 || ^10.0.0",
"typescript": ">=4.8.4 <6.0.0"
}
},
"node_modules/@typescript-eslint/types": {
- "version": "8.54.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.54.0.tgz",
- "integrity": "sha512-PDUI9R1BVjqu7AUDsRBbKMtwmjWcn4J3le+5LpcFgWULN3LvHC5rkc9gCVxbrsrGmO1jfPybN5s6h4Jy+OnkAA==",
+ "version": "8.56.1",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.56.1.tgz",
+ "integrity": "sha512-dbMkdIUkIkchgGDIv7KLUpa0Mda4IYjo4IAMJUZ+3xNoUXxMsk9YtKpTHSChRS85o+H9ftm51gsK1dZReY9CVw==",
"dev": true,
"license": "MIT",
"engines": {
@@ -933,18 +830,18 @@
}
},
"node_modules/@typescript-eslint/typescript-estree": {
- "version": "8.54.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.54.0.tgz",
- "integrity": "sha512-BUwcskRaPvTk6fzVWgDPdUndLjB87KYDrN5EYGetnktoeAvPtO4ONHlAZDnj5VFnUANg0Sjm7j4usBlnoVMHwA==",
+ "version": "8.56.1",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.56.1.tgz",
+ "integrity": "sha512-qzUL1qgalIvKWAf9C1HpvBjif+Vm6rcT5wZd4VoMb9+Km3iS3Cv9DY6dMRMDtPnwRAFyAi7YXJpTIEXLvdfPxg==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@typescript-eslint/project-service": "8.54.0",
- "@typescript-eslint/tsconfig-utils": "8.54.0",
- "@typescript-eslint/types": "8.54.0",
- "@typescript-eslint/visitor-keys": "8.54.0",
+ "@typescript-eslint/project-service": "8.56.1",
+ "@typescript-eslint/tsconfig-utils": "8.56.1",
+ "@typescript-eslint/types": "8.56.1",
+ "@typescript-eslint/visitor-keys": "8.56.1",
"debug": "^4.4.3",
- "minimatch": "^9.0.5",
+ "minimatch": "^10.2.2",
"semver": "^7.7.3",
"tinyglobby": "^0.2.15",
"ts-api-utils": "^2.4.0"
@@ -961,16 +858,16 @@
}
},
"node_modules/@typescript-eslint/utils": {
- "version": "8.54.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.54.0.tgz",
- "integrity": "sha512-9Cnda8GS57AQakvRyG0PTejJNlA2xhvyNtEVIMlDWOOeEyBkYWhGPnfrIAnqxLMTSTo6q8g12XVjjev5l1NvMA==",
+ "version": "8.56.1",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.56.1.tgz",
+ "integrity": "sha512-HPAVNIME3tABJ61siYlHzSWCGtOoeP2RTIaHXFMPqjrQKCGB9OgUVdiNgH7TJS2JNIQ5qQ4RsAUDuGaGme/KOA==",
"dev": true,
"license": "MIT",
"dependencies": {
"@eslint-community/eslint-utils": "^4.9.1",
- "@typescript-eslint/scope-manager": "8.54.0",
- "@typescript-eslint/types": "8.54.0",
- "@typescript-eslint/typescript-estree": "8.54.0"
+ "@typescript-eslint/scope-manager": "8.56.1",
+ "@typescript-eslint/types": "8.56.1",
+ "@typescript-eslint/typescript-estree": "8.56.1"
},
"engines": {
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -980,19 +877,19 @@
"url": "https://opencollective.com/typescript-eslint"
},
"peerDependencies": {
- "eslint": "^8.57.0 || ^9.0.0",
+ "eslint": "^8.57.0 || ^9.0.0 || ^10.0.0",
"typescript": ">=4.8.4 <6.0.0"
}
},
"node_modules/@typescript-eslint/visitor-keys": {
- "version": "8.54.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.54.0.tgz",
- "integrity": "sha512-VFlhGSl4opC0bprJiItPQ1RfUhGDIBokcPwaFH4yiBCaNPeld/9VeXbiPO1cLyorQi1G1vL+ecBk1x8o1axORA==",
+ "version": "8.56.1",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.56.1.tgz",
+ "integrity": "sha512-KiROIzYdEV85YygXw6BI/Dx4fnBlFQu6Mq4QE4MOH9fFnhohw6wX/OAvDY2/C+ut0I3RSPKenvZJIVYqJNkhEw==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@typescript-eslint/types": "8.54.0",
- "eslint-visitor-keys": "^4.2.1"
+ "@typescript-eslint/types": "8.56.1",
+ "eslint-visitor-keys": "^5.0.0"
},
"engines": {
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -1003,22 +900,22 @@
}
},
"node_modules/@typescript-eslint/visitor-keys/node_modules/eslint-visitor-keys": {
- "version": "4.2.1",
- "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.1.tgz",
- "integrity": "sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==",
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-5.0.1.tgz",
+ "integrity": "sha512-tD40eHxA35h0PEIZNeIjkHoDR4YjjJp34biM0mDvplBe//mB+IHCqHDGV7pxF+7MklTvighcCPPZC7ynWyjdTA==",
"dev": true,
"license": "Apache-2.0",
"engines": {
- "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
+ "node": "^20.19.0 || ^22.13.0 || >=24"
},
"funding": {
"url": "https://opencollective.com/eslint"
}
},
"node_modules/acorn": {
- "version": "8.15.0",
- "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.15.0.tgz",
- "integrity": "sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==",
+ "version": "8.16.0",
+ "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.16.0.tgz",
+ "integrity": "sha512-UVJyE9MttOsBQIDKw1skb9nAwQuR5wuGD3+82K6JgJlm/Y+KI92oNsMNGZCYdDsVtRHSak0pcV5Dno5+4jh9sw==",
"dev": true,
"license": "MIT",
"bin": {
@@ -1039,9 +936,9 @@
}
},
"node_modules/ajv": {
- "version": "6.12.6",
- "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz",
- "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==",
+ "version": "6.14.0",
+ "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.14.0.tgz",
+ "integrity": "sha512-IWrosm/yrn43eiKqkfkHis7QioDleaXQHdDVPKg0FSwwd/DuvyX79TZnFOnYpB7dcsFAMmtFztZuXPDvSePkFw==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -1055,29 +952,6 @@
"url": "https://github.com/sponsors/epoberezkin"
}
},
- "node_modules/ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "color-convert": "^2.0.1"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
- }
- },
- "node_modules/argparse": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz",
- "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==",
- "dev": true,
- "license": "Python-2.0"
- },
"node_modules/as-float": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/as-float/-/as-float-1.0.1.tgz",
@@ -1086,11 +960,14 @@
"license": "MIT"
},
"node_modules/balanced-match": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
- "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==",
+ "version": "4.0.4",
+ "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-4.0.4.tgz",
+ "integrity": "sha512-BLrgEcRTwX2o6gGxGOCNyMvGSp35YofuYzw9h1IMTRmKqttAZZVU67bdb9Pr2vUHA8+j3i2tJfjO6C6+4myGTA==",
"dev": true,
- "license": "MIT"
+ "license": "MIT",
+ "engines": {
+ "node": "18 || 20 || >=22"
+ }
},
"node_modules/binaryen": {
"version": "125.0.0-nightly.20251209",
@@ -1110,69 +987,18 @@
}
},
"node_modules/brace-expansion": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz",
- "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "balanced-match": "^1.0.0"
- }
- },
- "node_modules/callsites": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz",
- "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
+ "version": "5.0.4",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-5.0.4.tgz",
+ "integrity": "sha512-h+DEnpVvxmfVefa4jFbCf5HdH5YMDXRsmKflpf1pILZWRFlTbJpxeU55nJl4Smt5HQaGzg1o6RHFPJaOqnmBDg==",
"dev": true,
"license": "MIT",
"dependencies": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
+ "balanced-match": "^4.0.2"
},
"engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/chalk/chalk?sponsor=1"
+ "node": "18 || 20 || >=22"
}
},
- "node_modules/color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "color-name": "~1.1.4"
- },
- "engines": {
- "node": ">=7.0.0"
- }
- },
- "node_modules/color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/concat-map": {
- "version": "0.0.1",
- "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
- "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==",
- "dev": true,
- "license": "MIT"
- },
"node_modules/cross-spawn": {
"version": "7.0.6",
"resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz",
@@ -1224,9 +1050,9 @@
}
},
"node_modules/esbuild": {
- "version": "0.27.2",
- "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.27.2.tgz",
- "integrity": "sha512-HyNQImnsOC7X9PMNaCIeAm4ISCQXs5a5YasTXVliKv4uuBo1dKrG0A+uQS8M5eXjVMnLg3WgXaKvprHlFJQffw==",
+ "version": "0.27.3",
+ "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.27.3.tgz",
+ "integrity": "sha512-8VwMnyGCONIs6cWue2IdpHxHnAjzxnw2Zr7MkVxB2vjmQ2ivqGFb4LEG3SMnv0Gb2F/G/2yA8zUaiL1gywDCCg==",
"dev": true,
"hasInstallScript": true,
"license": "MIT",
@@ -1237,32 +1063,32 @@
"node": ">=18"
},
"optionalDependencies": {
- "@esbuild/aix-ppc64": "0.27.2",
- "@esbuild/android-arm": "0.27.2",
- "@esbuild/android-arm64": "0.27.2",
- "@esbuild/android-x64": "0.27.2",
- "@esbuild/darwin-arm64": "0.27.2",
- "@esbuild/darwin-x64": "0.27.2",
- "@esbuild/freebsd-arm64": "0.27.2",
- "@esbuild/freebsd-x64": "0.27.2",
- "@esbuild/linux-arm": "0.27.2",
- "@esbuild/linux-arm64": "0.27.2",
- "@esbuild/linux-ia32": "0.27.2",
- "@esbuild/linux-loong64": "0.27.2",
- "@esbuild/linux-mips64el": "0.27.2",
- "@esbuild/linux-ppc64": "0.27.2",
- "@esbuild/linux-riscv64": "0.27.2",
- "@esbuild/linux-s390x": "0.27.2",
- "@esbuild/linux-x64": "0.27.2",
- "@esbuild/netbsd-arm64": "0.27.2",
- "@esbuild/netbsd-x64": "0.27.2",
- "@esbuild/openbsd-arm64": "0.27.2",
- "@esbuild/openbsd-x64": "0.27.2",
- "@esbuild/openharmony-arm64": "0.27.2",
- "@esbuild/sunos-x64": "0.27.2",
- "@esbuild/win32-arm64": "0.27.2",
- "@esbuild/win32-ia32": "0.27.2",
- "@esbuild/win32-x64": "0.27.2"
+ "@esbuild/aix-ppc64": "0.27.3",
+ "@esbuild/android-arm": "0.27.3",
+ "@esbuild/android-arm64": "0.27.3",
+ "@esbuild/android-x64": "0.27.3",
+ "@esbuild/darwin-arm64": "0.27.3",
+ "@esbuild/darwin-x64": "0.27.3",
+ "@esbuild/freebsd-arm64": "0.27.3",
+ "@esbuild/freebsd-x64": "0.27.3",
+ "@esbuild/linux-arm": "0.27.3",
+ "@esbuild/linux-arm64": "0.27.3",
+ "@esbuild/linux-ia32": "0.27.3",
+ "@esbuild/linux-loong64": "0.27.3",
+ "@esbuild/linux-mips64el": "0.27.3",
+ "@esbuild/linux-ppc64": "0.27.3",
+ "@esbuild/linux-riscv64": "0.27.3",
+ "@esbuild/linux-s390x": "0.27.3",
+ "@esbuild/linux-x64": "0.27.3",
+ "@esbuild/netbsd-arm64": "0.27.3",
+ "@esbuild/netbsd-x64": "0.27.3",
+ "@esbuild/openbsd-arm64": "0.27.3",
+ "@esbuild/openbsd-x64": "0.27.3",
+ "@esbuild/openharmony-arm64": "0.27.3",
+ "@esbuild/sunos-x64": "0.27.3",
+ "@esbuild/win32-arm64": "0.27.3",
+ "@esbuild/win32-ia32": "0.27.3",
+ "@esbuild/win32-x64": "0.27.3"
}
},
"node_modules/escape-string-regexp": {
@@ -1279,33 +1105,30 @@
}
},
"node_modules/eslint": {
- "version": "9.39.2",
- "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.39.2.tgz",
- "integrity": "sha512-LEyamqS7W5HB3ujJyvi0HQK/dtVINZvd5mAAp9eT5S/ujByGjiZLCzPcHVzuXbpJDJF/cxwHlfceVUDZ2lnSTw==",
+ "version": "10.0.3",
+ "resolved": "https://registry.npmjs.org/eslint/-/eslint-10.0.3.tgz",
+ "integrity": "sha512-COV33RzXZkqhG9P2rZCFl9ZmJ7WL+gQSCRzE7RhkbclbQPtLAWReL7ysA0Sh4c8Im2U9ynybdR56PV0XcKvqaQ==",
"dev": true,
"license": "MIT",
"dependencies": {
"@eslint-community/eslint-utils": "^4.8.0",
- "@eslint-community/regexpp": "^4.12.1",
- "@eslint/config-array": "^0.21.1",
- "@eslint/config-helpers": "^0.4.2",
- "@eslint/core": "^0.17.0",
- "@eslint/eslintrc": "^3.3.1",
- "@eslint/js": "9.39.2",
- "@eslint/plugin-kit": "^0.4.1",
+ "@eslint-community/regexpp": "^4.12.2",
+ "@eslint/config-array": "^0.23.3",
+ "@eslint/config-helpers": "^0.5.2",
+ "@eslint/core": "^1.1.1",
+ "@eslint/plugin-kit": "^0.6.1",
"@humanfs/node": "^0.16.6",
"@humanwhocodes/module-importer": "^1.0.1",
"@humanwhocodes/retry": "^0.4.2",
"@types/estree": "^1.0.6",
- "ajv": "^6.12.4",
- "chalk": "^4.0.0",
+ "ajv": "^6.14.0",
"cross-spawn": "^7.0.6",
"debug": "^4.3.2",
"escape-string-regexp": "^4.0.0",
- "eslint-scope": "^8.4.0",
- "eslint-visitor-keys": "^4.2.1",
- "espree": "^10.4.0",
- "esquery": "^1.5.0",
+ "eslint-scope": "^9.1.2",
+ "eslint-visitor-keys": "^5.0.1",
+ "espree": "^11.1.1",
+ "esquery": "^1.7.0",
"esutils": "^2.0.2",
"fast-deep-equal": "^3.1.3",
"file-entry-cache": "^8.0.0",
@@ -1315,8 +1138,7 @@
"imurmurhash": "^0.1.4",
"is-glob": "^4.0.0",
"json-stable-stringify-without-jsonify": "^1.0.1",
- "lodash.merge": "^4.6.2",
- "minimatch": "^3.1.2",
+ "minimatch": "^10.2.4",
"natural-compare": "^1.4.0",
"optionator": "^0.9.3"
},
@@ -1324,7 +1146,7 @@
"eslint": "bin/eslint.js"
},
"engines": {
- "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
+ "node": "^20.19.0 || ^22.13.0 || >=24"
},
"funding": {
"url": "https://eslint.org/donate"
@@ -1339,17 +1161,19 @@
}
},
"node_modules/eslint-scope": {
- "version": "8.4.0",
- "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-8.4.0.tgz",
- "integrity": "sha512-sNXOfKCn74rt8RICKMvJS7XKV/Xk9kA7DyJr8mJik3S7Cwgy3qlkkmyS2uQB3jiJg6VNdZd/pDBJu0nvG2NlTg==",
+ "version": "9.1.2",
+ "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-9.1.2.tgz",
+ "integrity": "sha512-xS90H51cKw0jltxmvmHy2Iai1LIqrfbw57b79w/J7MfvDfkIkFZ+kj6zC3BjtUwh150HsSSdxXZcsuv72miDFQ==",
"dev": true,
"license": "BSD-2-Clause",
"dependencies": {
+ "@types/esrecurse": "^4.3.1",
+ "@types/estree": "^1.0.8",
"esrecurse": "^4.3.0",
"estraverse": "^5.2.0"
},
"engines": {
- "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
+ "node": "^20.19.0 || ^22.13.0 || >=24"
},
"funding": {
"url": "https://opencollective.com/eslint"
@@ -1368,25 +1192,14 @@
"url": "https://opencollective.com/eslint"
}
},
- "node_modules/eslint/node_modules/brace-expansion": {
- "version": "1.1.12",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz",
- "integrity": "sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "balanced-match": "^1.0.0",
- "concat-map": "0.0.1"
- }
- },
"node_modules/eslint/node_modules/eslint-visitor-keys": {
- "version": "4.2.1",
- "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.1.tgz",
- "integrity": "sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==",
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-5.0.1.tgz",
+ "integrity": "sha512-tD40eHxA35h0PEIZNeIjkHoDR4YjjJp34biM0mDvplBe//mB+IHCqHDGV7pxF+7MklTvighcCPPZC7ynWyjdTA==",
"dev": true,
"license": "Apache-2.0",
"engines": {
- "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
+ "node": "^20.19.0 || ^22.13.0 || >=24"
},
"funding": {
"url": "https://opencollective.com/eslint"
@@ -1402,45 +1215,32 @@
"node": ">= 4"
}
},
- "node_modules/eslint/node_modules/minimatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
- "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "brace-expansion": "^1.1.7"
- },
- "engines": {
- "node": "*"
- }
- },
"node_modules/espree": {
- "version": "10.4.0",
- "resolved": "https://registry.npmjs.org/espree/-/espree-10.4.0.tgz",
- "integrity": "sha512-j6PAQ2uUr79PZhBjP5C5fhl8e39FmRnOjsD5lGnWrFU8i2G776tBK7+nP8KuQUTTyAZUwfQqXAgrVH5MbH9CYQ==",
+ "version": "11.2.0",
+ "resolved": "https://registry.npmjs.org/espree/-/espree-11.2.0.tgz",
+ "integrity": "sha512-7p3DrVEIopW1B1avAGLuCSh1jubc01H2JHc8B4qqGblmg5gI9yumBgACjWo4JlIc04ufug4xJ3SQI8HkS/Rgzw==",
"dev": true,
"license": "BSD-2-Clause",
"dependencies": {
- "acorn": "^8.15.0",
+ "acorn": "^8.16.0",
"acorn-jsx": "^5.3.2",
- "eslint-visitor-keys": "^4.2.1"
+ "eslint-visitor-keys": "^5.0.1"
},
"engines": {
- "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
+ "node": "^20.19.0 || ^22.13.0 || >=24"
},
"funding": {
"url": "https://opencollective.com/eslint"
}
},
"node_modules/espree/node_modules/eslint-visitor-keys": {
- "version": "4.2.1",
- "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.1.tgz",
- "integrity": "sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==",
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-5.0.1.tgz",
+ "integrity": "sha512-tD40eHxA35h0PEIZNeIjkHoDR4YjjJp34biM0mDvplBe//mB+IHCqHDGV7pxF+7MklTvighcCPPZC7ynWyjdTA==",
"dev": true,
"license": "Apache-2.0",
"engines": {
- "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
+ "node": "^20.19.0 || ^22.13.0 || >=24"
},
"funding": {
"url": "https://opencollective.com/eslint"
@@ -1576,25 +1376,25 @@
}
},
"node_modules/flatted": {
- "version": "3.3.3",
- "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.3.tgz",
- "integrity": "sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==",
+ "version": "3.3.4",
+ "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.4.tgz",
+ "integrity": "sha512-3+mMldrTAPdta5kjX2G2J7iX4zxtnwpdA8Tr2ZSjkyPSanvbZAcy6flmtnXbEybHrDcU9641lxrMfFuUxVz9vA==",
"dev": true,
"license": "ISC"
},
"node_modules/glob": {
- "version": "13.0.1",
- "resolved": "https://registry.npmjs.org/glob/-/glob-13.0.1.tgz",
- "integrity": "sha512-B7U/vJpE3DkJ5WXTgTpTRN63uV42DseiXXKMwG14LQBXmsdeIoHAPbU/MEo6II0k5ED74uc2ZGTC6MwHFQhF6w==",
+ "version": "13.0.6",
+ "resolved": "https://registry.npmjs.org/glob/-/glob-13.0.6.tgz",
+ "integrity": "sha512-Wjlyrolmm8uDpm/ogGyXZXb1Z+Ca2B8NbJwqBVg0axK9GbBeoS7yGV6vjXnYdGm6X53iehEuxxbyiKp8QmN4Vw==",
"dev": true,
"license": "BlueOak-1.0.0",
"dependencies": {
- "minimatch": "^10.1.2",
- "minipass": "^7.1.2",
- "path-scurry": "^2.0.0"
+ "minimatch": "^10.2.2",
+ "minipass": "^7.1.3",
+ "path-scurry": "^2.0.2"
},
"engines": {
- "node": "20 || >=22"
+ "node": "18 || 20 || >=22"
},
"funding": {
"url": "https://github.com/sponsors/isaacs"
@@ -1613,26 +1413,10 @@
"node": ">=10.13.0"
}
},
- "node_modules/glob/node_modules/minimatch": {
- "version": "10.1.2",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.1.2.tgz",
- "integrity": "sha512-fu656aJ0n2kcXwsnwnv9g24tkU5uSmOlTjd6WyyaKm2Z+h1qmY6bAjrcaIxF/BslFqbZ8UBtbJi7KgQOZD2PTw==",
- "dev": true,
- "license": "BlueOak-1.0.0",
- "dependencies": {
- "@isaacs/brace-expansion": "^5.0.1"
- },
- "engines": {
- "node": "20 || >=22"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
"node_modules/globals": {
- "version": "17.3.0",
- "resolved": "https://registry.npmjs.org/globals/-/globals-17.3.0.tgz",
- "integrity": "sha512-yMqGUQVVCkD4tqjOJf3TnrvaaHDMYp4VlUSObbkIiuCPe/ofdMBFIAcBbCSRFWOnos6qRiTVStDwqPLUclaxIw==",
+ "version": "17.4.0",
+ "resolved": "https://registry.npmjs.org/globals/-/globals-17.4.0.tgz",
+ "integrity": "sha512-hjrNztw/VajQwOLsMNT1cbJiH2muO3OROCHnbehc8eY5JyD2gqz4AcMHPqgaOR59DjgUjYAYLeH699g/eWi2jw==",
"dev": true,
"license": "MIT",
"engines": {
@@ -1642,16 +1426,6 @@
"url": "https://github.com/sponsors/sindresorhus"
}
},
- "node_modules/has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=8"
- }
- },
"node_modules/ignore": {
"version": "7.0.5",
"resolved": "https://registry.npmjs.org/ignore/-/ignore-7.0.5.tgz",
@@ -1662,23 +1436,6 @@
"node": ">= 4"
}
},
- "node_modules/import-fresh": {
- "version": "3.3.1",
- "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.1.tgz",
- "integrity": "sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "parent-module": "^1.0.0",
- "resolve-from": "^4.0.0"
- },
- "engines": {
- "node": ">=6"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
"node_modules/imurmurhash": {
"version": "0.1.4",
"resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz",
@@ -1719,19 +1476,6 @@
"dev": true,
"license": "ISC"
},
- "node_modules/js-yaml": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.1.tgz",
- "integrity": "sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "argparse": "^2.0.1"
- },
- "bin": {
- "js-yaml": "bin/js-yaml.js"
- }
- },
"node_modules/json-buffer": {
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz",
@@ -1793,13 +1537,6 @@
"url": "https://github.com/sponsors/sindresorhus"
}
},
- "node_modules/lodash.merge": {
- "version": "4.6.2",
- "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz",
- "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==",
- "dev": true,
- "license": "MIT"
- },
"node_modules/long": {
"version": "5.3.2",
"resolved": "https://registry.npmjs.org/long/-/long-5.3.2.tgz",
@@ -1807,9 +1544,9 @@
"license": "Apache-2.0"
},
"node_modules/lru-cache": {
- "version": "11.2.5",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.2.5.tgz",
- "integrity": "sha512-vFrFJkWtJvJnD5hg+hJvVE8Lh/TcMzKnTgCWmtBipwI5yLX/iX+5UB2tfuyODF5E7k9xEzMdYgGqaSb1c0c5Yw==",
+ "version": "11.2.6",
+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.2.6.tgz",
+ "integrity": "sha512-ESL2CrkS/2wTPfuend7Zhkzo2u0daGJ/A2VucJOgQ/C48S/zB8MMeMHSGKYpXhIjbPxfuezITkaBH1wqv00DDQ==",
"dev": true,
"license": "BlueOak-1.0.0",
"engines": {
@@ -1817,27 +1554,27 @@
}
},
"node_modules/minimatch": {
- "version": "9.0.5",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz",
- "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==",
+ "version": "10.2.4",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.2.4.tgz",
+ "integrity": "sha512-oRjTw/97aTBN0RHbYCdtF1MQfvusSIBQM0IZEgzl6426+8jSC0nF1a/GmnVLpfB9yyr6g6FTqWqiZVbxrtaCIg==",
"dev": true,
- "license": "ISC",
+ "license": "BlueOak-1.0.0",
"dependencies": {
- "brace-expansion": "^2.0.1"
+ "brace-expansion": "^5.0.2"
},
"engines": {
- "node": ">=16 || 14 >=14.17"
+ "node": "18 || 20 || >=22"
},
"funding": {
"url": "https://github.com/sponsors/isaacs"
}
},
"node_modules/minipass": {
- "version": "7.1.2",
- "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz",
- "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==",
+ "version": "7.1.3",
+ "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.3.tgz",
+ "integrity": "sha512-tEBHqDnIoM/1rXME1zgka9g6Q2lcoCkxHLuc7ODJ5BxbP5d4c2Z5cGgtXAku59200Cx7diuHTOYfSBD8n6mm8A==",
"dev": true,
- "license": "ISC",
+ "license": "BlueOak-1.0.0",
"engines": {
"node": ">=16 || 14 >=14.17"
}
@@ -1906,19 +1643,6 @@
"url": "https://github.com/sponsors/sindresorhus"
}
},
- "node_modules/parent-module": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz",
- "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "callsites": "^3.0.0"
- },
- "engines": {
- "node": ">=6"
- }
- },
"node_modules/path-exists": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz",
@@ -1940,9 +1664,9 @@
}
},
"node_modules/path-scurry": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-2.0.1.tgz",
- "integrity": "sha512-oWyT4gICAu+kaA7QWk/jvCHWarMKNs6pXOGWKDTr7cw4IGcUbW+PeTfbaQiLGheFRpjo6O9J0PmyMfQPjH71oA==",
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-2.0.2.tgz",
+ "integrity": "sha512-3O/iVVsJAPsOnpwWIeD+d6z/7PmqApyQePUtCndjatj/9I5LylHvt5qluFaBT3I5h3r1ejfR056c+FCv+NnNXg==",
"dev": true,
"license": "BlueOak-1.0.0",
"dependencies": {
@@ -1950,7 +1674,7 @@
"minipass": "^7.1.2"
},
"engines": {
- "node": "20 || >=22"
+ "node": "18 || 20 || >=22"
},
"funding": {
"url": "https://github.com/sponsors/isaacs"
@@ -1989,20 +1713,10 @@
"node": ">=6"
}
},
- "node_modules/resolve-from": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz",
- "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=4"
- }
- },
"node_modules/semver": {
- "version": "7.7.3",
- "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.3.tgz",
- "integrity": "sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==",
+ "version": "7.7.4",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.4.tgz",
+ "integrity": "sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==",
"dev": true,
"license": "ISC",
"bin": {
@@ -2035,32 +1749,6 @@
"node": ">=8"
}
},
- "node_modules/strip-json-comments": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz",
- "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "has-flag": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
"node_modules/tinyglobby": {
"version": "0.2.15",
"resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.15.tgz",
@@ -2119,16 +1807,16 @@
}
},
"node_modules/typescript-eslint": {
- "version": "8.54.0",
- "resolved": "https://registry.npmjs.org/typescript-eslint/-/typescript-eslint-8.54.0.tgz",
- "integrity": "sha512-CKsJ+g53QpsNPqbzUsfKVgd3Lny4yKZ1pP4qN3jdMOg/sisIDLGyDMezycquXLE5JsEU0wp3dGNdzig0/fmSVQ==",
+ "version": "8.56.1",
+ "resolved": "https://registry.npmjs.org/typescript-eslint/-/typescript-eslint-8.56.1.tgz",
+ "integrity": "sha512-U4lM6pjmBX7J5wk4szltF7I1cGBHXZopnAXCMXb3+fZ3B/0Z3hq3wS/CCUB2NZBNAExK92mCU2tEohWuwVMsDQ==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@typescript-eslint/eslint-plugin": "8.54.0",
- "@typescript-eslint/parser": "8.54.0",
- "@typescript-eslint/typescript-estree": "8.54.0",
- "@typescript-eslint/utils": "8.54.0"
+ "@typescript-eslint/eslint-plugin": "8.56.1",
+ "@typescript-eslint/parser": "8.56.1",
+ "@typescript-eslint/typescript-estree": "8.56.1",
+ "@typescript-eslint/utils": "8.56.1"
},
"engines": {
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -2138,14 +1826,14 @@
"url": "https://opencollective.com/typescript-eslint"
},
"peerDependencies": {
- "eslint": "^8.57.0 || ^9.0.0",
+ "eslint": "^8.57.0 || ^9.0.0 || ^10.0.0",
"typescript": ">=4.8.4 <6.0.0"
}
},
"node_modules/undici-types": {
- "version": "7.16.0",
- "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.16.0.tgz",
- "integrity": "sha512-Zz+aZWSj8LE6zoxD+xrjh4VfkIG8Ya6LvYkZqtUQGJPZjYl53ypCaUwWqo7eI0x66KBGeRo+mlBEkMSeSZ38Nw==",
+ "version": "7.18.2",
+ "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.18.2.tgz",
+ "integrity": "sha512-AsuCzffGHJybSaRrmr5eHr81mwJU3kjw6M+uprWvCXiNeN9SOGwQ3Jn8jb8m3Z6izVgknn1R0FTCEAP2QrLY/w==",
"dev": true,
"license": "MIT"
},
diff --git a/package.json b/package.json
index 3ba77a72e3..c4977972c6 100644
--- a/package.json
+++ b/package.json
@@ -29,17 +29,17 @@
"long": "^5.3.2"
},
"devDependencies": {
- "@eslint/js": "^9.39.2",
- "@types/node": "^25.2.0",
- "@typescript-eslint/eslint-plugin": "^8.54.0",
- "@typescript-eslint/parser": "^8.54.0",
- "typescript-eslint": "^8.54.0",
+ "@eslint/js": "^10.0.1",
+ "@types/node": "^25.3.5",
+ "@typescript-eslint/eslint-plugin": "^8.56.1",
+ "@typescript-eslint/parser": "^8.56.1",
+ "typescript-eslint": "^8.56.1",
"as-float": "^1.0.1",
"diff": "^8.0.3",
- "esbuild": "^0.27.2",
- "eslint": "^9.39.2",
- "globals": "^17.3.0",
- "glob": "^13.0.1",
+ "esbuild": "^0.27.3",
+ "eslint": "^10.0.3",
+ "globals": "^17.4.0",
+ "glob": "^13.0.6",
"typescript": "^5.9.3"
},
"type": "module",
diff --git a/src/asconfig.json b/src/asconfig.json
index 8618a21c41..a0178d88ed 100644
--- a/src/asconfig.json
+++ b/src/asconfig.json
@@ -7,6 +7,7 @@
"exportStart": "_initialize",
"exportRuntime": true,
"initialMemory": 768,
+ "stackSize": 65536,
"runtime": "incremental",
"bindings": [ "esm" ],
"stats": true
diff --git a/src/compiler.ts b/src/compiler.ts
index 6717b5b77a..a64c313304 100644
--- a/src/compiler.ts
+++ b/src/compiler.ts
@@ -567,7 +567,7 @@ export class Compiler extends DiagnosticEmitter {
}
// compile and export runtime if requested or necessary
- if (this.options.exportRuntime || (this.options.bindingsHint && this.desiresExportRuntime)) {
+ if ((this.options.exportRuntime || (this.options.bindingsHint && this.desiresExportRuntime)) && this.options.runtime != Runtime.Memory) {
for (let i = 0, k = runtimeFunctions.length; i < k; ++i) {
let name = runtimeFunctions[i];
let instance = program.requireFunction(name);
@@ -2084,7 +2084,7 @@ export class Compiler extends DiagnosticEmitter {
module.local_get(1, valueTypeRef),
valueTypeRef, property.memoryOffset
);
- if (valueType.isManaged) {
+ if (valueType.isManaged && this.options.runtime != Runtime.Memory) {
let parent = setterInstance.parent;
assert(parent.kind == ElementKind.Class);
if ((parent).type.isManaged) {
@@ -7841,7 +7841,9 @@ export class Compiler extends DiagnosticEmitter {
// During recompilation, check if this function already exists
// Check in program.instancesByName using the internal name that would be generated
let expectedInternalName = mangleInternalName(functionName, sourceFunction, false);
- let existingInstance = this.program.instancesByName.get(expectedInternalName);
+ let existingInstance = this.program.instancesByName.has(expectedInternalName)
+ ? this.program.instancesByName.get(expectedInternalName)
+ : null;
if (existingInstance && existingInstance.kind == ElementKind.Function) {
let existingFunc = existingInstance;
if (existingFunc.is(CommonFlags.Compiled)) {
@@ -8543,7 +8545,7 @@ export class Compiler extends DiagnosticEmitter {
for (let _keys = Map_keys(captures), i = 0, k = _keys.length; i < k; i++) {
let local = _keys[i];
let owner = assert(local.envOwner);
- let ownerCaptures = envOwners.get(owner);
+ let ownerCaptures = envOwners.has(owner) ? envOwners.get(owner) : null;
if (!ownerCaptures) {
ownerCaptures = new Map();
envOwners.set(owner, ownerCaptures);
diff --git a/src/passes/shadowstack.ts b/src/passes/shadowstack.ts
index 6f1857da37..704559cf97 100644
--- a/src/passes/shadowstack.ts
+++ b/src/passes/shadowstack.ts
@@ -332,10 +332,12 @@ export class ShadowStackPass extends Pass {
module.global_get(BuiltinNames.stack_pointer, this.ptrType),
module.global_get(BuiltinNames.data_end, this.ptrType)
),
- this.compiler.makeStaticAbort(
- this.compiler.ensureStaticString("stack overflow"),
- Source.native
- )
+ this.compiler.options.hasFeature(Feature.ExceptionHandling)
+ ? module.unreachable()
+ : this.compiler.makeStaticAbort(
+ this.compiler.ensureStaticString("stack overflow"),
+ Source.native
+ )
)
);
}
diff --git a/src/program.ts b/src/program.ts
index 2ea69df6c0..809e29583a 100644
--- a/src/program.ts
+++ b/src/program.ts
@@ -1674,8 +1674,14 @@ export class Program extends DiagnosticEmitter {
/** Requires that a global library element of the specified kind is present and returns it. */
private require(name: string, kind: ElementKind): Element {
let element = this.lookup(name);
- if (!element) throw new Error(`Missing standard library component: ${name}`);
- if (element.kind != kind) throw Error(`Invalid standard library component kind: ${name}`);
+ if (!element) {
+ this.error(DiagnosticCode.Element_0_not_found, null, name);
+ throw new Error(`Missing standard library component: ${name}`);
+ }
+ if (element.kind != kind) {
+ this.error(DiagnosticCode.Element_0_not_found, null, name);
+ throw new Error(`Invalid standard library component kind: ${name}`);
+ }
return element;
}
diff --git a/std/assembly/array.ts b/std/assembly/array.ts
index faa6d9b38c..025ada36fd 100644
--- a/std/assembly/array.ts
+++ b/std/assembly/array.ts
@@ -31,7 +31,9 @@ function ensureCapacity(array: usize, newSize: usize, alignLog2: u32, canGrow: b
if (newData != oldData) { // oldData has been free'd
store(array, newData, offsetof("buffer"));
store(array, newData, offsetof("dataStart"));
- __link(array, changetype(newData), false);
+ if (ASC_RUNTIME != Runtime.Memory) {
+ __link(array, changetype(newData), false);
+ }
}
store(array, newCapacity, offsetof("byteLength"));
}
@@ -133,7 +135,9 @@ export class Array {
}
store(this.dataStart + (index << alignof()), value);
if (isManaged()) {
- __link(changetype(this), changetype(value), true);
+ if (ASC_RUNTIME != Runtime.Memory) {
+ __link(changetype(this), changetype(value), true);
+ }
}
}
@@ -153,7 +157,9 @@ export class Array {
fill(value: T, start: i32 = 0, end: i32 = i32.MAX_VALUE): Array {
if (isManaged()) {
FILL(this.dataStart, this.length_, changetype(value), start, end);
- __link(changetype(this), changetype(value), false);
+ if (ASC_RUNTIME != Runtime.Memory) {
+ __link(changetype(this), changetype(value), false);
+ }
} else {
FILL(this.dataStart, this.length_, value, start, end);
}
@@ -209,7 +215,9 @@ export class Array {
ensureCapacity(changetype(this), len, alignof());
if (isManaged()) {
store(this.dataStart + (oldLen << alignof()), changetype(value));
- __link(changetype(this), changetype(value), true);
+ if (ASC_RUNTIME != Runtime.Memory) {
+ __link(changetype(this), changetype(value), true);
+ }
} else {
store(this.dataStart + (oldLen << alignof()), value);
}
@@ -230,7 +238,9 @@ export class Array {
for (let offset: usize = 0; offset < thisSize; offset += sizeof()) {
let ref = load(thisStart + offset);
store(outStart + offset, ref);
- __link(changetype(out), ref, true);
+ if (ASC_RUNTIME != Runtime.Memory) {
+ __link(changetype(out), ref, true);
+ }
}
outStart += thisSize;
let otherStart = other.dataStart;
@@ -238,7 +248,9 @@ export class Array {
for (let offset: usize = 0; offset < otherSize; offset += sizeof()) {
let ref = load(otherStart + offset);
store(outStart + offset, ref);
- __link(changetype(out), ref, true);
+ if (ASC_RUNTIME != Runtime.Memory) {
+ __link(changetype(out), ref, true);
+ }
}
} else {
memory.copy(outStart, this.dataStart, thisSize);
@@ -288,7 +300,9 @@ export class Array {
let result = fn(load(this.dataStart + (i << alignof())), i, this);
store(outStart + (i << alignof()), result);
if (isManaged()) {
- __link(changetype(out), changetype(result), true);
+ if (ASC_RUNTIME != Runtime.Memory) {
+ __link(changetype(out), changetype(result), true);
+ }
}
}
return out;
@@ -364,7 +378,9 @@ export class Array {
);
store(ptr, value);
if (isManaged()) {
- __link(changetype(this), changetype(value), true);
+ if (ASC_RUNTIME != Runtime.Memory) {
+ __link(changetype(this), changetype(value), true);
+ }
}
this.length_ = len;
return len;
@@ -384,7 +400,9 @@ export class Array {
while (off < end) {
let ref = load(thisBase + off);
store(sliceBase + off, ref);
- __link(changetype(slice), ref, true);
+ if (ASC_RUNTIME != Runtime.Memory) {
+ __link(changetype(slice), ref, true);
+ }
off += sizeof();
}
} else {
@@ -472,7 +490,9 @@ export class Array {
store(changetype(outArray), byteLength, offsetof("byteLength"));
store(changetype(outArray), changetype(outBuffer), offsetof("dataStart"));
store(changetype(outArray), changetype(outBuffer), offsetof("buffer"));
- __link(changetype(outArray), changetype(outBuffer), false);
+ if (ASC_RUNTIME != Runtime.Memory) {
+ __link(changetype(outArray), changetype(outBuffer), false);
+ }
// set the elements
let resultOffset: usize = 0;
@@ -498,7 +518,9 @@ export class Array {
if (isManaged>()) {
for (let i = 0; i < size; ++i) {
let ref = load(changetype(outBuffer) + (i << usize(alignof>())));
- __link(changetype(outBuffer), ref, true);
+ if (ASC_RUNTIME != Runtime.Memory) {
+ __link(changetype(outBuffer), ref, true);
+ }
}
}
@@ -512,15 +534,17 @@ export class Array {
// RT integration
@unsafe private __visit(cookie: u32): void {
- if (isManaged()) {
- let cur = this.dataStart;
- let end = cur + (this.length_ << alignof());
- while (cur < end) {
- let val = load(cur);
- if (val) __visit(val, cookie);
- cur += sizeof();
+ if (ASC_RUNTIME != Runtime.Memory) {
+ if (isManaged()) {
+ let cur = this.dataStart;
+ let end = cur + (this.length_ << alignof());
+ while (cur < end) {
+ let val = load(cur);
+ if (val) __visit(val, cookie);
+ cur += sizeof();
+ }
}
+ __visit(changetype(this.buffer), cookie);
}
- __visit(changetype(this.buffer), cookie);
}
}
diff --git a/std/assembly/builtins.ts b/std/assembly/builtins.ts
index f22556f343..d6327b104f 100644
--- a/std/assembly/builtins.ts
+++ b/std/assembly/builtins.ts
@@ -2618,7 +2618,7 @@ function abort(
lineNumber: u32 = 0,
columnNumber: u32 = 0
): void {
- if (isDefined(ASC_FEATURE_EXCEPTION_HANDLING)) {
+ if (ASC_FEATURE_EXCEPTION_HANDLING) {
let fullMessage = message ? message : "abort";
if (fileName) {
fullMessage += " in " + fileName + ":" + lineNumber.toString() + ":" + columnNumber.toString();
diff --git a/std/assembly/function.ts b/std/assembly/function.ts
index dd32696330..b3a04447ea 100644
--- a/std/assembly/function.ts
+++ b/std/assembly/function.ts
@@ -1,3 +1,5 @@
+import { Runtime } from "shared/runtime";
+
type auto = i32;
@final export abstract class Function {
@@ -32,7 +34,9 @@ type auto = i32;
// RT integration
@unsafe private __visit(cookie: u32): void {
- // Env is either `null` (nop) or compiler-generated
- __visit(this._env, cookie);
+ if (ASC_RUNTIME != Runtime.Memory) {
+ // Env is either `null` (nop) or compiler-generated
+ __visit(this._env, cookie);
+ }
}
}
diff --git a/std/assembly/map.ts b/std/assembly/map.ts
index ab7302f717..731ca3c7fe 100644
--- a/std/assembly/map.ts
+++ b/std/assembly/map.ts
@@ -1,6 +1,7 @@
///
import { HASH } from "./util/hash";
+import { Runtime } from "shared/runtime";
import { E_KEYNOTFOUND } from "./util/error";
// A deterministic hash map based on CloseTable from https://github.com/jorendorff/dht
@@ -113,7 +114,9 @@ export class Map {
if (entry) {
entry.value = value;
if (isManaged()) {
- __link(changetype(this), changetype(value), true);
+ if (ASC_RUNTIME != Runtime.Memory) {
+ __link(changetype(this), changetype(value), true);
+ }
}
} else {
// check if rehashing is necessary
@@ -130,11 +133,15 @@ export class Map {
// link with the map
entry.key = key;
if (isManaged()) {
- __link(changetype(this), changetype(key), true);
+ if (ASC_RUNTIME != Runtime.Memory) {
+ __link(changetype(this), changetype(key), true);
+ }
}
entry.value = value;
if (isManaged()) {
- __link(changetype(this), changetype(value), true);
+ if (ASC_RUNTIME != Runtime.Memory) {
+ __link(changetype(this), changetype(value), true);
+ }
}
++this.entriesCount;
// link with previous entry in bucket
@@ -231,30 +238,32 @@ export class Map {
// RT integration
@unsafe private __visit(cookie: u32): void {
- __visit(changetype(this.buckets), cookie);
- let entries = changetype(this.entries);
- if (isManaged() || isManaged()) {
- let cur = entries;
- let end = cur + this.entriesOffset * ENTRY_SIZE();
- while (cur < end) {
- let entry = changetype>(cur);
- if (!(entry.taggedNext & EMPTY)) {
- if (isManaged()) {
- let val = changetype(entry.key);
- if (isNullable()) {
- if (val) __visit(val, cookie);
- } else __visit(val, cookie);
- }
- if (isManaged()) {
- let val = changetype(entry.value);
- if (isNullable()) {
- if (val) __visit(val, cookie);
- } else __visit(val, cookie);
+ if (ASC_RUNTIME != Runtime.Memory) {
+ __visit(changetype(this.buckets), cookie);
+ let entries = changetype(this.entries);
+ if (isManaged() || isManaged()) {
+ let cur = entries;
+ let end = cur + this.entriesOffset * ENTRY_SIZE();
+ while (cur < end) {
+ let entry = changetype>(cur);
+ if (!(entry.taggedNext & EMPTY)) {
+ if (isManaged()) {
+ let val = changetype(entry.key);
+ if (isNullable