From c6429cd0f786caae95b9ef374823e7cfe49a9113 Mon Sep 17 00:00:00 2001 From: Orkun Date: Fri, 15 May 2026 15:41:06 +0300 Subject: [PATCH 01/32] test: add angular test matrix --- .github/workflows/test-matrix.yml | 132 +++++++++++++++ .gitignore | 2 + .node-version | 1 + bin/test-matrix.sh | 152 ++++++++++++++++++ package.json | 3 + .../tsconfig.spec.json | 3 +- 6 files changed, 292 insertions(+), 1 deletion(-) create mode 100644 .github/workflows/test-matrix.yml create mode 100644 .node-version create mode 100755 bin/test-matrix.sh diff --git a/.github/workflows/test-matrix.yml b/.github/workflows/test-matrix.yml new file mode 100644 index 0000000..ed41957 --- /dev/null +++ b/.github/workflows/test-matrix.yml @@ -0,0 +1,132 @@ +name: Test Angular Matrix + +on: + pull_request: + +jobs: + test-matrix: + name: Angular ${{ matrix.angular-version }} + runs-on: ubuntu-latest + strategy: + fail-fast: false + matrix: + angular-version: [15, 16, 17, 18, 19, 20, 21] + include: + - angular-version: 15 + node-version: 18 + - angular-version: 16 + node-version: 18 + - angular-version: 17 + node-version: 18 + - angular-version: 18 + node-version: 20 + - angular-version: 19 + node-version: 20 + - angular-version: 20 + node-version: 20 + - angular-version: 21 + node-version: 22 + + steps: + - uses: actions/checkout@v4 + + - name: Setup Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v4 + with: + node-version: ${{ matrix.node-version }} + + - name: Install pnpm + uses: pnpm/action-setup@v2 + with: + version: 8 + + - name: Setup environment variables + run: | + echo "CI=true" >> $GITHUB_ENV + echo "NG_CLI_ANALYTICS=false" >> $GITHUB_ENV + echo "LIB_NAME=fingerprintjs-pro-angular" >> $GITHUB_ENV + + - name: Run tests for Angular ${{ matrix.angular-version }} + shell: bash + run: | + VERSION=${{ matrix.angular-version }} + LIB_NAME="fingerprintjs-pro-angular" + + SOURCE_PROJECT_DIR="$(pwd)/projects/$LIB_NAME" + SOURCE_LIB_DIR="$SOURCE_PROJECT_DIR/src/lib" + SOURCE_PUBLIC_API="$SOURCE_PROJECT_DIR/src/public-api.ts" + SOURCE_TEST_TS="$(pwd)/test.ts" + SOURCE_JEST_CONFIG="$(pwd)/jest.config.js" + SOURCE_ROOT_TSCONFIG="$(pwd)/tsconfig.json" + SOURCE_ROOT_TSCONFIG_SPEC="$(pwd)/tsconfig.spec.json" + + # Cross-platform sedi (though GHA is linux, keeping it for compatibility) + sedi() { + sed -i "$@" + } + + TEMP_DIR=$(mktemp -d) + cd "$TEMP_DIR" + + echo "Creating new Angular workspace for version $VERSION..." + npx -y @angular/cli@$VERSION new test-workspace --create-application=false --skip-git --skip-install --defaults --package-manager=pnpm + cd test-workspace + + pnpm install --config.fund=false + pnpm exec ng generate library "$LIB_NAME" --skip-install + pnpm install --config.fund=false --config.strict-peer-dependencies=false --no-frozen-lockfile + pnpm add @fingerprint/agent --config.fund=false --config.strict-peer-dependencies=false + pnpm add @angular/platform-browser-dynamic@$VERSION zone.js --config.fund=false --config.strict-peer-dependencies=false + pnpm add -D jest jest-preset-angular jest-environment-jsdom @types/jest @types/node --config.fund=false --config.strict-peer-dependencies=false + + rm -rf projects/"$LIB_NAME"/src/lib/* + cp -r "$SOURCE_LIB_DIR/"* projects/"$LIB_NAME"/src/lib/ + cp "$SOURCE_PUBLIC_API" projects/"$LIB_NAME"/src/public-api.ts + + [ -f "$SOURCE_TEST_TS" ] && cp "$SOURCE_TEST_TS" test.ts + [ -f "$SOURCE_JEST_CONFIG" ] && cp "$SOURCE_JEST_CONFIG" jest.config.js + [ -f "$SOURCE_ROOT_TSCONFIG" ] && cp "$SOURCE_ROOT_TSCONFIG" tsconfig.json + [ -f "$SOURCE_ROOT_TSCONFIG_SPEC" ] && cp "$SOURCE_ROOT_TSCONFIG_SPEC" tsconfig.spec.json + + if [ ! -f "tsconfig.spec.json" ]; then + echo '{"extends": "./tsconfig.json", "compilerOptions": {"types": ["jest", "node"]}}' > tsconfig.spec.json + fi + + cp "$SOURCE_PROJECT_DIR/ng-package.json" projects/"$LIB_NAME"/ + cp "$SOURCE_PROJECT_DIR/package.json" projects/"$LIB_NAME"/ + cp "$SOURCE_PROJECT_DIR/tsconfig.lib.json" projects/"$LIB_NAME"/ + cp "$SOURCE_PROJECT_DIR/tsconfig.lib.prod.json" projects/"$LIB_NAME"/ + cp "$SOURCE_PROJECT_DIR/tsconfig.spec.json" projects/"$LIB_NAME"/ + + for FILE in "tsconfig.json" "tsconfig.base.json" "projects/$LIB_NAME/tsconfig.spec.json"; do + if [ -f "$FILE" ]; then + sedi '/"types":/d' "$FILE" + sedi '/"esModuleInterop":/d' "$FILE" + sedi '/"allowSyntheticDefaultImports":/d' "$FILE" + sedi '/"skipLibCheck":/d' "$FILE" + sedi 's/"compilerOptions":\s*{/"compilerOptions": { "types": ["node", "jest"], "esModuleInterop": true, "allowSyntheticDefaultImports": true, "skipLibCheck": true,/g' "$FILE" + fi + done + + find . -name "tsconfig.spec.json" -exec bash -c 'sed -i "s/\"types\":\s*\[/\"types\": [\"node\", \"jest\", /g" "$1"' _ {} \; + find . -name "tsconfig.spec.json" -exec bash -c 'sed -i "s/\"compilerOptions\":\s*{/\"compilerOptions\": { \"types\": [\"node\", \"jest\"], \"esModuleInterop\": true, \"allowSyntheticDefaultImports\": true, \"skipLibCheck\": true,/g" "$1"' _ {} \; + + if [ -f "projects/$LIB_NAME/tsconfig.spec.json" ]; then + if [ ! -f "../../tsconfig.json" ] && [ -f "../../tsconfig.base.json" ]; then + sedi 's/"extends": "..\/..\/tsconfig.json"/"extends": "..\/..\/tsconfig.base.json"/g' projects/"$LIB_NAME"/tsconfig.spec.json + fi + fi + + find projects/"$LIB_NAME" -name "*.spec.ts" -exec bash -c 'sed -i "1s|^|/// \n|" "$1"' _ {} \; + + if [ "$VERSION" -ge "21" ]; then + sedi 's/"moduleResolution": "node"/"moduleResolution": "bundler"/g' tsconfig.json + [ -f "tsconfig.base.json" ] && sedi 's/"moduleResolution": "node"/"moduleResolution": "bundler"/g' tsconfig.base.json + [ -f "projects/$LIB_NAME/tsconfig.lib.json" ] && sedi 's/"moduleResolution": "node"/"moduleResolution": "bundler"/g' projects/"$LIB_NAME"/tsconfig.lib.json + fi + + echo "Building library..." + pnpm exec ng build "$LIB_NAME" + + echo "Running tests..." + pnpm exec jest diff --git a/.gitignore b/.gitignore index fd133a5..3d62395 100644 --- a/.gitignore +++ b/.gitignore @@ -5,11 +5,13 @@ /tmp /out-tsc /bazel-out +.pnpm-store # Node node_modules npm-debug.log yarn-error.log +test-logs # IDEs and editors .idea/ diff --git a/.node-version b/.node-version new file mode 100644 index 0000000..2bd5a0a --- /dev/null +++ b/.node-version @@ -0,0 +1 @@ +22 diff --git a/bin/test-matrix.sh b/bin/test-matrix.sh new file mode 100755 index 0000000..72916b0 --- /dev/null +++ b/bin/test-matrix.sh @@ -0,0 +1,152 @@ +#!/bin/bash + +export CI=true +export NG_CLI_ANALYTICS=false +export PNPM_STORE_DIR="$(pwd)/.pnpm-store" + +VERSIONS=("15" "16" "17" "18" "19" "20" "21") +LIB_NAME="fingerprintjs-pro-angular" + +SOURCE_PROJECT_DIR="$(pwd)/projects/$LIB_NAME" +SOURCE_LIB_DIR="$SOURCE_PROJECT_DIR/src/lib" +SOURCE_PUBLIC_API="$SOURCE_PROJECT_DIR/src/public-api.ts" +SOURCE_TEST_TS="$(pwd)/test.ts" +SOURCE_JEST_CONFIG="$(pwd)/jest.config.js" +SOURCE_ROOT_TSCONFIG="$(pwd)/tsconfig.json" +SOURCE_ROOT_TSCONFIG_SPEC="$(pwd)/tsconfig.spec.json" + +LOG_DIR="$(pwd)/test-logs" +mkdir -p "$LOG_DIR" +rm -f "$LOG_DIR"/* + +echo "Starting tests for Angular versions: ${VERSIONS[*]}" +echo "Using pnpm store at: $PNPM_STORE_DIR" +echo "Logs: $LOG_DIR" +echo "------------------------------------------------------------" + +if ! command -v pnpm &> /dev/null; then + npm install -g pnpm +fi + +pnpm config set store-dir "$PNPM_STORE_DIR" + +# Cross-platform sed -i +sedi() { + if [[ "$OSTYPE" == "darwin"* ]]; then + sed -i "" "$@" + else + sed -i "$@" + fi +} + +test_version() { + local VERSION=$1 + local LOG_FILE="$LOG_DIR/angular-$VERSION.log" + + if [ "$VERSION" -ge "20" ]; then + NODE_VERSION=$(node -v | cut -d'v' -f2) + NODE_MAJOR=$(echo "$NODE_VERSION" | cut -d'.' -f1) + NODE_MINOR=$(echo "$NODE_VERSION" | cut -d'.' -f2) + if [ "$NODE_MAJOR" -lt 20 ] || ([ "$NODE_MAJOR" -eq 20 ] && [ "$NODE_MINOR" -lt 19 ]); then + echo "Angular $VERSION: Skipped (Node.js $NODE_VERSION < v20.19)" + return 0 + fi + fi + + ( + set -e + TEMP_DIR=$(mktemp -d) + cd "$TEMP_DIR" + + npx -y @angular/cli@$VERSION new test-workspace --create-application=false --skip-git --skip-install --defaults --package-manager=pnpm + cd test-workspace + + pnpm install --config.fund=false + pnpm exec ng generate library "$LIB_NAME" --skip-install + pnpm install --config.fund=false --config.strict-peer-dependencies=false --no-frozen-lockfile + pnpm add @fingerprint/agent --config.fund=false --config.strict-peer-dependencies=false + pnpm add @angular/platform-browser-dynamic@$VERSION zone.js --config.fund=false --config.strict-peer-dependencies=false + pnpm add -D jest jest-preset-angular jest-environment-jsdom @types/jest @types/node --config.fund=false --config.strict-peer-dependencies=false + + rm -rf projects/"$LIB_NAME"/src/lib/* + cp -r "$SOURCE_LIB_DIR/"* projects/"$LIB_NAME"/src/lib/ + cp "$SOURCE_PUBLIC_API" projects/"$LIB_NAME"/src/public-api.ts + + [ -f "$SOURCE_TEST_TS" ] && cp "$SOURCE_TEST_TS" test.ts + [ -f "$SOURCE_JEST_CONFIG" ] && cp "$SOURCE_JEST_CONFIG" jest.config.js + [ -f "$SOURCE_ROOT_TSCONFIG" ] && cp "$SOURCE_ROOT_TSCONFIG" tsconfig.json + [ -f "$SOURCE_ROOT_TSCONFIG_SPEC" ] && cp "$SOURCE_ROOT_TSCONFIG_SPEC" tsconfig.spec.json + + if [ ! -f "tsconfig.spec.json" ]; then + echo '{"extends": "./tsconfig.json", "compilerOptions": {"types": ["jest", "node"]}}' > tsconfig.spec.json + fi + + cp "$SOURCE_PROJECT_DIR/ng-package.json" projects/"$LIB_NAME"/ + cp "$SOURCE_PROJECT_DIR/package.json" projects/"$LIB_NAME"/ + cp "$SOURCE_PROJECT_DIR/tsconfig.lib.json" projects/"$LIB_NAME"/ + cp "$SOURCE_PROJECT_DIR/tsconfig.lib.prod.json" projects/"$LIB_NAME"/ + cp "$SOURCE_PROJECT_DIR/tsconfig.spec.json" projects/"$LIB_NAME"/ + + for FILE in "tsconfig.json" "tsconfig.base.json" "projects/$LIB_NAME/tsconfig.spec.json"; do + if [ -f "$FILE" ]; then + sedi '/"types":/d' "$FILE" + sedi '/"esModuleInterop":/d' "$FILE" + sedi '/"allowSyntheticDefaultImports":/d' "$FILE" + sedi '/"skipLibCheck":/d' "$FILE" + sedi 's/"compilerOptions":\s*{/"compilerOptions": { "types": ["node", "jest"], "esModuleInterop": true, "allowSyntheticDefaultImports": true, "skipLibCheck": true,/g' "$FILE" + fi + done + + find . -name "tsconfig.spec.json" -exec bash -c 'sedi() { if [[ "$OSTYPE" == "darwin"* ]]; then sed -i "" "$@"; else sed -i "$@"; fi; }; sedi "s/\"types\":\s*\[/\"types\": [\"node\", \"jest\", /g" "$1"' _ {} \; + find . -name "tsconfig.spec.json" -exec bash -c 'sedi() { if [[ "$OSTYPE" == "darwin"* ]]; then sed -i "" "$@"; else sed -i "$@"; fi; }; sedi "s/\"compilerOptions\":\s*{/\"compilerOptions\": { \"types\": [\"node\", \"jest\"], \"esModuleInterop\": true, \"allowSyntheticDefaultImports\": true, \"skipLibCheck\": true,/g" "$1"' _ {} \; + + if [ -f "projects/$LIB_NAME/tsconfig.spec.json" ]; then + if [ ! -f "../../tsconfig.json" ] && [ -f "../../tsconfig.base.json" ]; then + sedi 's/"extends": "..\/..\/tsconfig.json"/"extends": "..\/..\/tsconfig.base.json"/g' projects/"$LIB_NAME"/tsconfig.spec.json + fi + fi + + find projects/"$LIB_NAME" -name "*.spec.ts" -exec bash -c 'sedi() { if [[ "$OSTYPE" == "darwin"* ]]; then sed -i "" "$@"; else sed -i "$@"; fi; }; sedi "1s|^|/// \n|" "$1"' _ {} \; + + if [ "$VERSION" -ge "21" ]; then + sedi 's/"moduleResolution": "node"/"moduleResolution": "bundler"/g' tsconfig.json + [ -f "tsconfig.base.json" ] && sedi 's/"moduleResolution": "node"/"moduleResolution": "bundler"/g' tsconfig.base.json + [ -f "projects/$LIB_NAME/tsconfig.lib.json" ] && sedi 's/"moduleResolution": "node"/"moduleResolution": "bundler"/g' projects/"$LIB_NAME"/tsconfig.lib.json + fi + + pnpm exec ng build "$LIB_NAME" + pnpm exec jest + rm -rf "$TEMP_DIR" + ) > "$LOG_FILE" 2>&1 + + local STATUS=$? + if [ $STATUS -eq 0 ]; then + echo "Angular $VERSION: PASSED" + else + echo "Angular $VERSION: FAILED" + echo "Log: $LOG_FILE" + tail -n 15 "$LOG_FILE" + fi + + return $STATUS +} + +PIDS=() +for VERSION in "${VERSIONS[@]}"; do + test_version "$VERSION" & + PIDS+=($!) +done + +OVERALL_EXIT_CODE=0 +for PID in "${PIDS[@]}"; do + wait "$PID" || OVERALL_EXIT_CODE=$? +done + +echo "------------------------------------------------------------" +if [ $OVERALL_EXIT_CODE -ne 0 ]; then + echo "CI Pipeline Failed" + exit $OVERALL_EXIT_CODE +else + echo "Success: All Angular versions passed" + exit 0 +fi diff --git a/package.json b/package.json index b8b3322..e78e87f 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,9 @@ { "name": "fingerprintjs-pro-angular-demo", "version": "0.0.0", + "engines": { + "node": ">=22.0.0" + }, "scripts": { "prepare": "husky install", "ng": "ng", diff --git a/projects/fingerprintjs-pro-angular/tsconfig.spec.json b/projects/fingerprintjs-pro-angular/tsconfig.spec.json index bc876cc..035e16f 100644 --- a/projects/fingerprintjs-pro-angular/tsconfig.spec.json +++ b/projects/fingerprintjs-pro-angular/tsconfig.spec.json @@ -4,7 +4,8 @@ "compilerOptions": { "outDir": "../../out-tsc/spec", "types": [ - "jest" + "jest", + "node" ] }, "files": [ From b46b7f35d8d6391ad72cfeaa73650c6a5629d6e4 Mon Sep 17 00:00:00 2001 From: Orkun Date: Fri, 15 May 2026 15:43:25 +0300 Subject: [PATCH 02/32] test: add gen project version command before tests ran --- .github/workflows/test-matrix.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/test-matrix.yml b/.github/workflows/test-matrix.yml index ed41957..8a22ac1 100644 --- a/.github/workflows/test-matrix.yml +++ b/.github/workflows/test-matrix.yml @@ -40,6 +40,9 @@ jobs: with: version: 8 + - name: Generate project version + run: pnpm generate:version + - name: Setup environment variables run: | echo "CI=true" >> $GITHUB_ENV From 5e5762c729cf6a67fb4b455627ae84622d8c8400 Mon Sep 17 00:00:00 2001 From: Orkun Date: Tue, 23 Jun 2026 12:51:16 +0300 Subject: [PATCH 03/32] refactor: test-matrix bash to javascript --- .github/workflows/test-matrix.yml | 87 +------------- bin/test-matrix.mjs | 92 ++++++++++++++ bin/test-matrix.sh | 152 ------------------------ bin/utils/command.mjs | 22 ++++ bin/utils/commands/ensurePnpm.mjs | 12 ++ bin/utils/commands/jestRun.mjs | 5 + bin/utils/commands/ngBuild.mjs | 5 + bin/utils/commands/ngGenerate.mjs | 10 ++ bin/utils/commands/ngNew.mjs | 23 ++++ bin/utils/commands/pnpmAdd.mjs | 6 + bin/utils/commands/pnpmInstall.mjs | 10 ++ bin/utils/constants.mjs | 17 +++ bin/utils/fs.mjs | 76 ++++++++++++ bin/utils/logErrorSummary.mjs | 15 +++ bin/utils/setupLogDir.mjs | 12 ++ bin/utils/steps/copySourceFiles.mjs | 49 ++++++++ bin/utils/steps/installDependencies.mjs | 23 ++++ bin/utils/steps/updateTsConfigs.mjs | 101 ++++++++++++++++ package.json | 5 +- 19 files changed, 485 insertions(+), 237 deletions(-) create mode 100755 bin/test-matrix.mjs delete mode 100755 bin/test-matrix.sh create mode 100644 bin/utils/command.mjs create mode 100644 bin/utils/commands/ensurePnpm.mjs create mode 100644 bin/utils/commands/jestRun.mjs create mode 100644 bin/utils/commands/ngBuild.mjs create mode 100644 bin/utils/commands/ngGenerate.mjs create mode 100644 bin/utils/commands/ngNew.mjs create mode 100644 bin/utils/commands/pnpmAdd.mjs create mode 100644 bin/utils/commands/pnpmInstall.mjs create mode 100644 bin/utils/constants.mjs create mode 100644 bin/utils/fs.mjs create mode 100644 bin/utils/logErrorSummary.mjs create mode 100644 bin/utils/setupLogDir.mjs create mode 100644 bin/utils/steps/copySourceFiles.mjs create mode 100644 bin/utils/steps/installDependencies.mjs create mode 100644 bin/utils/steps/updateTsConfigs.mjs diff --git a/.github/workflows/test-matrix.yml b/.github/workflows/test-matrix.yml index 8a22ac1..1c05bd6 100644 --- a/.github/workflows/test-matrix.yml +++ b/.github/workflows/test-matrix.yml @@ -40,6 +40,9 @@ jobs: with: version: 8 + - name: Install dependencies + run: pnpm install + - name: Generate project version run: pnpm generate:version @@ -50,86 +53,4 @@ jobs: echo "LIB_NAME=fingerprintjs-pro-angular" >> $GITHUB_ENV - name: Run tests for Angular ${{ matrix.angular-version }} - shell: bash - run: | - VERSION=${{ matrix.angular-version }} - LIB_NAME="fingerprintjs-pro-angular" - - SOURCE_PROJECT_DIR="$(pwd)/projects/$LIB_NAME" - SOURCE_LIB_DIR="$SOURCE_PROJECT_DIR/src/lib" - SOURCE_PUBLIC_API="$SOURCE_PROJECT_DIR/src/public-api.ts" - SOURCE_TEST_TS="$(pwd)/test.ts" - SOURCE_JEST_CONFIG="$(pwd)/jest.config.js" - SOURCE_ROOT_TSCONFIG="$(pwd)/tsconfig.json" - SOURCE_ROOT_TSCONFIG_SPEC="$(pwd)/tsconfig.spec.json" - - # Cross-platform sedi (though GHA is linux, keeping it for compatibility) - sedi() { - sed -i "$@" - } - - TEMP_DIR=$(mktemp -d) - cd "$TEMP_DIR" - - echo "Creating new Angular workspace for version $VERSION..." - npx -y @angular/cli@$VERSION new test-workspace --create-application=false --skip-git --skip-install --defaults --package-manager=pnpm - cd test-workspace - - pnpm install --config.fund=false - pnpm exec ng generate library "$LIB_NAME" --skip-install - pnpm install --config.fund=false --config.strict-peer-dependencies=false --no-frozen-lockfile - pnpm add @fingerprint/agent --config.fund=false --config.strict-peer-dependencies=false - pnpm add @angular/platform-browser-dynamic@$VERSION zone.js --config.fund=false --config.strict-peer-dependencies=false - pnpm add -D jest jest-preset-angular jest-environment-jsdom @types/jest @types/node --config.fund=false --config.strict-peer-dependencies=false - - rm -rf projects/"$LIB_NAME"/src/lib/* - cp -r "$SOURCE_LIB_DIR/"* projects/"$LIB_NAME"/src/lib/ - cp "$SOURCE_PUBLIC_API" projects/"$LIB_NAME"/src/public-api.ts - - [ -f "$SOURCE_TEST_TS" ] && cp "$SOURCE_TEST_TS" test.ts - [ -f "$SOURCE_JEST_CONFIG" ] && cp "$SOURCE_JEST_CONFIG" jest.config.js - [ -f "$SOURCE_ROOT_TSCONFIG" ] && cp "$SOURCE_ROOT_TSCONFIG" tsconfig.json - [ -f "$SOURCE_ROOT_TSCONFIG_SPEC" ] && cp "$SOURCE_ROOT_TSCONFIG_SPEC" tsconfig.spec.json - - if [ ! -f "tsconfig.spec.json" ]; then - echo '{"extends": "./tsconfig.json", "compilerOptions": {"types": ["jest", "node"]}}' > tsconfig.spec.json - fi - - cp "$SOURCE_PROJECT_DIR/ng-package.json" projects/"$LIB_NAME"/ - cp "$SOURCE_PROJECT_DIR/package.json" projects/"$LIB_NAME"/ - cp "$SOURCE_PROJECT_DIR/tsconfig.lib.json" projects/"$LIB_NAME"/ - cp "$SOURCE_PROJECT_DIR/tsconfig.lib.prod.json" projects/"$LIB_NAME"/ - cp "$SOURCE_PROJECT_DIR/tsconfig.spec.json" projects/"$LIB_NAME"/ - - for FILE in "tsconfig.json" "tsconfig.base.json" "projects/$LIB_NAME/tsconfig.spec.json"; do - if [ -f "$FILE" ]; then - sedi '/"types":/d' "$FILE" - sedi '/"esModuleInterop":/d' "$FILE" - sedi '/"allowSyntheticDefaultImports":/d' "$FILE" - sedi '/"skipLibCheck":/d' "$FILE" - sedi 's/"compilerOptions":\s*{/"compilerOptions": { "types": ["node", "jest"], "esModuleInterop": true, "allowSyntheticDefaultImports": true, "skipLibCheck": true,/g' "$FILE" - fi - done - - find . -name "tsconfig.spec.json" -exec bash -c 'sed -i "s/\"types\":\s*\[/\"types\": [\"node\", \"jest\", /g" "$1"' _ {} \; - find . -name "tsconfig.spec.json" -exec bash -c 'sed -i "s/\"compilerOptions\":\s*{/\"compilerOptions\": { \"types\": [\"node\", \"jest\"], \"esModuleInterop\": true, \"allowSyntheticDefaultImports\": true, \"skipLibCheck\": true,/g" "$1"' _ {} \; - - if [ -f "projects/$LIB_NAME/tsconfig.spec.json" ]; then - if [ ! -f "../../tsconfig.json" ] && [ -f "../../tsconfig.base.json" ]; then - sedi 's/"extends": "..\/..\/tsconfig.json"/"extends": "..\/..\/tsconfig.base.json"/g' projects/"$LIB_NAME"/tsconfig.spec.json - fi - fi - - find projects/"$LIB_NAME" -name "*.spec.ts" -exec bash -c 'sed -i "1s|^|/// \n|" "$1"' _ {} \; - - if [ "$VERSION" -ge "21" ]; then - sedi 's/"moduleResolution": "node"/"moduleResolution": "bundler"/g' tsconfig.json - [ -f "tsconfig.base.json" ] && sedi 's/"moduleResolution": "node"/"moduleResolution": "bundler"/g' tsconfig.base.json - [ -f "projects/$LIB_NAME/tsconfig.lib.json" ] && sedi 's/"moduleResolution": "node"/"moduleResolution": "bundler"/g' projects/"$LIB_NAME"/tsconfig.lib.json - fi - - echo "Building library..." - pnpm exec ng build "$LIB_NAME" - - echo "Running tests..." - pnpm exec jest + run: pnpm run test:matrix -- --version=${{ matrix.angular-version }} diff --git a/bin/test-matrix.mjs b/bin/test-matrix.mjs new file mode 100755 index 0000000..5bc3578 --- /dev/null +++ b/bin/test-matrix.mjs @@ -0,0 +1,92 @@ +#!/usr/bin/env node + +import { joinPath, mkdtemp, createWriteStream, rm } from './utils/fs.mjs' +import { PNPM_STORE_DIR, VERSIONS, LIB_NAME, LOG_DIR } from './utils/constants.mjs' +import { ensurePnpm } from './utils/commands/ensurePnpm.mjs' +import { ngNew } from './utils/commands/ngNew.mjs' +import { ngBuild } from './utils/commands/ngBuild.mjs' +import { jestRun } from './utils/commands/jestRun.mjs' +import { copySourceFiles } from './utils/steps/copySourceFiles.mjs' +import { updateTsConfigs } from './utils/steps/updateTsConfigs.mjs' +import { installDependencies } from './utils/steps/installDependencies.mjs' +import { setupLogDir } from './utils/setupLogDir.mjs' +import { logErrorSummary } from './utils/logErrorSummary.mjs' + +process.env.CI = 'true' +process.env.NG_CLI_ANALYTICS = 'false' +process.env.PNPM_STORE_DIR = PNPM_STORE_DIR + +async function testVersion(version) { + const logFile = joinPath(LOG_DIR, `angular-${version}.log`) + const logStream = createWriteStream(logFile) + + // Node version check for Angular 20+ + if (parseInt(version) >= 20) { + const nodeVersion = process.versions.node + const [major, minor] = nodeVersion.split('.').map(Number) + if (major < 20 || (major === 20 && minor < 19)) { + console.log(`Angular ${version}: Skipped (Node.js ${nodeVersion} < v20.19)`) + return 0 + } + } + + const tempDir = mkdtemp('angular-test-') + const workspaceDir = joinPath(tempDir, 'test-workspace') + + try { + const log = (data) => logStream.write(data) + + await ngNew(version, workspaceDir, log) + await installDependencies(version, workspaceDir, log) + await copySourceFiles(workspaceDir) + await updateTsConfigs(workspaceDir, version) + await ngBuild(workspaceDir, log, LIB_NAME) + await jestRun(workspaceDir, log) + + console.log(`Angular ${version}: PASSED`) + return 0 + } catch (err) { + logErrorSummary(logStream, logFile, err, version) + return 1 + } finally { + logStream.end() + rm(tempDir) + } +} + +async function main() { + setupLogDir() + + const args = process.argv.slice(2) + const versionArgs = [] + for (let i = 0; i < args.length; i++) { + if (args[i].startsWith('--version=')) { + versionArgs.push(args[i].split('=')[1]) + } else if (args[i] === '--version' && i + 1 < args.length) { + versionArgs.push(args[++i]) + } + } + + const versionsToTest = versionArgs.length > 0 ? versionArgs : VERSIONS + + console.log(`Starting tests for Angular versions: ${versionsToTest.join(', ')}`) + console.log(`Using pnpm store at: ${PNPM_STORE_DIR}`) + console.log(`Logs: ${LOG_DIR}`) + console.log('------------------------------------------------------------') + + ensurePnpm() + + const results = await Promise.all(versionsToTest.map((v) => testVersion(v))) + const failed = results.some((code) => code !== 0) + + console.log('------------------------------------------------------------') + if (failed) { + console.log('CI Pipeline Failed') + process.exit(1) + } else { + console.log('Success: All Angular versions passed') + process.exit(0) + } +} + +main() diff --git a/bin/test-matrix.sh b/bin/test-matrix.sh deleted file mode 100755 index 72916b0..0000000 --- a/bin/test-matrix.sh +++ /dev/null @@ -1,152 +0,0 @@ -#!/bin/bash - -export CI=true -export NG_CLI_ANALYTICS=false -export PNPM_STORE_DIR="$(pwd)/.pnpm-store" - -VERSIONS=("15" "16" "17" "18" "19" "20" "21") -LIB_NAME="fingerprintjs-pro-angular" - -SOURCE_PROJECT_DIR="$(pwd)/projects/$LIB_NAME" -SOURCE_LIB_DIR="$SOURCE_PROJECT_DIR/src/lib" -SOURCE_PUBLIC_API="$SOURCE_PROJECT_DIR/src/public-api.ts" -SOURCE_TEST_TS="$(pwd)/test.ts" -SOURCE_JEST_CONFIG="$(pwd)/jest.config.js" -SOURCE_ROOT_TSCONFIG="$(pwd)/tsconfig.json" -SOURCE_ROOT_TSCONFIG_SPEC="$(pwd)/tsconfig.spec.json" - -LOG_DIR="$(pwd)/test-logs" -mkdir -p "$LOG_DIR" -rm -f "$LOG_DIR"/* - -echo "Starting tests for Angular versions: ${VERSIONS[*]}" -echo "Using pnpm store at: $PNPM_STORE_DIR" -echo "Logs: $LOG_DIR" -echo "------------------------------------------------------------" - -if ! command -v pnpm &> /dev/null; then - npm install -g pnpm -fi - -pnpm config set store-dir "$PNPM_STORE_DIR" - -# Cross-platform sed -i -sedi() { - if [[ "$OSTYPE" == "darwin"* ]]; then - sed -i "" "$@" - else - sed -i "$@" - fi -} - -test_version() { - local VERSION=$1 - local LOG_FILE="$LOG_DIR/angular-$VERSION.log" - - if [ "$VERSION" -ge "20" ]; then - NODE_VERSION=$(node -v | cut -d'v' -f2) - NODE_MAJOR=$(echo "$NODE_VERSION" | cut -d'.' -f1) - NODE_MINOR=$(echo "$NODE_VERSION" | cut -d'.' -f2) - if [ "$NODE_MAJOR" -lt 20 ] || ([ "$NODE_MAJOR" -eq 20 ] && [ "$NODE_MINOR" -lt 19 ]); then - echo "Angular $VERSION: Skipped (Node.js $NODE_VERSION < v20.19)" - return 0 - fi - fi - - ( - set -e - TEMP_DIR=$(mktemp -d) - cd "$TEMP_DIR" - - npx -y @angular/cli@$VERSION new test-workspace --create-application=false --skip-git --skip-install --defaults --package-manager=pnpm - cd test-workspace - - pnpm install --config.fund=false - pnpm exec ng generate library "$LIB_NAME" --skip-install - pnpm install --config.fund=false --config.strict-peer-dependencies=false --no-frozen-lockfile - pnpm add @fingerprint/agent --config.fund=false --config.strict-peer-dependencies=false - pnpm add @angular/platform-browser-dynamic@$VERSION zone.js --config.fund=false --config.strict-peer-dependencies=false - pnpm add -D jest jest-preset-angular jest-environment-jsdom @types/jest @types/node --config.fund=false --config.strict-peer-dependencies=false - - rm -rf projects/"$LIB_NAME"/src/lib/* - cp -r "$SOURCE_LIB_DIR/"* projects/"$LIB_NAME"/src/lib/ - cp "$SOURCE_PUBLIC_API" projects/"$LIB_NAME"/src/public-api.ts - - [ -f "$SOURCE_TEST_TS" ] && cp "$SOURCE_TEST_TS" test.ts - [ -f "$SOURCE_JEST_CONFIG" ] && cp "$SOURCE_JEST_CONFIG" jest.config.js - [ -f "$SOURCE_ROOT_TSCONFIG" ] && cp "$SOURCE_ROOT_TSCONFIG" tsconfig.json - [ -f "$SOURCE_ROOT_TSCONFIG_SPEC" ] && cp "$SOURCE_ROOT_TSCONFIG_SPEC" tsconfig.spec.json - - if [ ! -f "tsconfig.spec.json" ]; then - echo '{"extends": "./tsconfig.json", "compilerOptions": {"types": ["jest", "node"]}}' > tsconfig.spec.json - fi - - cp "$SOURCE_PROJECT_DIR/ng-package.json" projects/"$LIB_NAME"/ - cp "$SOURCE_PROJECT_DIR/package.json" projects/"$LIB_NAME"/ - cp "$SOURCE_PROJECT_DIR/tsconfig.lib.json" projects/"$LIB_NAME"/ - cp "$SOURCE_PROJECT_DIR/tsconfig.lib.prod.json" projects/"$LIB_NAME"/ - cp "$SOURCE_PROJECT_DIR/tsconfig.spec.json" projects/"$LIB_NAME"/ - - for FILE in "tsconfig.json" "tsconfig.base.json" "projects/$LIB_NAME/tsconfig.spec.json"; do - if [ -f "$FILE" ]; then - sedi '/"types":/d' "$FILE" - sedi '/"esModuleInterop":/d' "$FILE" - sedi '/"allowSyntheticDefaultImports":/d' "$FILE" - sedi '/"skipLibCheck":/d' "$FILE" - sedi 's/"compilerOptions":\s*{/"compilerOptions": { "types": ["node", "jest"], "esModuleInterop": true, "allowSyntheticDefaultImports": true, "skipLibCheck": true,/g' "$FILE" - fi - done - - find . -name "tsconfig.spec.json" -exec bash -c 'sedi() { if [[ "$OSTYPE" == "darwin"* ]]; then sed -i "" "$@"; else sed -i "$@"; fi; }; sedi "s/\"types\":\s*\[/\"types\": [\"node\", \"jest\", /g" "$1"' _ {} \; - find . -name "tsconfig.spec.json" -exec bash -c 'sedi() { if [[ "$OSTYPE" == "darwin"* ]]; then sed -i "" "$@"; else sed -i "$@"; fi; }; sedi "s/\"compilerOptions\":\s*{/\"compilerOptions\": { \"types\": [\"node\", \"jest\"], \"esModuleInterop\": true, \"allowSyntheticDefaultImports\": true, \"skipLibCheck\": true,/g" "$1"' _ {} \; - - if [ -f "projects/$LIB_NAME/tsconfig.spec.json" ]; then - if [ ! -f "../../tsconfig.json" ] && [ -f "../../tsconfig.base.json" ]; then - sedi 's/"extends": "..\/..\/tsconfig.json"/"extends": "..\/..\/tsconfig.base.json"/g' projects/"$LIB_NAME"/tsconfig.spec.json - fi - fi - - find projects/"$LIB_NAME" -name "*.spec.ts" -exec bash -c 'sedi() { if [[ "$OSTYPE" == "darwin"* ]]; then sed -i "" "$@"; else sed -i "$@"; fi; }; sedi "1s|^|/// \n|" "$1"' _ {} \; - - if [ "$VERSION" -ge "21" ]; then - sedi 's/"moduleResolution": "node"/"moduleResolution": "bundler"/g' tsconfig.json - [ -f "tsconfig.base.json" ] && sedi 's/"moduleResolution": "node"/"moduleResolution": "bundler"/g' tsconfig.base.json - [ -f "projects/$LIB_NAME/tsconfig.lib.json" ] && sedi 's/"moduleResolution": "node"/"moduleResolution": "bundler"/g' projects/"$LIB_NAME"/tsconfig.lib.json - fi - - pnpm exec ng build "$LIB_NAME" - pnpm exec jest - rm -rf "$TEMP_DIR" - ) > "$LOG_FILE" 2>&1 - - local STATUS=$? - if [ $STATUS -eq 0 ]; then - echo "Angular $VERSION: PASSED" - else - echo "Angular $VERSION: FAILED" - echo "Log: $LOG_FILE" - tail -n 15 "$LOG_FILE" - fi - - return $STATUS -} - -PIDS=() -for VERSION in "${VERSIONS[@]}"; do - test_version "$VERSION" & - PIDS+=($!) -done - -OVERALL_EXIT_CODE=0 -for PID in "${PIDS[@]}"; do - wait "$PID" || OVERALL_EXIT_CODE=$? -done - -echo "------------------------------------------------------------" -if [ $OVERALL_EXIT_CODE -ne 0 ]; then - echo "CI Pipeline Failed" - exit $OVERALL_EXIT_CODE -else - echo "Success: All Angular versions passed" - exit 0 -fi diff --git a/bin/utils/command.mjs b/bin/utils/command.mjs new file mode 100644 index 0000000..4c35ba4 --- /dev/null +++ b/bin/utils/command.mjs @@ -0,0 +1,22 @@ +import { spawn, execSync } from 'child_process' + +export function executeCommand(cmd, args, opts, log) { + return new Promise((resolve, reject) => { + const child = spawn(cmd, args, opts) + if (log) { + child.stdout.on('data', log) + child.stderr.on('data', log) + } + child.on('close', (code) => { + if (code === 0) { + resolve() + } else { + reject(new Error(`Command failed with code ${code}: ${cmd} ${args.join(' ')}`)) + } + }) + }) +} + +export function exec(cmd, options) { + return execSync(cmd, options) +} diff --git a/bin/utils/commands/ensurePnpm.mjs b/bin/utils/commands/ensurePnpm.mjs new file mode 100644 index 0000000..d786f09 --- /dev/null +++ b/bin/utils/commands/ensurePnpm.mjs @@ -0,0 +1,12 @@ +import { exec } from '../command.mjs' +import { PNPM_STORE_DIR } from '../constants.mjs' + +export function ensurePnpm() { + try { + exec('pnpm --version', { stdio: 'ignore' }) + } catch (e) { + console.log('pnpm not found, installing...') + exec('npm install -g pnpm', { stdio: 'inherit' }) + } + exec(`pnpm config set store-dir "${PNPM_STORE_DIR}"`, { stdio: 'inherit' }) +} diff --git a/bin/utils/commands/jestRun.mjs b/bin/utils/commands/jestRun.mjs new file mode 100644 index 0000000..99d0896 --- /dev/null +++ b/bin/utils/commands/jestRun.mjs @@ -0,0 +1,5 @@ +import { executeCommand } from '../command.mjs' + +export async function jestRun(workspaceDir, log) { + return executeCommand('pnpm', ['exec', 'jest'], { cwd: workspaceDir, env: { ...process.env } }, log) +} diff --git a/bin/utils/commands/ngBuild.mjs b/bin/utils/commands/ngBuild.mjs new file mode 100644 index 0000000..efe3f29 --- /dev/null +++ b/bin/utils/commands/ngBuild.mjs @@ -0,0 +1,5 @@ +import { executeCommand } from '../command.mjs' + +export async function ngBuild(workspaceDir, log, project) { + return executeCommand('pnpm', ['exec', 'ng', 'build', project], { cwd: workspaceDir, env: { ...process.env } }, log) +} diff --git a/bin/utils/commands/ngGenerate.mjs b/bin/utils/commands/ngGenerate.mjs new file mode 100644 index 0000000..4681c31 --- /dev/null +++ b/bin/utils/commands/ngGenerate.mjs @@ -0,0 +1,10 @@ +import { executeCommand } from '../command.mjs' + +export async function ngGenerate(workspaceDir, log, type, name, options = []) { + return executeCommand( + 'pnpm', + ['exec', 'ng', 'generate', type, name, ...options], + { cwd: workspaceDir, env: { ...process.env } }, + log + ) +} diff --git a/bin/utils/commands/ngNew.mjs b/bin/utils/commands/ngNew.mjs new file mode 100644 index 0000000..62a01c6 --- /dev/null +++ b/bin/utils/commands/ngNew.mjs @@ -0,0 +1,23 @@ +import { executeCommand } from '../command.mjs' + +export async function ngNew(version, workspaceDir, log) { + const parentDir = workspaceDir.split('/').slice(0, -1).join('/') + const workspaceName = workspaceDir.split('/').pop() + + return executeCommand( + 'npx', + [ + '-y', + `@angular/cli@${version}`, + 'new', + workspaceName, + '--create-application=false', + '--skip-git', + '--skip-install', + '--defaults', + '--package-manager=pnpm', + ], + { cwd: parentDir, env: { ...process.env } }, + log + ) +} diff --git a/bin/utils/commands/pnpmAdd.mjs b/bin/utils/commands/pnpmAdd.mjs new file mode 100644 index 0000000..33d8530 --- /dev/null +++ b/bin/utils/commands/pnpmAdd.mjs @@ -0,0 +1,6 @@ +import { executeCommand } from '../command.mjs' + +export async function pnpmAdd(workspaceDir, log, packages, options = []) { + const args = ['add', ...packages, '--config.fund=false', ...options] + return executeCommand('pnpm', args, { cwd: workspaceDir, env: { ...process.env } }, log) +} diff --git a/bin/utils/commands/pnpmInstall.mjs b/bin/utils/commands/pnpmInstall.mjs new file mode 100644 index 0000000..5ba9370 --- /dev/null +++ b/bin/utils/commands/pnpmInstall.mjs @@ -0,0 +1,10 @@ +import { executeCommand } from '../command.mjs' + +export async function pnpmInstall(workspaceDir, log, options = []) { + return executeCommand( + 'pnpm', + ['install', '--config.fund=false', ...options], + { cwd: workspaceDir, env: { ...process.env } }, + log + ) +} diff --git a/bin/utils/constants.mjs b/bin/utils/constants.mjs new file mode 100644 index 0000000..be98747 --- /dev/null +++ b/bin/utils/constants.mjs @@ -0,0 +1,17 @@ +import path from 'path' + +export const LIB_NAME = 'fingerprintjs-pro-angular' +export const VERSIONS = ['15', '16', '17', '18', '19', '20', '21'] + +export const ROOT_DIR = process.cwd() +export const PNPM_STORE_DIR = path.join(ROOT_DIR, '.pnpm-store') + +export const SOURCE_PROJECT_DIR = path.join(ROOT_DIR, 'projects', LIB_NAME) +export const SOURCE_LIB_DIR = path.join(SOURCE_PROJECT_DIR, 'src', 'lib') +export const SOURCE_PUBLIC_API = path.join(SOURCE_PROJECT_DIR, 'src', 'public-api.ts') +export const SOURCE_TEST_TS = path.join(ROOT_DIR, 'test.ts') +export const SOURCE_JEST_CONFIG = path.join(ROOT_DIR, 'jest.config.js') +export const SOURCE_ROOT_TSCONFIG = path.join(ROOT_DIR, 'tsconfig.json') +export const SOURCE_ROOT_TSCONFIG_SPEC = path.join(ROOT_DIR, 'tsconfig.spec.json') + +export const LOG_DIR = path.join(ROOT_DIR, 'test-logs') diff --git a/bin/utils/fs.mjs b/bin/utils/fs.mjs new file mode 100644 index 0000000..8e73406 --- /dev/null +++ b/bin/utils/fs.mjs @@ -0,0 +1,76 @@ +import fs from 'fs' +import path from 'path' +import os from 'os' + +export function joinPath(...args) { + return path.join(...args) +} + +export function exists(path) { + return fs.existsSync(path) +} + +export function mkdir(path, options = { recursive: true }) { + return fs.mkdirSync(path, options) +} + +export function rm(path, options = { recursive: true, force: true }) { + return fs.rmSync(path, options) +} + +export function readDir(path) { + return fs.readdirSync(path) +} + +export function unlink(path) { + return fs.unlinkSync(path) +} + +export function stat(path) { + return fs.statSync(path) +} + +export function readFile(path, encoding = 'utf8') { + return fs.readFileSync(path, encoding) +} + +export function writeFile(path, data, encoding = 'utf8') { + return fs.writeFileSync(path, data, encoding) +} + +export function mkdtemp(prefix) { + return fs.mkdtempSync(path.join(os.tmpdir(), prefix)) +} + +export function createWriteStream(path) { + return fs.createWriteStream(path) +} + +export function copyFile(src, dest) { + return fs.copyFileSync(src, dest) +} + +export function updateJsonFile(filePath, updater) { + if (!exists(filePath)) { + return + } + const content = readFile(filePath) + const cleanContent = content.replace(/\/\*[\s\S]*?\*\/|([^\\:]|^)\/\/.*$/gm, '$1') + const json = JSON.parse(cleanContent) + updater(json) + writeFile(filePath, JSON.stringify(json, null, 2)) +} + +export function copyRecursive(src, dest) { + const isDirectory = exists(src) && stat(src).isDirectory() + if (isDirectory) { + if (!exists(dest)) { + mkdir(dest) + } + readDir(src).forEach((childItemName) => { + copyRecursive(joinPath(src, childItemName), joinPath(dest, childItemName)) + }) + } else { + copyFile(src, dest) + } +} diff --git a/bin/utils/logErrorSummary.mjs b/bin/utils/logErrorSummary.mjs new file mode 100644 index 0000000..8621d93 --- /dev/null +++ b/bin/utils/logErrorSummary.mjs @@ -0,0 +1,15 @@ +import { readFile } from './fs.mjs' + +export function logErrorSummary(logStream, logFile, err, version) { + logStream.write(`\nError: ${err.message}\n`) + console.log(`Angular ${version}: FAILED`) + console.log(`Log: ${logFile}`) + + try { + const logContent = readFile(logFile) + const lines = logContent.split('\n') + console.log(lines.slice(-15).join('\n')) + } catch (e) { + // ignore + } +} diff --git a/bin/utils/setupLogDir.mjs b/bin/utils/setupLogDir.mjs new file mode 100644 index 0000000..ab9e58b --- /dev/null +++ b/bin/utils/setupLogDir.mjs @@ -0,0 +1,12 @@ +import { exists, joinPath, mkdir, readDir, unlink } from './fs.mjs' +import { LOG_DIR } from './constants.mjs' + +export function setupLogDir() { + if (!exists(LOG_DIR)) { + mkdir(LOG_DIR) + } else { + readDir(LOG_DIR).forEach((file) => { + unlink(joinPath(LOG_DIR, file)) + }) + } +} diff --git a/bin/utils/steps/copySourceFiles.mjs b/bin/utils/steps/copySourceFiles.mjs new file mode 100644 index 0000000..541b30e --- /dev/null +++ b/bin/utils/steps/copySourceFiles.mjs @@ -0,0 +1,49 @@ +import { copyRecursive, joinPath, exists, mkdir, copyFile, rm, writeFile } from '../fs.mjs' +import { + LIB_NAME, + SOURCE_PROJECT_DIR, + SOURCE_LIB_DIR, + SOURCE_PUBLIC_API, + SOURCE_TEST_TS, + SOURCE_JEST_CONFIG, + SOURCE_ROOT_TSCONFIG, + SOURCE_ROOT_TSCONFIG_SPEC, +} from '../constants.mjs' + +export async function copySourceFiles(workspaceDir) { + const libDestDir = joinPath(workspaceDir, 'projects', LIB_NAME, 'src', 'lib') + if (exists(libDestDir)) { + rm(libDestDir) + } + mkdir(libDestDir) + + copyRecursive(SOURCE_LIB_DIR, libDestDir) + copyFile(SOURCE_PUBLIC_API, joinPath(workspaceDir, 'projects', LIB_NAME, 'src', 'public-api.ts')) + + if (exists(SOURCE_TEST_TS)) { + copyFile(SOURCE_TEST_TS, joinPath(workspaceDir, 'test.ts')) + } + if (exists(SOURCE_JEST_CONFIG)) { + copyFile(SOURCE_JEST_CONFIG, joinPath(workspaceDir, 'jest.config.js')) + } + if (exists(SOURCE_ROOT_TSCONFIG)) { + copyFile(SOURCE_ROOT_TSCONFIG, joinPath(workspaceDir, 'tsconfig.json')) + } + if (exists(SOURCE_ROOT_TSCONFIG_SPEC)) { + copyFile(SOURCE_ROOT_TSCONFIG_SPEC, joinPath(workspaceDir, 'tsconfig.spec.json')) + } + + if (!exists(joinPath(workspaceDir, 'tsconfig.spec.json'))) { + writeFile( + joinPath(workspaceDir, 'tsconfig.spec.json'), + JSON.stringify({ extends: './tsconfig.json', compilerOptions: { types: ['jest', 'node'] } }) + ) + } + + const projectDir = joinPath(workspaceDir, 'projects', LIB_NAME) + copyFile(joinPath(SOURCE_PROJECT_DIR, 'ng-package.json'), joinPath(projectDir, 'ng-package.json')) + copyFile(joinPath(SOURCE_PROJECT_DIR, 'package.json'), joinPath(projectDir, 'package.json')) + copyFile(joinPath(SOURCE_PROJECT_DIR, 'tsconfig.lib.json'), joinPath(projectDir, 'tsconfig.lib.json')) + copyFile(joinPath(SOURCE_PROJECT_DIR, 'tsconfig.lib.prod.json'), joinPath(projectDir, 'tsconfig.lib.prod.json')) + copyFile(joinPath(SOURCE_PROJECT_DIR, 'tsconfig.spec.json'), joinPath(projectDir, 'tsconfig.spec.json')) +} diff --git a/bin/utils/steps/installDependencies.mjs b/bin/utils/steps/installDependencies.mjs new file mode 100644 index 0000000..f06ab09 --- /dev/null +++ b/bin/utils/steps/installDependencies.mjs @@ -0,0 +1,23 @@ +import { pnpmInstall } from '../commands/pnpmInstall.mjs' +import { ngGenerate } from '../commands/ngGenerate.mjs' +import { pnpmAdd } from '../commands/pnpmAdd.mjs' +import { LIB_NAME } from '../constants.mjs' + +export async function installDependencies(version, workspaceDir, log) { + await pnpmInstall(workspaceDir, log) + await ngGenerate(workspaceDir, log, 'library', LIB_NAME, ['--skip-install']) + await pnpmInstall(workspaceDir, log, ['--config.strict-peer-dependencies=false', '--no-frozen-lockfile']) + await pnpmAdd(workspaceDir, log, ['@fingerprint/agent'], ['--config.strict-peer-dependencies=false']) + await pnpmAdd( + workspaceDir, + log, + [`@angular/platform-browser-dynamic@${version}`, 'zone.js'], + ['--config.strict-peer-dependencies=false'] + ) + const jestPackages = + parseInt(version) >= 18 + ? ['jest@^29.5.0', 'jest-preset-angular@^14.1.0', 'jest-environment-jsdom@^29.5.0', '@types/jest', '@types/node'] + : ['jest', 'jest-preset-angular', 'jest-environment-jsdom', '@types/jest', '@types/node'] + + await pnpmAdd(workspaceDir, log, jestPackages, ['-D', '--config.strict-peer-dependencies=false']) +} diff --git a/bin/utils/steps/updateTsConfigs.mjs b/bin/utils/steps/updateTsConfigs.mjs new file mode 100644 index 0000000..d5a26d2 --- /dev/null +++ b/bin/utils/steps/updateTsConfigs.mjs @@ -0,0 +1,101 @@ +import { updateJsonFile, joinPath, exists, readDir, readFile, writeFile, stat } from '../fs.mjs' +import { LIB_NAME } from '../constants.mjs' + +export async function updateTsConfigs(workspaceDir, version) { + const tsconfigFiles = [ + joinPath(workspaceDir, 'tsconfig.json'), + joinPath(workspaceDir, 'tsconfig.base.json'), + joinPath(workspaceDir, 'projects', LIB_NAME, 'tsconfig.spec.json'), + ] + + for (const file of tsconfigFiles) { + if (exists(file)) { + updateJsonFile(file, (json) => { + if (!json.compilerOptions) { + json.compilerOptions = {} + } + json.compilerOptions.types = ['node', 'jest'] + json.compilerOptions.esModuleInterop = true + json.compilerOptions.allowSyntheticDefaultImports = true + json.compilerOptions.skipLibCheck = true + }) + } + } + + const allSpecTsconfigs = [] + const findSpecConfigs = (dir) => { + readDir(dir).forEach((file) => { + const fullPath = joinPath(dir, file) + if (exists(fullPath) && stat(fullPath).isDirectory()) { + if (file !== 'node_modules') { + findSpecConfigs(fullPath) + } + } else if (file === 'tsconfig.spec.json') { + allSpecTsconfigs.push(fullPath) + } + }) + } + findSpecConfigs(workspaceDir) + + for (const file of allSpecTsconfigs) { + updateJsonFile(file, (json) => { + if (!json.compilerOptions) { + json.compilerOptions = {} + } + if (!json.compilerOptions.types) { + json.compilerOptions.types = [] + } + if (!json.compilerOptions.types.includes('node')) { + json.compilerOptions.types.push('node') + } + if (!json.compilerOptions.types.includes('jest')) { + json.compilerOptions.types.push('jest') + } + + json.compilerOptions.esModuleInterop = true + json.compilerOptions.allowSyntheticDefaultImports = true + json.compilerOptions.skipLibCheck = true + }) + } + + if (exists(joinPath(workspaceDir, 'projects', LIB_NAME, 'tsconfig.spec.json'))) { + if (!exists(joinPath(workspaceDir, 'tsconfig.json')) && exists(joinPath(workspaceDir, 'tsconfig.base.json'))) { + updateJsonFile(joinPath(workspaceDir, 'projects', LIB_NAME, 'tsconfig.spec.json'), (json) => { + json.extends = '../../tsconfig.base.json' + }) + } + } + + const addNodeReference = (dir) => { + readDir(dir).forEach((file) => { + const fullPath = joinPath(dir, file) + if (exists(fullPath) && stat(fullPath).isDirectory()) { + addNodeReference(fullPath) + } else if (file.endsWith('.spec.ts')) { + let content = readFile(fullPath) + if (!content.startsWith('/// ')) { + content = '/// \n' + content + writeFile(fullPath, content) + } + } + }) + } + addNodeReference(joinPath(workspaceDir, 'projects', LIB_NAME)) + + if (parseInt(version) >= 21) { + const targetTsconfigs = [ + joinPath(workspaceDir, 'tsconfig.json'), + joinPath(workspaceDir, 'tsconfig.base.json'), + joinPath(workspaceDir, 'projects', LIB_NAME, 'tsconfig.lib.json'), + ] + for (const configPath of targetTsconfigs) { + if (exists(configPath)) { + updateJsonFile(configPath, (json) => { + if (json.compilerOptions) { + json.compilerOptions.moduleResolution = 'bundler' + } + }) + } + } + } +} diff --git a/package.json b/package.json index 08f87a3..15f59b4 100644 --- a/package.json +++ b/package.json @@ -16,11 +16,12 @@ "build:ssr": "ng build && ng run fingerprintjs-pro-angular-demo:server", "prerender": "ng run fingerprintjs-pro-angular-demo:prerender", "generate:version": "node bin/generate-version.js", - "lint": "eslint --ext .js,.ts --ignore-path .gitignore --max-warnings 0 .", - "lint:fix": "eslint --ext .js,.ts --ignore-path .gitignore --max-warnings 0 --fix .", + "lint": "eslint --ext .js,.mjs,.ts --ignore-path .gitignore --max-warnings 0 .", + "lint:fix": "eslint --ext .js,.mjs,.ts --ignore-path .gitignore --max-warnings 0 --fix .", "test:dts": "tsc -p tsconfig.test-dts.json", "test": "jest", "test:coverage": "jest --coverage", + "test:matrix": "node bin/test-matrix.mjs", "docs": "typedoc projects/fingerprintjs-pro-angular/src/public-api.ts --out docs", "changeset:publish": "HUSKY=0 pnpm build && changeset publish", "changeset:version": "changeset version" From 64e83d81c558b9e6b825e9e756f2f7970779f4a7 Mon Sep 17 00:00:00 2001 From: Orkun Date: Tue, 23 Jun 2026 13:01:37 +0300 Subject: [PATCH 04/32] refactor: node version and ci workflow adaptation --- .github/workflows/test-matrix.yml | 6 ------ .node-version | 2 +- package.json | 2 +- 3 files changed, 2 insertions(+), 8 deletions(-) diff --git a/.github/workflows/test-matrix.yml b/.github/workflows/test-matrix.yml index 1c05bd6..1149366 100644 --- a/.github/workflows/test-matrix.yml +++ b/.github/workflows/test-matrix.yml @@ -46,11 +46,5 @@ jobs: - name: Generate project version run: pnpm generate:version - - name: Setup environment variables - run: | - echo "CI=true" >> $GITHUB_ENV - echo "NG_CLI_ANALYTICS=false" >> $GITHUB_ENV - echo "LIB_NAME=fingerprintjs-pro-angular" >> $GITHUB_ENV - - name: Run tests for Angular ${{ matrix.angular-version }} run: pnpm run test:matrix -- --version=${{ matrix.angular-version }} diff --git a/.node-version b/.node-version index 2bd5a0a..3c03207 100644 --- a/.node-version +++ b/.node-version @@ -1 +1 @@ -22 +18 diff --git a/package.json b/package.json index 15f59b4..a0bcac5 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "name": "fingerprintjs-pro-angular-demo", "version": "0.0.0", "engines": { - "node": ">=22.0.0" + "node": ">=18.0.0" }, "scripts": { "prepare": "husky install", From e7b9c0616be25d2d9b34955e352589048808d072 Mon Sep 17 00:00:00 2001 From: Orkun Date: Tue, 23 Jun 2026 13:30:59 +0300 Subject: [PATCH 05/32] refactor: ensure jest, build and dependencies for each major --- bin/test-matrix.mjs | 2 + bin/utils/commands/jestRun.mjs | 2 +- bin/utils/commands/ngBuild.mjs | 7 ++- bin/utils/steps/installDependencies.mjs | 80 +++++++++++++++++++++++-- bin/utils/steps/setupDemoApp.mjs | 65 ++++++++++++++++++++ 5 files changed, 148 insertions(+), 8 deletions(-) create mode 100644 bin/utils/steps/setupDemoApp.mjs diff --git a/bin/test-matrix.mjs b/bin/test-matrix.mjs index 5bc3578..490c666 100755 --- a/bin/test-matrix.mjs +++ b/bin/test-matrix.mjs @@ -9,6 +9,7 @@ import { jestRun } from './utils/commands/jestRun.mjs' import { copySourceFiles } from './utils/steps/copySourceFiles.mjs' import { updateTsConfigs } from './utils/steps/updateTsConfigs.mjs' import { installDependencies } from './utils/steps/installDependencies.mjs' +import { setupDemoApp } from './utils/steps/setupDemoApp.mjs' import { setupLogDir } from './utils/setupLogDir.mjs' import { logErrorSummary } from './utils/logErrorSummary.mjs' @@ -38,6 +39,7 @@ async function testVersion(version) { await ngNew(version, workspaceDir, log) await installDependencies(version, workspaceDir, log) + await setupDemoApp(workspaceDir, version, log) await copySourceFiles(workspaceDir) await updateTsConfigs(workspaceDir, version) await ngBuild(workspaceDir, log, LIB_NAME) diff --git a/bin/utils/commands/jestRun.mjs b/bin/utils/commands/jestRun.mjs index 99d0896..f2c0476 100644 --- a/bin/utils/commands/jestRun.mjs +++ b/bin/utils/commands/jestRun.mjs @@ -1,5 +1,5 @@ import { executeCommand } from '../command.mjs' export async function jestRun(workspaceDir, log) { - return executeCommand('pnpm', ['exec', 'jest'], { cwd: workspaceDir, env: { ...process.env } }, log) + return executeCommand('./node_modules/.bin/jest', [], { cwd: workspaceDir, env: { ...process.env } }, log) } diff --git a/bin/utils/commands/ngBuild.mjs b/bin/utils/commands/ngBuild.mjs index efe3f29..702aca7 100644 --- a/bin/utils/commands/ngBuild.mjs +++ b/bin/utils/commands/ngBuild.mjs @@ -1,5 +1,10 @@ import { executeCommand } from '../command.mjs' export async function ngBuild(workspaceDir, log, project) { - return executeCommand('pnpm', ['exec', 'ng', 'build', project], { cwd: workspaceDir, env: { ...process.env } }, log) + return executeCommand( + './node_modules/.bin/ng', + ['build', project], + { cwd: workspaceDir, env: { ...process.env } }, + log + ) } diff --git a/bin/utils/steps/installDependencies.mjs b/bin/utils/steps/installDependencies.mjs index f06ab09..be82806 100644 --- a/bin/utils/steps/installDependencies.mjs +++ b/bin/utils/steps/installDependencies.mjs @@ -4,20 +4,88 @@ import { pnpmAdd } from '../commands/pnpmAdd.mjs' import { LIB_NAME } from '../constants.mjs' export async function installDependencies(version, workspaceDir, log) { + const majorVersion = parseInt(version) await pnpmInstall(workspaceDir, log) await ngGenerate(workspaceDir, log, 'library', LIB_NAME, ['--skip-install']) await pnpmInstall(workspaceDir, log, ['--config.strict-peer-dependencies=false', '--no-frozen-lockfile']) await pnpmAdd(workspaceDir, log, ['@fingerprint/agent'], ['--config.strict-peer-dependencies=false']) + let zoneVersion = 'latest' + if (majorVersion >= 21) { + zoneVersion = '~0.16.0' + } else if (majorVersion >= 19) { + zoneVersion = '~0.15.0' + } else if (majorVersion >= 17) { + zoneVersion = '~0.14.0' + } else if (majorVersion >= 16) { + zoneVersion = '~0.13.0' + } else if (majorVersion >= 15) { + zoneVersion = '~0.11.4' + } + await pnpmAdd( workspaceDir, log, - [`@angular/platform-browser-dynamic@${version}`, 'zone.js'], + [`@angular/platform-browser-dynamic@^${version}`, `zone.js@${zoneVersion}`], ['--config.strict-peer-dependencies=false'] ) - const jestPackages = - parseInt(version) >= 18 - ? ['jest@^29.5.0', 'jest-preset-angular@^14.1.0', 'jest-environment-jsdom@^29.5.0', '@types/jest', '@types/node'] - : ['jest', 'jest-preset-angular', 'jest-environment-jsdom', '@types/jest', '@types/node'] + let jestPackages = [] + const builderPackages = [`ng-packagr@^${version}`] + + if (majorVersion >= 21) { + jestPackages = [ + 'jest@^30.0.0', + 'jest-preset-angular@^17.0.0', + 'jest-environment-jsdom@^30.0.0', + '@types/jest@^29.5.0', + '@types/node', + ] + } else if (majorVersion >= 20) { + jestPackages = [ + 'jest@^29.7.0', + 'jest-preset-angular@^14.6.0', + 'jest-environment-jsdom@^29.7.0', + '@types/jest@^29.5.0', + '@types/node', + ] + } else if (majorVersion >= 19) { + jestPackages = [ + 'jest@^29.7.0', + 'jest-preset-angular@^14.6.0', + 'jest-environment-jsdom@^29.7.0', + '@types/jest@^29.5.0', + '@types/node', + ] + } else if (majorVersion >= 18) { + jestPackages = [ + 'jest@^29.5.0', + 'jest-preset-angular@^14.1.0', + 'jest-environment-jsdom@^29.5.0', + '@types/jest', + '@types/node', + ] + } else if (majorVersion >= 16) { + jestPackages = [ + 'jest@^29.0.0', + 'jest-preset-angular@^13.1.0', + 'jest-environment-jsdom@^29.0.0', + '@types/jest', + '@types/node', + ] + } else { + // Angular 15 + jestPackages = [ + 'jest@^28.0.0', + 'jest-preset-angular@^12.2.0', + 'jest-environment-jsdom@^28.0.0', + '@types/jest', + '@types/node', + ] + } - await pnpmAdd(workspaceDir, log, jestPackages, ['-D', '--config.strict-peer-dependencies=false']) + await pnpmAdd( + workspaceDir, + log, + [...jestPackages, ...builderPackages], + ['-D', '--config.strict-peer-dependencies=false'] + ) } diff --git a/bin/utils/steps/setupDemoApp.mjs b/bin/utils/steps/setupDemoApp.mjs new file mode 100644 index 0000000..c2f5b41 --- /dev/null +++ b/bin/utils/steps/setupDemoApp.mjs @@ -0,0 +1,65 @@ +import { ngGenerate } from '../commands/ngGenerate.mjs' +import { joinPath, exists, writeFile, readFile } from '../fs.mjs' + +export async function setupDemoApp(workspaceDir, version, log) { + const isLegacy = parseInt(version) === 15 + const options = ['--routing=false', '--style=css', '--skip-tests=true'] + + if (!isLegacy) { + options.push('--standalone=true') + } + + await ngGenerate(workspaceDir, log, 'application', 'demo', options) + + const appDir = joinPath(workspaceDir, 'projects', 'demo', 'src', 'app') + + if (isLegacy) { + const appModulePath = joinPath(appDir, 'app.module.ts') + if (exists(appModulePath)) { + let content = readFile(appModulePath) + content = content.replace( + "import { NgModule } from '@angular/core';", + "import { NgModule } from '@angular/core';\nimport { FingerprintModule } from '@fingerprint/angular';" + ) + content = content.replace( + 'imports: [', + `imports: [\n FingerprintModule.forRoot({ startOptions: { apiKey: 'test-key' } }),` + ) + writeFile(appModulePath, content) + } + } else { + const appConfigPath = joinPath(appDir, 'app.config.ts') + // In some versions it might be in src/app/app.config.ts, in others it might be differently structured + // Angular 17+ usually has app.config.ts if standalone + if (exists(appConfigPath)) { + let content = readFile(appConfigPath) + content = content.replace( + "import { ApplicationConfig } from '@angular/core';", + "import { ApplicationConfig } from '@angular/core';\nimport { provideFingerprint } from '@fingerprint/angular';" + ) + content = content.replace( + 'providers: [', + `providers: [\n provideFingerprint({ startOptions: { apiKey: 'test-key' } }),` + ) + writeFile(appConfigPath, content) + } else { + // Fallback or manual creation if it's Angular 16 standalone but didn't create app.config.ts + // Actually v16 might use main.ts for bootstrap if app.config doesn't exist + const mainTsPath = joinPath(workspaceDir, 'projects', 'demo', 'src', 'main.ts') + if (exists(mainTsPath)) { + let content = readFile(mainTsPath) + if (content.includes('bootstrapApplication')) { + content = content.replace( + "import { bootstrapApplication } from '@angular/platform-browser';", + "import { bootstrapApplication } from '@angular/platform-browser';\nimport { provideFingerprint } from '@fingerprint/angular';" + ) + content = content.replace( + 'providers: [', + `providers: [\n provideFingerprint({ startOptions: { apiKey: 'test-key' } }),` + ) + writeFile(mainTsPath, content) + } + } + } + } +} From 360c7c046cb79b7a936bc909a695c312f55a6d4d Mon Sep 17 00:00:00 2001 From: Orkun Date: Tue, 23 Jun 2026 15:52:10 +0300 Subject: [PATCH 06/32] refactor: if else blocks to map --- bin/test-matrix.mjs | 1 - bin/utils/steps/installDependencies.mjs | 81 +++++++++---------------- bin/utils/steps/setupDemoApp.mjs | 4 -- 3 files changed, 30 insertions(+), 56 deletions(-) diff --git a/bin/test-matrix.mjs b/bin/test-matrix.mjs index 490c666..86b6a6e 100755 --- a/bin/test-matrix.mjs +++ b/bin/test-matrix.mjs @@ -21,7 +21,6 @@ async function testVersion(version) { const logFile = joinPath(LOG_DIR, `angular-${version}.log`) const logStream = createWriteStream(logFile) - // Node version check for Angular 20+ if (parseInt(version) >= 20) { const nodeVersion = process.versions.node const [major, minor] = nodeVersion.split('.').map(Number) diff --git a/bin/utils/steps/installDependencies.mjs b/bin/utils/steps/installDependencies.mjs index be82806..9cdffeb 100644 --- a/bin/utils/steps/installDependencies.mjs +++ b/bin/utils/steps/installDependencies.mjs @@ -9,79 +9,58 @@ export async function installDependencies(version, workspaceDir, log) { await ngGenerate(workspaceDir, log, 'library', LIB_NAME, ['--skip-install']) await pnpmInstall(workspaceDir, log, ['--config.strict-peer-dependencies=false', '--no-frozen-lockfile']) await pnpmAdd(workspaceDir, log, ['@fingerprint/agent'], ['--config.strict-peer-dependencies=false']) - let zoneVersion = 'latest' - if (majorVersion >= 21) { - zoneVersion = '~0.16.0' - } else if (majorVersion >= 19) { - zoneVersion = '~0.15.0' - } else if (majorVersion >= 17) { - zoneVersion = '~0.14.0' - } else if (majorVersion >= 16) { - zoneVersion = '~0.13.0' - } else if (majorVersion >= 15) { - zoneVersion = '~0.11.4' + + const zoneVersionMap = { + 21: '~0.16.0', + 19: '~0.15.0', + 17: '~0.14.0', + 16: '~0.13.0', + 15: '~0.11.4', } + const zoneVersionKey = Object.keys(zoneVersionMap) + .map(Number) + .sort((a, b) => b - a) + .find((v) => majorVersion >= v) + + const zoneVersion = zoneVersionKey ? zoneVersionMap[zoneVersionKey] : 'latest' + await pnpmAdd( workspaceDir, log, [`@angular/platform-browser-dynamic@^${version}`, `zone.js@${zoneVersion}`], ['--config.strict-peer-dependencies=false'] ) - let jestPackages = [] + const builderPackages = [`ng-packagr@^${version}`] - if (majorVersion >= 21) { - jestPackages = [ + const jestPackagesMap = { + 21: [ 'jest@^30.0.0', 'jest-preset-angular@^17.0.0', 'jest-environment-jsdom@^30.0.0', '@types/jest@^29.5.0', '@types/node', - ] - } else if (majorVersion >= 20) { - jestPackages = [ - 'jest@^29.7.0', - 'jest-preset-angular@^14.6.0', - 'jest-environment-jsdom@^29.7.0', - '@types/jest@^29.5.0', - '@types/node', - ] - } else if (majorVersion >= 19) { - jestPackages = [ + ], + 19: [ 'jest@^29.7.0', 'jest-preset-angular@^14.6.0', 'jest-environment-jsdom@^29.7.0', '@types/jest@^29.5.0', '@types/node', - ] - } else if (majorVersion >= 18) { - jestPackages = [ - 'jest@^29.5.0', - 'jest-preset-angular@^14.1.0', - 'jest-environment-jsdom@^29.5.0', - '@types/jest', - '@types/node', - ] - } else if (majorVersion >= 16) { - jestPackages = [ - 'jest@^29.0.0', - 'jest-preset-angular@^13.1.0', - 'jest-environment-jsdom@^29.0.0', - '@types/jest', - '@types/node', - ] - } else { - // Angular 15 - jestPackages = [ - 'jest@^28.0.0', - 'jest-preset-angular@^12.2.0', - 'jest-environment-jsdom@^28.0.0', - '@types/jest', - '@types/node', - ] + ], + 18: ['jest@^29.5.0', 'jest-preset-angular@^14.1.0', 'jest-environment-jsdom@^29.5.0', '@types/jest', '@types/node'], + 16: ['jest@^29.0.0', 'jest-preset-angular@^13.1.0', 'jest-environment-jsdom@^29.0.0', '@types/jest', '@types/node'], + 0: ['jest@^28.0.0', 'jest-preset-angular@^12.2.0', 'jest-environment-jsdom@^28.0.0', '@types/jest', '@types/node'], } + const jestVersionKey = Object.keys(jestPackagesMap) + .map(Number) + .sort((a, b) => b - a) + .find((v) => majorVersion >= v) + + const jestPackages = jestPackagesMap[jestVersionKey] + await pnpmAdd( workspaceDir, log, diff --git a/bin/utils/steps/setupDemoApp.mjs b/bin/utils/steps/setupDemoApp.mjs index c2f5b41..b925f02 100644 --- a/bin/utils/steps/setupDemoApp.mjs +++ b/bin/utils/steps/setupDemoApp.mjs @@ -29,8 +29,6 @@ export async function setupDemoApp(workspaceDir, version, log) { } } else { const appConfigPath = joinPath(appDir, 'app.config.ts') - // In some versions it might be in src/app/app.config.ts, in others it might be differently structured - // Angular 17+ usually has app.config.ts if standalone if (exists(appConfigPath)) { let content = readFile(appConfigPath) content = content.replace( @@ -43,8 +41,6 @@ export async function setupDemoApp(workspaceDir, version, log) { ) writeFile(appConfigPath, content) } else { - // Fallback or manual creation if it's Angular 16 standalone but didn't create app.config.ts - // Actually v16 might use main.ts for bootstrap if app.config doesn't exist const mainTsPath = joinPath(workspaceDir, 'projects', 'demo', 'src', 'main.ts') if (exists(mainTsPath)) { let content = readFile(mainTsPath) From f0efde527effd0ae1a2f9cc904d4f72badebb797 Mon Sep 17 00:00:00 2001 From: Orkun Date: Wed, 24 Jun 2026 10:12:45 +0300 Subject: [PATCH 07/32] refactor: remove redundant fs wrappers --- bin/test-matrix.mjs | 14 +++--- bin/utils/fs.mjs | 67 ++++------------------------- bin/utils/logErrorSummary.mjs | 4 +- bin/utils/setupLogDir.mjs | 11 ++--- bin/utils/steps/copySourceFiles.mjs | 48 +++++++++++---------- bin/utils/steps/setupDemoApp.mjs | 29 +++++++------ bin/utils/steps/updateTsConfigs.mjs | 44 ++++++++++--------- 7 files changed, 88 insertions(+), 129 deletions(-) diff --git a/bin/test-matrix.mjs b/bin/test-matrix.mjs index 86b6a6e..e414aae 100755 --- a/bin/test-matrix.mjs +++ b/bin/test-matrix.mjs @@ -1,6 +1,8 @@ #!/usr/bin/env node -import { joinPath, mkdtemp, createWriteStream, rm } from './utils/fs.mjs' +import fs from 'fs' +import path from 'path' +import os from 'os' import { PNPM_STORE_DIR, VERSIONS, LIB_NAME, LOG_DIR } from './utils/constants.mjs' import { ensurePnpm } from './utils/commands/ensurePnpm.mjs' import { ngNew } from './utils/commands/ngNew.mjs' @@ -18,8 +20,8 @@ process.env.NG_CLI_ANALYTICS = 'false' process.env.PNPM_STORE_DIR = PNPM_STORE_DIR async function testVersion(version) { - const logFile = joinPath(LOG_DIR, `angular-${version}.log`) - const logStream = createWriteStream(logFile) + const logFile = path.join(LOG_DIR, `angular-${version}.log`) + const logStream = fs.createWriteStream(logFile) if (parseInt(version) >= 20) { const nodeVersion = process.versions.node @@ -30,8 +32,8 @@ async function testVersion(version) { } } - const tempDir = mkdtemp('angular-test-') - const workspaceDir = joinPath(tempDir, 'test-workspace') + const tempDir = fs.mkdtempSync(path.join(os.tmpdir(), 'angular-test-')) + const workspaceDir = path.join(tempDir, 'test-workspace') try { const log = (data) => logStream.write(data) @@ -51,7 +53,7 @@ async function testVersion(version) { return 1 } finally { logStream.end() - rm(tempDir) + fs.rmSync(tempDir, { recursive: true, force: true }) } } diff --git a/bin/utils/fs.mjs b/bin/utils/fs.mjs index 8e73406..e1f5694 100644 --- a/bin/utils/fs.mjs +++ b/bin/utils/fs.mjs @@ -1,76 +1,27 @@ import fs from 'fs' import path from 'path' -import os from 'os' - -export function joinPath(...args) { - return path.join(...args) -} - -export function exists(path) { - return fs.existsSync(path) -} - -export function mkdir(path, options = { recursive: true }) { - return fs.mkdirSync(path, options) -} - -export function rm(path, options = { recursive: true, force: true }) { - return fs.rmSync(path, options) -} - -export function readDir(path) { - return fs.readdirSync(path) -} - -export function unlink(path) { - return fs.unlinkSync(path) -} - -export function stat(path) { - return fs.statSync(path) -} - -export function readFile(path, encoding = 'utf8') { - return fs.readFileSync(path, encoding) -} - -export function writeFile(path, data, encoding = 'utf8') { - return fs.writeFileSync(path, data, encoding) -} - -export function mkdtemp(prefix) { - return fs.mkdtempSync(path.join(os.tmpdir(), prefix)) -} - -export function createWriteStream(path) { - return fs.createWriteStream(path) -} - -export function copyFile(src, dest) { - return fs.copyFileSync(src, dest) -} export function updateJsonFile(filePath, updater) { - if (!exists(filePath)) { + if (!fs.existsSync(filePath)) { return } - const content = readFile(filePath) + const content = fs.readFileSync(filePath, 'utf8') const cleanContent = content.replace(/\/\*[\s\S]*?\*\/|([^\\:]|^)\/\/.*$/gm, '$1') const json = JSON.parse(cleanContent) updater(json) - writeFile(filePath, JSON.stringify(json, null, 2)) + fs.writeFileSync(filePath, JSON.stringify(json, null, 2), 'utf8') } export function copyRecursive(src, dest) { - const isDirectory = exists(src) && stat(src).isDirectory() + const isDirectory = fs.existsSync(src) && fs.statSync(src).isDirectory() if (isDirectory) { - if (!exists(dest)) { - mkdir(dest) + if (!fs.existsSync(dest)) { + fs.mkdirSync(dest, { recursive: true }) } - readDir(src).forEach((childItemName) => { - copyRecursive(joinPath(src, childItemName), joinPath(dest, childItemName)) + fs.readdirSync(src).forEach((childItemName) => { + copyRecursive(path.join(src, childItemName), path.join(dest, childItemName)) }) } else { - copyFile(src, dest) + fs.copyFileSync(src, dest) } } diff --git a/bin/utils/logErrorSummary.mjs b/bin/utils/logErrorSummary.mjs index 8621d93..2eac8c8 100644 --- a/bin/utils/logErrorSummary.mjs +++ b/bin/utils/logErrorSummary.mjs @@ -1,4 +1,4 @@ -import { readFile } from './fs.mjs' +import fs from 'fs' export function logErrorSummary(logStream, logFile, err, version) { logStream.write(`\nError: ${err.message}\n`) @@ -6,7 +6,7 @@ export function logErrorSummary(logStream, logFile, err, version) { console.log(`Log: ${logFile}`) try { - const logContent = readFile(logFile) + const logContent = fs.readFileSync(logFile, 'utf8') const lines = logContent.split('\n') console.log(lines.slice(-15).join('\n')) } catch (e) { diff --git a/bin/utils/setupLogDir.mjs b/bin/utils/setupLogDir.mjs index ab9e58b..695edde 100644 --- a/bin/utils/setupLogDir.mjs +++ b/bin/utils/setupLogDir.mjs @@ -1,12 +1,13 @@ -import { exists, joinPath, mkdir, readDir, unlink } from './fs.mjs' +import fs from 'fs' +import path from 'path' import { LOG_DIR } from './constants.mjs' export function setupLogDir() { - if (!exists(LOG_DIR)) { - mkdir(LOG_DIR) + if (!fs.existsSync(LOG_DIR)) { + fs.mkdirSync(LOG_DIR, { recursive: true }) } else { - readDir(LOG_DIR).forEach((file) => { - unlink(joinPath(LOG_DIR, file)) + fs.readdirSync(LOG_DIR).forEach((file) => { + fs.unlinkSync(path.join(LOG_DIR, file)) }) } } diff --git a/bin/utils/steps/copySourceFiles.mjs b/bin/utils/steps/copySourceFiles.mjs index 541b30e..66d347f 100644 --- a/bin/utils/steps/copySourceFiles.mjs +++ b/bin/utils/steps/copySourceFiles.mjs @@ -1,4 +1,6 @@ -import { copyRecursive, joinPath, exists, mkdir, copyFile, rm, writeFile } from '../fs.mjs' +import path from 'path' +import fs from 'fs' +import { copyRecursive } from '../fs.mjs' import { LIB_NAME, SOURCE_PROJECT_DIR, @@ -11,39 +13,39 @@ import { } from '../constants.mjs' export async function copySourceFiles(workspaceDir) { - const libDestDir = joinPath(workspaceDir, 'projects', LIB_NAME, 'src', 'lib') - if (exists(libDestDir)) { - rm(libDestDir) + const libDestDir = path.join(workspaceDir, 'projects', LIB_NAME, 'src', 'lib') + if (fs.existsSync(libDestDir)) { + fs.rmSync(libDestDir, { recursive: true, force: true }) } - mkdir(libDestDir) + fs.mkdirSync(libDestDir, { recursive: true }) copyRecursive(SOURCE_LIB_DIR, libDestDir) - copyFile(SOURCE_PUBLIC_API, joinPath(workspaceDir, 'projects', LIB_NAME, 'src', 'public-api.ts')) + fs.copyFileSync(SOURCE_PUBLIC_API, path.join(workspaceDir, 'projects', LIB_NAME, 'src', 'public-api.ts')) - if (exists(SOURCE_TEST_TS)) { - copyFile(SOURCE_TEST_TS, joinPath(workspaceDir, 'test.ts')) + if (fs.existsSync(SOURCE_TEST_TS)) { + fs.copyFileSync(SOURCE_TEST_TS, path.join(workspaceDir, 'test.ts')) } - if (exists(SOURCE_JEST_CONFIG)) { - copyFile(SOURCE_JEST_CONFIG, joinPath(workspaceDir, 'jest.config.js')) + if (fs.existsSync(SOURCE_JEST_CONFIG)) { + fs.copyFileSync(SOURCE_JEST_CONFIG, path.join(workspaceDir, 'jest.config.js')) } - if (exists(SOURCE_ROOT_TSCONFIG)) { - copyFile(SOURCE_ROOT_TSCONFIG, joinPath(workspaceDir, 'tsconfig.json')) + if (fs.existsSync(SOURCE_ROOT_TSCONFIG)) { + fs.copyFileSync(SOURCE_ROOT_TSCONFIG, path.join(workspaceDir, 'tsconfig.json')) } - if (exists(SOURCE_ROOT_TSCONFIG_SPEC)) { - copyFile(SOURCE_ROOT_TSCONFIG_SPEC, joinPath(workspaceDir, 'tsconfig.spec.json')) + if (fs.existsSync(SOURCE_ROOT_TSCONFIG_SPEC)) { + fs.copyFileSync(SOURCE_ROOT_TSCONFIG_SPEC, path.join(workspaceDir, 'tsconfig.spec.json')) } - if (!exists(joinPath(workspaceDir, 'tsconfig.spec.json'))) { - writeFile( - joinPath(workspaceDir, 'tsconfig.spec.json'), + if (!fs.existsSync(path.join(workspaceDir, 'tsconfig.spec.json'))) { + fs.writeFileSync( + path.join(workspaceDir, 'tsconfig.spec.json'), JSON.stringify({ extends: './tsconfig.json', compilerOptions: { types: ['jest', 'node'] } }) ) } - const projectDir = joinPath(workspaceDir, 'projects', LIB_NAME) - copyFile(joinPath(SOURCE_PROJECT_DIR, 'ng-package.json'), joinPath(projectDir, 'ng-package.json')) - copyFile(joinPath(SOURCE_PROJECT_DIR, 'package.json'), joinPath(projectDir, 'package.json')) - copyFile(joinPath(SOURCE_PROJECT_DIR, 'tsconfig.lib.json'), joinPath(projectDir, 'tsconfig.lib.json')) - copyFile(joinPath(SOURCE_PROJECT_DIR, 'tsconfig.lib.prod.json'), joinPath(projectDir, 'tsconfig.lib.prod.json')) - copyFile(joinPath(SOURCE_PROJECT_DIR, 'tsconfig.spec.json'), joinPath(projectDir, 'tsconfig.spec.json')) + const projectDir = path.join(workspaceDir, 'projects', LIB_NAME) + fs.copyFileSync(path.join(SOURCE_PROJECT_DIR, 'ng-package.json'), path.join(projectDir, 'ng-package.json')) + fs.copyFileSync(path.join(SOURCE_PROJECT_DIR, 'package.json'), path.join(projectDir, 'package.json')) + fs.copyFileSync(path.join(SOURCE_PROJECT_DIR, 'tsconfig.lib.json'), path.join(projectDir, 'tsconfig.lib.json')) + fs.copyFileSync(path.join(SOURCE_PROJECT_DIR, 'tsconfig.lib.prod.json'), path.join(projectDir, 'tsconfig.lib.prod.json')) + fs.copyFileSync(path.join(SOURCE_PROJECT_DIR, 'tsconfig.spec.json'), path.join(projectDir, 'tsconfig.spec.json')) } diff --git a/bin/utils/steps/setupDemoApp.mjs b/bin/utils/steps/setupDemoApp.mjs index b925f02..49f80d0 100644 --- a/bin/utils/steps/setupDemoApp.mjs +++ b/bin/utils/steps/setupDemoApp.mjs @@ -1,5 +1,6 @@ +import fs from 'fs' +import path from 'path' import { ngGenerate } from '../commands/ngGenerate.mjs' -import { joinPath, exists, writeFile, readFile } from '../fs.mjs' export async function setupDemoApp(workspaceDir, version, log) { const isLegacy = parseInt(version) === 15 @@ -11,12 +12,12 @@ export async function setupDemoApp(workspaceDir, version, log) { await ngGenerate(workspaceDir, log, 'application', 'demo', options) - const appDir = joinPath(workspaceDir, 'projects', 'demo', 'src', 'app') + const appDir = path.join(workspaceDir, 'projects', 'demo', 'src', 'app') if (isLegacy) { - const appModulePath = joinPath(appDir, 'app.module.ts') - if (exists(appModulePath)) { - let content = readFile(appModulePath) + const appModulePath = path.join(appDir, 'app.module.ts') + if (fs.existsSync(appModulePath)) { + let content = fs.readFileSync(appModulePath, 'utf8') content = content.replace( "import { NgModule } from '@angular/core';", "import { NgModule } from '@angular/core';\nimport { FingerprintModule } from '@fingerprint/angular';" @@ -25,12 +26,12 @@ export async function setupDemoApp(workspaceDir, version, log) { 'imports: [', `imports: [\n FingerprintModule.forRoot({ startOptions: { apiKey: 'test-key' } }),` ) - writeFile(appModulePath, content) + fs.writeFileSync(appModulePath, content, 'utf8') } } else { - const appConfigPath = joinPath(appDir, 'app.config.ts') - if (exists(appConfigPath)) { - let content = readFile(appConfigPath) + const appConfigPath = path.join(appDir, 'app.config.ts') + if (fs.existsSync(appConfigPath)) { + let content = fs.readFileSync(appConfigPath, 'utf8') content = content.replace( "import { ApplicationConfig } from '@angular/core';", "import { ApplicationConfig } from '@angular/core';\nimport { provideFingerprint } from '@fingerprint/angular';" @@ -39,11 +40,11 @@ export async function setupDemoApp(workspaceDir, version, log) { 'providers: [', `providers: [\n provideFingerprint({ startOptions: { apiKey: 'test-key' } }),` ) - writeFile(appConfigPath, content) + fs.writeFileSync(appConfigPath, content, 'utf8') } else { - const mainTsPath = joinPath(workspaceDir, 'projects', 'demo', 'src', 'main.ts') - if (exists(mainTsPath)) { - let content = readFile(mainTsPath) + const mainTsPath = path.join(workspaceDir, 'projects', 'demo', 'src', 'main.ts') + if (fs.existsSync(mainTsPath)) { + let content = fs.readFileSync(mainTsPath, 'utf8') if (content.includes('bootstrapApplication')) { content = content.replace( "import { bootstrapApplication } from '@angular/platform-browser';", @@ -53,7 +54,7 @@ export async function setupDemoApp(workspaceDir, version, log) { 'providers: [', `providers: [\n provideFingerprint({ startOptions: { apiKey: 'test-key' } }),` ) - writeFile(mainTsPath, content) + fs.writeFileSync(mainTsPath, content, 'utf8') } } } diff --git a/bin/utils/steps/updateTsConfigs.mjs b/bin/utils/steps/updateTsConfigs.mjs index d5a26d2..52c5dc8 100644 --- a/bin/utils/steps/updateTsConfigs.mjs +++ b/bin/utils/steps/updateTsConfigs.mjs @@ -1,15 +1,17 @@ -import { updateJsonFile, joinPath, exists, readDir, readFile, writeFile, stat } from '../fs.mjs' +import fs from 'fs' +import path from 'path' +import { updateJsonFile } from '../fs.mjs' import { LIB_NAME } from '../constants.mjs' export async function updateTsConfigs(workspaceDir, version) { const tsconfigFiles = [ - joinPath(workspaceDir, 'tsconfig.json'), - joinPath(workspaceDir, 'tsconfig.base.json'), - joinPath(workspaceDir, 'projects', LIB_NAME, 'tsconfig.spec.json'), + path.join(workspaceDir, 'tsconfig.json'), + path.join(workspaceDir, 'tsconfig.base.json'), + path.join(workspaceDir, 'projects', LIB_NAME, 'tsconfig.spec.json'), ] for (const file of tsconfigFiles) { - if (exists(file)) { + if (fs.existsSync(file)) { updateJsonFile(file, (json) => { if (!json.compilerOptions) { json.compilerOptions = {} @@ -24,9 +26,9 @@ export async function updateTsConfigs(workspaceDir, version) { const allSpecTsconfigs = [] const findSpecConfigs = (dir) => { - readDir(dir).forEach((file) => { - const fullPath = joinPath(dir, file) - if (exists(fullPath) && stat(fullPath).isDirectory()) { + fs.readdirSync(dir).forEach((file) => { + const fullPath = path.join(dir, file) + if (fs.existsSync(fullPath) && fs.statSync(fullPath).isDirectory()) { if (file !== 'node_modules') { findSpecConfigs(fullPath) } @@ -58,38 +60,38 @@ export async function updateTsConfigs(workspaceDir, version) { }) } - if (exists(joinPath(workspaceDir, 'projects', LIB_NAME, 'tsconfig.spec.json'))) { - if (!exists(joinPath(workspaceDir, 'tsconfig.json')) && exists(joinPath(workspaceDir, 'tsconfig.base.json'))) { - updateJsonFile(joinPath(workspaceDir, 'projects', LIB_NAME, 'tsconfig.spec.json'), (json) => { + if (fs.existsSync(path.join(workspaceDir, 'projects', LIB_NAME, 'tsconfig.spec.json'))) { + if (!fs.existsSync(path.join(workspaceDir, 'tsconfig.json')) && fs.existsSync(path.join(workspaceDir, 'tsconfig.base.json'))) { + updateJsonFile(path.join(workspaceDir, 'projects', LIB_NAME, 'tsconfig.spec.json'), (json) => { json.extends = '../../tsconfig.base.json' }) } } const addNodeReference = (dir) => { - readDir(dir).forEach((file) => { - const fullPath = joinPath(dir, file) - if (exists(fullPath) && stat(fullPath).isDirectory()) { + fs.readdirSync(dir).forEach((file) => { + const fullPath = path.join(dir, file) + if (fs.existsSync(fullPath) && fs.statSync(fullPath).isDirectory()) { addNodeReference(fullPath) } else if (file.endsWith('.spec.ts')) { - let content = readFile(fullPath) + let content = fs.readFileSync(fullPath, 'utf8') if (!content.startsWith('/// ')) { content = '/// \n' + content - writeFile(fullPath, content) + fs.writeFileSync(fullPath, content, 'utf8') } } }) } - addNodeReference(joinPath(workspaceDir, 'projects', LIB_NAME)) + addNodeReference(path.join(workspaceDir, 'projects', LIB_NAME)) if (parseInt(version) >= 21) { const targetTsconfigs = [ - joinPath(workspaceDir, 'tsconfig.json'), - joinPath(workspaceDir, 'tsconfig.base.json'), - joinPath(workspaceDir, 'projects', LIB_NAME, 'tsconfig.lib.json'), + path.join(workspaceDir, 'tsconfig.json'), + path.join(workspaceDir, 'tsconfig.base.json'), + path.join(workspaceDir, 'projects', LIB_NAME, 'tsconfig.lib.json'), ] for (const configPath of targetTsconfigs) { - if (exists(configPath)) { + if (fs.existsSync(configPath)) { updateJsonFile(configPath, (json) => { if (json.compilerOptions) { json.compilerOptions.moduleResolution = 'bundler' From 638125bab5c022cbcb185fa6c481639da999cafa Mon Sep 17 00:00:00 2001 From: Orkun Date: Wed, 24 Jun 2026 10:22:08 +0300 Subject: [PATCH 08/32] refactor: throw error if pnpm not installed --- bin/test-matrix.mjs | 7 ++++++- bin/utils/commands/ensurePnpm.mjs | 3 +-- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/bin/test-matrix.mjs b/bin/test-matrix.mjs index e414aae..36ab2df 100755 --- a/bin/test-matrix.mjs +++ b/bin/test-matrix.mjs @@ -77,7 +77,12 @@ async function main() { console.log(`Logs: ${LOG_DIR}`) console.log('------------------------------------------------------------') - ensurePnpm() + try { + ensurePnpm() + } catch (e) { + console.error(e) + process.exit(1) + } const results = await Promise.all(versionsToTest.map((v) => testVersion(v))) const failed = results.some((code) => code !== 0) diff --git a/bin/utils/commands/ensurePnpm.mjs b/bin/utils/commands/ensurePnpm.mjs index d786f09..30fcef0 100644 --- a/bin/utils/commands/ensurePnpm.mjs +++ b/bin/utils/commands/ensurePnpm.mjs @@ -5,8 +5,7 @@ export function ensurePnpm() { try { exec('pnpm --version', { stdio: 'ignore' }) } catch (e) { - console.log('pnpm not found, installing...') - exec('npm install -g pnpm', { stdio: 'inherit' }) + throw new Error('pnpm not found') } exec(`pnpm config set store-dir "${PNPM_STORE_DIR}"`, { stdio: 'inherit' }) } From a995db21b96aada7137ea20c080277604907c3c8 Mon Sep 17 00:00:00 2001 From: Orkun Date: Wed, 24 Jun 2026 10:22:46 +0300 Subject: [PATCH 09/32] refactor: remove CI from hardcoded env --- bin/test-matrix.mjs | 1 - 1 file changed, 1 deletion(-) diff --git a/bin/test-matrix.mjs b/bin/test-matrix.mjs index 36ab2df..7253895 100755 --- a/bin/test-matrix.mjs +++ b/bin/test-matrix.mjs @@ -15,7 +15,6 @@ import { setupDemoApp } from './utils/steps/setupDemoApp.mjs' import { setupLogDir } from './utils/setupLogDir.mjs' import { logErrorSummary } from './utils/logErrorSummary.mjs' -process.env.CI = 'true' process.env.NG_CLI_ANALYTICS = 'false' process.env.PNPM_STORE_DIR = PNPM_STORE_DIR From 3de9b6e5af9ab2db25077bb8554c522749380b26 Mon Sep 17 00:00:00 2001 From: Orkun Date: Wed, 24 Jun 2026 10:23:46 +0300 Subject: [PATCH 10/32] refactor: remove redundant main wrapper function --- bin/test-matrix.mjs | 64 ++++++++++++++--------------- bin/utils/steps/copySourceFiles.mjs | 5 ++- bin/utils/steps/updateTsConfigs.mjs | 5 ++- 3 files changed, 38 insertions(+), 36 deletions(-) diff --git a/bin/test-matrix.mjs b/bin/test-matrix.mjs index 7253895..d48620d 100755 --- a/bin/test-matrix.mjs +++ b/bin/test-matrix.mjs @@ -56,44 +56,40 @@ async function testVersion(version) { } } -async function main() { - setupLogDir() - - const args = process.argv.slice(2) - const versionArgs = [] - for (let i = 0; i < args.length; i++) { - if (args[i].startsWith('--version=')) { - versionArgs.push(args[i].split('=')[1]) - } else if (args[i] === '--version' && i + 1 < args.length) { - versionArgs.push(args[++i]) - } +setupLogDir() + +const args = process.argv.slice(2) +const versionArgs = [] +for (let i = 0; i < args.length; i++) { + if (args[i].startsWith('--version=')) { + versionArgs.push(args[i].split('=')[1]) + } else if (args[i] === '--version' && i + 1 < args.length) { + versionArgs.push(args[++i]) } +} - const versionsToTest = versionArgs.length > 0 ? versionArgs : VERSIONS +const versionsToTest = versionArgs.length > 0 ? versionArgs : VERSIONS - console.log(`Starting tests for Angular versions: ${versionsToTest.join(', ')}`) - console.log(`Using pnpm store at: ${PNPM_STORE_DIR}`) - console.log(`Logs: ${LOG_DIR}`) - console.log('------------------------------------------------------------') +console.log(`Starting tests for Angular versions: ${versionsToTest.join(', ')}`) +console.log(`Using pnpm store at: ${PNPM_STORE_DIR}`) +console.log(`Logs: ${LOG_DIR}`) +console.log('------------------------------------------------------------') - try { - ensurePnpm() - } catch (e) { - console.error(e) - process.exit(1) - } +try { + ensurePnpm() +} catch (e) { + console.error(e) + process.exit(1) +} - const results = await Promise.all(versionsToTest.map((v) => testVersion(v))) - const failed = results.some((code) => code !== 0) +const results = await Promise.all(versionsToTest.map((v) => testVersion(v))) +const failed = results.some((code) => code !== 0) - console.log('------------------------------------------------------------') - if (failed) { - console.log('CI Pipeline Failed') - process.exit(1) - } else { - console.log('Success: All Angular versions passed') - process.exit(0) - } +console.log('------------------------------------------------------------') +if (failed) { + console.log('CI Pipeline Failed') + process.exit(1) +} else { + console.log('Success: All Angular versions passed') + process.exit(0) } - -main() diff --git a/bin/utils/steps/copySourceFiles.mjs b/bin/utils/steps/copySourceFiles.mjs index 66d347f..8fad401 100644 --- a/bin/utils/steps/copySourceFiles.mjs +++ b/bin/utils/steps/copySourceFiles.mjs @@ -46,6 +46,9 @@ export async function copySourceFiles(workspaceDir) { fs.copyFileSync(path.join(SOURCE_PROJECT_DIR, 'ng-package.json'), path.join(projectDir, 'ng-package.json')) fs.copyFileSync(path.join(SOURCE_PROJECT_DIR, 'package.json'), path.join(projectDir, 'package.json')) fs.copyFileSync(path.join(SOURCE_PROJECT_DIR, 'tsconfig.lib.json'), path.join(projectDir, 'tsconfig.lib.json')) - fs.copyFileSync(path.join(SOURCE_PROJECT_DIR, 'tsconfig.lib.prod.json'), path.join(projectDir, 'tsconfig.lib.prod.json')) + fs.copyFileSync( + path.join(SOURCE_PROJECT_DIR, 'tsconfig.lib.prod.json'), + path.join(projectDir, 'tsconfig.lib.prod.json') + ) fs.copyFileSync(path.join(SOURCE_PROJECT_DIR, 'tsconfig.spec.json'), path.join(projectDir, 'tsconfig.spec.json')) } diff --git a/bin/utils/steps/updateTsConfigs.mjs b/bin/utils/steps/updateTsConfigs.mjs index 52c5dc8..6ff0c9c 100644 --- a/bin/utils/steps/updateTsConfigs.mjs +++ b/bin/utils/steps/updateTsConfigs.mjs @@ -61,7 +61,10 @@ export async function updateTsConfigs(workspaceDir, version) { } if (fs.existsSync(path.join(workspaceDir, 'projects', LIB_NAME, 'tsconfig.spec.json'))) { - if (!fs.existsSync(path.join(workspaceDir, 'tsconfig.json')) && fs.existsSync(path.join(workspaceDir, 'tsconfig.base.json'))) { + if ( + !fs.existsSync(path.join(workspaceDir, 'tsconfig.json')) && + fs.existsSync(path.join(workspaceDir, 'tsconfig.base.json')) + ) { updateJsonFile(path.join(workspaceDir, 'projects', LIB_NAME, 'tsconfig.spec.json'), (json) => { json.extends = '../../tsconfig.base.json' }) From f16e4d8b42d0f351b0a116bf046ddcd54e0732c8 Mon Sep 17 00:00:00 2001 From: Orkun Date: Wed, 24 Jun 2026 15:21:30 +0300 Subject: [PATCH 11/32] refactor: simplify test matrix --- .github/workflows/test-matrix.yml | 41 +++-- bin/test-matrix.mjs | 202 ++++++++++++++++++------ bin/utils/angularMetadata.mjs | 9 ++ bin/utils/command.mjs | 22 --- bin/utils/commands/ensurePnpm.mjs | 11 -- bin/utils/commands/jestRun.mjs | 5 - bin/utils/commands/ngBuild.mjs | 10 -- bin/utils/commands/ngGenerate.mjs | 10 -- bin/utils/commands/ngNew.mjs | 23 --- bin/utils/commands/pnpmAdd.mjs | 6 - bin/utils/commands/pnpmInstall.mjs | 10 -- bin/utils/constants.mjs | 17 -- bin/utils/fs.mjs | 27 ---- bin/utils/helpers.mjs | 67 ++++++++ bin/utils/logErrorSummary.mjs | 15 -- bin/utils/setupLogDir.mjs | 13 -- bin/utils/steps/copySourceFiles.mjs | 54 ------- bin/utils/steps/installDependencies.mjs | 70 -------- bin/utils/steps/setupDemoApp.mjs | 62 -------- bin/utils/steps/updateTsConfigs.mjs | 106 ------------- 20 files changed, 252 insertions(+), 528 deletions(-) create mode 100644 bin/utils/angularMetadata.mjs delete mode 100644 bin/utils/command.mjs delete mode 100644 bin/utils/commands/ensurePnpm.mjs delete mode 100644 bin/utils/commands/jestRun.mjs delete mode 100644 bin/utils/commands/ngBuild.mjs delete mode 100644 bin/utils/commands/ngGenerate.mjs delete mode 100644 bin/utils/commands/ngNew.mjs delete mode 100644 bin/utils/commands/pnpmAdd.mjs delete mode 100644 bin/utils/commands/pnpmInstall.mjs delete mode 100644 bin/utils/constants.mjs delete mode 100644 bin/utils/fs.mjs create mode 100644 bin/utils/helpers.mjs delete mode 100644 bin/utils/logErrorSummary.mjs delete mode 100644 bin/utils/setupLogDir.mjs delete mode 100644 bin/utils/steps/copySourceFiles.mjs delete mode 100644 bin/utils/steps/installDependencies.mjs delete mode 100644 bin/utils/steps/setupDemoApp.mjs delete mode 100644 bin/utils/steps/updateTsConfigs.mjs diff --git a/.github/workflows/test-matrix.yml b/.github/workflows/test-matrix.yml index 1149366..5199721 100644 --- a/.github/workflows/test-matrix.yml +++ b/.github/workflows/test-matrix.yml @@ -5,38 +5,37 @@ on: jobs: test-matrix: - name: Angular ${{ matrix.angular-version }} + name: Angular ${{ matrix.angular }} runs-on: ubuntu-latest strategy: fail-fast: false matrix: - angular-version: [15, 16, 17, 18, 19, 20, 21] include: - - angular-version: 15 - node-version: 18 - - angular-version: 16 - node-version: 18 - - angular-version: 17 - node-version: 18 - - angular-version: 18 - node-version: 20 - - angular-version: 19 - node-version: 20 - - angular-version: 20 - node-version: 20 - - angular-version: 21 - node-version: 22 + - angular: 15 + node: 18 + - angular: 16 + node: 18 + - angular: 17 + node: 18 + - angular: 18 + node: 20 + - angular: 19 + node: 20 + - angular: 20 + node: 20 + - angular: 21 + node: 22 steps: - uses: actions/checkout@v4 - - name: Setup Node.js ${{ matrix.node-version }} + - name: Setup Node.js ${{ matrix.node }} uses: actions/setup-node@v4 with: - node-version: ${{ matrix.node-version }} + node-version: ${{ matrix.node }} - name: Install pnpm - uses: pnpm/action-setup@v2 + uses: pnpm/action-setup@v4 with: version: 8 @@ -46,5 +45,5 @@ jobs: - name: Generate project version run: pnpm generate:version - - name: Run tests for Angular ${{ matrix.angular-version }} - run: pnpm run test:matrix -- --version=${{ matrix.angular-version }} + - name: Run Matrix Check for Angular ${{ matrix.angular }} + run: pnpm run test:matrix -- --version=${{ matrix.angular }} diff --git a/bin/test-matrix.mjs b/bin/test-matrix.mjs index d48620d..867b552 100755 --- a/bin/test-matrix.mjs +++ b/bin/test-matrix.mjs @@ -3,51 +3,173 @@ import fs from 'fs' import path from 'path' import os from 'os' -import { PNPM_STORE_DIR, VERSIONS, LIB_NAME, LOG_DIR } from './utils/constants.mjs' -import { ensurePnpm } from './utils/commands/ensurePnpm.mjs' -import { ngNew } from './utils/commands/ngNew.mjs' -import { ngBuild } from './utils/commands/ngBuild.mjs' -import { jestRun } from './utils/commands/jestRun.mjs' -import { copySourceFiles } from './utils/steps/copySourceFiles.mjs' -import { updateTsConfigs } from './utils/steps/updateTsConfigs.mjs' -import { installDependencies } from './utils/steps/installDependencies.mjs' -import { setupDemoApp } from './utils/steps/setupDemoApp.mjs' -import { setupLogDir } from './utils/setupLogDir.mjs' -import { logErrorSummary } from './utils/logErrorSummary.mjs' +import { angularMetadata } from './utils/angularMetadata.mjs' +import { logErrorSummary, setupLogDir, executeCommand, updateJsonFile, copyRecursive } from './utils/helpers.mjs' + +const LIB_NAME = 'fingerprintjs-pro-angular' +const LOG_DIR = path.join(process.cwd(), 'test-logs') process.env.NG_CLI_ANALYTICS = 'false' -process.env.PNPM_STORE_DIR = PNPM_STORE_DIR async function testVersion(version) { + const meta = angularMetadata[version] + if (!meta) { + const errorMsg = `No metadata found for version ${version}` + console.error(errorMsg) + const logFile = path.join(LOG_DIR, `angular-${version}.log`) + fs.writeFileSync(logFile, errorMsg) + return 1 + } + const logFile = path.join(LOG_DIR, `angular-${version}.log`) const logStream = fs.createWriteStream(logFile) - - if (parseInt(version) >= 20) { - const nodeVersion = process.versions.node - const [major, minor] = nodeVersion.split('.').map(Number) - if (major < 20 || (major === 20 && minor < 19)) { - console.log(`Angular ${version}: Skipped (Node.js ${nodeVersion} < v20.19)`) - return 0 - } - } + const log = (data) => logStream.write(data) const tempDir = fs.mkdtempSync(path.join(os.tmpdir(), 'angular-test-')) const workspaceDir = path.join(tempDir, 'test-workspace') try { - const log = (data) => logStream.write(data) + log(`Angular ${version}: Starting check...\n`) + console.log(`Angular ${version}: Starting check...`) + + // 1. Create Workspace + await executeCommand( + 'npx', + [ + '-y', + `@angular/cli@${version}`, + 'new', + 'test-workspace', + '--create-application=false', + '--skip-git', + '--skip-install', + '--defaults', + '--package-manager=pnpm', + ], + { cwd: tempDir, env: { ...process.env } }, + log + ) + + // Ensure npx worked and we have node_modules in the workspace after next steps + // Actually, step 1 just creates the folder structure. + // We need to install @angular/cli locally in the temp workspace to use it via ./node_modules/.bin/ng + // OR we use npx again for generate. + + // 2. Generate Library + await executeCommand( + 'npx', + ['-y', `@angular/cli@${version}`, 'generate', 'library', LIB_NAME, '--skip-install'], + { cwd: workspaceDir, env: { ...process.env } }, + log + ) + + const angularVersionTag = `v${version}-lts` + + // 3. Install Peer Deps and Required Packages + const packagesToInstall = [ + `@angular/animations@${angularVersionTag}`, + `@angular/common@${angularVersionTag}`, + `@angular/compiler@${angularVersionTag}`, + `@angular/core@${angularVersionTag}`, + `@angular/forms@${angularVersionTag}`, + `@angular/platform-browser@${angularVersionTag}`, + `@angular/platform-browser-dynamic@${angularVersionTag}`, + `@angular/router@${angularVersionTag}`, + `zone.js@${meta.zone}`, + '@fingerprint/agent', + ] + + const jestVersion = meta.jest + const typesJestVersion = meta.typesJest || jestVersion + + const devPackagesToInstall = [ + `@angular/cli@${angularVersionTag}`, + `@angular/compiler-cli@${angularVersionTag}`, + `@angular-devkit/build-angular@${angularVersionTag}`, + `ng-packagr@^${version}`, + `typescript@${meta.typescript}`, + `jest-preset-angular@${meta.jpa}`, + `jest@${jestVersion}`, + `jest-environment-jsdom@${jestVersion}`, + `@types/jest@${typesJestVersion}`, + '@types/node', + ] - await ngNew(version, workspaceDir, log) - await installDependencies(version, workspaceDir, log) - await setupDemoApp(workspaceDir, version, log) - await copySourceFiles(workspaceDir) - await updateTsConfigs(workspaceDir, version) - await ngBuild(workspaceDir, log, LIB_NAME) - await jestRun(workspaceDir, log) + const commonOptions = ['--config.strict-peer-dependencies=false', '--no-lockfile', '--config.fund=false'] + + // We install everything in one go to avoid version mismatches and repeat installations + await executeCommand( + 'pnpm', + ['add', ...packagesToInstall, ...devPackagesToInstall, ...commonOptions], + { cwd: workspaceDir, env: { ...process.env } }, + log + ) + + // 4. Copy Source Files + const libDestDir = path.join(workspaceDir, 'projects', LIB_NAME, 'src', 'lib') + fs.mkdirSync(libDestDir, { recursive: true }) + copyRecursive(path.join(process.cwd(), 'projects', LIB_NAME, 'src', 'lib'), libDestDir) + + fs.copyFileSync( + path.join(process.cwd(), 'projects', LIB_NAME, 'src', 'public-api.ts'), + path.join(workspaceDir, 'projects', LIB_NAME, 'src', 'public-api.ts') + ) + + const rootFiles = ['jest.config.js', 'tsconfig.json', 'tsconfig.spec.json', 'test.ts'] + for (const file of rootFiles) { + const src = path.join(process.cwd(), file) + if (fs.existsSync(src)) { + fs.copyFileSync(src, path.join(workspaceDir, file)) + } + } + + const projectDir = path.join(workspaceDir, 'projects', LIB_NAME) + const projectFiles = [ + 'ng-package.json', + 'package.json', + 'tsconfig.lib.json', + 'tsconfig.lib.prod.json', + 'tsconfig.spec.json', + ] + for (const file of projectFiles) { + fs.copyFileSync(path.join(process.cwd(), 'projects', LIB_NAME, file), path.join(projectDir, file)) + } + + // 5. Update TS Configs for compatibility + const tsconfigFiles = [ + path.join(workspaceDir, 'tsconfig.json'), + path.join(workspaceDir, 'projects', LIB_NAME, 'tsconfig.spec.json'), + ] + for (const file of tsconfigFiles) { + if (fs.existsSync(file)) { + updateJsonFile(file, (json) => { + if (!json.compilerOptions) { + json.compilerOptions = {} + } + json.compilerOptions.skipLibCheck = true + json.compilerOptions.esModuleInterop = true + if (parseInt(version) >= 21) { + json.compilerOptions.moduleResolution = 'bundler' + } + }) + } + } + + // 6. Build + await executeCommand( + './node_modules/.bin/ng', + ['build', LIB_NAME], + { cwd: workspaceDir, env: { ...process.env } }, + log + ) + + // 7. Test + await executeCommand('./node_modules/.bin/jest', [], { cwd: workspaceDir, env: { ...process.env } }, log) console.log(`Angular ${version}: PASSED`) return 0 } catch (err) { + log(err.stack || err.message) logErrorSummary(logStream, logFile, err, version) return 1 } finally { @@ -56,7 +178,7 @@ async function testVersion(version) { } } -setupLogDir() +setupLogDir(LOG_DIR) const args = process.argv.slice(2) const versionArgs = [] @@ -68,28 +190,16 @@ for (let i = 0; i < args.length; i++) { } } -const versionsToTest = versionArgs.length > 0 ? versionArgs : VERSIONS +const versionsToTest = versionArgs.length > 0 ? versionArgs : Object.keys(angularMetadata) -console.log(`Starting tests for Angular versions: ${versionsToTest.join(', ')}`) -console.log(`Using pnpm store at: ${PNPM_STORE_DIR}`) -console.log(`Logs: ${LOG_DIR}`) -console.log('------------------------------------------------------------') - -try { - ensurePnpm() -} catch (e) { - console.error(e) - process.exit(1) -} +console.log(`Starting matrix tests for: ${versionsToTest.join(', ')}`) -const results = await Promise.all(versionsToTest.map((v) => testVersion(v))) +const results = await Promise.all(versionsToTest.map((version) => testVersion(version))) const failed = results.some((code) => code !== 0) -console.log('------------------------------------------------------------') if (failed) { - console.log('CI Pipeline Failed') process.exit(1) } else { - console.log('Success: All Angular versions passed') + console.log('Success: All versions passed') process.exit(0) } diff --git a/bin/utils/angularMetadata.mjs b/bin/utils/angularMetadata.mjs new file mode 100644 index 0000000..3c02013 --- /dev/null +++ b/bin/utils/angularMetadata.mjs @@ -0,0 +1,9 @@ +export const angularMetadata = { + 15: { node: 18, typescript: '~4.9.5', zone: '~0.11.4', jpa: '^13.1.4', jest: '^29.0.0' }, + 16: { node: 18, typescript: '~5.1.6', zone: '~0.13.3', jpa: '^13.1.4', jest: '^29.0.0' }, + 17: { node: 18, typescript: '~5.2.2', zone: '~0.14.4', jpa: '^14.1.1', jest: '^29.0.0' }, + 18: { node: 20, typescript: '~5.4.5', zone: '~0.14.4', jpa: '^14.1.1', jest: '^29.0.0' }, + 19: { node: 20, typescript: '~5.6.3', zone: '~0.15.0', jpa: '^14.4.2', jest: '^29.0.0' }, + 20: { node: 20, typescript: '~5.8.3', zone: '~0.15.0', jpa: '^15.0.0', jest: '^30.2.0', typesJest: '^30.0.0' }, + 21: { node: 22, typescript: '~5.9.2', zone: '~0.16.0', jpa: '^17.0.0', jest: '^30.2.0', typesJest: '^30.0.0' }, +} diff --git a/bin/utils/command.mjs b/bin/utils/command.mjs deleted file mode 100644 index 4c35ba4..0000000 --- a/bin/utils/command.mjs +++ /dev/null @@ -1,22 +0,0 @@ -import { spawn, execSync } from 'child_process' - -export function executeCommand(cmd, args, opts, log) { - return new Promise((resolve, reject) => { - const child = spawn(cmd, args, opts) - if (log) { - child.stdout.on('data', log) - child.stderr.on('data', log) - } - child.on('close', (code) => { - if (code === 0) { - resolve() - } else { - reject(new Error(`Command failed with code ${code}: ${cmd} ${args.join(' ')}`)) - } - }) - }) -} - -export function exec(cmd, options) { - return execSync(cmd, options) -} diff --git a/bin/utils/commands/ensurePnpm.mjs b/bin/utils/commands/ensurePnpm.mjs deleted file mode 100644 index 30fcef0..0000000 --- a/bin/utils/commands/ensurePnpm.mjs +++ /dev/null @@ -1,11 +0,0 @@ -import { exec } from '../command.mjs' -import { PNPM_STORE_DIR } from '../constants.mjs' - -export function ensurePnpm() { - try { - exec('pnpm --version', { stdio: 'ignore' }) - } catch (e) { - throw new Error('pnpm not found') - } - exec(`pnpm config set store-dir "${PNPM_STORE_DIR}"`, { stdio: 'inherit' }) -} diff --git a/bin/utils/commands/jestRun.mjs b/bin/utils/commands/jestRun.mjs deleted file mode 100644 index f2c0476..0000000 --- a/bin/utils/commands/jestRun.mjs +++ /dev/null @@ -1,5 +0,0 @@ -import { executeCommand } from '../command.mjs' - -export async function jestRun(workspaceDir, log) { - return executeCommand('./node_modules/.bin/jest', [], { cwd: workspaceDir, env: { ...process.env } }, log) -} diff --git a/bin/utils/commands/ngBuild.mjs b/bin/utils/commands/ngBuild.mjs deleted file mode 100644 index 702aca7..0000000 --- a/bin/utils/commands/ngBuild.mjs +++ /dev/null @@ -1,10 +0,0 @@ -import { executeCommand } from '../command.mjs' - -export async function ngBuild(workspaceDir, log, project) { - return executeCommand( - './node_modules/.bin/ng', - ['build', project], - { cwd: workspaceDir, env: { ...process.env } }, - log - ) -} diff --git a/bin/utils/commands/ngGenerate.mjs b/bin/utils/commands/ngGenerate.mjs deleted file mode 100644 index 4681c31..0000000 --- a/bin/utils/commands/ngGenerate.mjs +++ /dev/null @@ -1,10 +0,0 @@ -import { executeCommand } from '../command.mjs' - -export async function ngGenerate(workspaceDir, log, type, name, options = []) { - return executeCommand( - 'pnpm', - ['exec', 'ng', 'generate', type, name, ...options], - { cwd: workspaceDir, env: { ...process.env } }, - log - ) -} diff --git a/bin/utils/commands/ngNew.mjs b/bin/utils/commands/ngNew.mjs deleted file mode 100644 index 62a01c6..0000000 --- a/bin/utils/commands/ngNew.mjs +++ /dev/null @@ -1,23 +0,0 @@ -import { executeCommand } from '../command.mjs' - -export async function ngNew(version, workspaceDir, log) { - const parentDir = workspaceDir.split('/').slice(0, -1).join('/') - const workspaceName = workspaceDir.split('/').pop() - - return executeCommand( - 'npx', - [ - '-y', - `@angular/cli@${version}`, - 'new', - workspaceName, - '--create-application=false', - '--skip-git', - '--skip-install', - '--defaults', - '--package-manager=pnpm', - ], - { cwd: parentDir, env: { ...process.env } }, - log - ) -} diff --git a/bin/utils/commands/pnpmAdd.mjs b/bin/utils/commands/pnpmAdd.mjs deleted file mode 100644 index 33d8530..0000000 --- a/bin/utils/commands/pnpmAdd.mjs +++ /dev/null @@ -1,6 +0,0 @@ -import { executeCommand } from '../command.mjs' - -export async function pnpmAdd(workspaceDir, log, packages, options = []) { - const args = ['add', ...packages, '--config.fund=false', ...options] - return executeCommand('pnpm', args, { cwd: workspaceDir, env: { ...process.env } }, log) -} diff --git a/bin/utils/commands/pnpmInstall.mjs b/bin/utils/commands/pnpmInstall.mjs deleted file mode 100644 index 5ba9370..0000000 --- a/bin/utils/commands/pnpmInstall.mjs +++ /dev/null @@ -1,10 +0,0 @@ -import { executeCommand } from '../command.mjs' - -export async function pnpmInstall(workspaceDir, log, options = []) { - return executeCommand( - 'pnpm', - ['install', '--config.fund=false', ...options], - { cwd: workspaceDir, env: { ...process.env } }, - log - ) -} diff --git a/bin/utils/constants.mjs b/bin/utils/constants.mjs deleted file mode 100644 index be98747..0000000 --- a/bin/utils/constants.mjs +++ /dev/null @@ -1,17 +0,0 @@ -import path from 'path' - -export const LIB_NAME = 'fingerprintjs-pro-angular' -export const VERSIONS = ['15', '16', '17', '18', '19', '20', '21'] - -export const ROOT_DIR = process.cwd() -export const PNPM_STORE_DIR = path.join(ROOT_DIR, '.pnpm-store') - -export const SOURCE_PROJECT_DIR = path.join(ROOT_DIR, 'projects', LIB_NAME) -export const SOURCE_LIB_DIR = path.join(SOURCE_PROJECT_DIR, 'src', 'lib') -export const SOURCE_PUBLIC_API = path.join(SOURCE_PROJECT_DIR, 'src', 'public-api.ts') -export const SOURCE_TEST_TS = path.join(ROOT_DIR, 'test.ts') -export const SOURCE_JEST_CONFIG = path.join(ROOT_DIR, 'jest.config.js') -export const SOURCE_ROOT_TSCONFIG = path.join(ROOT_DIR, 'tsconfig.json') -export const SOURCE_ROOT_TSCONFIG_SPEC = path.join(ROOT_DIR, 'tsconfig.spec.json') - -export const LOG_DIR = path.join(ROOT_DIR, 'test-logs') diff --git a/bin/utils/fs.mjs b/bin/utils/fs.mjs deleted file mode 100644 index e1f5694..0000000 --- a/bin/utils/fs.mjs +++ /dev/null @@ -1,27 +0,0 @@ -import fs from 'fs' -import path from 'path' - -export function updateJsonFile(filePath, updater) { - if (!fs.existsSync(filePath)) { - return - } - const content = fs.readFileSync(filePath, 'utf8') - const cleanContent = content.replace(/\/\*[\s\S]*?\*\/|([^\\:]|^)\/\/.*$/gm, '$1') - const json = JSON.parse(cleanContent) - updater(json) - fs.writeFileSync(filePath, JSON.stringify(json, null, 2), 'utf8') -} - -export function copyRecursive(src, dest) { - const isDirectory = fs.existsSync(src) && fs.statSync(src).isDirectory() - if (isDirectory) { - if (!fs.existsSync(dest)) { - fs.mkdirSync(dest, { recursive: true }) - } - fs.readdirSync(src).forEach((childItemName) => { - copyRecursive(path.join(src, childItemName), path.join(dest, childItemName)) - }) - } else { - fs.copyFileSync(src, dest) - } -} diff --git a/bin/utils/helpers.mjs b/bin/utils/helpers.mjs new file mode 100644 index 0000000..e2cdbf5 --- /dev/null +++ b/bin/utils/helpers.mjs @@ -0,0 +1,67 @@ +import fs from 'fs' +import path from 'path' +import { spawn } from 'child_process' + +export function setupLogDir(logDir) { + if (!fs.existsSync(logDir)) { + fs.mkdirSync(logDir, { recursive: true }) + } else { + fs.readdirSync(logDir).forEach((file) => { + fs.unlinkSync(path.join(logDir, file)) + }) + } +} + +export function logErrorSummary(logStream, logFile, err, version) { + console.log(`Angular ${version}: FAILED (see ${logFile})`) + + try { + const logContent = fs.readFileSync(logFile, 'utf8') + const lines = logContent.split('\n') + console.log(lines.slice(-15).join('\n')) + } catch (e) { + // ignore + } +} + +export function executeCommand(cmd, args, opts, log) { + return new Promise((resolve, reject) => { + const child = spawn(cmd, args, opts) + if (log) { + child.stdout.on('data', log) + child.stderr.on('data', log) + } + child.on('close', (code) => { + if (code === 0) { + resolve() + } else { + reject(new Error(`Command failed with code ${code}: ${cmd} ${args.join(' ')}`)) + } + }) + }) +} + +export function updateJsonFile(filePath, updater) { + if (!fs.existsSync(filePath)) { + return + } + const content = fs.readFileSync(filePath, 'utf8') + const cleanContent = content.replace(/\/\*[\s\S]*?\*\/|([^\\:]|^)\/\/.*$/gm, '$1') + const json = JSON.parse(cleanContent) + updater(json) + fs.writeFileSync(filePath, JSON.stringify(json, null, 2), 'utf8') +} + +export function copyRecursive(src, dest) { + const isDirectory = fs.existsSync(src) && fs.statSync(src).isDirectory() + if (isDirectory) { + if (!fs.existsSync(dest)) { + fs.mkdirSync(dest, { recursive: true }) + } + fs.readdirSync(src).forEach((childItemName) => { + copyRecursive(path.join(src, childItemName), path.join(dest, childItemName)) + }) + } else { + fs.copyFileSync(src, dest) + } +} diff --git a/bin/utils/logErrorSummary.mjs b/bin/utils/logErrorSummary.mjs deleted file mode 100644 index 2eac8c8..0000000 --- a/bin/utils/logErrorSummary.mjs +++ /dev/null @@ -1,15 +0,0 @@ -import fs from 'fs' - -export function logErrorSummary(logStream, logFile, err, version) { - logStream.write(`\nError: ${err.message}\n`) - console.log(`Angular ${version}: FAILED`) - console.log(`Log: ${logFile}`) - - try { - const logContent = fs.readFileSync(logFile, 'utf8') - const lines = logContent.split('\n') - console.log(lines.slice(-15).join('\n')) - } catch (e) { - // ignore - } -} diff --git a/bin/utils/setupLogDir.mjs b/bin/utils/setupLogDir.mjs deleted file mode 100644 index 695edde..0000000 --- a/bin/utils/setupLogDir.mjs +++ /dev/null @@ -1,13 +0,0 @@ -import fs from 'fs' -import path from 'path' -import { LOG_DIR } from './constants.mjs' - -export function setupLogDir() { - if (!fs.existsSync(LOG_DIR)) { - fs.mkdirSync(LOG_DIR, { recursive: true }) - } else { - fs.readdirSync(LOG_DIR).forEach((file) => { - fs.unlinkSync(path.join(LOG_DIR, file)) - }) - } -} diff --git a/bin/utils/steps/copySourceFiles.mjs b/bin/utils/steps/copySourceFiles.mjs deleted file mode 100644 index 8fad401..0000000 --- a/bin/utils/steps/copySourceFiles.mjs +++ /dev/null @@ -1,54 +0,0 @@ -import path from 'path' -import fs from 'fs' -import { copyRecursive } from '../fs.mjs' -import { - LIB_NAME, - SOURCE_PROJECT_DIR, - SOURCE_LIB_DIR, - SOURCE_PUBLIC_API, - SOURCE_TEST_TS, - SOURCE_JEST_CONFIG, - SOURCE_ROOT_TSCONFIG, - SOURCE_ROOT_TSCONFIG_SPEC, -} from '../constants.mjs' - -export async function copySourceFiles(workspaceDir) { - const libDestDir = path.join(workspaceDir, 'projects', LIB_NAME, 'src', 'lib') - if (fs.existsSync(libDestDir)) { - fs.rmSync(libDestDir, { recursive: true, force: true }) - } - fs.mkdirSync(libDestDir, { recursive: true }) - - copyRecursive(SOURCE_LIB_DIR, libDestDir) - fs.copyFileSync(SOURCE_PUBLIC_API, path.join(workspaceDir, 'projects', LIB_NAME, 'src', 'public-api.ts')) - - if (fs.existsSync(SOURCE_TEST_TS)) { - fs.copyFileSync(SOURCE_TEST_TS, path.join(workspaceDir, 'test.ts')) - } - if (fs.existsSync(SOURCE_JEST_CONFIG)) { - fs.copyFileSync(SOURCE_JEST_CONFIG, path.join(workspaceDir, 'jest.config.js')) - } - if (fs.existsSync(SOURCE_ROOT_TSCONFIG)) { - fs.copyFileSync(SOURCE_ROOT_TSCONFIG, path.join(workspaceDir, 'tsconfig.json')) - } - if (fs.existsSync(SOURCE_ROOT_TSCONFIG_SPEC)) { - fs.copyFileSync(SOURCE_ROOT_TSCONFIG_SPEC, path.join(workspaceDir, 'tsconfig.spec.json')) - } - - if (!fs.existsSync(path.join(workspaceDir, 'tsconfig.spec.json'))) { - fs.writeFileSync( - path.join(workspaceDir, 'tsconfig.spec.json'), - JSON.stringify({ extends: './tsconfig.json', compilerOptions: { types: ['jest', 'node'] } }) - ) - } - - const projectDir = path.join(workspaceDir, 'projects', LIB_NAME) - fs.copyFileSync(path.join(SOURCE_PROJECT_DIR, 'ng-package.json'), path.join(projectDir, 'ng-package.json')) - fs.copyFileSync(path.join(SOURCE_PROJECT_DIR, 'package.json'), path.join(projectDir, 'package.json')) - fs.copyFileSync(path.join(SOURCE_PROJECT_DIR, 'tsconfig.lib.json'), path.join(projectDir, 'tsconfig.lib.json')) - fs.copyFileSync( - path.join(SOURCE_PROJECT_DIR, 'tsconfig.lib.prod.json'), - path.join(projectDir, 'tsconfig.lib.prod.json') - ) - fs.copyFileSync(path.join(SOURCE_PROJECT_DIR, 'tsconfig.spec.json'), path.join(projectDir, 'tsconfig.spec.json')) -} diff --git a/bin/utils/steps/installDependencies.mjs b/bin/utils/steps/installDependencies.mjs deleted file mode 100644 index 9cdffeb..0000000 --- a/bin/utils/steps/installDependencies.mjs +++ /dev/null @@ -1,70 +0,0 @@ -import { pnpmInstall } from '../commands/pnpmInstall.mjs' -import { ngGenerate } from '../commands/ngGenerate.mjs' -import { pnpmAdd } from '../commands/pnpmAdd.mjs' -import { LIB_NAME } from '../constants.mjs' - -export async function installDependencies(version, workspaceDir, log) { - const majorVersion = parseInt(version) - await pnpmInstall(workspaceDir, log) - await ngGenerate(workspaceDir, log, 'library', LIB_NAME, ['--skip-install']) - await pnpmInstall(workspaceDir, log, ['--config.strict-peer-dependencies=false', '--no-frozen-lockfile']) - await pnpmAdd(workspaceDir, log, ['@fingerprint/agent'], ['--config.strict-peer-dependencies=false']) - - const zoneVersionMap = { - 21: '~0.16.0', - 19: '~0.15.0', - 17: '~0.14.0', - 16: '~0.13.0', - 15: '~0.11.4', - } - - const zoneVersionKey = Object.keys(zoneVersionMap) - .map(Number) - .sort((a, b) => b - a) - .find((v) => majorVersion >= v) - - const zoneVersion = zoneVersionKey ? zoneVersionMap[zoneVersionKey] : 'latest' - - await pnpmAdd( - workspaceDir, - log, - [`@angular/platform-browser-dynamic@^${version}`, `zone.js@${zoneVersion}`], - ['--config.strict-peer-dependencies=false'] - ) - - const builderPackages = [`ng-packagr@^${version}`] - - const jestPackagesMap = { - 21: [ - 'jest@^30.0.0', - 'jest-preset-angular@^17.0.0', - 'jest-environment-jsdom@^30.0.0', - '@types/jest@^29.5.0', - '@types/node', - ], - 19: [ - 'jest@^29.7.0', - 'jest-preset-angular@^14.6.0', - 'jest-environment-jsdom@^29.7.0', - '@types/jest@^29.5.0', - '@types/node', - ], - 18: ['jest@^29.5.0', 'jest-preset-angular@^14.1.0', 'jest-environment-jsdom@^29.5.0', '@types/jest', '@types/node'], - 16: ['jest@^29.0.0', 'jest-preset-angular@^13.1.0', 'jest-environment-jsdom@^29.0.0', '@types/jest', '@types/node'], - 0: ['jest@^28.0.0', 'jest-preset-angular@^12.2.0', 'jest-environment-jsdom@^28.0.0', '@types/jest', '@types/node'], - } - - const jestVersionKey = Object.keys(jestPackagesMap) - .map(Number) - .sort((a, b) => b - a) - .find((v) => majorVersion >= v) - - const jestPackages = jestPackagesMap[jestVersionKey] - - await pnpmAdd( - workspaceDir, - log, - [...jestPackages, ...builderPackages], - ['-D', '--config.strict-peer-dependencies=false'] - ) -} diff --git a/bin/utils/steps/setupDemoApp.mjs b/bin/utils/steps/setupDemoApp.mjs deleted file mode 100644 index 49f80d0..0000000 --- a/bin/utils/steps/setupDemoApp.mjs +++ /dev/null @@ -1,62 +0,0 @@ -import fs from 'fs' -import path from 'path' -import { ngGenerate } from '../commands/ngGenerate.mjs' - -export async function setupDemoApp(workspaceDir, version, log) { - const isLegacy = parseInt(version) === 15 - const options = ['--routing=false', '--style=css', '--skip-tests=true'] - - if (!isLegacy) { - options.push('--standalone=true') - } - - await ngGenerate(workspaceDir, log, 'application', 'demo', options) - - const appDir = path.join(workspaceDir, 'projects', 'demo', 'src', 'app') - - if (isLegacy) { - const appModulePath = path.join(appDir, 'app.module.ts') - if (fs.existsSync(appModulePath)) { - let content = fs.readFileSync(appModulePath, 'utf8') - content = content.replace( - "import { NgModule } from '@angular/core';", - "import { NgModule } from '@angular/core';\nimport { FingerprintModule } from '@fingerprint/angular';" - ) - content = content.replace( - 'imports: [', - `imports: [\n FingerprintModule.forRoot({ startOptions: { apiKey: 'test-key' } }),` - ) - fs.writeFileSync(appModulePath, content, 'utf8') - } - } else { - const appConfigPath = path.join(appDir, 'app.config.ts') - if (fs.existsSync(appConfigPath)) { - let content = fs.readFileSync(appConfigPath, 'utf8') - content = content.replace( - "import { ApplicationConfig } from '@angular/core';", - "import { ApplicationConfig } from '@angular/core';\nimport { provideFingerprint } from '@fingerprint/angular';" - ) - content = content.replace( - 'providers: [', - `providers: [\n provideFingerprint({ startOptions: { apiKey: 'test-key' } }),` - ) - fs.writeFileSync(appConfigPath, content, 'utf8') - } else { - const mainTsPath = path.join(workspaceDir, 'projects', 'demo', 'src', 'main.ts') - if (fs.existsSync(mainTsPath)) { - let content = fs.readFileSync(mainTsPath, 'utf8') - if (content.includes('bootstrapApplication')) { - content = content.replace( - "import { bootstrapApplication } from '@angular/platform-browser';", - "import { bootstrapApplication } from '@angular/platform-browser';\nimport { provideFingerprint } from '@fingerprint/angular';" - ) - content = content.replace( - 'providers: [', - `providers: [\n provideFingerprint({ startOptions: { apiKey: 'test-key' } }),` - ) - fs.writeFileSync(mainTsPath, content, 'utf8') - } - } - } - } -} diff --git a/bin/utils/steps/updateTsConfigs.mjs b/bin/utils/steps/updateTsConfigs.mjs deleted file mode 100644 index 6ff0c9c..0000000 --- a/bin/utils/steps/updateTsConfigs.mjs +++ /dev/null @@ -1,106 +0,0 @@ -import fs from 'fs' -import path from 'path' -import { updateJsonFile } from '../fs.mjs' -import { LIB_NAME } from '../constants.mjs' - -export async function updateTsConfigs(workspaceDir, version) { - const tsconfigFiles = [ - path.join(workspaceDir, 'tsconfig.json'), - path.join(workspaceDir, 'tsconfig.base.json'), - path.join(workspaceDir, 'projects', LIB_NAME, 'tsconfig.spec.json'), - ] - - for (const file of tsconfigFiles) { - if (fs.existsSync(file)) { - updateJsonFile(file, (json) => { - if (!json.compilerOptions) { - json.compilerOptions = {} - } - json.compilerOptions.types = ['node', 'jest'] - json.compilerOptions.esModuleInterop = true - json.compilerOptions.allowSyntheticDefaultImports = true - json.compilerOptions.skipLibCheck = true - }) - } - } - - const allSpecTsconfigs = [] - const findSpecConfigs = (dir) => { - fs.readdirSync(dir).forEach((file) => { - const fullPath = path.join(dir, file) - if (fs.existsSync(fullPath) && fs.statSync(fullPath).isDirectory()) { - if (file !== 'node_modules') { - findSpecConfigs(fullPath) - } - } else if (file === 'tsconfig.spec.json') { - allSpecTsconfigs.push(fullPath) - } - }) - } - findSpecConfigs(workspaceDir) - - for (const file of allSpecTsconfigs) { - updateJsonFile(file, (json) => { - if (!json.compilerOptions) { - json.compilerOptions = {} - } - if (!json.compilerOptions.types) { - json.compilerOptions.types = [] - } - if (!json.compilerOptions.types.includes('node')) { - json.compilerOptions.types.push('node') - } - if (!json.compilerOptions.types.includes('jest')) { - json.compilerOptions.types.push('jest') - } - - json.compilerOptions.esModuleInterop = true - json.compilerOptions.allowSyntheticDefaultImports = true - json.compilerOptions.skipLibCheck = true - }) - } - - if (fs.existsSync(path.join(workspaceDir, 'projects', LIB_NAME, 'tsconfig.spec.json'))) { - if ( - !fs.existsSync(path.join(workspaceDir, 'tsconfig.json')) && - fs.existsSync(path.join(workspaceDir, 'tsconfig.base.json')) - ) { - updateJsonFile(path.join(workspaceDir, 'projects', LIB_NAME, 'tsconfig.spec.json'), (json) => { - json.extends = '../../tsconfig.base.json' - }) - } - } - - const addNodeReference = (dir) => { - fs.readdirSync(dir).forEach((file) => { - const fullPath = path.join(dir, file) - if (fs.existsSync(fullPath) && fs.statSync(fullPath).isDirectory()) { - addNodeReference(fullPath) - } else if (file.endsWith('.spec.ts')) { - let content = fs.readFileSync(fullPath, 'utf8') - if (!content.startsWith('/// ')) { - content = '/// \n' + content - fs.writeFileSync(fullPath, content, 'utf8') - } - } - }) - } - addNodeReference(path.join(workspaceDir, 'projects', LIB_NAME)) - - if (parseInt(version) >= 21) { - const targetTsconfigs = [ - path.join(workspaceDir, 'tsconfig.json'), - path.join(workspaceDir, 'tsconfig.base.json'), - path.join(workspaceDir, 'projects', LIB_NAME, 'tsconfig.lib.json'), - ] - for (const configPath of targetTsconfigs) { - if (fs.existsSync(configPath)) { - updateJsonFile(configPath, (json) => { - if (json.compilerOptions) { - json.compilerOptions.moduleResolution = 'bundler' - } - }) - } - } - } -} From bfd5faf31f3288cd3c7d8a38ce57944b50320f97 Mon Sep 17 00:00:00 2001 From: Orkun Date: Wed, 24 Jun 2026 15:33:25 +0300 Subject: [PATCH 12/32] refactor: adjust angular tag logic and update pnpm version in CI workflow --- .github/workflows/test-matrix.yml | 2 +- bin/test-matrix.mjs | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/test-matrix.yml b/.github/workflows/test-matrix.yml index 5199721..3c7741e 100644 --- a/.github/workflows/test-matrix.yml +++ b/.github/workflows/test-matrix.yml @@ -37,7 +37,7 @@ jobs: - name: Install pnpm uses: pnpm/action-setup@v4 with: - version: 8 + version: 9 - name: Install dependencies run: pnpm install diff --git a/bin/test-matrix.mjs b/bin/test-matrix.mjs index 867b552..88c7c41 100755 --- a/bin/test-matrix.mjs +++ b/bin/test-matrix.mjs @@ -63,7 +63,7 @@ async function testVersion(version) { log ) - const angularVersionTag = `v${version}-lts` + const angularVersionTag = version > 15 ? `v${version}-lts` : `^${version}` // 3. Install Peer Deps and Required Packages const packagesToInstall = [ From be5df1eca0a24460f02b2eb42e4e5d26291a85e9 Mon Sep 17 00:00:00 2001 From: Orkun Date: Wed, 24 Jun 2026 15:42:22 +0300 Subject: [PATCH 13/32] refactor: remove redundant comments --- bin/test-matrix.mjs | 13 ------------- 1 file changed, 13 deletions(-) diff --git a/bin/test-matrix.mjs b/bin/test-matrix.mjs index 88c7c41..79742ac 100755 --- a/bin/test-matrix.mjs +++ b/bin/test-matrix.mjs @@ -32,7 +32,6 @@ async function testVersion(version) { log(`Angular ${version}: Starting check...\n`) console.log(`Angular ${version}: Starting check...`) - // 1. Create Workspace await executeCommand( 'npx', [ @@ -50,12 +49,6 @@ async function testVersion(version) { log ) - // Ensure npx worked and we have node_modules in the workspace after next steps - // Actually, step 1 just creates the folder structure. - // We need to install @angular/cli locally in the temp workspace to use it via ./node_modules/.bin/ng - // OR we use npx again for generate. - - // 2. Generate Library await executeCommand( 'npx', ['-y', `@angular/cli@${version}`, 'generate', 'library', LIB_NAME, '--skip-install'], @@ -65,7 +58,6 @@ async function testVersion(version) { const angularVersionTag = version > 15 ? `v${version}-lts` : `^${version}` - // 3. Install Peer Deps and Required Packages const packagesToInstall = [ `@angular/animations@${angularVersionTag}`, `@angular/common@${angularVersionTag}`, @@ -97,7 +89,6 @@ async function testVersion(version) { const commonOptions = ['--config.strict-peer-dependencies=false', '--no-lockfile', '--config.fund=false'] - // We install everything in one go to avoid version mismatches and repeat installations await executeCommand( 'pnpm', ['add', ...packagesToInstall, ...devPackagesToInstall, ...commonOptions], @@ -105,7 +96,6 @@ async function testVersion(version) { log ) - // 4. Copy Source Files const libDestDir = path.join(workspaceDir, 'projects', LIB_NAME, 'src', 'lib') fs.mkdirSync(libDestDir, { recursive: true }) copyRecursive(path.join(process.cwd(), 'projects', LIB_NAME, 'src', 'lib'), libDestDir) @@ -135,7 +125,6 @@ async function testVersion(version) { fs.copyFileSync(path.join(process.cwd(), 'projects', LIB_NAME, file), path.join(projectDir, file)) } - // 5. Update TS Configs for compatibility const tsconfigFiles = [ path.join(workspaceDir, 'tsconfig.json'), path.join(workspaceDir, 'projects', LIB_NAME, 'tsconfig.spec.json'), @@ -155,7 +144,6 @@ async function testVersion(version) { } } - // 6. Build await executeCommand( './node_modules/.bin/ng', ['build', LIB_NAME], @@ -163,7 +151,6 @@ async function testVersion(version) { log ) - // 7. Test await executeCommand('./node_modules/.bin/jest', [], { cwd: workspaceDir, env: { ...process.env } }, log) console.log(`Angular ${version}: PASSED`) From 5591907397c969569a1b81001471577e60f8ca84 Mon Sep 17 00:00:00 2001 From: Orkun <5910168+Orkuncakilkaya@users.noreply.github.com> Date: Tue, 30 Jun 2026 17:08:42 +0300 Subject: [PATCH 14/32] chore: run gen version before test matrix Co-authored-by: Juraj Uhlar --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index a0bcac5..50afbac 100644 --- a/package.json +++ b/package.json @@ -21,7 +21,7 @@ "test:dts": "tsc -p tsconfig.test-dts.json", "test": "jest", "test:coverage": "jest --coverage", - "test:matrix": "node bin/test-matrix.mjs", + "test:matrix": "pnpm generate:version && node bin/test-matrix.mjs", "docs": "typedoc projects/fingerprintjs-pro-angular/src/public-api.ts --out docs", "changeset:publish": "HUSKY=0 pnpm build && changeset publish", "changeset:version": "changeset version" From b5edb3411bc525d5dc790121c8fac9113ac5b178 Mon Sep 17 00:00:00 2001 From: Orkun Date: Wed, 1 Jul 2026 14:05:44 +0300 Subject: [PATCH 15/32] refactor: update pnpm-workspace with allowBuilds configuration --- pnpm-workspace.yaml | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml index 5ed6c3e..f536531 100644 --- a/pnpm-workspace.yaml +++ b/pnpm-workspace.yaml @@ -1,2 +1,8 @@ packages: - - 'projects/*' + - 'projects/*' +allowBuilds: + '@parcel/watcher': true + esbuild: true + lmdb: true + msgpackr-extract: true + nice-napi: true From 8bf21af4bf94928e8b2c6457d23667647222c068 Mon Sep 17 00:00:00 2001 From: Orkun Date: Wed, 1 Jul 2026 14:06:27 +0300 Subject: [PATCH 16/32] refactor: update dependencies and adjust test matrix configuration --- package.json | 6 +- pnpm-lock.yaml | 947 ++++++++++++------ .../fingerprintjs-pro-angular/package.json | 2 +- 3 files changed, 635 insertions(+), 320 deletions(-) diff --git a/package.json b/package.json index 50afbac..60e6670 100644 --- a/package.json +++ b/package.json @@ -21,7 +21,7 @@ "test:dts": "tsc -p tsconfig.test-dts.json", "test": "jest", "test:coverage": "jest --coverage", - "test:matrix": "pnpm generate:version && node bin/test-matrix.mjs", + "test:matrix": "pnpm generate:version && tsx bin/test-matrix.ts", "docs": "typedoc projects/fingerprintjs-pro-angular/src/public-api.ts --out docs", "changeset:publish": "HUSKY=0 pnpm build && changeset publish", "changeset:version": "changeset version" @@ -59,9 +59,10 @@ "@nguniversal/builders": "^15.2.1", "@types/express": "^4.17.0", "@types/jest": "^29.5.12", - "@types/node": "^12.11.1", + "@types/node": "^26.0.1", "@typescript-eslint/eslint-plugin": "^6.21.0", "@typescript-eslint/parser": "^6.21.0", + "comment-json": "^5.0.0", "commitizen": "^4.2.5", "cz-conventional-changelog": "^3.3.0", "eslint": "^8.56.0", @@ -72,6 +73,7 @@ "lint-staged": "^13.0.3", "ng-packagr": "^15.2.2", "prettier": "^3.2.4", + "tsx": "^4.22.4", "typedoc": "^0.24.8", "typescript": "~4.9.5" }, diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 49f4402..5ea57c8 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -4,49 +4,46 @@ settings: autoInstallPeers: true excludeLinksFromLockfile: false -overrides: - rxjs: ~7.8.0 - importers: .: dependencies: '@angular/animations': specifier: ^15.2.10 - version: 15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)) + version: 15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)) '@angular/common': specifier: ^15.2.10 - version: 15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2) + version: 15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7) '@angular/compiler': specifier: ^15.2.10 - version: 15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)) + version: 15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)) '@angular/core': specifier: ^15.2.10 - version: 15.2.10(rxjs@7.8.2)(zone.js@0.11.5) + version: 15.2.10(rxjs@7.5.7)(zone.js@0.11.5) '@angular/forms': specifier: ^15.2.10 - version: 15.2.10(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(@angular/platform-browser@15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(rxjs@7.8.2) + version: 15.2.10(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(@angular/platform-browser@15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(rxjs@7.5.7) '@angular/platform-browser': specifier: ^15.2.10 - version: 15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)) + version: 15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)) '@angular/platform-browser-dynamic': specifier: ^15.2.10 - version: 15.2.10(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(@angular/platform-browser@15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))) + version: 15.2.10(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(@angular/platform-browser@15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))) '@angular/platform-server': specifier: ^15.2.10 - version: 15.2.10(bb9340fd85b833f543ade9387312e178) + version: 15.2.10(597020a0fe8c1c77567a7c05da2eed63) '@angular/router': specifier: ^15.2.10 - version: 15.2.10(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(@angular/platform-browser@15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(rxjs@7.8.2) + version: 15.2.10(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(@angular/platform-browser@15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(rxjs@7.5.7) '@nguniversal/express-engine': specifier: ^15.2.1 - version: 15.2.1(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(@angular/platform-server@15.2.10(bb9340fd85b833f543ade9387312e178))(express@4.20.0) + version: 15.2.1(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(@angular/platform-server@15.2.10(597020a0fe8c1c77567a7c05da2eed63))(express@4.20.0) express: specifier: ^4.20.0 version: 4.20.0 rxjs: - specifier: ~7.8.0 - version: 7.8.2 + specifier: ~7.5.0 + version: 7.5.7 tslib: specifier: ^2.3.0 version: 2.5.0 @@ -56,7 +53,7 @@ importers: devDependencies: '@angular-devkit/build-angular': specifier: ^15.2.10 - version: 15.2.10(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5))(@angular/platform-server@15.2.10(bb9340fd85b833f543ade9387312e178))(ng-packagr@15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5))(typescript@4.9.5) + version: 15.2.10(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5))(@angular/platform-server@15.2.10(597020a0fe8c1c77567a7c05da2eed63))(ng-packagr@15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5))(typescript@4.9.5) '@angular-eslint/schematics': specifier: ^15.2.1 version: 15.2.1(@angular/cli@15.2.10(chokidar@3.5.3))(eslint@8.56.0)(typescript@4.9.5) @@ -65,10 +62,10 @@ importers: version: 15.2.10(chokidar@3.5.3) '@angular/compiler-cli': specifier: ^15.2.10 - version: 15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5) + version: 15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5) '@changesets/cli': specifier: ^2.31.0 - version: 2.31.0(@types/node@12.20.52) + version: 2.31.0(@types/node@26.0.1) '@commitlint/cli': specifier: ^17.2.0 version: 17.2.0 @@ -92,7 +89,7 @@ importers: version: 0.1.0 '@nguniversal/builders': specifier: ^15.2.1 - version: 15.2.1(@angular-devkit/build-angular@15.2.10(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5))(@angular/platform-server@15.2.10(bb9340fd85b833f543ade9387312e178))(ng-packagr@15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5))(typescript@4.9.5))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(@types/express@4.17.13)(chokidar@3.5.3)(typescript@4.9.5) + version: 15.2.1(@angular-devkit/build-angular@15.2.10(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5))(@angular/platform-server@15.2.10(597020a0fe8c1c77567a7c05da2eed63))(ng-packagr@15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5))(typescript@4.9.5))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(@types/express@4.17.13)(chokidar@3.5.3)(typescript@4.9.5) '@types/express': specifier: ^4.17.0 version: 4.17.13 @@ -100,14 +97,17 @@ importers: specifier: ^29.5.12 version: 29.5.12 '@types/node': - specifier: ^12.11.1 - version: 12.20.52 + specifier: ^26.0.1 + version: 26.0.1 '@typescript-eslint/eslint-plugin': specifier: ^6.21.0 version: 6.21.0(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0)(typescript@4.9.5) '@typescript-eslint/parser': specifier: ^6.21.0 version: 6.21.0(eslint@8.56.0)(typescript@4.9.5) + comment-json: + specifier: ^5.0.0 + version: 5.0.0 commitizen: specifier: ^4.2.5 version: 4.2.5 @@ -125,19 +125,22 @@ importers: version: 4.0.1 jest: specifier: ^29.7.0 - version: 29.7.0(@types/node@12.20.52)(ts-node@10.9.1(@types/node@12.20.52)(typescript@4.9.5)) + version: 29.7.0(@types/node@26.0.1)(ts-node@10.9.1(@types/node@14.18.33)(typescript@4.9.5)) jest-preset-angular: specifier: ^14.0.3 - version: 14.0.3(1768b93d21c3361974a224b326b8b84c) + version: 14.0.3(d85e106a5ec2f88a07487ae770218af4) lint-staged: specifier: ^13.0.3 version: 13.0.3(enquirer@2.4.1) ng-packagr: specifier: ^15.2.2 - version: 15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5) + version: 15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5) prettier: specifier: ^3.2.4 version: 3.2.5 + tsx: + specifier: ^4.22.4 + version: 4.22.4 typedoc: specifier: ^0.24.8 version: 0.24.8(typescript@4.9.5) @@ -158,13 +161,13 @@ importers: version: 21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5) '@angular/forms': specifier: ^21.2.0 - version: 21.2.14(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(@angular/platform-browser@21.2.14(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5)))(rxjs@7.8.2) + version: 21.2.14(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(@angular/platform-browser@21.2.14(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5)))(rxjs@7.8.2) '@angular/platform-browser': specifier: ^21.2.0 - version: 21.2.14(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5)) + version: 21.2.14(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5)) '@angular/router': specifier: ^21.2.0 - version: 21.2.14(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(@angular/platform-browser@21.2.14(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5)))(rxjs@7.8.2) + version: 21.2.14(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(@angular/platform-browser@21.2.14(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5)))(rxjs@7.8.2) '@fingerprint/agent': specifier: ^4.0.0 version: 4.0.3 @@ -186,16 +189,16 @@ importers: version: 15.2.1(eslint@8.56.0)(typescript@5.9.3) '@angular-eslint/schematics': specifier: 15.2.1 - version: 15.2.1(@angular/cli@21.2.12(@types/node@12.20.52)(chokidar@5.0.0))(eslint@8.56.0)(typescript@5.9.3) + version: 15.2.1(@angular/cli@21.2.12(@types/node@26.0.1)(chokidar@5.0.0))(eslint@8.56.0)(typescript@5.9.3) '@angular-eslint/template-parser': specifier: 15.2.1 version: 15.2.1(eslint@8.56.0)(typescript@5.9.3) '@angular/build': specifier: ^21.2.12 - version: 21.2.12(8124ac35316412ffa9726ce4256f5c59) + version: 21.2.12(999253b22980c8ff7ebcfd6e4ca36da1) '@angular/cli': specifier: ^21.2.12 - version: 21.2.12(@types/node@12.20.52)(chokidar@5.0.0) + version: 21.2.12(@types/node@26.0.1)(chokidar@5.0.0) '@angular/compiler-cli': specifier: ^21.2.0 version: 21.2.14(@angular/compiler@21.2.14)(typescript@5.9.3) @@ -219,7 +222,7 @@ importers: version: 5.9.3 vitest: specifier: ^4.0.8 - version: 4.1.7(@types/node@12.20.52)(jsdom@28.1.0)(vite@7.3.2(@types/node@12.20.52)(less@4.1.3)(sass@1.97.3)(terser@5.16.3)) + version: 4.1.7(@types/node@26.0.1)(jsdom@28.1.0)(vite@7.3.2(@types/node@26.0.1)(less@4.1.3)(sass@1.97.3)(terser@5.16.3)(tsx@4.22.4)) projects/fingerprintjs-pro-angular: dependencies: @@ -486,14 +489,14 @@ packages: engines: {node: ^14.20.0 || ^16.13.0 || >=18.10.0} peerDependencies: '@angular/core': 15.2.10 - rxjs: ~7.8.0 + rxjs: ^6.5.3 || ^7.4.0 '@angular/common@21.2.14': resolution: {integrity: sha512-J6K7cE7uKOKmg4+sxLeGfsmaYDjP5l1XCiMMI0WPT0t68uxLk8g3MzV5Trqfb6ZnRxWcfp9c4c+XxAvMBB7ymA==} engines: {node: ^20.19.0 || ^22.12.0 || >=24.0.0} peerDependencies: '@angular/core': 21.2.14 - rxjs: ~7.8.0 + rxjs: ^6.5.3 || ^7.4.0 '@angular/compiler-cli@15.2.10': resolution: {integrity: sha512-mCFIxrs60XicKfA2o42hA7LrQvhybi9BQveWuZn/2iIEOXx7R62Iemz8E21pLWftAZHGxEW3NECfBrY1d3gVmA==} @@ -531,7 +534,7 @@ packages: resolution: {integrity: sha512-meGGidnitQJGDxYd9/LrqYiVlId+vGaLoiLgJdKBz+o2ZO6OmXQGuNw2VBqf17/Cc0/UjzrOY7+kILNFKkk/WQ==} engines: {node: ^14.20.0 || ^16.13.0 || >=18.10.0} peerDependencies: - rxjs: ~7.8.0 + rxjs: ^6.5.3 || ^7.4.0 zone.js: ~0.11.4 || ~0.12.0 || ~0.13.0 '@angular/core@21.2.14': @@ -539,7 +542,7 @@ packages: engines: {node: ^20.19.0 || ^22.12.0 || >=24.0.0} peerDependencies: '@angular/compiler': 21.2.14 - rxjs: ~7.8.0 + rxjs: ^6.5.3 || ^7.4.0 zone.js: ~0.15.0 || ~0.16.0 peerDependenciesMeta: '@angular/compiler': @@ -554,7 +557,7 @@ packages: '@angular/common': 15.2.10 '@angular/core': 15.2.10 '@angular/platform-browser': 15.2.10 - rxjs: ~7.8.0 + rxjs: ^6.5.3 || ^7.4.0 '@angular/forms@21.2.14': resolution: {integrity: sha512-HQYIybyMt0CrI31rW6vXbiDsSM2DDtTcOVeT/nWDRNCoqBrREDg8rVsm2Y+fUMsiQVJNa6dCXPwvYhjzJ4r7ug==} @@ -563,7 +566,7 @@ packages: '@angular/common': 21.2.14 '@angular/core': 21.2.14 '@angular/platform-browser': 21.2.14 - rxjs: ~7.8.0 + rxjs: ^6.5.3 || ^7.4.0 '@angular/platform-browser-dynamic@15.2.10': resolution: {integrity: sha512-JHP6W+FX715Qv7DhqvfZLuBZXSDJrboiQsR06gUAgDSjAUyhbqmpVg/2YOtgeWpPkzNDtXdPU2PhcRdIv5J3Yg==} @@ -614,7 +617,7 @@ packages: '@angular/common': 15.2.10 '@angular/core': 15.2.10 '@angular/platform-browser': 15.2.10 - rxjs: ~7.8.0 + rxjs: ^6.5.3 || ^7.4.0 '@angular/router@21.2.14': resolution: {integrity: sha512-Yo3LdgcqkfMu2/Ycl8o/4QjCBqZhtA+a7B8JVdW5cWdrpFTxKCOrzm+YRUMuIFmH5nzSv9oGnUuz64uk1+7r5Q==} @@ -623,7 +626,7 @@ packages: '@angular/common': 21.2.14 '@angular/core': 21.2.14 '@angular/platform-browser': 21.2.14 - rxjs: ~7.8.0 + rxjs: ^6.5.3 || ^7.4.0 '@asamuzakjp/css-color@5.1.11': resolution: {integrity: sha512-KVw6qIiCTUQhByfTd78h2yD1/00waTmm9uy/R7Ck/ctUyAPj+AEDLkQIdJW0T8+qGgj3j5bpNKK7Q3G+LedJWg==} @@ -1515,6 +1518,12 @@ packages: cpu: [ppc64] os: [aix] + '@esbuild/aix-ppc64@0.28.1': + resolution: {integrity: sha512-Svl7tq8k/08+p6CXPpRjQ1fKX+1odH/BQbb48fV6fj3CWHhsoIOoY87w1oHXm0qEpkIK3ZfVgp0hed3XBXzXMQ==} + engines: {node: '>=18'} + cpu: [ppc64] + os: [aix] + '@esbuild/android-arm64@0.17.19': resolution: {integrity: sha512-KBMWvEZooR7+kzY0BtbTQn0OAYY7CsiydT63pVEaPtVYF0hXbUaOyZog37DKxK7NF3XacBJOpYT4adIJh+avxA==} engines: {node: '>=12'} @@ -1533,6 +1542,12 @@ packages: cpu: [arm64] os: [android] + '@esbuild/android-arm64@0.28.1': + resolution: {integrity: sha512-34EGEbCIAgosYz6goLcopX6Mo7NyGv9tfwEM2/7Ce2VcVRk568iSvniGWcUXIy7wEDR1wzolcxcriFVrWYcwBg==} + engines: {node: '>=18'} + cpu: [arm64] + os: [android] + '@esbuild/android-arm@0.17.19': resolution: {integrity: sha512-rIKddzqhmav7MSmoFCmDIb6e2W57geRsM94gV2l38fzhXMwq7hZoClug9USI2pFRGL06f4IOPHHpFNOkWieR8A==} engines: {node: '>=12'} @@ -1551,6 +1566,12 @@ packages: cpu: [arm] os: [android] + '@esbuild/android-arm@0.28.1': + resolution: {integrity: sha512-0k2F129Xdio1TdJfzJ8sy1Q47vUD2NnwdhiAf7drUN1EBTfPf4hsFCtmMgu/6m8JSzsBrlmVjudMBQqOfG8usQ==} + engines: {node: '>=18'} + cpu: [arm] + os: [android] + '@esbuild/android-x64@0.17.19': resolution: {integrity: sha512-uUTTc4xGNDT7YSArp/zbtmbhO0uEEK9/ETW29Wk1thYUJBz3IVnvgEiEwEa9IeLyvnpKrWK64Utw2bgUmDveww==} engines: {node: '>=12'} @@ -1569,6 +1590,12 @@ packages: cpu: [x64] os: [android] + '@esbuild/android-x64@0.28.1': + resolution: {integrity: sha512-dbwY7ltSMDWsRatcRpCnES4F+im88OCUgGZjy52shC7GqHRE/cYlxNbB4Z4UpJswpcc4Qxd2oE/ufM0p61IKng==} + engines: {node: '>=18'} + cpu: [x64] + os: [android] + '@esbuild/darwin-arm64@0.17.19': resolution: {integrity: sha512-80wEoCfF/hFKM6WE1FyBHc9SfUblloAWx6FJkFWTWiCoht9Mc0ARGEM47e67W9rI09YoUxJL68WHfDRYEAvOhg==} engines: {node: '>=12'} @@ -1587,6 +1614,12 @@ packages: cpu: [arm64] os: [darwin] + '@esbuild/darwin-arm64@0.28.1': + resolution: {integrity: sha512-TZbWkQY7kvTAXbXUT7uVACR5cMHsDiSz9z7ZKAX/RTq/WJEk3QyRr0wZpNhBDX+/0CtdqUIJlOiodQcta6tY3Q==} + engines: {node: '>=18'} + cpu: [arm64] + os: [darwin] + '@esbuild/darwin-x64@0.17.19': resolution: {integrity: sha512-IJM4JJsLhRYr9xdtLytPLSH9k/oxR3boaUIYiHkAawtwNOXKE8KoU8tMvryogdcT8AU+Bflmh81Xn6Q0vTZbQw==} engines: {node: '>=12'} @@ -1605,6 +1638,12 @@ packages: cpu: [x64] os: [darwin] + '@esbuild/darwin-x64@0.28.1': + resolution: {integrity: sha512-zfdzgK9ACBNZLI/CyHTOx81SyNbM6YXn7rxSgX97VjyiPl9W1i4Ka4fgKECEoFCKGpvBj5qArWIGgQjOwkgskQ==} + engines: {node: '>=18'} + cpu: [x64] + os: [darwin] + '@esbuild/freebsd-arm64@0.17.19': resolution: {integrity: sha512-pBwbc7DufluUeGdjSU5Si+P3SoMF5DQ/F/UmTSb8HXO80ZEAJmrykPyzo1IfNbAoaqw48YRpv8shwd1NoI0jcQ==} engines: {node: '>=12'} @@ -1623,6 +1662,12 @@ packages: cpu: [arm64] os: [freebsd] + '@esbuild/freebsd-arm64@0.28.1': + resolution: {integrity: sha512-wG2EA8ENdEI0qhkSZMjfqrdY+ziCYCPMmtZjjIwOmXFjmyzEHn+UUxk5of+SYsjtfs3VpnlC7QLzSI5hY/rOAw==} + engines: {node: '>=18'} + cpu: [arm64] + os: [freebsd] + '@esbuild/freebsd-x64@0.17.19': resolution: {integrity: sha512-4lu+n8Wk0XlajEhbEffdy2xy53dpR06SlzvhGByyg36qJw6Kpfk7cp45DR/62aPH9mtJRmIyrXAS5UWBrJT6TQ==} engines: {node: '>=12'} @@ -1641,6 +1686,12 @@ packages: cpu: [x64] os: [freebsd] + '@esbuild/freebsd-x64@0.28.1': + resolution: {integrity: sha512-i7dZ9vQgnvSCzi/rYCXNgtF/U+eKZNJBzu3eTQbRgHnM7tNSizLOkRFAl3qzVc/Op/u5YkHHa4pf/3DOYHthLQ==} + engines: {node: '>=18'} + cpu: [x64] + os: [freebsd] + '@esbuild/linux-arm64@0.17.19': resolution: {integrity: sha512-ct1Tg3WGwd3P+oZYqic+YZF4snNl2bsnMKRkb3ozHmnM0dGWuxcPTTntAF6bOP0Sp4x0PjSF+4uHQ1xvxfRKqg==} engines: {node: '>=12'} @@ -1659,6 +1710,12 @@ packages: cpu: [arm64] os: [linux] + '@esbuild/linux-arm64@0.28.1': + resolution: {integrity: sha512-yHs+0uc8+nvEAfAfxrWQKK5peSNzBc4PegcMO0EJ2hT71uA7vB8Ihg2e77R2P7SG5uYjPbHlLLmve4LLLRCf0g==} + engines: {node: '>=18'} + cpu: [arm64] + os: [linux] + '@esbuild/linux-arm@0.17.19': resolution: {integrity: sha512-cdmT3KxjlOQ/gZ2cjfrQOtmhG4HJs6hhvm3mWSRDPtZ/lP5oe8FWceS10JaSJC13GBd4eH/haHnqf7hhGNLerA==} engines: {node: '>=12'} @@ -1677,6 +1734,12 @@ packages: cpu: [arm] os: [linux] + '@esbuild/linux-arm@0.28.1': + resolution: {integrity: sha512-qVXBOHQS+d5Y722GwJzJUtOLlX7km3CraOaGormF1pDtPd2C/l1SHRPgjLunLGe51Sh5YYWKMFDyV4SxgMQYTQ==} + engines: {node: '>=18'} + cpu: [arm] + os: [linux] + '@esbuild/linux-ia32@0.17.19': resolution: {integrity: sha512-w4IRhSy1VbsNxHRQpeGCHEmibqdTUx61Vc38APcsRbuVgK0OPEnQ0YD39Brymn96mOx48Y2laBQGqgZ0j9w6SQ==} engines: {node: '>=12'} @@ -1695,6 +1758,12 @@ packages: cpu: [ia32] os: [linux] + '@esbuild/linux-ia32@0.28.1': + resolution: {integrity: sha512-d1z4ZuP0ajrfz/FhGT4vv278rX8KnPPJx8i5+AtK7TYbx9Le9F1hyzurZpkEyjkGa9dUGhQow4C1NmeGvqxN2w==} + engines: {node: '>=18'} + cpu: [ia32] + os: [linux] + '@esbuild/linux-loong64@0.17.19': resolution: {integrity: sha512-2iAngUbBPMq439a+z//gE+9WBldoMp1s5GWsUSgqHLzLJ9WoZLZhpwWuym0u0u/4XmZ3gpHmzV84PonE+9IIdQ==} engines: {node: '>=12'} @@ -1713,6 +1782,12 @@ packages: cpu: [loong64] os: [linux] + '@esbuild/linux-loong64@0.28.1': + resolution: {integrity: sha512-M5sRjUVZrkm1OAPR3dlOYzNmN+loZKGVi1VUQGrwuqLcbR6qeAz+famMhjASeH3YVKvZz+zT1jlh/keC3Rj/lg==} + engines: {node: '>=18'} + cpu: [loong64] + os: [linux] + '@esbuild/linux-mips64el@0.17.19': resolution: {integrity: sha512-LKJltc4LVdMKHsrFe4MGNPp0hqDFA1Wpt3jE1gEyM3nKUvOiO//9PheZZHfYRfYl6AwdTH4aTcXSqBerX0ml4A==} engines: {node: '>=12'} @@ -1731,6 +1806,12 @@ packages: cpu: [mips64el] os: [linux] + '@esbuild/linux-mips64el@0.28.1': + resolution: {integrity: sha512-mRObBZeHh2OxcBFPWE/FjylkRgZdYuiTR3vaTozquCGOH14iP9oN4x4Ge81CoIDYQrXmIxpFumJBu5MtZpnQJQ==} + engines: {node: '>=18'} + cpu: [mips64el] + os: [linux] + '@esbuild/linux-ppc64@0.17.19': resolution: {integrity: sha512-/c/DGybs95WXNS8y3Ti/ytqETiW7EU44MEKuCAcpPto3YjQbyK3IQVKfF6nbghD7EcLUGl0NbiL5Rt5DMhn5tg==} engines: {node: '>=12'} @@ -1749,6 +1830,12 @@ packages: cpu: [ppc64] os: [linux] + '@esbuild/linux-ppc64@0.28.1': + resolution: {integrity: sha512-slScBsMAb3GFDcdrCgLwZtPYRoH2H/youv10QiZyRjmsP48fznoveWytSgCI/R0ZcUgpc0ZhIUEx6LHts8yrfQ==} + engines: {node: '>=18'} + cpu: [ppc64] + os: [linux] + '@esbuild/linux-riscv64@0.17.19': resolution: {integrity: sha512-FC3nUAWhvFoutlhAkgHf8f5HwFWUL6bYdvLc/TTuxKlvLi3+pPzdZiFKSWz/PF30TB1K19SuCxDTI5KcqASJqA==} engines: {node: '>=12'} @@ -1767,6 +1854,12 @@ packages: cpu: [riscv64] os: [linux] + '@esbuild/linux-riscv64@0.28.1': + resolution: {integrity: sha512-kw0owk1o0GFETUJyW0jc0G4Yzs0BHZn0JDZ8JRT088vjJYX777BAs1fDGxAC+q831qOs2DTC96mNsG2opdfyyQ==} + engines: {node: '>=18'} + cpu: [riscv64] + os: [linux] + '@esbuild/linux-s390x@0.17.19': resolution: {integrity: sha512-IbFsFbxMWLuKEbH+7sTkKzL6NJmG2vRyy6K7JJo55w+8xDk7RElYn6xvXtDW8HCfoKBFK69f3pgBJSUSQPr+4Q==} engines: {node: '>=12'} @@ -1785,6 +1878,12 @@ packages: cpu: [s390x] os: [linux] + '@esbuild/linux-s390x@0.28.1': + resolution: {integrity: sha512-/lAIjX8aYFRByhh6L5rYtPEDRqa9de/4V/juOXcta5frjvzXO4/sqEtyytse0g3zZFuWu5cDN0MkLz2qRDD2Ag==} + engines: {node: '>=18'} + cpu: [s390x] + os: [linux] + '@esbuild/linux-x64@0.17.19': resolution: {integrity: sha512-68ngA9lg2H6zkZcyp22tsVt38mlhWde8l3eJLWkyLrp4HwMUr3c1s/M2t7+kHIhvMjglIBrFpncX1SzMckomGw==} engines: {node: '>=12'} @@ -1803,12 +1902,24 @@ packages: cpu: [x64] os: [linux] + '@esbuild/linux-x64@0.28.1': + resolution: {integrity: sha512-u/anNYF2mmVOEDwLtnQ1wOr3EZ9sTNGLWrsYGYwHWzGA3Si84IOkHXlbWTD1NB+9/1lcnweYKO54uhxZydNzfA==} + engines: {node: '>=18'} + cpu: [x64] + os: [linux] + '@esbuild/netbsd-arm64@0.27.3': resolution: {integrity: sha512-sDpk0RgmTCR/5HguIZa9n9u+HVKf40fbEUt+iTzSnCaGvY9kFP0YKBWZtJaraonFnqef5SlJ8/TiPAxzyS+UoA==} engines: {node: '>=18'} cpu: [arm64] os: [netbsd] + '@esbuild/netbsd-arm64@0.28.1': + resolution: {integrity: sha512-oks0DYbLwWMmaakTsCb+zL4E+aHRVLom9IJZOAthMQEPiQmydXHkziYEsGYRx0uNV/IjEKGAV941JzH02pflqw==} + engines: {node: '>=18'} + cpu: [arm64] + os: [netbsd] + '@esbuild/netbsd-x64@0.17.19': resolution: {integrity: sha512-CwFq42rXCR8TYIjIfpXCbRX0rp1jo6cPIUPSaWwzbVI4aOfX96OXY8M6KNmtPcg7QjYeDmN+DD0Wp3LaBOLf4Q==} engines: {node: '>=12'} @@ -1827,12 +1938,24 @@ packages: cpu: [x64] os: [netbsd] + '@esbuild/netbsd-x64@0.28.1': + resolution: {integrity: sha512-aeL6lAnN89Hz43Mlh1G8ARasbuoYvSITDEx0tHh5b7jJnHcssqgjy9Yx430GDpmCa6OyrKoS0aNRjKundRizGg==} + engines: {node: '>=18'} + cpu: [x64] + os: [netbsd] + '@esbuild/openbsd-arm64@0.27.3': resolution: {integrity: sha512-AIcMP77AvirGbRl/UZFTq5hjXK+2wC7qFRGoHSDrZ5v5b8DK/GYpXW3CPRL53NkvDqb9D+alBiC/dV0Fb7eJcw==} engines: {node: '>=18'} cpu: [arm64] os: [openbsd] + '@esbuild/openbsd-arm64@0.28.1': + resolution: {integrity: sha512-MEFJe5C3R8pwXdZ5Y21oo6m7ePiS0d9pWucn99O/wvyJZChoIQKrQDxKrGeW8F5+T0okTHesAmDeiHDTIq0V/Q==} + engines: {node: '>=18'} + cpu: [arm64] + os: [openbsd] + '@esbuild/openbsd-x64@0.17.19': resolution: {integrity: sha512-cnq5brJYrSZ2CF6c35eCmviIN3k3RczmHz8eYaVlNasVqsNY+JKohZU5MKmaOI+KkllCdzOKKdPs762VCPC20g==} engines: {node: '>=12'} @@ -1851,12 +1974,24 @@ packages: cpu: [x64] os: [openbsd] + '@esbuild/openbsd-x64@0.28.1': + resolution: {integrity: sha512-i/ZLIOafE0Z8cI/XANJAixoJL/uRAoS2xOA3rb0xN+KK0K177cMAsQYkzHtBrtMXAKuAc7HGgcWiZ/sRC1Nxgw==} + engines: {node: '>=18'} + cpu: [x64] + os: [openbsd] + '@esbuild/openharmony-arm64@0.27.3': resolution: {integrity: sha512-NinAEgr/etERPTsZJ7aEZQvvg/A6IsZG/LgZy+81wON2huV7SrK3e63dU0XhyZP4RKGyTm7aOgmQk0bGp0fy2g==} engines: {node: '>=18'} cpu: [arm64] os: [openharmony] + '@esbuild/openharmony-arm64@0.28.1': + resolution: {integrity: sha512-ge+Z7EXFNt2BO1oAMsVpiQ8EwndV9i1xXerAeTIK7AtPs3bKFXQM7nlRxDSIUIMeueR1CNXxqztLzdNeReKBJg==} + engines: {node: '>=18'} + cpu: [arm64] + os: [openharmony] + '@esbuild/sunos-x64@0.17.19': resolution: {integrity: sha512-vCRT7yP3zX+bKWFeP/zdS6SqdWB8OIpaRq/mbXQxTGHnIxspRtigpkUcDMlSCOejlHowLqII7K2JKevwyRP2rg==} engines: {node: '>=12'} @@ -1875,6 +2010,12 @@ packages: cpu: [x64] os: [sunos] + '@esbuild/sunos-x64@0.28.1': + resolution: {integrity: sha512-BEjgtECkL3vY+SaSQ6nzVfiALUeFxpawyp8Jmf5PtYhf1Ug40N1h/hxlhts+f1FvSvarEigdxS3BlSMI2PJLcQ==} + engines: {node: '>=18'} + cpu: [x64] + os: [sunos] + '@esbuild/win32-arm64@0.17.19': resolution: {integrity: sha512-yYx+8jwowUstVdorcMdNlzklLYhPxjniHWFKgRqH7IFlUEa0Umu3KuYplf1HUZZ422e3NU9F4LGb+4O0Kdcaag==} engines: {node: '>=12'} @@ -1893,6 +2034,12 @@ packages: cpu: [arm64] os: [win32] + '@esbuild/win32-arm64@0.28.1': + resolution: {integrity: sha512-lCv9eK/H6ZJWbE7bh2nw54CZ9M2nupBxJcTsdk/QQnWkdSjKGuxmmH8/GWrlT1eMmZfn4dGcCjRte397WqfQXA==} + engines: {node: '>=18'} + cpu: [arm64] + os: [win32] + '@esbuild/win32-ia32@0.17.19': resolution: {integrity: sha512-eggDKanJszUtCdlVs0RB+h35wNlb5v4TWEkq4vZcmVt5u/HiDZrTXe2bWFQUez3RgNHwx/x4sk5++4NSSicKkw==} engines: {node: '>=12'} @@ -1911,6 +2058,12 @@ packages: cpu: [ia32] os: [win32] + '@esbuild/win32-ia32@0.28.1': + resolution: {integrity: sha512-zvb/mB2bSCoJOpoCBgYKKpX6YM6mJBlBUVUtVj41DlZJVEB6/0CKlRYxP5wWl1C1ILiCoAU5wZZ4q1P3qeS6Eg==} + engines: {node: '>=18'} + cpu: [ia32] + os: [win32] + '@esbuild/win32-x64@0.17.19': resolution: {integrity: sha512-lAhycmKnVOuRYNtRtatQR1LPQf2oYCkRGkSFnseDAKPl8lu5SOsK/e1sXe5a0Pc5kHIHe6P2I/ilntNv2xf3cA==} engines: {node: '>=12'} @@ -1929,6 +2082,12 @@ packages: cpu: [x64] os: [win32] + '@esbuild/win32-x64@0.28.1': + resolution: {integrity: sha512-bm4Mowrv+GXMlpWX++EcXw/iLyd1o3+bJkC2DkWXYVvgZCqD/bSj9ctZeAMC3cIxgjRVR2Dufaiu4YPxr5gW1A==} + engines: {node: '>=18'} + cpu: [x64] + os: [win32] + '@eslint-community/eslint-utils@4.4.0': resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} @@ -2235,10 +2394,6 @@ packages: '@jridgewell/remapping@2.3.5': resolution: {integrity: sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ==} - '@jridgewell/resolve-uri@3.0.7': - resolution: {integrity: sha512-8cXDaBBHOr2pQ7j77Y6Vp5VDT2sIqWyWQ56TjEq4ih/a4iST3dItRe8Q9fp0rrIl9DoKhWQtUQz/YpOxLkXbNA==} - engines: {node: '>=6.0.0'} - '@jridgewell/resolve-uri@3.1.2': resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==} engines: {node: '>=6.0.0'} @@ -3140,8 +3295,8 @@ packages: '@types/node@14.18.33': resolution: {integrity: sha512-qelS/Ra6sacc4loe/3MSjXNL1dNQ/GjxNHVzuChwMfmk7HuycRLVQN2qNY3XahK+fZc5E2szqQSKUyAF0E+2bg==} - '@types/node@18.11.9': - resolution: {integrity: sha512-CRpX21/kGdzjOpFsZSkcrXMGIBWMGNIHXXBVFSH+ggkftxg+XYP20TESbh+zFvFj3EQOl5byk0HTRn1IL6hbqg==} + '@types/node@26.0.1': + resolution: {integrity: sha512-fc3KiUoBt6kie0N9bIW3E47vZsuaMf0PM2AaUpLCLT0s/LvX1nxAim6Fc049cNxODPpGm6qRAuUOB86SkRuPQw==} '@types/normalize-package-data@2.4.1': resolution: {integrity: sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw==} @@ -3684,6 +3839,9 @@ packages: array-ify@1.0.0: resolution: {integrity: sha512-c5AMf34bKdvPhQ7tBGhqkgKNUzMr4WUs+WDtC2ZUGOUncbxKMTvqxYctiseW3+L4bA8ec+GcZ6/A/FW4m8ukng==} + array-timsort@1.0.3: + resolution: {integrity: sha512-/+3GRL7dDAGEfM6TseQk/U+mi18TU2Ms9I3UlLdUMhz2hbvGNTKdj9xniwXfUqgYhHxRx0+8UnKkvlNwVU+cWQ==} + array-union@2.1.0: resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==} engines: {node: '>=8'} @@ -4142,6 +4300,10 @@ packages: resolution: {integrity: sha512-5EEkTNyHNGFPD2H+c/dXXfQZYa/scCKasxWcXJaWnNJ99pnQN9Vnmqow+p+PlFPE63Q6mThaZws1T+HxfpgtPw==} engines: {node: ^12.20.0 || >=14} + comment-json@5.0.0: + resolution: {integrity: sha512-uiqLcOiVDJtBP8WGkZHEP+FZIhTzP1dxvn59EfoYUi9gqupjrBWVQkO2atDrbnKPwLeotFYDsuNb26uBMqB+hw==} + engines: {node: '>= 6'} + commitizen@4.2.5: resolution: {integrity: sha512-9sXju8Qrz1B4Tw7kC5KhnvwYQN88qs2zbiB8oyMsnXZyJ24PPGiNM3nHr73d32dnE3i8VJEXddBFIbOgYSEXtQ==} engines: {node: '>= 12'} @@ -4724,6 +4886,11 @@ packages: engines: {node: '>=18'} hasBin: true + esbuild@0.28.1: + resolution: {integrity: sha512-HrJrvZv5ayxBzPfwphOoNzkzOIIlifzk0KJrGK2c8R4+LKpMtpYLQeUdjnwjWv/LZlkH2laZk+4w78pi99D4Vw==} + engines: {node: '>=18'} + hasBin: true + escalade@3.1.1: resolution: {integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==} engines: {node: '>=6'} @@ -5078,11 +5245,6 @@ packages: fs.realpath@1.0.0: resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} - fsevents@2.3.2: - resolution: {integrity: sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==} - engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} - os: [darwin] - fsevents@2.3.3: resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} @@ -5134,7 +5296,7 @@ packages: git-raw-commits@2.0.11: resolution: {integrity: sha512-VnctFhw+xfj8Va1xtfEqCUD2XDrbAPSJx+hSrE5K7fGdjZruW7XV+QOrN7LF/RJyvspRiD2I0asWsxFp0ya26A==} engines: {node: '>=10'} - deprecated: This package is no longer maintained. For the JavaScript API, please use @conventional-changelog/git-client instead. + deprecated: Deprecated and no longer maintained. Use @conventional-changelog/git-client instead. hasBin: true glob-parent@5.1.2: @@ -7367,6 +7529,17 @@ packages: rx@4.1.0: resolution: {integrity: sha512-CiaiuN6gapkdl+cZUr67W6I8jquN4lkak3vtIsIWCl4XIPP8ffsoyN6/+PuGXnQy8Cu8W2y9Xxh31Rq4M6wUug==} + rxjs@5.5.12: + resolution: {integrity: sha512-xx2itnL5sBbqeeiVgNPVuQQ1nC8Jp2WfNJhXWHmElW9YmrpS9UVnNzhP3EH3HFqexO5Tlp8GhYY+WEcqcVMvGw==} + engines: {npm: '>=2.0.0'} + + rxjs@6.6.7: + resolution: {integrity: sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==} + engines: {npm: '>=2.0.0'} + + rxjs@7.5.7: + resolution: {integrity: sha512-z9MzKh/UcOqB3i20H6rtrlaE/CgjLOvheWK/9ILrbhROGTweAi1BaFsTT9FbwZi5Trr1qNRs+MXkhmR06awzQA==} + rxjs@7.8.2: resolution: {integrity: sha512-dhKf903U/PQZY6boNNtAGdWbG85WAbjT/1xYoZIC7FAY0yWapOBQVsVrDl58W86//e1VpMNBtRV4MaXfdMySFA==} @@ -7864,6 +8037,10 @@ packages: resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} engines: {node: '>= 0.4'} + symbol-observable@1.0.1: + resolution: {integrity: sha512-Kb3PrPYz4HanVF1LVGuAdW6LoVgIwjUYJGzFe7NDrBLCN4lsV/5J0MFurV+ygS4bRVwrCEt2c7MQ1R2a72oJDw==} + engines: {node: '>=0.10.0'} + symbol-observable@4.0.0: resolution: {integrity: sha512-b19dMThMV4HVFynSAM1++gBHAbk2Tc/osgLIBZMKsyqh34jb2e8Os7T6ZW/Bt3pJFdBTd2JwAnAAEQV7rSNvcQ==} engines: {node: '>=0.10'} @@ -8069,6 +8246,11 @@ packages: peerDependencies: typescript: '>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta' + tsx@4.22.4: + resolution: {integrity: sha512-X8EX+XV4QR5xCsrgxaED954zTDfY8KqlDtskKEL0cHhyS/P8b4IFOvGDQpsC9Q1XnLq915wEfwwY/zzskCtmhg==} + engines: {node: '>=18.0.0'} + hasBin: true + tuf-js@1.1.7: resolution: {integrity: sha512-i3P9Kgw3ytjELUfpuKVDNBJvk4u5bXL6gskv572mcevPbSKCV3zt3djhmlEQ65yERjIbOSncy7U4cQJaB1CBCg==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} @@ -8141,6 +8323,9 @@ packages: resolution: {integrity: sha512-00y/AXhx0/SsnI51fTc0rLRmafiGOM4/O+ny10Ps7f+j/b8p/ZY11ytMgznXkOVo4GQ+KwQG5UQLkLGirsACRg==} deprecated: You are using an outdated version of ua-parser-js. Please update to ua-parser-js v0.7.33 / v1.0.33 / v2.0.0 (or later) to avoid ReDoS vulnerability [CVE-2022-25927](https://github.com/advisories/GHSA-fhg7-m89q-25r3) + undici-types@8.3.0: + resolution: {integrity: sha512-j375ScV60dom+YkPFIfTLcOiPxkN/buHz5GobjLhixFuANaNs3C9l4GmrWqejgXWJ7BbJcFYpTEUkS1Ge8bpZQ==} + undici@6.26.0: resolution: {integrity: sha512-4yqz8a3n5HmGTlsbADNtr/dJlhkh/55Rq798G6ibiULcXbDtaLpTl1pvdqcbFfeoj3iSi52lePFM7h9H21cw/A==} engines: {node: '>=18.17'} @@ -8798,7 +8983,7 @@ snapshots: '@angular-devkit/architect@0.1502.10(chokidar@3.5.3)': dependencies: '@angular-devkit/core': 15.2.10(chokidar@3.5.3) - rxjs: 7.8.2 + rxjs: 6.6.7 transitivePeerDependencies: - chokidar @@ -8809,13 +8994,13 @@ snapshots: transitivePeerDependencies: - chokidar - '@angular-devkit/build-angular@15.2.10(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5))(@angular/platform-server@15.2.10(bb9340fd85b833f543ade9387312e178))(ng-packagr@15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5))(typescript@4.9.5)': + '@angular-devkit/build-angular@15.2.10(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5))(@angular/platform-server@15.2.10(597020a0fe8c1c77567a7c05da2eed63))(ng-packagr@15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5))(typescript@4.9.5)': dependencies: '@ampproject/remapping': 2.2.0 '@angular-devkit/architect': 0.1502.10(chokidar@3.5.3) '@angular-devkit/build-webpack': 0.1502.10(chokidar@3.5.3)(webpack-dev-server@4.11.1(webpack@5.76.1(esbuild@0.17.8)))(webpack@5.76.1(esbuild@0.17.8)) '@angular-devkit/core': 15.2.10(chokidar@3.5.3) - '@angular/compiler-cli': 15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5) + '@angular/compiler-cli': 15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5) '@babel/core': 7.20.12 '@babel/generator': 7.20.14 '@babel/helper-annotate-as-pure': 7.18.6 @@ -8827,7 +9012,7 @@ snapshots: '@babel/runtime': 7.20.13 '@babel/template': 7.20.7 '@discoveryjs/json-ext': 0.5.7 - '@ngtools/webpack': 15.2.10(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5))(typescript@4.9.5)(webpack@5.76.1(esbuild@0.17.8)) + '@ngtools/webpack': 15.2.10(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5))(typescript@4.9.5)(webpack@5.76.1(esbuild@0.17.8)) ansi-colors: 4.1.3 autoprefixer: 10.4.13(postcss@8.4.31) babel-loader: 9.1.2(@babel/core@7.20.12)(webpack@5.76.1(esbuild@0.17.8)) @@ -8857,7 +9042,7 @@ snapshots: postcss: 8.4.31 postcss-loader: 7.0.2(postcss@8.4.31)(webpack@5.76.1(esbuild@0.17.8)) resolve-url-loader: 5.0.0 - rxjs: 7.8.2 + rxjs: 6.6.7 sass: 1.58.1 sass-loader: 13.2.0(sass@1.58.1)(webpack@5.76.1(esbuild@0.17.8)) semver: 7.5.3 @@ -8874,9 +9059,9 @@ snapshots: webpack-merge: 5.8.0 webpack-subresource-integrity: 5.1.0(webpack@5.76.1(esbuild@0.17.8)) optionalDependencies: - '@angular/platform-server': 15.2.10(bb9340fd85b833f543ade9387312e178) + '@angular/platform-server': 15.2.10(597020a0fe8c1c77567a7c05da2eed63) esbuild: 0.17.8 - ng-packagr: 15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5) + ng-packagr: 15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5) transitivePeerDependencies: - '@swc/core' - bluebird @@ -8894,7 +9079,7 @@ snapshots: '@angular-devkit/build-webpack@0.1502.10(chokidar@3.5.3)(webpack-dev-server@4.11.1(webpack@5.76.1(esbuild@0.17.8)))(webpack@5.76.1(esbuild@0.17.8))': dependencies: '@angular-devkit/architect': 0.1502.10(chokidar@3.5.3) - rxjs: 7.8.2 + rxjs: 6.6.7 webpack: 5.76.1(esbuild@0.17.8) webpack-dev-server: 4.11.1(webpack@5.76.1(esbuild@0.17.8)) transitivePeerDependencies: @@ -8905,7 +9090,7 @@ snapshots: ajv: 8.12.0 ajv-formats: 2.1.1(ajv@8.12.0) jsonc-parser: 3.2.0 - rxjs: 7.8.2 + rxjs: 6.6.7 source-map: 0.7.4 optionalDependencies: chokidar: 3.5.3 @@ -8927,7 +9112,7 @@ snapshots: jsonc-parser: 3.2.0 magic-string: 0.29.0 ora: 5.4.1 - rxjs: 7.8.2 + rxjs: 6.6.7 transitivePeerDependencies: - chokidar @@ -9005,11 +9190,11 @@ snapshots: - supports-color - typescript - '@angular-eslint/schematics@15.2.1(@angular/cli@21.2.12(@types/node@12.20.52)(chokidar@5.0.0))(eslint@8.56.0)(typescript@5.9.3)': + '@angular-eslint/schematics@15.2.1(@angular/cli@21.2.12(@types/node@26.0.1)(chokidar@5.0.0))(eslint@8.56.0)(typescript@5.9.3)': dependencies: '@angular-eslint/eslint-plugin': 15.2.1(eslint@8.56.0)(typescript@5.9.3) '@angular-eslint/eslint-plugin-template': 15.2.1(eslint@8.56.0)(typescript@5.9.3) - '@angular/cli': 21.2.12(@types/node@12.20.52)(chokidar@5.0.0) + '@angular/cli': 21.2.12(@types/node@26.0.1)(chokidar@5.0.0) ignore: 5.2.4 strip-json-comments: 3.1.1 tmp: 0.2.1 @@ -9043,12 +9228,12 @@ snapshots: transitivePeerDependencies: - supports-color - '@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))': + '@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))': dependencies: - '@angular/core': 15.2.10(rxjs@7.8.2)(zone.js@0.11.5) + '@angular/core': 15.2.10(rxjs@7.5.7)(zone.js@0.11.5) tslib: 2.6.2 - '@angular/build@21.2.12(8124ac35316412ffa9726ce4256f5c59)': + '@angular/build@21.2.12(999253b22980c8ff7ebcfd6e4ca36da1)': dependencies: '@ampproject/remapping': 2.3.0 '@angular-devkit/architect': 0.2102.12(chokidar@5.0.0) @@ -9057,8 +9242,8 @@ snapshots: '@babel/core': 7.29.0 '@babel/helper-annotate-as-pure': 7.27.3 '@babel/helper-split-export-declaration': 7.24.7 - '@inquirer/confirm': 5.1.21(@types/node@12.20.52) - '@vitejs/plugin-basic-ssl': 2.1.4(vite@7.3.2(@types/node@12.20.52)(less@4.1.3)(sass@1.97.3)(terser@5.16.3)) + '@inquirer/confirm': 5.1.21(@types/node@26.0.1) + '@vitejs/plugin-basic-ssl': 2.1.4(vite@7.3.2(@types/node@26.0.1)(less@4.1.3)(sass@1.97.3)(terser@5.16.3)(tsx@4.22.4)) beasties: 0.4.1 browserslist: 4.28.2 esbuild: 0.27.3 @@ -9079,17 +9264,17 @@ snapshots: tslib: 2.6.2 typescript: 5.9.3 undici: 7.24.4 - vite: 7.3.2(@types/node@12.20.52)(less@4.1.3)(sass@1.97.3)(terser@5.16.3) + vite: 7.3.2(@types/node@26.0.1)(less@4.1.3)(sass@1.97.3)(terser@5.16.3)(tsx@4.22.4) watchpack: 2.5.1 optionalDependencies: '@angular/core': 21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5) - '@angular/platform-browser': 21.2.14(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5)) - '@angular/platform-server': 15.2.10(bb9340fd85b833f543ade9387312e178) + '@angular/platform-browser': 21.2.14(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5)) + '@angular/platform-server': 15.2.10(597020a0fe8c1c77567a7c05da2eed63) less: 4.1.3 lmdb: 3.5.1 - ng-packagr: 15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5) + ng-packagr: 15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5) postcss: 8.5.15 - vitest: 4.1.7(@types/node@12.20.52)(jsdom@28.1.0)(vite@7.3.2(@types/node@12.20.52)(less@4.1.3)(sass@1.97.3)(terser@5.16.3)) + vitest: 4.1.7(@types/node@26.0.1)(jsdom@28.1.0)(vite@7.3.2(@types/node@26.0.1)(less@4.1.3)(sass@1.97.3)(terser@5.16.3)(tsx@4.22.4)) transitivePeerDependencies: - '@emnapi/core' - '@emnapi/runtime' @@ -9130,13 +9315,13 @@ snapshots: - chokidar - supports-color - '@angular/cli@21.2.12(@types/node@12.20.52)(chokidar@5.0.0)': + '@angular/cli@21.2.12(@types/node@26.0.1)(chokidar@5.0.0)': dependencies: '@angular-devkit/architect': 0.2102.12(chokidar@5.0.0) '@angular-devkit/core': 21.2.12(chokidar@5.0.0) '@angular-devkit/schematics': 21.2.12(chokidar@5.0.0) - '@inquirer/prompts': 7.10.1(@types/node@12.20.52) - '@listr2/prompt-adapter-inquirer': 3.0.5(@inquirer/prompts@7.10.1(@types/node@12.20.52))(@types/node@12.20.52)(listr2@9.0.5) + '@inquirer/prompts': 7.10.1(@types/node@26.0.1) + '@listr2/prompt-adapter-inquirer': 3.0.5(@inquirer/prompts@7.10.1(@types/node@26.0.1))(@types/node@26.0.1)(listr2@9.0.5) '@modelcontextprotocol/sdk': 1.26.0(zod@4.3.6) '@schematics/angular': 21.2.12(chokidar@5.0.0) '@yarnpkg/lockfile': 1.1.0 @@ -9156,6 +9341,12 @@ snapshots: - chokidar - supports-color + '@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7)': + dependencies: + '@angular/core': 15.2.10(rxjs@7.5.7)(zone.js@0.11.5) + rxjs: 7.5.7 + tslib: 2.5.0 + '@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2)': dependencies: '@angular/core': 15.2.10(rxjs@7.8.2)(zone.js@0.11.5) @@ -9168,9 +9359,9 @@ snapshots: rxjs: 7.8.2 tslib: 2.6.2 - '@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5)': + '@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5)': dependencies: - '@angular/compiler': 15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)) + '@angular/compiler': 15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)) '@babel/core': 7.19.3 '@jridgewell/sourcemap-codec': 1.4.15 chokidar: 3.5.3 @@ -9201,16 +9392,22 @@ snapshots: transitivePeerDependencies: - supports-color - '@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))': + '@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))': dependencies: tslib: 2.6.2 optionalDependencies: - '@angular/core': 15.2.10(rxjs@7.8.2)(zone.js@0.11.5) + '@angular/core': 15.2.10(rxjs@7.5.7)(zone.js@0.11.5) '@angular/compiler@21.2.14': dependencies: tslib: 2.6.2 + '@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)': + dependencies: + rxjs: 7.5.7 + tslib: 2.5.0 + zone.js: 0.11.5 + '@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)': dependencies: rxjs: 7.8.2 @@ -9225,72 +9422,72 @@ snapshots: '@angular/compiler': 21.2.14 zone.js: 0.11.5 - '@angular/forms@15.2.10(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(@angular/platform-browser@15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(rxjs@7.8.2)': + '@angular/forms@15.2.10(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(@angular/platform-browser@15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(rxjs@7.5.7)': dependencies: - '@angular/common': 15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2) - '@angular/core': 15.2.10(rxjs@7.8.2)(zone.js@0.11.5) - '@angular/platform-browser': 15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)) - rxjs: 7.8.2 + '@angular/common': 15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7) + '@angular/core': 15.2.10(rxjs@7.5.7)(zone.js@0.11.5) + '@angular/platform-browser': 15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)) + rxjs: 7.5.7 tslib: 2.6.2 - '@angular/forms@21.2.14(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(@angular/platform-browser@21.2.14(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5)))(rxjs@7.8.2)': + '@angular/forms@21.2.14(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(@angular/platform-browser@21.2.14(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5)))(rxjs@7.8.2)': dependencies: '@angular/common': 21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2) '@angular/core': 21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5) - '@angular/platform-browser': 21.2.14(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5)) + '@angular/platform-browser': 21.2.14(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5)) '@standard-schema/spec': 1.1.0 rxjs: 7.8.2 tslib: 2.6.2 - '@angular/platform-browser-dynamic@15.2.10(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(@angular/platform-browser@15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))': + '@angular/platform-browser-dynamic@15.2.10(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(@angular/platform-browser@15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))': dependencies: - '@angular/common': 15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2) - '@angular/compiler': 15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)) - '@angular/core': 15.2.10(rxjs@7.8.2)(zone.js@0.11.5) - '@angular/platform-browser': 15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)) + '@angular/common': 15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7) + '@angular/compiler': 15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)) + '@angular/core': 15.2.10(rxjs@7.5.7)(zone.js@0.11.5) + '@angular/platform-browser': 15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)) tslib: 2.6.2 - '@angular/platform-browser@15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))': + '@angular/platform-browser@15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))': dependencies: - '@angular/common': 15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2) - '@angular/core': 15.2.10(rxjs@7.8.2)(zone.js@0.11.5) + '@angular/common': 15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7) + '@angular/core': 15.2.10(rxjs@7.5.7)(zone.js@0.11.5) tslib: 2.6.2 optionalDependencies: - '@angular/animations': 15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)) + '@angular/animations': 15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)) - '@angular/platform-browser@21.2.14(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))': + '@angular/platform-browser@21.2.14(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))': dependencies: '@angular/common': 21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2) '@angular/core': 21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5) tslib: 2.6.2 optionalDependencies: - '@angular/animations': 15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)) + '@angular/animations': 15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)) - '@angular/platform-server@15.2.10(bb9340fd85b833f543ade9387312e178)': + '@angular/platform-server@15.2.10(597020a0fe8c1c77567a7c05da2eed63)': dependencies: - '@angular/animations': 15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)) - '@angular/common': 15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2) - '@angular/compiler': 15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)) - '@angular/core': 15.2.10(rxjs@7.8.2)(zone.js@0.11.5) - '@angular/platform-browser': 15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)) - '@angular/platform-browser-dynamic': 15.2.10(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(@angular/platform-browser@15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))) + '@angular/animations': 15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)) + '@angular/common': 15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7) + '@angular/compiler': 15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)) + '@angular/core': 15.2.10(rxjs@7.5.7)(zone.js@0.11.5) + '@angular/platform-browser': 15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)) + '@angular/platform-browser-dynamic': 15.2.10(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(@angular/platform-browser@15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))) domino: 2.1.6 tslib: 2.6.2 xhr2: 0.2.1 - '@angular/router@15.2.10(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(@angular/platform-browser@15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(rxjs@7.8.2)': + '@angular/router@15.2.10(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(@angular/platform-browser@15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(rxjs@7.5.7)': dependencies: - '@angular/common': 15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2) - '@angular/core': 15.2.10(rxjs@7.8.2)(zone.js@0.11.5) - '@angular/platform-browser': 15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)) - rxjs: 7.8.2 + '@angular/common': 15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7) + '@angular/core': 15.2.10(rxjs@7.5.7)(zone.js@0.11.5) + '@angular/platform-browser': 15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)) + rxjs: 7.5.7 tslib: 2.6.2 - '@angular/router@21.2.14(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(@angular/platform-browser@21.2.14(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5)))(rxjs@7.8.2)': + '@angular/router@21.2.14(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(@angular/platform-browser@21.2.14(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5)))(rxjs@7.8.2)': dependencies: '@angular/common': 21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2) '@angular/core': 21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5) - '@angular/platform-browser': 21.2.14(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5)) + '@angular/platform-browser': 21.2.14(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5)) rxjs: 7.8.2 tslib: 2.6.2 @@ -9404,7 +9601,7 @@ snapshots: '@babel/types': 7.29.7 '@jridgewell/remapping': 2.3.5 convert-source-map: 2.0.0 - debug: 4.3.4 + debug: 4.4.3 gensync: 1.0.0-beta.2 json5: 2.2.3 semver: 6.3.1 @@ -10194,7 +10391,7 @@ snapshots: '@babel/parser': 7.29.7 '@babel/template': 7.29.7 '@babel/types': 7.29.7 - debug: 4.3.4 + debug: 4.4.3 transitivePeerDependencies: - supports-color @@ -10244,7 +10441,7 @@ snapshots: dependencies: '@changesets/types': 6.1.0 - '@changesets/cli@2.31.0(@types/node@12.20.52)': + '@changesets/cli@2.31.0(@types/node@26.0.1)': dependencies: '@changesets/apply-release-plan': 7.1.1 '@changesets/assemble-release-plan': 6.0.10 @@ -10260,7 +10457,7 @@ snapshots: '@changesets/should-skip-package': 0.1.2 '@changesets/types': 6.1.0 '@changesets/write': 0.4.0 - '@inquirer/external-editor': 1.0.3(@types/node@12.20.52) + '@inquirer/external-editor': 1.0.3(@types/node@26.0.1) '@manypkg/get-packages': 1.1.3 ansi-colors: 4.1.3 enquirer: 2.4.1 @@ -10416,7 +10613,7 @@ snapshots: '@types/node': 14.18.33 chalk: 4.1.2 cosmiconfig: 7.0.1 - cosmiconfig-typescript-loader: 4.2.0(@types/node@14.18.33)(cosmiconfig@7.0.1)(ts-node@10.9.1(@types/node@12.20.52)(typescript@4.9.5))(typescript@4.9.5) + cosmiconfig-typescript-loader: 4.2.0(@types/node@14.18.33)(cosmiconfig@7.0.1)(ts-node@10.9.1(@types/node@14.18.33)(typescript@4.9.5))(typescript@4.9.5) lodash: 4.17.21 resolve-from: 5.0.0 ts-node: 10.9.1(@types/node@14.18.33)(typescript@4.9.5) @@ -10517,6 +10714,9 @@ snapshots: '@esbuild/aix-ppc64@0.27.3': optional: true + '@esbuild/aix-ppc64@0.28.1': + optional: true + '@esbuild/android-arm64@0.17.19': optional: true @@ -10526,6 +10726,9 @@ snapshots: '@esbuild/android-arm64@0.27.3': optional: true + '@esbuild/android-arm64@0.28.1': + optional: true + '@esbuild/android-arm@0.17.19': optional: true @@ -10535,6 +10738,9 @@ snapshots: '@esbuild/android-arm@0.27.3': optional: true + '@esbuild/android-arm@0.28.1': + optional: true + '@esbuild/android-x64@0.17.19': optional: true @@ -10544,6 +10750,9 @@ snapshots: '@esbuild/android-x64@0.27.3': optional: true + '@esbuild/android-x64@0.28.1': + optional: true + '@esbuild/darwin-arm64@0.17.19': optional: true @@ -10553,6 +10762,9 @@ snapshots: '@esbuild/darwin-arm64@0.27.3': optional: true + '@esbuild/darwin-arm64@0.28.1': + optional: true + '@esbuild/darwin-x64@0.17.19': optional: true @@ -10562,6 +10774,9 @@ snapshots: '@esbuild/darwin-x64@0.27.3': optional: true + '@esbuild/darwin-x64@0.28.1': + optional: true + '@esbuild/freebsd-arm64@0.17.19': optional: true @@ -10571,6 +10786,9 @@ snapshots: '@esbuild/freebsd-arm64@0.27.3': optional: true + '@esbuild/freebsd-arm64@0.28.1': + optional: true + '@esbuild/freebsd-x64@0.17.19': optional: true @@ -10580,6 +10798,9 @@ snapshots: '@esbuild/freebsd-x64@0.27.3': optional: true + '@esbuild/freebsd-x64@0.28.1': + optional: true + '@esbuild/linux-arm64@0.17.19': optional: true @@ -10589,6 +10810,9 @@ snapshots: '@esbuild/linux-arm64@0.27.3': optional: true + '@esbuild/linux-arm64@0.28.1': + optional: true + '@esbuild/linux-arm@0.17.19': optional: true @@ -10598,6 +10822,9 @@ snapshots: '@esbuild/linux-arm@0.27.3': optional: true + '@esbuild/linux-arm@0.28.1': + optional: true + '@esbuild/linux-ia32@0.17.19': optional: true @@ -10607,6 +10834,9 @@ snapshots: '@esbuild/linux-ia32@0.27.3': optional: true + '@esbuild/linux-ia32@0.28.1': + optional: true + '@esbuild/linux-loong64@0.17.19': optional: true @@ -10616,6 +10846,9 @@ snapshots: '@esbuild/linux-loong64@0.27.3': optional: true + '@esbuild/linux-loong64@0.28.1': + optional: true + '@esbuild/linux-mips64el@0.17.19': optional: true @@ -10625,6 +10858,9 @@ snapshots: '@esbuild/linux-mips64el@0.27.3': optional: true + '@esbuild/linux-mips64el@0.28.1': + optional: true + '@esbuild/linux-ppc64@0.17.19': optional: true @@ -10634,6 +10870,9 @@ snapshots: '@esbuild/linux-ppc64@0.27.3': optional: true + '@esbuild/linux-ppc64@0.28.1': + optional: true + '@esbuild/linux-riscv64@0.17.19': optional: true @@ -10643,6 +10882,9 @@ snapshots: '@esbuild/linux-riscv64@0.27.3': optional: true + '@esbuild/linux-riscv64@0.28.1': + optional: true + '@esbuild/linux-s390x@0.17.19': optional: true @@ -10652,6 +10894,9 @@ snapshots: '@esbuild/linux-s390x@0.27.3': optional: true + '@esbuild/linux-s390x@0.28.1': + optional: true + '@esbuild/linux-x64@0.17.19': optional: true @@ -10661,9 +10906,15 @@ snapshots: '@esbuild/linux-x64@0.27.3': optional: true + '@esbuild/linux-x64@0.28.1': + optional: true + '@esbuild/netbsd-arm64@0.27.3': optional: true + '@esbuild/netbsd-arm64@0.28.1': + optional: true + '@esbuild/netbsd-x64@0.17.19': optional: true @@ -10673,9 +10924,15 @@ snapshots: '@esbuild/netbsd-x64@0.27.3': optional: true + '@esbuild/netbsd-x64@0.28.1': + optional: true + '@esbuild/openbsd-arm64@0.27.3': optional: true + '@esbuild/openbsd-arm64@0.28.1': + optional: true + '@esbuild/openbsd-x64@0.17.19': optional: true @@ -10685,9 +10942,15 @@ snapshots: '@esbuild/openbsd-x64@0.27.3': optional: true + '@esbuild/openbsd-x64@0.28.1': + optional: true + '@esbuild/openharmony-arm64@0.27.3': optional: true + '@esbuild/openharmony-arm64@0.28.1': + optional: true + '@esbuild/sunos-x64@0.17.19': optional: true @@ -10697,6 +10960,9 @@ snapshots: '@esbuild/sunos-x64@0.27.3': optional: true + '@esbuild/sunos-x64@0.28.1': + optional: true + '@esbuild/win32-arm64@0.17.19': optional: true @@ -10706,6 +10972,9 @@ snapshots: '@esbuild/win32-arm64@0.27.3': optional: true + '@esbuild/win32-arm64@0.28.1': + optional: true + '@esbuild/win32-ia32@0.17.19': optional: true @@ -10715,6 +10984,9 @@ snapshots: '@esbuild/win32-ia32@0.27.3': optional: true + '@esbuild/win32-ia32@0.28.1': + optional: true + '@esbuild/win32-x64@0.17.19': optional: true @@ -10724,6 +10996,9 @@ snapshots: '@esbuild/win32-x64@0.27.3': optional: true + '@esbuild/win32-x64@0.28.1': + optional: true + '@eslint-community/eslint-utils@4.4.0(eslint@8.56.0)': dependencies: eslint: 8.56.0 @@ -10805,128 +11080,128 @@ snapshots: '@inquirer/ansi@1.0.2': {} - '@inquirer/checkbox@4.3.2(@types/node@12.20.52)': + '@inquirer/checkbox@4.3.2(@types/node@26.0.1)': dependencies: '@inquirer/ansi': 1.0.2 - '@inquirer/core': 10.3.2(@types/node@12.20.52) + '@inquirer/core': 10.3.2(@types/node@26.0.1) '@inquirer/figures': 1.0.15 - '@inquirer/type': 3.0.10(@types/node@12.20.52) + '@inquirer/type': 3.0.10(@types/node@26.0.1) yoctocolors-cjs: 2.1.3 optionalDependencies: - '@types/node': 12.20.52 + '@types/node': 26.0.1 - '@inquirer/confirm@5.1.21(@types/node@12.20.52)': + '@inquirer/confirm@5.1.21(@types/node@26.0.1)': dependencies: - '@inquirer/core': 10.3.2(@types/node@12.20.52) - '@inquirer/type': 3.0.10(@types/node@12.20.52) + '@inquirer/core': 10.3.2(@types/node@26.0.1) + '@inquirer/type': 3.0.10(@types/node@26.0.1) optionalDependencies: - '@types/node': 12.20.52 + '@types/node': 26.0.1 - '@inquirer/core@10.3.2(@types/node@12.20.52)': + '@inquirer/core@10.3.2(@types/node@26.0.1)': dependencies: '@inquirer/ansi': 1.0.2 '@inquirer/figures': 1.0.15 - '@inquirer/type': 3.0.10(@types/node@12.20.52) + '@inquirer/type': 3.0.10(@types/node@26.0.1) cli-width: 4.1.0 mute-stream: 2.0.0 signal-exit: 4.1.0 wrap-ansi: 6.2.0 yoctocolors-cjs: 2.1.3 optionalDependencies: - '@types/node': 12.20.52 + '@types/node': 26.0.1 - '@inquirer/editor@4.2.23(@types/node@12.20.52)': + '@inquirer/editor@4.2.23(@types/node@26.0.1)': dependencies: - '@inquirer/core': 10.3.2(@types/node@12.20.52) - '@inquirer/external-editor': 1.0.3(@types/node@12.20.52) - '@inquirer/type': 3.0.10(@types/node@12.20.52) + '@inquirer/core': 10.3.2(@types/node@26.0.1) + '@inquirer/external-editor': 1.0.3(@types/node@26.0.1) + '@inquirer/type': 3.0.10(@types/node@26.0.1) optionalDependencies: - '@types/node': 12.20.52 + '@types/node': 26.0.1 - '@inquirer/expand@4.0.23(@types/node@12.20.52)': + '@inquirer/expand@4.0.23(@types/node@26.0.1)': dependencies: - '@inquirer/core': 10.3.2(@types/node@12.20.52) - '@inquirer/type': 3.0.10(@types/node@12.20.52) + '@inquirer/core': 10.3.2(@types/node@26.0.1) + '@inquirer/type': 3.0.10(@types/node@26.0.1) yoctocolors-cjs: 2.1.3 optionalDependencies: - '@types/node': 12.20.52 + '@types/node': 26.0.1 - '@inquirer/external-editor@1.0.3(@types/node@12.20.52)': + '@inquirer/external-editor@1.0.3(@types/node@26.0.1)': dependencies: chardet: 2.1.1 iconv-lite: 0.7.2 optionalDependencies: - '@types/node': 12.20.52 + '@types/node': 26.0.1 '@inquirer/figures@1.0.15': {} - '@inquirer/input@4.3.1(@types/node@12.20.52)': + '@inquirer/input@4.3.1(@types/node@26.0.1)': dependencies: - '@inquirer/core': 10.3.2(@types/node@12.20.52) - '@inquirer/type': 3.0.10(@types/node@12.20.52) + '@inquirer/core': 10.3.2(@types/node@26.0.1) + '@inquirer/type': 3.0.10(@types/node@26.0.1) optionalDependencies: - '@types/node': 12.20.52 + '@types/node': 26.0.1 - '@inquirer/number@3.0.23(@types/node@12.20.52)': + '@inquirer/number@3.0.23(@types/node@26.0.1)': dependencies: - '@inquirer/core': 10.3.2(@types/node@12.20.52) - '@inquirer/type': 3.0.10(@types/node@12.20.52) + '@inquirer/core': 10.3.2(@types/node@26.0.1) + '@inquirer/type': 3.0.10(@types/node@26.0.1) optionalDependencies: - '@types/node': 12.20.52 + '@types/node': 26.0.1 - '@inquirer/password@4.0.23(@types/node@12.20.52)': + '@inquirer/password@4.0.23(@types/node@26.0.1)': dependencies: '@inquirer/ansi': 1.0.2 - '@inquirer/core': 10.3.2(@types/node@12.20.52) - '@inquirer/type': 3.0.10(@types/node@12.20.52) + '@inquirer/core': 10.3.2(@types/node@26.0.1) + '@inquirer/type': 3.0.10(@types/node@26.0.1) optionalDependencies: - '@types/node': 12.20.52 - - '@inquirer/prompts@7.10.1(@types/node@12.20.52)': - dependencies: - '@inquirer/checkbox': 4.3.2(@types/node@12.20.52) - '@inquirer/confirm': 5.1.21(@types/node@12.20.52) - '@inquirer/editor': 4.2.23(@types/node@12.20.52) - '@inquirer/expand': 4.0.23(@types/node@12.20.52) - '@inquirer/input': 4.3.1(@types/node@12.20.52) - '@inquirer/number': 3.0.23(@types/node@12.20.52) - '@inquirer/password': 4.0.23(@types/node@12.20.52) - '@inquirer/rawlist': 4.1.11(@types/node@12.20.52) - '@inquirer/search': 3.2.2(@types/node@12.20.52) - '@inquirer/select': 4.4.2(@types/node@12.20.52) + '@types/node': 26.0.1 + + '@inquirer/prompts@7.10.1(@types/node@26.0.1)': + dependencies: + '@inquirer/checkbox': 4.3.2(@types/node@26.0.1) + '@inquirer/confirm': 5.1.21(@types/node@26.0.1) + '@inquirer/editor': 4.2.23(@types/node@26.0.1) + '@inquirer/expand': 4.0.23(@types/node@26.0.1) + '@inquirer/input': 4.3.1(@types/node@26.0.1) + '@inquirer/number': 3.0.23(@types/node@26.0.1) + '@inquirer/password': 4.0.23(@types/node@26.0.1) + '@inquirer/rawlist': 4.1.11(@types/node@26.0.1) + '@inquirer/search': 3.2.2(@types/node@26.0.1) + '@inquirer/select': 4.4.2(@types/node@26.0.1) optionalDependencies: - '@types/node': 12.20.52 + '@types/node': 26.0.1 - '@inquirer/rawlist@4.1.11(@types/node@12.20.52)': + '@inquirer/rawlist@4.1.11(@types/node@26.0.1)': dependencies: - '@inquirer/core': 10.3.2(@types/node@12.20.52) - '@inquirer/type': 3.0.10(@types/node@12.20.52) + '@inquirer/core': 10.3.2(@types/node@26.0.1) + '@inquirer/type': 3.0.10(@types/node@26.0.1) yoctocolors-cjs: 2.1.3 optionalDependencies: - '@types/node': 12.20.52 + '@types/node': 26.0.1 - '@inquirer/search@3.2.2(@types/node@12.20.52)': + '@inquirer/search@3.2.2(@types/node@26.0.1)': dependencies: - '@inquirer/core': 10.3.2(@types/node@12.20.52) + '@inquirer/core': 10.3.2(@types/node@26.0.1) '@inquirer/figures': 1.0.15 - '@inquirer/type': 3.0.10(@types/node@12.20.52) + '@inquirer/type': 3.0.10(@types/node@26.0.1) yoctocolors-cjs: 2.1.3 optionalDependencies: - '@types/node': 12.20.52 + '@types/node': 26.0.1 - '@inquirer/select@4.4.2(@types/node@12.20.52)': + '@inquirer/select@4.4.2(@types/node@26.0.1)': dependencies: '@inquirer/ansi': 1.0.2 - '@inquirer/core': 10.3.2(@types/node@12.20.52) + '@inquirer/core': 10.3.2(@types/node@26.0.1) '@inquirer/figures': 1.0.15 - '@inquirer/type': 3.0.10(@types/node@12.20.52) + '@inquirer/type': 3.0.10(@types/node@26.0.1) yoctocolors-cjs: 2.1.3 optionalDependencies: - '@types/node': 12.20.52 + '@types/node': 26.0.1 - '@inquirer/type@3.0.10(@types/node@12.20.52)': + '@inquirer/type@3.0.10(@types/node@26.0.1)': optionalDependencies: - '@types/node': 12.20.52 + '@types/node': 26.0.1 '@isaacs/cliui@8.0.2': dependencies: @@ -10954,27 +11229,27 @@ snapshots: '@jest/console@29.7.0': dependencies: '@jest/types': 29.6.3 - '@types/node': 12.20.52 + '@types/node': 26.0.1 chalk: 4.1.2 jest-message-util: 29.7.0 jest-util: 29.7.0 slash: 3.0.0 - '@jest/core@29.7.0(ts-node@10.9.1(@types/node@12.20.52)(typescript@4.9.5))': + '@jest/core@29.7.0(ts-node@10.9.1(@types/node@14.18.33)(typescript@4.9.5))': dependencies: '@jest/console': 29.7.0 '@jest/reporters': 29.7.0 '@jest/test-result': 29.7.0 '@jest/transform': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 12.20.52 + '@types/node': 26.0.1 ansi-escapes: 4.3.2 chalk: 4.1.2 ci-info: 3.3.1 exit: 0.1.2 graceful-fs: 4.2.10 jest-changed-files: 29.7.0 - jest-config: 29.7.0(@types/node@12.20.52)(ts-node@10.9.1(@types/node@12.20.52)(typescript@4.9.5)) + jest-config: 29.7.0(@types/node@26.0.1)(ts-node@10.9.1(@types/node@14.18.33)(typescript@4.9.5)) jest-haste-map: 29.7.0 jest-message-util: 29.7.0 jest-regex-util: 29.6.3 @@ -10999,7 +11274,7 @@ snapshots: dependencies: '@jest/fake-timers': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 12.20.52 + '@types/node': 26.0.1 jest-mock: 29.7.0 '@jest/expect-utils@29.7.0': @@ -11017,7 +11292,7 @@ snapshots: dependencies: '@jest/types': 29.6.3 '@sinonjs/fake-timers': 10.3.0 - '@types/node': 12.20.52 + '@types/node': 26.0.1 jest-message-util: 29.7.0 jest-mock: 29.7.0 jest-util: 29.7.0 @@ -11039,7 +11314,7 @@ snapshots: '@jest/transform': 29.7.0 '@jest/types': 29.6.3 '@jridgewell/trace-mapping': 0.3.25 - '@types/node': 12.20.52 + '@types/node': 26.0.1 chalk: 4.1.2 collect-v8-coverage: 1.0.1 exit: 0.1.2 @@ -11086,9 +11361,9 @@ snapshots: '@jest/transform@29.7.0': dependencies: - '@babel/core': 7.20.12 + '@babel/core': 7.29.0 '@jest/types': 29.6.3 - '@jridgewell/trace-mapping': 0.3.25 + '@jridgewell/trace-mapping': 0.3.31 babel-plugin-istanbul: 6.1.1 chalk: 4.1.2 convert-source-map: 2.0.0 @@ -11097,7 +11372,7 @@ snapshots: jest-haste-map: 29.7.0 jest-regex-util: 29.6.3 jest-util: 29.7.0 - micromatch: 4.0.5 + micromatch: 4.0.8 pirates: 4.0.5 slash: 3.0.0 write-file-atomic: 4.0.2 @@ -11109,7 +11384,7 @@ snapshots: '@jest/schemas': 29.6.3 '@types/istanbul-lib-coverage': 2.0.4 '@types/istanbul-reports': 3.0.1 - '@types/node': 12.20.52 + '@types/node': 26.0.1 '@types/yargs': 17.0.10 chalk: 4.1.2 @@ -11131,10 +11406,8 @@ snapshots: '@jridgewell/remapping@2.3.5': dependencies: - '@jridgewell/gen-mapping': 0.3.5 - '@jridgewell/trace-mapping': 0.3.25 - - '@jridgewell/resolve-uri@3.0.7': {} + '@jridgewell/gen-mapping': 0.3.13 + '@jridgewell/trace-mapping': 0.3.31 '@jridgewell/resolve-uri@3.1.2': {} @@ -11142,8 +11415,8 @@ snapshots: '@jridgewell/source-map@0.3.6': dependencies: - '@jridgewell/gen-mapping': 0.3.5 - '@jridgewell/trace-mapping': 0.3.25 + '@jridgewell/gen-mapping': 0.3.13 + '@jridgewell/trace-mapping': 0.3.31 '@jridgewell/sourcemap-codec@1.4.15': {} @@ -11157,19 +11430,19 @@ snapshots: '@jridgewell/trace-mapping@0.3.31': dependencies: '@jridgewell/resolve-uri': 3.1.2 - '@jridgewell/sourcemap-codec': 1.4.15 + '@jridgewell/sourcemap-codec': 1.5.5 '@jridgewell/trace-mapping@0.3.9': dependencies: - '@jridgewell/resolve-uri': 3.0.7 - '@jridgewell/sourcemap-codec': 1.4.15 + '@jridgewell/resolve-uri': 3.1.2 + '@jridgewell/sourcemap-codec': 1.5.5 '@leichtgewicht/ip-codec@2.0.4': {} - '@listr2/prompt-adapter-inquirer@3.0.5(@inquirer/prompts@7.10.1(@types/node@12.20.52))(@types/node@12.20.52)(listr2@9.0.5)': + '@listr2/prompt-adapter-inquirer@3.0.5(@inquirer/prompts@7.10.1(@types/node@26.0.1))(@types/node@26.0.1)(listr2@9.0.5)': dependencies: - '@inquirer/prompts': 7.10.1(@types/node@12.20.52) - '@inquirer/type': 3.0.10(@types/node@12.20.52) + '@inquirer/prompts': 7.10.1(@types/node@26.0.1) + '@inquirer/type': 3.0.10(@types/node@26.0.1) listr2: 9.0.5 transitivePeerDependencies: - '@types/node' @@ -11330,25 +11603,25 @@ snapshots: '@tybys/wasm-util': 0.10.2 optional: true - '@ngtools/webpack@15.2.10(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5))(typescript@4.9.5)(webpack@5.76.1(esbuild@0.17.8))': + '@ngtools/webpack@15.2.10(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5))(typescript@4.9.5)(webpack@5.76.1(esbuild@0.17.8))': dependencies: - '@angular/compiler-cli': 15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5) + '@angular/compiler-cli': 15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5) typescript: 4.9.5 webpack: 5.76.1(esbuild@0.17.8) - '@nguniversal/builders@15.2.1(@angular-devkit/build-angular@15.2.10(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5))(@angular/platform-server@15.2.10(bb9340fd85b833f543ade9387312e178))(ng-packagr@15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5))(typescript@4.9.5))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(@types/express@4.17.13)(chokidar@3.5.3)(typescript@4.9.5)': + '@nguniversal/builders@15.2.1(@angular-devkit/build-angular@15.2.10(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5))(@angular/platform-server@15.2.10(597020a0fe8c1c77567a7c05da2eed63))(ng-packagr@15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5))(typescript@4.9.5))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(@types/express@4.17.13)(chokidar@3.5.3)(typescript@4.9.5)': dependencies: '@angular-devkit/architect': 0.1502.10(chokidar@3.5.3) - '@angular-devkit/build-angular': 15.2.10(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5))(@angular/platform-server@15.2.10(bb9340fd85b833f543ade9387312e178))(ng-packagr@15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5))(typescript@4.9.5) + '@angular-devkit/build-angular': 15.2.10(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5))(@angular/platform-server@15.2.10(597020a0fe8c1c77567a7c05da2eed63))(ng-packagr@15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5))(typescript@4.9.5) '@angular-devkit/core': 15.2.10(chokidar@3.5.3) - '@nguniversal/common': 15.2.1(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)) + '@nguniversal/common': 15.2.1(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)) browser-sync: 2.27.10 express: 4.20.0 guess-parser: 0.4.22(typescript@4.9.5) http-proxy-middleware: 2.0.6(@types/express@4.17.13) ora: 5.4.1 piscina: 3.2.0 - rxjs: 7.8.2 + rxjs: 6.6.7 tree-kill: 1.2.2 transitivePeerDependencies: - '@angular/common' @@ -11362,10 +11635,10 @@ snapshots: - typescript - utf-8-validate - '@nguniversal/common@15.2.1(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))': + '@nguniversal/common@15.2.1(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))': dependencies: - '@angular/common': 15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2) - '@angular/core': 15.2.10(rxjs@7.8.2)(zone.js@0.11.5) + '@angular/common': 15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7) + '@angular/core': 15.2.10(rxjs@7.5.7)(zone.js@0.11.5) critters: 0.0.16 jsdom: 21.1.0 tslib: 2.6.2 @@ -11375,12 +11648,12 @@ snapshots: - supports-color - utf-8-validate - '@nguniversal/express-engine@15.2.1(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(@angular/platform-server@15.2.10(bb9340fd85b833f543ade9387312e178))(express@4.20.0)': + '@nguniversal/express-engine@15.2.1(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(@angular/platform-server@15.2.10(597020a0fe8c1c77567a7c05da2eed63))(express@4.20.0)': dependencies: - '@angular/common': 15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2) - '@angular/core': 15.2.10(rxjs@7.8.2)(zone.js@0.11.5) - '@angular/platform-server': 15.2.10(bb9340fd85b833f543ade9387312e178) - '@nguniversal/common': 15.2.1(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)) + '@angular/common': 15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7) + '@angular/core': 15.2.10(rxjs@7.5.7)(zone.js@0.11.5) + '@angular/platform-server': 15.2.10(597020a0fe8c1c77567a7c05da2eed63) + '@nguniversal/common': 15.2.1(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)) express: 4.20.0 tslib: 2.6.2 transitivePeerDependencies: @@ -11836,33 +12109,33 @@ snapshots: '@types/babel__core@7.1.19': dependencies: - '@babel/parser': 7.24.0 - '@babel/types': 7.24.0 + '@babel/parser': 7.29.7 + '@babel/types': 7.29.7 '@types/babel__generator': 7.6.4 '@types/babel__template': 7.4.1 '@types/babel__traverse': 7.17.1 '@types/babel__generator@7.6.4': dependencies: - '@babel/types': 7.24.0 + '@babel/types': 7.29.7 '@types/babel__template@7.4.1': dependencies: - '@babel/parser': 7.24.0 - '@babel/types': 7.24.0 + '@babel/parser': 7.29.7 + '@babel/types': 7.29.7 '@types/babel__traverse@7.17.1': dependencies: - '@babel/types': 7.24.0 + '@babel/types': 7.29.7 '@types/body-parser@1.19.2': dependencies: '@types/connect': 3.4.35 - '@types/node': 18.11.9 + '@types/node': 26.0.1 '@types/bonjour@3.5.10': dependencies: - '@types/node': 12.20.52 + '@types/node': 26.0.1 '@types/chai@5.2.3': dependencies: @@ -11874,11 +12147,11 @@ snapshots: '@types/connect-history-api-fallback@1.3.5': dependencies: '@types/express-serve-static-core': 4.17.28 - '@types/node': 12.20.52 + '@types/node': 26.0.1 '@types/connect@3.4.35': dependencies: - '@types/node': 18.11.9 + '@types/node': 26.0.1 '@types/cookie@0.4.1': {} @@ -11893,8 +12166,8 @@ snapshots: '@types/eslint@8.4.2': dependencies: - '@types/estree': 0.0.51 - '@types/json-schema': 7.0.11 + '@types/estree': 1.0.8 + '@types/json-schema': 7.0.15 '@types/estree@0.0.51': {} @@ -11904,7 +12177,7 @@ snapshots: '@types/express-serve-static-core@4.17.28': dependencies: - '@types/node': 18.11.9 + '@types/node': 26.0.1 '@types/qs': 6.9.7 '@types/range-parser': 1.2.4 @@ -11917,11 +12190,11 @@ snapshots: '@types/graceful-fs@4.1.5': dependencies: - '@types/node': 12.20.52 + '@types/node': 26.0.1 '@types/http-proxy@1.17.9': dependencies: - '@types/node': 18.11.9 + '@types/node': 26.0.1 '@types/istanbul-lib-coverage@2.0.4': {} @@ -11940,7 +12213,7 @@ snapshots: '@types/jsdom@20.0.1': dependencies: - '@types/node': 12.20.52 + '@types/node': 26.0.1 '@types/tough-cookie': 4.0.2 parse5: 7.1.2 @@ -11954,13 +12227,15 @@ snapshots: '@types/node-forge@1.3.11': dependencies: - '@types/node': 12.20.52 + '@types/node': 26.0.1 '@types/node@12.20.52': {} '@types/node@14.18.33': {} - '@types/node@18.11.9': {} + '@types/node@26.0.1': + dependencies: + undici-types: 8.3.0 '@types/normalize-package-data@2.4.1': {} @@ -11983,11 +12258,11 @@ snapshots: '@types/serve-static@1.13.10': dependencies: '@types/mime': 1.3.2 - '@types/node': 18.11.9 + '@types/node': 26.0.1 '@types/sockjs@0.3.33': dependencies: - '@types/node': 12.20.52 + '@types/node': 26.0.1 '@types/stack-utils@2.0.1': {} @@ -11995,7 +12270,7 @@ snapshots: '@types/ws@8.5.3': dependencies: - '@types/node': 12.20.52 + '@types/node': 26.0.1 '@types/yargs-parser@21.0.0': {} @@ -12301,9 +12576,9 @@ snapshots: '@ungap/structured-clone@1.2.0': {} - '@vitejs/plugin-basic-ssl@2.1.4(vite@7.3.2(@types/node@12.20.52)(less@4.1.3)(sass@1.97.3)(terser@5.16.3))': + '@vitejs/plugin-basic-ssl@2.1.4(vite@7.3.2(@types/node@26.0.1)(less@4.1.3)(sass@1.97.3)(terser@5.16.3)(tsx@4.22.4))': dependencies: - vite: 7.3.2(@types/node@12.20.52)(less@4.1.3)(sass@1.97.3)(terser@5.16.3) + vite: 7.3.2(@types/node@26.0.1)(less@4.1.3)(sass@1.97.3)(terser@5.16.3)(tsx@4.22.4) '@vitest/expect@4.1.7': dependencies: @@ -12314,13 +12589,13 @@ snapshots: chai: 6.2.2 tinyrainbow: 3.1.0 - '@vitest/mocker@4.1.7(vite@7.3.2(@types/node@12.20.52)(less@4.1.3)(sass@1.97.3)(terser@5.16.3))': + '@vitest/mocker@4.1.7(vite@7.3.2(@types/node@26.0.1)(less@4.1.3)(sass@1.97.3)(terser@5.16.3)(tsx@4.22.4))': dependencies: '@vitest/spy': 4.1.7 estree-walker: 3.0.3 magic-string: 0.30.21 optionalDependencies: - vite: 7.3.2(@types/node@12.20.52)(less@4.1.3)(sass@1.97.3)(terser@5.16.3) + vite: 7.3.2(@types/node@26.0.1)(less@4.1.3)(sass@1.97.3)(terser@5.16.3)(tsx@4.22.4) '@vitest/pretty-format@4.1.7': dependencies: @@ -12664,6 +12939,8 @@ snapshots: array-ify@1.0.0: {} + array-timsort@1.0.3: {} + array-union@2.1.0: {} arrify@1.0.1: {} @@ -12748,8 +13025,8 @@ snapshots: babel-plugin-jest-hoist@29.6.3: dependencies: - '@babel/template': 7.24.0 - '@babel/types': 7.24.0 + '@babel/template': 7.29.7 + '@babel/types': 7.29.7 '@types/babel__core': 7.1.19 '@types/babel__traverse': 7.17.1 @@ -12907,7 +13184,7 @@ snapshots: etag: 1.8.1 fresh: 0.5.2 mitt: 1.2.0 - rxjs: 7.8.2 + rxjs: 5.5.12 typescript: 4.9.5 browser-sync-ui@2.27.10: @@ -13149,14 +13426,14 @@ snapshots: chokidar@3.5.3: dependencies: anymatch: 3.1.2 - braces: 3.0.2 + braces: 3.0.3 glob-parent: 5.1.2 is-binary-path: 2.1.0 is-glob: 4.0.3 normalize-path: 3.0.0 readdirp: 3.6.0 optionalDependencies: - fsevents: 2.3.2 + fsevents: 2.3.3 chokidar@4.0.3: dependencies: @@ -13267,6 +13544,11 @@ snapshots: commander@9.4.1: {} + comment-json@5.0.0: + dependencies: + array-timsort: 1.0.3 + esprima: 4.0.1 + commitizen@4.2.5: dependencies: cachedir: 2.3.0 @@ -13406,11 +13688,11 @@ snapshots: object-assign: 4.1.1 vary: 1.1.2 - cosmiconfig-typescript-loader@4.2.0(@types/node@14.18.33)(cosmiconfig@7.0.1)(ts-node@10.9.1(@types/node@12.20.52)(typescript@4.9.5))(typescript@4.9.5): + cosmiconfig-typescript-loader@4.2.0(@types/node@14.18.33)(cosmiconfig@7.0.1)(ts-node@10.9.1(@types/node@14.18.33)(typescript@4.9.5))(typescript@4.9.5): dependencies: '@types/node': 14.18.33 cosmiconfig: 7.0.1 - ts-node: 10.9.1(@types/node@12.20.52)(typescript@4.9.5) + ts-node: 10.9.1(@types/node@14.18.33)(typescript@4.9.5) typescript: 4.9.5 cosmiconfig@7.0.1: @@ -13421,13 +13703,13 @@ snapshots: path-type: 4.0.0 yaml: 1.10.2 - create-jest@29.7.0(@types/node@12.20.52)(ts-node@10.9.1(@types/node@12.20.52)(typescript@4.9.5)): + create-jest@29.7.0(@types/node@26.0.1)(ts-node@10.9.1(@types/node@14.18.33)(typescript@4.9.5)): dependencies: '@jest/types': 29.6.3 chalk: 4.1.2 exit: 0.1.2 graceful-fs: 4.2.10 - jest-config: 29.7.0(@types/node@12.20.52)(ts-node@10.9.1(@types/node@12.20.52)(typescript@4.9.5)) + jest-config: 29.7.0(@types/node@26.0.1)(ts-node@10.9.1(@types/node@14.18.33)(typescript@4.9.5)) jest-util: 29.7.0 prompts: 2.4.2 transitivePeerDependencies: @@ -13782,7 +14064,7 @@ snapshots: dependencies: '@types/cookie': 0.4.1 '@types/cors': 2.8.12 - '@types/node': 12.20.52 + '@types/node': 26.0.1 accepts: 1.3.8 base64id: 2.0.0 cookie: 0.4.2 @@ -13943,6 +14225,35 @@ snapshots: '@esbuild/win32-ia32': 0.27.3 '@esbuild/win32-x64': 0.27.3 + esbuild@0.28.1: + optionalDependencies: + '@esbuild/aix-ppc64': 0.28.1 + '@esbuild/android-arm': 0.28.1 + '@esbuild/android-arm64': 0.28.1 + '@esbuild/android-x64': 0.28.1 + '@esbuild/darwin-arm64': 0.28.1 + '@esbuild/darwin-x64': 0.28.1 + '@esbuild/freebsd-arm64': 0.28.1 + '@esbuild/freebsd-x64': 0.28.1 + '@esbuild/linux-arm': 0.28.1 + '@esbuild/linux-arm64': 0.28.1 + '@esbuild/linux-ia32': 0.28.1 + '@esbuild/linux-loong64': 0.28.1 + '@esbuild/linux-mips64el': 0.28.1 + '@esbuild/linux-ppc64': 0.28.1 + '@esbuild/linux-riscv64': 0.28.1 + '@esbuild/linux-s390x': 0.28.1 + '@esbuild/linux-x64': 0.28.1 + '@esbuild/netbsd-arm64': 0.28.1 + '@esbuild/netbsd-x64': 0.28.1 + '@esbuild/openbsd-arm64': 0.28.1 + '@esbuild/openbsd-x64': 0.28.1 + '@esbuild/openharmony-arm64': 0.28.1 + '@esbuild/sunos-x64': 0.28.1 + '@esbuild/win32-arm64': 0.28.1 + '@esbuild/win32-ia32': 0.28.1 + '@esbuild/win32-x64': 0.28.1 + escalade@3.1.1: {} escalade@3.2.0: {} @@ -14408,9 +14719,6 @@ snapshots: fs.realpath@1.0.0: {} - fsevents@2.3.2: - optional: true - fsevents@2.3.3: optional: true @@ -15113,7 +15421,7 @@ snapshots: '@jest/expect': 29.7.0 '@jest/test-result': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 12.20.52 + '@types/node': 26.0.1 chalk: 4.1.2 co: 4.6.0 dedent: 1.5.1 @@ -15133,16 +15441,16 @@ snapshots: - babel-plugin-macros - supports-color - jest-cli@29.7.0(@types/node@12.20.52)(ts-node@10.9.1(@types/node@12.20.52)(typescript@4.9.5)): + jest-cli@29.7.0(@types/node@26.0.1)(ts-node@10.9.1(@types/node@14.18.33)(typescript@4.9.5)): dependencies: - '@jest/core': 29.7.0(ts-node@10.9.1(@types/node@12.20.52)(typescript@4.9.5)) + '@jest/core': 29.7.0(ts-node@10.9.1(@types/node@14.18.33)(typescript@4.9.5)) '@jest/test-result': 29.7.0 '@jest/types': 29.6.3 chalk: 4.1.2 - create-jest: 29.7.0(@types/node@12.20.52)(ts-node@10.9.1(@types/node@12.20.52)(typescript@4.9.5)) + create-jest: 29.7.0(@types/node@26.0.1)(ts-node@10.9.1(@types/node@14.18.33)(typescript@4.9.5)) exit: 0.1.2 import-local: 3.1.0 - jest-config: 29.7.0(@types/node@12.20.52)(ts-node@10.9.1(@types/node@12.20.52)(typescript@4.9.5)) + jest-config: 29.7.0(@types/node@26.0.1)(ts-node@10.9.1(@types/node@14.18.33)(typescript@4.9.5)) jest-util: 29.7.0 jest-validate: 29.7.0 yargs: 17.6.2 @@ -15152,7 +15460,7 @@ snapshots: - supports-color - ts-node - jest-config@29.7.0(@types/node@12.20.52)(ts-node@10.9.1(@types/node@12.20.52)(typescript@4.9.5)): + jest-config@29.7.0(@types/node@26.0.1)(ts-node@10.9.1(@types/node@14.18.33)(typescript@4.9.5)): dependencies: '@babel/core': 7.20.12 '@jest/test-sequencer': 29.7.0 @@ -15177,8 +15485,8 @@ snapshots: slash: 3.0.0 strip-json-comments: 3.1.1 optionalDependencies: - '@types/node': 12.20.52 - ts-node: 10.9.1(@types/node@12.20.52)(typescript@4.9.5) + '@types/node': 26.0.1 + ts-node: 10.9.1(@types/node@14.18.33)(typescript@4.9.5) transitivePeerDependencies: - babel-plugin-macros - supports-color @@ -15208,7 +15516,7 @@ snapshots: '@jest/fake-timers': 29.7.0 '@jest/types': 29.6.3 '@types/jsdom': 20.0.1 - '@types/node': 12.20.52 + '@types/node': 26.0.1 jest-mock: 29.7.0 jest-util: 29.7.0 jsdom: 20.0.3 @@ -15222,7 +15530,7 @@ snapshots: '@jest/environment': 29.7.0 '@jest/fake-timers': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 12.20.52 + '@types/node': 26.0.1 jest-mock: 29.7.0 jest-util: 29.7.0 @@ -15232,17 +15540,17 @@ snapshots: dependencies: '@jest/types': 29.6.3 '@types/graceful-fs': 4.1.5 - '@types/node': 12.20.52 + '@types/node': 26.0.1 anymatch: 3.1.2 fb-watchman: 2.0.1 graceful-fs: 4.2.10 jest-regex-util: 29.6.3 jest-util: 29.7.0 jest-worker: 29.7.0 - micromatch: 4.0.5 + micromatch: 4.0.8 walker: 1.0.8 optionalDependencies: - fsevents: 2.3.2 + fsevents: 2.3.3 jest-leak-detector@29.7.0: dependencies: @@ -15271,26 +15579,26 @@ snapshots: jest-mock@29.7.0: dependencies: '@jest/types': 29.6.3 - '@types/node': 12.20.52 + '@types/node': 26.0.1 jest-util: 29.7.0 jest-pnp-resolver@1.2.2(jest-resolve@29.7.0): optionalDependencies: jest-resolve: 29.7.0 - jest-preset-angular@14.0.3(1768b93d21c3361974a224b326b8b84c): + jest-preset-angular@14.0.3(d85e106a5ec2f88a07487ae770218af4): dependencies: - '@angular-devkit/build-angular': 15.2.10(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5))(@angular/platform-server@15.2.10(bb9340fd85b833f543ade9387312e178))(ng-packagr@15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5))(typescript@4.9.5) - '@angular/compiler-cli': 15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5) - '@angular/core': 15.2.10(rxjs@7.8.2)(zone.js@0.11.5) - '@angular/platform-browser-dynamic': 15.2.10(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(@angular/platform-browser@15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))) + '@angular-devkit/build-angular': 15.2.10(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5))(@angular/platform-server@15.2.10(597020a0fe8c1c77567a7c05da2eed63))(ng-packagr@15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5))(typescript@4.9.5) + '@angular/compiler-cli': 15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5) + '@angular/core': 15.2.10(rxjs@7.5.7)(zone.js@0.11.5) + '@angular/platform-browser-dynamic': 15.2.10(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(@angular/platform-browser@15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))) bs-logger: 0.2.6 esbuild-wasm: 0.17.19 - jest: 29.7.0(@types/node@12.20.52)(ts-node@10.9.1(@types/node@12.20.52)(typescript@4.9.5)) + jest: 29.7.0(@types/node@26.0.1)(ts-node@10.9.1(@types/node@14.18.33)(typescript@4.9.5)) jest-environment-jsdom: 29.7.0 jest-util: 29.7.0 pretty-format: 29.7.0 - ts-jest: 29.1.2(@babel/core@7.20.12)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.20.12))(esbuild@0.17.19)(jest@29.7.0(@types/node@12.20.52)(ts-node@10.9.1(@types/node@12.20.52)(typescript@4.9.5)))(typescript@4.9.5) + ts-jest: 29.1.2(@babel/core@7.20.12)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.20.12))(esbuild@0.17.19)(jest@29.7.0(@types/node@26.0.1)(ts-node@10.9.1(@types/node@14.18.33)(typescript@4.9.5)))(typescript@4.9.5) typescript: 4.9.5 optionalDependencies: esbuild: 0.17.19 @@ -15331,7 +15639,7 @@ snapshots: '@jest/test-result': 29.7.0 '@jest/transform': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 12.20.52 + '@types/node': 26.0.1 chalk: 4.1.2 emittery: 0.13.1 graceful-fs: 4.2.10 @@ -15359,7 +15667,7 @@ snapshots: '@jest/test-result': 29.7.0 '@jest/transform': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 12.20.52 + '@types/node': 26.0.1 chalk: 4.1.2 cjs-module-lexer: 1.2.2 collect-v8-coverage: 1.0.1 @@ -15405,7 +15713,7 @@ snapshots: jest-util@29.7.0: dependencies: '@jest/types': 29.6.3 - '@types/node': 12.20.52 + '@types/node': 26.0.1 chalk: 4.1.2 ci-info: 3.3.1 graceful-fs: 4.2.10 @@ -15424,7 +15732,7 @@ snapshots: dependencies: '@jest/test-result': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 12.20.52 + '@types/node': 26.0.1 ansi-escapes: 4.3.2 chalk: 4.1.2 emittery: 0.13.1 @@ -15433,23 +15741,23 @@ snapshots: jest-worker@27.5.1: dependencies: - '@types/node': 12.20.52 + '@types/node': 26.0.1 merge-stream: 2.0.0 supports-color: 8.1.1 jest-worker@29.7.0: dependencies: - '@types/node': 12.20.52 + '@types/node': 26.0.1 jest-util: 29.7.0 merge-stream: 2.0.0 supports-color: 8.1.1 - jest@29.7.0(@types/node@12.20.52)(ts-node@10.9.1(@types/node@12.20.52)(typescript@4.9.5)): + jest@29.7.0(@types/node@26.0.1)(ts-node@10.9.1(@types/node@14.18.33)(typescript@4.9.5)): dependencies: - '@jest/core': 29.7.0(ts-node@10.9.1(@types/node@12.20.52)(typescript@4.9.5)) + '@jest/core': 29.7.0(ts-node@10.9.1(@types/node@14.18.33)(typescript@4.9.5)) '@jest/types': 29.6.3 import-local: 3.1.0 - jest-cli: 29.7.0(@types/node@12.20.52)(ts-node@10.9.1(@types/node@12.20.52)(typescript@4.9.5)) + jest-cli: 29.7.0(@types/node@26.0.1)(ts-node@10.9.1(@types/node@14.18.33)(typescript@4.9.5)) transitivePeerDependencies: - '@types/node' - babel-plugin-macros @@ -16175,9 +16483,9 @@ snapshots: neo-async@2.6.2: {} - ng-packagr@15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5): + ng-packagr@15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5): dependencies: - '@angular/compiler-cli': 15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5) + '@angular/compiler-cli': 15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5) '@rollup/plugin-json': 6.1.0(rollup@3.29.4) '@rollup/plugin-node-resolve': 15.2.3(rollup@3.29.4) ajv: 8.11.0 @@ -17088,7 +17396,7 @@ snapshots: rollup@3.29.4: optionalDependencies: - fsevents: 2.3.2 + fsevents: 2.3.3 rollup@4.60.4: dependencies: @@ -17139,6 +17447,18 @@ snapshots: rx@4.1.0: {} + rxjs@5.5.12: + dependencies: + symbol-observable: 1.0.1 + + rxjs@6.6.7: + dependencies: + tslib: 1.14.1 + + rxjs@7.5.7: + dependencies: + tslib: 2.6.2 + rxjs@7.8.2: dependencies: tslib: 2.6.2 @@ -17173,7 +17493,7 @@ snapshots: dependencies: chokidar: 4.0.3 immutable: 5.1.5 - source-map-js: 1.0.2 + source-map-js: 1.2.1 optionalDependencies: '@parcel/watcher': 2.5.6 @@ -17767,6 +18087,8 @@ snapshots: supports-preserve-symlinks-flag@1.0.0: {} + symbol-observable@1.0.1: {} + symbol-observable@4.0.0: {} symbol-tree@3.2.4: {} @@ -17811,7 +18133,7 @@ snapshots: terser@5.16.3: dependencies: '@jridgewell/source-map': 0.3.6 - acorn: 8.7.1 + acorn: 8.11.3 commander: 2.20.3 source-map-support: 0.5.21 @@ -17909,11 +18231,11 @@ snapshots: dependencies: typescript: 4.9.5 - ts-jest@29.1.2(@babel/core@7.20.12)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.20.12))(esbuild@0.17.19)(jest@29.7.0(@types/node@12.20.52)(ts-node@10.9.1(@types/node@12.20.52)(typescript@4.9.5)))(typescript@4.9.5): + ts-jest@29.1.2(@babel/core@7.20.12)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.20.12))(esbuild@0.17.19)(jest@29.7.0(@types/node@26.0.1)(ts-node@10.9.1(@types/node@14.18.33)(typescript@4.9.5)))(typescript@4.9.5): dependencies: bs-logger: 0.2.6 fast-json-stable-stringify: 2.1.0 - jest: 29.7.0(@types/node@12.20.52)(ts-node@10.9.1(@types/node@12.20.52)(typescript@4.9.5)) + jest: 29.7.0(@types/node@26.0.1)(ts-node@10.9.1(@types/node@14.18.33)(typescript@4.9.5)) jest-util: 29.7.0 json5: 2.2.3 lodash.memoize: 4.1.2 @@ -17927,24 +18249,6 @@ snapshots: babel-jest: 29.7.0(@babel/core@7.20.12) esbuild: 0.17.19 - ts-node@10.9.1(@types/node@12.20.52)(typescript@4.9.5): - dependencies: - '@cspotcode/source-map-support': 0.8.1 - '@tsconfig/node10': 1.0.9 - '@tsconfig/node12': 1.0.11 - '@tsconfig/node14': 1.0.3 - '@tsconfig/node16': 1.0.3 - '@types/node': 12.20.52 - acorn: 8.7.1 - acorn-walk: 8.2.0 - arg: 4.1.3 - create-require: 1.1.1 - diff: 4.0.2 - make-error: 1.3.6 - typescript: 4.9.5 - v8-compile-cache-lib: 3.0.1 - yn: 3.1.1 - ts-node@10.9.1(@types/node@14.18.33)(typescript@4.9.5): dependencies: '@cspotcode/source-map-support': 0.8.1 @@ -17953,7 +18257,7 @@ snapshots: '@tsconfig/node14': 1.0.3 '@tsconfig/node16': 1.0.3 '@types/node': 14.18.33 - acorn: 8.7.1 + acorn: 8.11.3 acorn-walk: 8.2.0 arg: 4.1.3 create-require: 1.1.1 @@ -17979,6 +18283,12 @@ snapshots: tslib: 1.14.1 typescript: 5.9.3 + tsx@4.22.4: + dependencies: + esbuild: 0.28.1 + optionalDependencies: + fsevents: 2.3.3 + tuf-js@1.1.7: dependencies: '@tufjs/models': 1.0.4 @@ -18042,6 +18352,8 @@ snapshots: ua-parser-js@1.0.2: {} + undici-types@8.3.0: {} + undici@6.26.0: {} undici@7.24.4: {} @@ -18137,25 +18449,26 @@ snapshots: vary@1.1.2: {} - vite@7.3.2(@types/node@12.20.52)(less@4.1.3)(sass@1.97.3)(terser@5.16.3): + vite@7.3.2(@types/node@26.0.1)(less@4.1.3)(sass@1.97.3)(terser@5.16.3)(tsx@4.22.4): dependencies: esbuild: 0.27.3 fdir: 6.5.0(picomatch@4.0.4) picomatch: 4.0.4 postcss: 8.5.15 rollup: 4.60.4 - tinyglobby: 0.2.15 + tinyglobby: 0.2.16 optionalDependencies: - '@types/node': 12.20.52 + '@types/node': 26.0.1 fsevents: 2.3.3 less: 4.1.3 sass: 1.97.3 terser: 5.16.3 + tsx: 4.22.4 - vitest@4.1.7(@types/node@12.20.52)(jsdom@28.1.0)(vite@7.3.2(@types/node@12.20.52)(less@4.1.3)(sass@1.97.3)(terser@5.16.3)): + vitest@4.1.7(@types/node@26.0.1)(jsdom@28.1.0)(vite@7.3.2(@types/node@26.0.1)(less@4.1.3)(sass@1.97.3)(terser@5.16.3)(tsx@4.22.4)): dependencies: '@vitest/expect': 4.1.7 - '@vitest/mocker': 4.1.7(vite@7.3.2(@types/node@12.20.52)(less@4.1.3)(sass@1.97.3)(terser@5.16.3)) + '@vitest/mocker': 4.1.7(vite@7.3.2(@types/node@26.0.1)(less@4.1.3)(sass@1.97.3)(terser@5.16.3)(tsx@4.22.4)) '@vitest/pretty-format': 4.1.7 '@vitest/runner': 4.1.7 '@vitest/snapshot': 4.1.7 @@ -18172,10 +18485,10 @@ snapshots: tinyexec: 1.2.2 tinyglobby: 0.2.16 tinyrainbow: 3.1.0 - vite: 7.3.2(@types/node@12.20.52)(less@4.1.3)(sass@1.97.3)(terser@5.16.3) + vite: 7.3.2(@types/node@26.0.1)(less@4.1.3)(sass@1.97.3)(terser@5.16.3)(tsx@4.22.4) why-is-node-running: 2.3.0 optionalDependencies: - '@types/node': 12.20.52 + '@types/node': 26.0.1 jsdom: 28.1.0 transitivePeerDependencies: - msw diff --git a/projects/fingerprintjs-pro-angular/package.json b/projects/fingerprintjs-pro-angular/package.json index 0698773..26dc715 100644 --- a/projects/fingerprintjs-pro-angular/package.json +++ b/projects/fingerprintjs-pro-angular/package.json @@ -38,4 +38,4 @@ "@fingerprint/agent": "^4.0.0", "tslib": "^2.5.0" } -} +} \ No newline at end of file From 90385bbb8b7911978ed6c1cbbb1e44e0cd1d5001 Mon Sep 17 00:00:00 2001 From: Orkun Date: Wed, 1 Jul 2026 14:07:03 +0300 Subject: [PATCH 17/32] refactor: migrate to TypeScript, simplify metadata handling, and update test matrix logic --- bin/{test-matrix.mjs => test-matrix.ts} | 55 ++++++++++++++----------- bin/utils/angularMetadata.mjs | 9 ---- bin/utils/angularMetadata.ts | 17 ++++++++ bin/utils/{helpers.mjs => helpers.ts} | 41 ++++++++---------- 4 files changed, 66 insertions(+), 56 deletions(-) rename bin/{test-matrix.mjs => test-matrix.ts} (82%) mode change 100755 => 100644 delete mode 100644 bin/utils/angularMetadata.mjs create mode 100644 bin/utils/angularMetadata.ts rename bin/utils/{helpers.mjs => helpers.ts} (53%) diff --git a/bin/test-matrix.mjs b/bin/test-matrix.ts old mode 100755 new mode 100644 similarity index 82% rename from bin/test-matrix.mjs rename to bin/test-matrix.ts index 79742ac..b4d8c45 --- a/bin/test-matrix.mjs +++ b/bin/test-matrix.ts @@ -1,17 +1,15 @@ -#!/usr/bin/env node - -import fs from 'fs' -import path from 'path' -import os from 'os' -import { angularMetadata } from './utils/angularMetadata.mjs' -import { logErrorSummary, setupLogDir, executeCommand, updateJsonFile, copyRecursive } from './utils/helpers.mjs' +import * as fs from 'fs' +import * as path from 'path' +import * as os from 'os' +import { angularMetadata } from './utils/angularMetadata' +import { setupLogDir, executeCommand, updateJsonFile, copyRecursive } from './utils/helpers' const LIB_NAME = 'fingerprintjs-pro-angular' const LOG_DIR = path.join(process.cwd(), 'test-logs') -process.env.NG_CLI_ANALYTICS = 'false' +process.env['NG_CLI_ANALYTICS'] = 'false' -async function testVersion(version) { +async function testVersion(version: string): Promise { const meta = angularMetadata[version] if (!meta) { const errorMsg = `No metadata found for version ${version}` @@ -23,7 +21,7 @@ async function testVersion(version) { const logFile = path.join(LOG_DIR, `angular-${version}.log`) const logStream = fs.createWriteStream(logFile) - const log = (data) => logStream.write(data) + const log = (data: string) => logStream.write(data) const tempDir = fs.mkdtempSync(path.join(os.tmpdir(), 'angular-test-')) const workspaceDir = path.join(tempDir, 'test-workspace') @@ -56,7 +54,7 @@ async function testVersion(version) { log ) - const angularVersionTag = version > 15 ? `v${version}-lts` : `^${version}` + const angularVersionTag = parseInt(version) > 15 ? `v${version}-lts` : `^${version}` const packagesToInstall = [ `@angular/animations@${angularVersionTag}`, @@ -87,7 +85,12 @@ async function testVersion(version) { '@types/node', ] - const commonOptions = ['--config.strict-peer-dependencies=false', '--no-lockfile', '--config.fund=false'] + const commonOptions = [ + '--config.strict-peer-dependencies=false', + '--no-lockfile', + '--config.fund=false', + '--ignore-scripts', + ] await executeCommand( 'pnpm', @@ -155,9 +158,8 @@ async function testVersion(version) { console.log(`Angular ${version}: PASSED`) return 0 - } catch (err) { + } catch (err: any) { log(err.stack || err.message) - logErrorSummary(logStream, logFile, err, version) return 1 } finally { logStream.end() @@ -168,7 +170,7 @@ async function testVersion(version) { setupLogDir(LOG_DIR) const args = process.argv.slice(2) -const versionArgs = [] +const versionArgs: string[] = [] for (let i = 0; i < args.length; i++) { if (args[i].startsWith('--version=')) { versionArgs.push(args[i].split('=')[1]) @@ -179,14 +181,21 @@ for (let i = 0; i < args.length; i++) { const versionsToTest = versionArgs.length > 0 ? versionArgs : Object.keys(angularMetadata) -console.log(`Starting matrix tests for: ${versionsToTest.join(', ')}`) +async function run() { + console.log(`Starting matrix tests for: ${versionsToTest.join(', ')}`) -const results = await Promise.all(versionsToTest.map((version) => testVersion(version))) -const failed = results.some((code) => code !== 0) + const results = await Promise.all(versionsToTest.map((version) => testVersion(version))) + const failed = results.some((code) => code !== 0) -if (failed) { - process.exit(1) -} else { - console.log('Success: All versions passed') - process.exit(0) + if (failed) { + process.exit(1) + } else { + console.log('Success: All versions passed') + process.exit(0) + } } + +run().catch((err) => { + console.error(err) + process.exit(1) +}) diff --git a/bin/utils/angularMetadata.mjs b/bin/utils/angularMetadata.mjs deleted file mode 100644 index 3c02013..0000000 --- a/bin/utils/angularMetadata.mjs +++ /dev/null @@ -1,9 +0,0 @@ -export const angularMetadata = { - 15: { node: 18, typescript: '~4.9.5', zone: '~0.11.4', jpa: '^13.1.4', jest: '^29.0.0' }, - 16: { node: 18, typescript: '~5.1.6', zone: '~0.13.3', jpa: '^13.1.4', jest: '^29.0.0' }, - 17: { node: 18, typescript: '~5.2.2', zone: '~0.14.4', jpa: '^14.1.1', jest: '^29.0.0' }, - 18: { node: 20, typescript: '~5.4.5', zone: '~0.14.4', jpa: '^14.1.1', jest: '^29.0.0' }, - 19: { node: 20, typescript: '~5.6.3', zone: '~0.15.0', jpa: '^14.4.2', jest: '^29.0.0' }, - 20: { node: 20, typescript: '~5.8.3', zone: '~0.15.0', jpa: '^15.0.0', jest: '^30.2.0', typesJest: '^30.0.0' }, - 21: { node: 22, typescript: '~5.9.2', zone: '~0.16.0', jpa: '^17.0.0', jest: '^30.2.0', typesJest: '^30.0.0' }, -} diff --git a/bin/utils/angularMetadata.ts b/bin/utils/angularMetadata.ts new file mode 100644 index 0000000..ee88d13 --- /dev/null +++ b/bin/utils/angularMetadata.ts @@ -0,0 +1,17 @@ +export interface AngularVersionMetadata { + typescript: string + zone: string + jpa: string + jest: string + typesJest?: string +} + +export const angularMetadata: Record = { + 15: { typescript: '~4.9.5', zone: '~0.11.4', jpa: '^13.1.4', jest: '^29.0.0' }, + 16: { typescript: '~5.1.6', zone: '~0.13.3', jpa: '^13.1.4', jest: '^29.0.0' }, + 17: { typescript: '~5.2.2', zone: '~0.14.4', jpa: '^14.1.1', jest: '^29.0.0' }, + 18: { typescript: '~5.4.5', zone: '~0.14.4', jpa: '^14.1.1', jest: '^29.0.0' }, + 19: { typescript: '~5.6.3', zone: '~0.15.0', jpa: '^14.4.2', jest: '^29.0.0' }, + 20: { typescript: '~5.8.3', zone: '~0.15.0', jpa: '^15.0.0', jest: '^30.2.0', typesJest: '^30.0.0' }, + 21: { typescript: '~5.9.2', zone: '~0.16.0', jpa: '^17.0.0', jest: '^30.2.0', typesJest: '^30.0.0' }, +} diff --git a/bin/utils/helpers.mjs b/bin/utils/helpers.ts similarity index 53% rename from bin/utils/helpers.mjs rename to bin/utils/helpers.ts index e2cdbf5..725a91c 100644 --- a/bin/utils/helpers.mjs +++ b/bin/utils/helpers.ts @@ -1,8 +1,9 @@ -import fs from 'fs' -import path from 'path' -import { spawn } from 'child_process' +import * as fs from 'fs' +import * as path from 'path' +import { spawn, SpawnOptions } from 'child_process' +import { parse, stringify } from 'comment-json' -export function setupLogDir(logDir) { +export function setupLogDir(logDir: string): void { if (!fs.existsSync(logDir)) { fs.mkdirSync(logDir, { recursive: true }) } else { @@ -12,24 +13,17 @@ export function setupLogDir(logDir) { } } -export function logErrorSummary(logStream, logFile, err, version) { - console.log(`Angular ${version}: FAILED (see ${logFile})`) - - try { - const logContent = fs.readFileSync(logFile, 'utf8') - const lines = logContent.split('\n') - console.log(lines.slice(-15).join('\n')) - } catch (e) { - // ignore - } -} - -export function executeCommand(cmd, args, opts, log) { +export function executeCommand( + cmd: string, + args: string[], + opts: SpawnOptions, + log?: (data: string) => void +): Promise { return new Promise((resolve, reject) => { const child = spawn(cmd, args, opts) if (log) { - child.stdout.on('data', log) - child.stderr.on('data', log) + child.stdout?.on('data', (data) => log(data.toString())) + child.stderr?.on('data', (data) => log(data.toString())) } child.on('close', (code) => { if (code === 0) { @@ -41,18 +35,17 @@ export function executeCommand(cmd, args, opts, log) { }) } -export function updateJsonFile(filePath, updater) { +export function updateJsonFile(filePath: string, updater: (json: any) => void): void { if (!fs.existsSync(filePath)) { return } const content = fs.readFileSync(filePath, 'utf8') - const cleanContent = content.replace(/\/\*[\s\S]*?\*\/|([^\\:]|^)\/\/.*$/gm, '$1') - const json = JSON.parse(cleanContent) + const json = parse(content) updater(json) - fs.writeFileSync(filePath, JSON.stringify(json, null, 2), 'utf8') + fs.writeFileSync(filePath, stringify(json, null, 2), 'utf8') } -export function copyRecursive(src, dest) { +export function copyRecursive(src: string, dest: string): void { const isDirectory = fs.existsSync(src) && fs.statSync(src).isDirectory() if (isDirectory) { if (!fs.existsSync(dest)) { From 8ee86ea45d251324b9839bfb5d9a461a0df8f600 Mon Sep 17 00:00:00 2001 From: Orkun Date: Wed, 1 Jul 2026 14:10:15 +0300 Subject: [PATCH 18/32] refactor: handle child process errors in helpers --- bin/utils/helpers.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/bin/utils/helpers.ts b/bin/utils/helpers.ts index 725a91c..12f7549 100644 --- a/bin/utils/helpers.ts +++ b/bin/utils/helpers.ts @@ -32,6 +32,7 @@ export function executeCommand( reject(new Error(`Command failed with code ${code}: ${cmd} ${args.join(' ')}`)) } }) + child.on('error', (err) => reject(err)) }) } From 555f08b8303151ebd00ebc855230f55460852e3d Mon Sep 17 00:00:00 2001 From: Orkun Date: Wed, 1 Jul 2026 14:13:29 +0300 Subject: [PATCH 19/32] refactor: use `parseArgs` for version argument parsing in test matrix --- bin/test-matrix.ts | 20 +++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/bin/test-matrix.ts b/bin/test-matrix.ts index b4d8c45..4bdd47d 100644 --- a/bin/test-matrix.ts +++ b/bin/test-matrix.ts @@ -3,6 +3,7 @@ import * as path from 'path' import * as os from 'os' import { angularMetadata } from './utils/angularMetadata' import { setupLogDir, executeCommand, updateJsonFile, copyRecursive } from './utils/helpers' +import { parseArgs } from 'node:util' const LIB_NAME = 'fingerprintjs-pro-angular' const LOG_DIR = path.join(process.cwd(), 'test-logs') @@ -169,15 +170,16 @@ async function testVersion(version: string): Promise { setupLogDir(LOG_DIR) -const args = process.argv.slice(2) -const versionArgs: string[] = [] -for (let i = 0; i < args.length; i++) { - if (args[i].startsWith('--version=')) { - versionArgs.push(args[i].split('=')[1]) - } else if (args[i] === '--version' && i + 1 < args.length) { - versionArgs.push(args[++i]) - } -} +const { version: versionsParsed } = parseArgs({ + options: { + version: { + type: 'string', + multiple: true, + short: 'v', + }, + }, +}).values +const versionArgs: string[] = versionsParsed ?? [] const versionsToTest = versionArgs.length > 0 ? versionArgs : Object.keys(angularMetadata) From 28258f570a286226d3730624994e75ca86143bed Mon Sep 17 00:00:00 2001 From: Orkun Date: Wed, 1 Jul 2026 14:22:17 +0300 Subject: [PATCH 20/32] refactor: simplify package installation logic and replace custom recursive copy utility with fs.cpSync --- bin/test-matrix.ts | 27 ++++++--------------------- bin/utils/helpers.ts | 14 -------------- 2 files changed, 6 insertions(+), 35 deletions(-) diff --git a/bin/test-matrix.ts b/bin/test-matrix.ts index 4bdd47d..b4bd476 100644 --- a/bin/test-matrix.ts +++ b/bin/test-matrix.ts @@ -2,7 +2,7 @@ import * as fs from 'fs' import * as path from 'path' import * as os from 'os' import { angularMetadata } from './utils/angularMetadata' -import { setupLogDir, executeCommand, updateJsonFile, copyRecursive } from './utils/helpers' +import { setupLogDir, executeCommand, updateJsonFile } from './utils/helpers' import { parseArgs } from 'node:util' const LIB_NAME = 'fingerprintjs-pro-angular' @@ -57,28 +57,13 @@ async function testVersion(version: string): Promise { const angularVersionTag = parseInt(version) > 15 ? `v${version}-lts` : `^${version}` - const packagesToInstall = [ - `@angular/animations@${angularVersionTag}`, - `@angular/common@${angularVersionTag}`, - `@angular/compiler@${angularVersionTag}`, - `@angular/core@${angularVersionTag}`, - `@angular/forms@${angularVersionTag}`, - `@angular/platform-browser@${angularVersionTag}`, - `@angular/platform-browser-dynamic@${angularVersionTag}`, - `@angular/router@${angularVersionTag}`, - `zone.js@${meta.zone}`, - '@fingerprint/agent', - ] + const extraPackagesToInstall = [`zone.js@${meta.zone}`, `@angular/platform-browser-dynamic@${angularVersionTag}`] const jestVersion = meta.jest const typesJestVersion = meta.typesJest || jestVersion - const devPackagesToInstall = [ - `@angular/cli@${angularVersionTag}`, - `@angular/compiler-cli@${angularVersionTag}`, - `@angular-devkit/build-angular@${angularVersionTag}`, - `ng-packagr@^${version}`, - `typescript@${meta.typescript}`, + const extraDevPackagesToInstall = [ + '@fingerprint/agent', `jest-preset-angular@${meta.jpa}`, `jest@${jestVersion}`, `jest-environment-jsdom@${jestVersion}`, @@ -95,14 +80,14 @@ async function testVersion(version: string): Promise { await executeCommand( 'pnpm', - ['add', ...packagesToInstall, ...devPackagesToInstall, ...commonOptions], + ['add', ...extraPackagesToInstall, ...extraDevPackagesToInstall, ...commonOptions], { cwd: workspaceDir, env: { ...process.env } }, log ) const libDestDir = path.join(workspaceDir, 'projects', LIB_NAME, 'src', 'lib') fs.mkdirSync(libDestDir, { recursive: true }) - copyRecursive(path.join(process.cwd(), 'projects', LIB_NAME, 'src', 'lib'), libDestDir) + fs.cpSync(path.join(process.cwd(), 'projects', LIB_NAME, 'src', 'lib'), libDestDir, { recursive: true }) fs.copyFileSync( path.join(process.cwd(), 'projects', LIB_NAME, 'src', 'public-api.ts'), diff --git a/bin/utils/helpers.ts b/bin/utils/helpers.ts index 12f7549..b3a766a 100644 --- a/bin/utils/helpers.ts +++ b/bin/utils/helpers.ts @@ -45,17 +45,3 @@ export function updateJsonFile(filePath: string, updater: (json: any) => void): updater(json) fs.writeFileSync(filePath, stringify(json, null, 2), 'utf8') } - -export function copyRecursive(src: string, dest: string): void { - const isDirectory = fs.existsSync(src) && fs.statSync(src).isDirectory() - if (isDirectory) { - if (!fs.existsSync(dest)) { - fs.mkdirSync(dest, { recursive: true }) - } - fs.readdirSync(src).forEach((childItemName) => { - copyRecursive(path.join(src, childItemName), path.join(dest, childItemName)) - }) - } else { - fs.copyFileSync(src, dest) - } -} From c89b9d9b7b4752ed8e5f260ea9cd54f6db8583e9 Mon Sep 17 00:00:00 2001 From: Orkun Date: Wed, 1 Jul 2026 14:23:38 +0300 Subject: [PATCH 21/32] refactor: update pnpm version to 11 in CI workflow --- .github/workflows/test-matrix.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test-matrix.yml b/.github/workflows/test-matrix.yml index 3c7741e..baa4f29 100644 --- a/.github/workflows/test-matrix.yml +++ b/.github/workflows/test-matrix.yml @@ -37,7 +37,7 @@ jobs: - name: Install pnpm uses: pnpm/action-setup@v4 with: - version: 9 + version: 11 - name: Install dependencies run: pnpm install From 257fdaf7cf6cfa942afa19e1b1f6e76197d6aa81 Mon Sep 17 00:00:00 2001 From: Orkun Date: Wed, 1 Jul 2026 14:25:41 +0300 Subject: [PATCH 22/32] refactor: revert - downgrade pnpm version to 9 in CI workflow to work with older node versions --- .github/workflows/test-matrix.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test-matrix.yml b/.github/workflows/test-matrix.yml index baa4f29..3c7741e 100644 --- a/.github/workflows/test-matrix.yml +++ b/.github/workflows/test-matrix.yml @@ -37,7 +37,7 @@ jobs: - name: Install pnpm uses: pnpm/action-setup@v4 with: - version: 11 + version: 9 - name: Install dependencies run: pnpm install From 248291e2cbe8ffd3e22797632595fd072cf48b42 Mon Sep 17 00:00:00 2001 From: Orkun Date: Wed, 1 Jul 2026 14:28:04 +0300 Subject: [PATCH 23/32] refactor: revert lock file --- pnpm-lock.yaml | 947 +++++++++++++++++-------------------------------- 1 file changed, 317 insertions(+), 630 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 5ea57c8..49f4402 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -4,46 +4,49 @@ settings: autoInstallPeers: true excludeLinksFromLockfile: false +overrides: + rxjs: ~7.8.0 + importers: .: dependencies: '@angular/animations': specifier: ^15.2.10 - version: 15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)) + version: 15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)) '@angular/common': specifier: ^15.2.10 - version: 15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7) + version: 15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2) '@angular/compiler': specifier: ^15.2.10 - version: 15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)) + version: 15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)) '@angular/core': specifier: ^15.2.10 - version: 15.2.10(rxjs@7.5.7)(zone.js@0.11.5) + version: 15.2.10(rxjs@7.8.2)(zone.js@0.11.5) '@angular/forms': specifier: ^15.2.10 - version: 15.2.10(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(@angular/platform-browser@15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(rxjs@7.5.7) + version: 15.2.10(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(@angular/platform-browser@15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(rxjs@7.8.2) '@angular/platform-browser': specifier: ^15.2.10 - version: 15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)) + version: 15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)) '@angular/platform-browser-dynamic': specifier: ^15.2.10 - version: 15.2.10(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(@angular/platform-browser@15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))) + version: 15.2.10(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(@angular/platform-browser@15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))) '@angular/platform-server': specifier: ^15.2.10 - version: 15.2.10(597020a0fe8c1c77567a7c05da2eed63) + version: 15.2.10(bb9340fd85b833f543ade9387312e178) '@angular/router': specifier: ^15.2.10 - version: 15.2.10(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(@angular/platform-browser@15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(rxjs@7.5.7) + version: 15.2.10(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(@angular/platform-browser@15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(rxjs@7.8.2) '@nguniversal/express-engine': specifier: ^15.2.1 - version: 15.2.1(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(@angular/platform-server@15.2.10(597020a0fe8c1c77567a7c05da2eed63))(express@4.20.0) + version: 15.2.1(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(@angular/platform-server@15.2.10(bb9340fd85b833f543ade9387312e178))(express@4.20.0) express: specifier: ^4.20.0 version: 4.20.0 rxjs: - specifier: ~7.5.0 - version: 7.5.7 + specifier: ~7.8.0 + version: 7.8.2 tslib: specifier: ^2.3.0 version: 2.5.0 @@ -53,7 +56,7 @@ importers: devDependencies: '@angular-devkit/build-angular': specifier: ^15.2.10 - version: 15.2.10(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5))(@angular/platform-server@15.2.10(597020a0fe8c1c77567a7c05da2eed63))(ng-packagr@15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5))(typescript@4.9.5) + version: 15.2.10(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5))(@angular/platform-server@15.2.10(bb9340fd85b833f543ade9387312e178))(ng-packagr@15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5))(typescript@4.9.5) '@angular-eslint/schematics': specifier: ^15.2.1 version: 15.2.1(@angular/cli@15.2.10(chokidar@3.5.3))(eslint@8.56.0)(typescript@4.9.5) @@ -62,10 +65,10 @@ importers: version: 15.2.10(chokidar@3.5.3) '@angular/compiler-cli': specifier: ^15.2.10 - version: 15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5) + version: 15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5) '@changesets/cli': specifier: ^2.31.0 - version: 2.31.0(@types/node@26.0.1) + version: 2.31.0(@types/node@12.20.52) '@commitlint/cli': specifier: ^17.2.0 version: 17.2.0 @@ -89,7 +92,7 @@ importers: version: 0.1.0 '@nguniversal/builders': specifier: ^15.2.1 - version: 15.2.1(@angular-devkit/build-angular@15.2.10(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5))(@angular/platform-server@15.2.10(597020a0fe8c1c77567a7c05da2eed63))(ng-packagr@15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5))(typescript@4.9.5))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(@types/express@4.17.13)(chokidar@3.5.3)(typescript@4.9.5) + version: 15.2.1(@angular-devkit/build-angular@15.2.10(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5))(@angular/platform-server@15.2.10(bb9340fd85b833f543ade9387312e178))(ng-packagr@15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5))(typescript@4.9.5))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(@types/express@4.17.13)(chokidar@3.5.3)(typescript@4.9.5) '@types/express': specifier: ^4.17.0 version: 4.17.13 @@ -97,17 +100,14 @@ importers: specifier: ^29.5.12 version: 29.5.12 '@types/node': - specifier: ^26.0.1 - version: 26.0.1 + specifier: ^12.11.1 + version: 12.20.52 '@typescript-eslint/eslint-plugin': specifier: ^6.21.0 version: 6.21.0(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0)(typescript@4.9.5) '@typescript-eslint/parser': specifier: ^6.21.0 version: 6.21.0(eslint@8.56.0)(typescript@4.9.5) - comment-json: - specifier: ^5.0.0 - version: 5.0.0 commitizen: specifier: ^4.2.5 version: 4.2.5 @@ -125,22 +125,19 @@ importers: version: 4.0.1 jest: specifier: ^29.7.0 - version: 29.7.0(@types/node@26.0.1)(ts-node@10.9.1(@types/node@14.18.33)(typescript@4.9.5)) + version: 29.7.0(@types/node@12.20.52)(ts-node@10.9.1(@types/node@12.20.52)(typescript@4.9.5)) jest-preset-angular: specifier: ^14.0.3 - version: 14.0.3(d85e106a5ec2f88a07487ae770218af4) + version: 14.0.3(1768b93d21c3361974a224b326b8b84c) lint-staged: specifier: ^13.0.3 version: 13.0.3(enquirer@2.4.1) ng-packagr: specifier: ^15.2.2 - version: 15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5) + version: 15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5) prettier: specifier: ^3.2.4 version: 3.2.5 - tsx: - specifier: ^4.22.4 - version: 4.22.4 typedoc: specifier: ^0.24.8 version: 0.24.8(typescript@4.9.5) @@ -161,13 +158,13 @@ importers: version: 21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5) '@angular/forms': specifier: ^21.2.0 - version: 21.2.14(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(@angular/platform-browser@21.2.14(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5)))(rxjs@7.8.2) + version: 21.2.14(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(@angular/platform-browser@21.2.14(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5)))(rxjs@7.8.2) '@angular/platform-browser': specifier: ^21.2.0 - version: 21.2.14(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5)) + version: 21.2.14(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5)) '@angular/router': specifier: ^21.2.0 - version: 21.2.14(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(@angular/platform-browser@21.2.14(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5)))(rxjs@7.8.2) + version: 21.2.14(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(@angular/platform-browser@21.2.14(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5)))(rxjs@7.8.2) '@fingerprint/agent': specifier: ^4.0.0 version: 4.0.3 @@ -189,16 +186,16 @@ importers: version: 15.2.1(eslint@8.56.0)(typescript@5.9.3) '@angular-eslint/schematics': specifier: 15.2.1 - version: 15.2.1(@angular/cli@21.2.12(@types/node@26.0.1)(chokidar@5.0.0))(eslint@8.56.0)(typescript@5.9.3) + version: 15.2.1(@angular/cli@21.2.12(@types/node@12.20.52)(chokidar@5.0.0))(eslint@8.56.0)(typescript@5.9.3) '@angular-eslint/template-parser': specifier: 15.2.1 version: 15.2.1(eslint@8.56.0)(typescript@5.9.3) '@angular/build': specifier: ^21.2.12 - version: 21.2.12(999253b22980c8ff7ebcfd6e4ca36da1) + version: 21.2.12(8124ac35316412ffa9726ce4256f5c59) '@angular/cli': specifier: ^21.2.12 - version: 21.2.12(@types/node@26.0.1)(chokidar@5.0.0) + version: 21.2.12(@types/node@12.20.52)(chokidar@5.0.0) '@angular/compiler-cli': specifier: ^21.2.0 version: 21.2.14(@angular/compiler@21.2.14)(typescript@5.9.3) @@ -222,7 +219,7 @@ importers: version: 5.9.3 vitest: specifier: ^4.0.8 - version: 4.1.7(@types/node@26.0.1)(jsdom@28.1.0)(vite@7.3.2(@types/node@26.0.1)(less@4.1.3)(sass@1.97.3)(terser@5.16.3)(tsx@4.22.4)) + version: 4.1.7(@types/node@12.20.52)(jsdom@28.1.0)(vite@7.3.2(@types/node@12.20.52)(less@4.1.3)(sass@1.97.3)(terser@5.16.3)) projects/fingerprintjs-pro-angular: dependencies: @@ -489,14 +486,14 @@ packages: engines: {node: ^14.20.0 || ^16.13.0 || >=18.10.0} peerDependencies: '@angular/core': 15.2.10 - rxjs: ^6.5.3 || ^7.4.0 + rxjs: ~7.8.0 '@angular/common@21.2.14': resolution: {integrity: sha512-J6K7cE7uKOKmg4+sxLeGfsmaYDjP5l1XCiMMI0WPT0t68uxLk8g3MzV5Trqfb6ZnRxWcfp9c4c+XxAvMBB7ymA==} engines: {node: ^20.19.0 || ^22.12.0 || >=24.0.0} peerDependencies: '@angular/core': 21.2.14 - rxjs: ^6.5.3 || ^7.4.0 + rxjs: ~7.8.0 '@angular/compiler-cli@15.2.10': resolution: {integrity: sha512-mCFIxrs60XicKfA2o42hA7LrQvhybi9BQveWuZn/2iIEOXx7R62Iemz8E21pLWftAZHGxEW3NECfBrY1d3gVmA==} @@ -534,7 +531,7 @@ packages: resolution: {integrity: sha512-meGGidnitQJGDxYd9/LrqYiVlId+vGaLoiLgJdKBz+o2ZO6OmXQGuNw2VBqf17/Cc0/UjzrOY7+kILNFKkk/WQ==} engines: {node: ^14.20.0 || ^16.13.0 || >=18.10.0} peerDependencies: - rxjs: ^6.5.3 || ^7.4.0 + rxjs: ~7.8.0 zone.js: ~0.11.4 || ~0.12.0 || ~0.13.0 '@angular/core@21.2.14': @@ -542,7 +539,7 @@ packages: engines: {node: ^20.19.0 || ^22.12.0 || >=24.0.0} peerDependencies: '@angular/compiler': 21.2.14 - rxjs: ^6.5.3 || ^7.4.0 + rxjs: ~7.8.0 zone.js: ~0.15.0 || ~0.16.0 peerDependenciesMeta: '@angular/compiler': @@ -557,7 +554,7 @@ packages: '@angular/common': 15.2.10 '@angular/core': 15.2.10 '@angular/platform-browser': 15.2.10 - rxjs: ^6.5.3 || ^7.4.0 + rxjs: ~7.8.0 '@angular/forms@21.2.14': resolution: {integrity: sha512-HQYIybyMt0CrI31rW6vXbiDsSM2DDtTcOVeT/nWDRNCoqBrREDg8rVsm2Y+fUMsiQVJNa6dCXPwvYhjzJ4r7ug==} @@ -566,7 +563,7 @@ packages: '@angular/common': 21.2.14 '@angular/core': 21.2.14 '@angular/platform-browser': 21.2.14 - rxjs: ^6.5.3 || ^7.4.0 + rxjs: ~7.8.0 '@angular/platform-browser-dynamic@15.2.10': resolution: {integrity: sha512-JHP6W+FX715Qv7DhqvfZLuBZXSDJrboiQsR06gUAgDSjAUyhbqmpVg/2YOtgeWpPkzNDtXdPU2PhcRdIv5J3Yg==} @@ -617,7 +614,7 @@ packages: '@angular/common': 15.2.10 '@angular/core': 15.2.10 '@angular/platform-browser': 15.2.10 - rxjs: ^6.5.3 || ^7.4.0 + rxjs: ~7.8.0 '@angular/router@21.2.14': resolution: {integrity: sha512-Yo3LdgcqkfMu2/Ycl8o/4QjCBqZhtA+a7B8JVdW5cWdrpFTxKCOrzm+YRUMuIFmH5nzSv9oGnUuz64uk1+7r5Q==} @@ -626,7 +623,7 @@ packages: '@angular/common': 21.2.14 '@angular/core': 21.2.14 '@angular/platform-browser': 21.2.14 - rxjs: ^6.5.3 || ^7.4.0 + rxjs: ~7.8.0 '@asamuzakjp/css-color@5.1.11': resolution: {integrity: sha512-KVw6qIiCTUQhByfTd78h2yD1/00waTmm9uy/R7Ck/ctUyAPj+AEDLkQIdJW0T8+qGgj3j5bpNKK7Q3G+LedJWg==} @@ -1518,12 +1515,6 @@ packages: cpu: [ppc64] os: [aix] - '@esbuild/aix-ppc64@0.28.1': - resolution: {integrity: sha512-Svl7tq8k/08+p6CXPpRjQ1fKX+1odH/BQbb48fV6fj3CWHhsoIOoY87w1oHXm0qEpkIK3ZfVgp0hed3XBXzXMQ==} - engines: {node: '>=18'} - cpu: [ppc64] - os: [aix] - '@esbuild/android-arm64@0.17.19': resolution: {integrity: sha512-KBMWvEZooR7+kzY0BtbTQn0OAYY7CsiydT63pVEaPtVYF0hXbUaOyZog37DKxK7NF3XacBJOpYT4adIJh+avxA==} engines: {node: '>=12'} @@ -1542,12 +1533,6 @@ packages: cpu: [arm64] os: [android] - '@esbuild/android-arm64@0.28.1': - resolution: {integrity: sha512-34EGEbCIAgosYz6goLcopX6Mo7NyGv9tfwEM2/7Ce2VcVRk568iSvniGWcUXIy7wEDR1wzolcxcriFVrWYcwBg==} - engines: {node: '>=18'} - cpu: [arm64] - os: [android] - '@esbuild/android-arm@0.17.19': resolution: {integrity: sha512-rIKddzqhmav7MSmoFCmDIb6e2W57geRsM94gV2l38fzhXMwq7hZoClug9USI2pFRGL06f4IOPHHpFNOkWieR8A==} engines: {node: '>=12'} @@ -1566,12 +1551,6 @@ packages: cpu: [arm] os: [android] - '@esbuild/android-arm@0.28.1': - resolution: {integrity: sha512-0k2F129Xdio1TdJfzJ8sy1Q47vUD2NnwdhiAf7drUN1EBTfPf4hsFCtmMgu/6m8JSzsBrlmVjudMBQqOfG8usQ==} - engines: {node: '>=18'} - cpu: [arm] - os: [android] - '@esbuild/android-x64@0.17.19': resolution: {integrity: sha512-uUTTc4xGNDT7YSArp/zbtmbhO0uEEK9/ETW29Wk1thYUJBz3IVnvgEiEwEa9IeLyvnpKrWK64Utw2bgUmDveww==} engines: {node: '>=12'} @@ -1590,12 +1569,6 @@ packages: cpu: [x64] os: [android] - '@esbuild/android-x64@0.28.1': - resolution: {integrity: sha512-dbwY7ltSMDWsRatcRpCnES4F+im88OCUgGZjy52shC7GqHRE/cYlxNbB4Z4UpJswpcc4Qxd2oE/ufM0p61IKng==} - engines: {node: '>=18'} - cpu: [x64] - os: [android] - '@esbuild/darwin-arm64@0.17.19': resolution: {integrity: sha512-80wEoCfF/hFKM6WE1FyBHc9SfUblloAWx6FJkFWTWiCoht9Mc0ARGEM47e67W9rI09YoUxJL68WHfDRYEAvOhg==} engines: {node: '>=12'} @@ -1614,12 +1587,6 @@ packages: cpu: [arm64] os: [darwin] - '@esbuild/darwin-arm64@0.28.1': - resolution: {integrity: sha512-TZbWkQY7kvTAXbXUT7uVACR5cMHsDiSz9z7ZKAX/RTq/WJEk3QyRr0wZpNhBDX+/0CtdqUIJlOiodQcta6tY3Q==} - engines: {node: '>=18'} - cpu: [arm64] - os: [darwin] - '@esbuild/darwin-x64@0.17.19': resolution: {integrity: sha512-IJM4JJsLhRYr9xdtLytPLSH9k/oxR3boaUIYiHkAawtwNOXKE8KoU8tMvryogdcT8AU+Bflmh81Xn6Q0vTZbQw==} engines: {node: '>=12'} @@ -1638,12 +1605,6 @@ packages: cpu: [x64] os: [darwin] - '@esbuild/darwin-x64@0.28.1': - resolution: {integrity: sha512-zfdzgK9ACBNZLI/CyHTOx81SyNbM6YXn7rxSgX97VjyiPl9W1i4Ka4fgKECEoFCKGpvBj5qArWIGgQjOwkgskQ==} - engines: {node: '>=18'} - cpu: [x64] - os: [darwin] - '@esbuild/freebsd-arm64@0.17.19': resolution: {integrity: sha512-pBwbc7DufluUeGdjSU5Si+P3SoMF5DQ/F/UmTSb8HXO80ZEAJmrykPyzo1IfNbAoaqw48YRpv8shwd1NoI0jcQ==} engines: {node: '>=12'} @@ -1662,12 +1623,6 @@ packages: cpu: [arm64] os: [freebsd] - '@esbuild/freebsd-arm64@0.28.1': - resolution: {integrity: sha512-wG2EA8ENdEI0qhkSZMjfqrdY+ziCYCPMmtZjjIwOmXFjmyzEHn+UUxk5of+SYsjtfs3VpnlC7QLzSI5hY/rOAw==} - engines: {node: '>=18'} - cpu: [arm64] - os: [freebsd] - '@esbuild/freebsd-x64@0.17.19': resolution: {integrity: sha512-4lu+n8Wk0XlajEhbEffdy2xy53dpR06SlzvhGByyg36qJw6Kpfk7cp45DR/62aPH9mtJRmIyrXAS5UWBrJT6TQ==} engines: {node: '>=12'} @@ -1686,12 +1641,6 @@ packages: cpu: [x64] os: [freebsd] - '@esbuild/freebsd-x64@0.28.1': - resolution: {integrity: sha512-i7dZ9vQgnvSCzi/rYCXNgtF/U+eKZNJBzu3eTQbRgHnM7tNSizLOkRFAl3qzVc/Op/u5YkHHa4pf/3DOYHthLQ==} - engines: {node: '>=18'} - cpu: [x64] - os: [freebsd] - '@esbuild/linux-arm64@0.17.19': resolution: {integrity: sha512-ct1Tg3WGwd3P+oZYqic+YZF4snNl2bsnMKRkb3ozHmnM0dGWuxcPTTntAF6bOP0Sp4x0PjSF+4uHQ1xvxfRKqg==} engines: {node: '>=12'} @@ -1710,12 +1659,6 @@ packages: cpu: [arm64] os: [linux] - '@esbuild/linux-arm64@0.28.1': - resolution: {integrity: sha512-yHs+0uc8+nvEAfAfxrWQKK5peSNzBc4PegcMO0EJ2hT71uA7vB8Ihg2e77R2P7SG5uYjPbHlLLmve4LLLRCf0g==} - engines: {node: '>=18'} - cpu: [arm64] - os: [linux] - '@esbuild/linux-arm@0.17.19': resolution: {integrity: sha512-cdmT3KxjlOQ/gZ2cjfrQOtmhG4HJs6hhvm3mWSRDPtZ/lP5oe8FWceS10JaSJC13GBd4eH/haHnqf7hhGNLerA==} engines: {node: '>=12'} @@ -1734,12 +1677,6 @@ packages: cpu: [arm] os: [linux] - '@esbuild/linux-arm@0.28.1': - resolution: {integrity: sha512-qVXBOHQS+d5Y722GwJzJUtOLlX7km3CraOaGormF1pDtPd2C/l1SHRPgjLunLGe51Sh5YYWKMFDyV4SxgMQYTQ==} - engines: {node: '>=18'} - cpu: [arm] - os: [linux] - '@esbuild/linux-ia32@0.17.19': resolution: {integrity: sha512-w4IRhSy1VbsNxHRQpeGCHEmibqdTUx61Vc38APcsRbuVgK0OPEnQ0YD39Brymn96mOx48Y2laBQGqgZ0j9w6SQ==} engines: {node: '>=12'} @@ -1758,12 +1695,6 @@ packages: cpu: [ia32] os: [linux] - '@esbuild/linux-ia32@0.28.1': - resolution: {integrity: sha512-d1z4ZuP0ajrfz/FhGT4vv278rX8KnPPJx8i5+AtK7TYbx9Le9F1hyzurZpkEyjkGa9dUGhQow4C1NmeGvqxN2w==} - engines: {node: '>=18'} - cpu: [ia32] - os: [linux] - '@esbuild/linux-loong64@0.17.19': resolution: {integrity: sha512-2iAngUbBPMq439a+z//gE+9WBldoMp1s5GWsUSgqHLzLJ9WoZLZhpwWuym0u0u/4XmZ3gpHmzV84PonE+9IIdQ==} engines: {node: '>=12'} @@ -1782,12 +1713,6 @@ packages: cpu: [loong64] os: [linux] - '@esbuild/linux-loong64@0.28.1': - resolution: {integrity: sha512-M5sRjUVZrkm1OAPR3dlOYzNmN+loZKGVi1VUQGrwuqLcbR6qeAz+famMhjASeH3YVKvZz+zT1jlh/keC3Rj/lg==} - engines: {node: '>=18'} - cpu: [loong64] - os: [linux] - '@esbuild/linux-mips64el@0.17.19': resolution: {integrity: sha512-LKJltc4LVdMKHsrFe4MGNPp0hqDFA1Wpt3jE1gEyM3nKUvOiO//9PheZZHfYRfYl6AwdTH4aTcXSqBerX0ml4A==} engines: {node: '>=12'} @@ -1806,12 +1731,6 @@ packages: cpu: [mips64el] os: [linux] - '@esbuild/linux-mips64el@0.28.1': - resolution: {integrity: sha512-mRObBZeHh2OxcBFPWE/FjylkRgZdYuiTR3vaTozquCGOH14iP9oN4x4Ge81CoIDYQrXmIxpFumJBu5MtZpnQJQ==} - engines: {node: '>=18'} - cpu: [mips64el] - os: [linux] - '@esbuild/linux-ppc64@0.17.19': resolution: {integrity: sha512-/c/DGybs95WXNS8y3Ti/ytqETiW7EU44MEKuCAcpPto3YjQbyK3IQVKfF6nbghD7EcLUGl0NbiL5Rt5DMhn5tg==} engines: {node: '>=12'} @@ -1830,12 +1749,6 @@ packages: cpu: [ppc64] os: [linux] - '@esbuild/linux-ppc64@0.28.1': - resolution: {integrity: sha512-slScBsMAb3GFDcdrCgLwZtPYRoH2H/youv10QiZyRjmsP48fznoveWytSgCI/R0ZcUgpc0ZhIUEx6LHts8yrfQ==} - engines: {node: '>=18'} - cpu: [ppc64] - os: [linux] - '@esbuild/linux-riscv64@0.17.19': resolution: {integrity: sha512-FC3nUAWhvFoutlhAkgHf8f5HwFWUL6bYdvLc/TTuxKlvLi3+pPzdZiFKSWz/PF30TB1K19SuCxDTI5KcqASJqA==} engines: {node: '>=12'} @@ -1854,12 +1767,6 @@ packages: cpu: [riscv64] os: [linux] - '@esbuild/linux-riscv64@0.28.1': - resolution: {integrity: sha512-kw0owk1o0GFETUJyW0jc0G4Yzs0BHZn0JDZ8JRT088vjJYX777BAs1fDGxAC+q831qOs2DTC96mNsG2opdfyyQ==} - engines: {node: '>=18'} - cpu: [riscv64] - os: [linux] - '@esbuild/linux-s390x@0.17.19': resolution: {integrity: sha512-IbFsFbxMWLuKEbH+7sTkKzL6NJmG2vRyy6K7JJo55w+8xDk7RElYn6xvXtDW8HCfoKBFK69f3pgBJSUSQPr+4Q==} engines: {node: '>=12'} @@ -1878,12 +1785,6 @@ packages: cpu: [s390x] os: [linux] - '@esbuild/linux-s390x@0.28.1': - resolution: {integrity: sha512-/lAIjX8aYFRByhh6L5rYtPEDRqa9de/4V/juOXcta5frjvzXO4/sqEtyytse0g3zZFuWu5cDN0MkLz2qRDD2Ag==} - engines: {node: '>=18'} - cpu: [s390x] - os: [linux] - '@esbuild/linux-x64@0.17.19': resolution: {integrity: sha512-68ngA9lg2H6zkZcyp22tsVt38mlhWde8l3eJLWkyLrp4HwMUr3c1s/M2t7+kHIhvMjglIBrFpncX1SzMckomGw==} engines: {node: '>=12'} @@ -1902,24 +1803,12 @@ packages: cpu: [x64] os: [linux] - '@esbuild/linux-x64@0.28.1': - resolution: {integrity: sha512-u/anNYF2mmVOEDwLtnQ1wOr3EZ9sTNGLWrsYGYwHWzGA3Si84IOkHXlbWTD1NB+9/1lcnweYKO54uhxZydNzfA==} - engines: {node: '>=18'} - cpu: [x64] - os: [linux] - '@esbuild/netbsd-arm64@0.27.3': resolution: {integrity: sha512-sDpk0RgmTCR/5HguIZa9n9u+HVKf40fbEUt+iTzSnCaGvY9kFP0YKBWZtJaraonFnqef5SlJ8/TiPAxzyS+UoA==} engines: {node: '>=18'} cpu: [arm64] os: [netbsd] - '@esbuild/netbsd-arm64@0.28.1': - resolution: {integrity: sha512-oks0DYbLwWMmaakTsCb+zL4E+aHRVLom9IJZOAthMQEPiQmydXHkziYEsGYRx0uNV/IjEKGAV941JzH02pflqw==} - engines: {node: '>=18'} - cpu: [arm64] - os: [netbsd] - '@esbuild/netbsd-x64@0.17.19': resolution: {integrity: sha512-CwFq42rXCR8TYIjIfpXCbRX0rp1jo6cPIUPSaWwzbVI4aOfX96OXY8M6KNmtPcg7QjYeDmN+DD0Wp3LaBOLf4Q==} engines: {node: '>=12'} @@ -1938,24 +1827,12 @@ packages: cpu: [x64] os: [netbsd] - '@esbuild/netbsd-x64@0.28.1': - resolution: {integrity: sha512-aeL6lAnN89Hz43Mlh1G8ARasbuoYvSITDEx0tHh5b7jJnHcssqgjy9Yx430GDpmCa6OyrKoS0aNRjKundRizGg==} - engines: {node: '>=18'} - cpu: [x64] - os: [netbsd] - '@esbuild/openbsd-arm64@0.27.3': resolution: {integrity: sha512-AIcMP77AvirGbRl/UZFTq5hjXK+2wC7qFRGoHSDrZ5v5b8DK/GYpXW3CPRL53NkvDqb9D+alBiC/dV0Fb7eJcw==} engines: {node: '>=18'} cpu: [arm64] os: [openbsd] - '@esbuild/openbsd-arm64@0.28.1': - resolution: {integrity: sha512-MEFJe5C3R8pwXdZ5Y21oo6m7ePiS0d9pWucn99O/wvyJZChoIQKrQDxKrGeW8F5+T0okTHesAmDeiHDTIq0V/Q==} - engines: {node: '>=18'} - cpu: [arm64] - os: [openbsd] - '@esbuild/openbsd-x64@0.17.19': resolution: {integrity: sha512-cnq5brJYrSZ2CF6c35eCmviIN3k3RczmHz8eYaVlNasVqsNY+JKohZU5MKmaOI+KkllCdzOKKdPs762VCPC20g==} engines: {node: '>=12'} @@ -1974,24 +1851,12 @@ packages: cpu: [x64] os: [openbsd] - '@esbuild/openbsd-x64@0.28.1': - resolution: {integrity: sha512-i/ZLIOafE0Z8cI/XANJAixoJL/uRAoS2xOA3rb0xN+KK0K177cMAsQYkzHtBrtMXAKuAc7HGgcWiZ/sRC1Nxgw==} - engines: {node: '>=18'} - cpu: [x64] - os: [openbsd] - '@esbuild/openharmony-arm64@0.27.3': resolution: {integrity: sha512-NinAEgr/etERPTsZJ7aEZQvvg/A6IsZG/LgZy+81wON2huV7SrK3e63dU0XhyZP4RKGyTm7aOgmQk0bGp0fy2g==} engines: {node: '>=18'} cpu: [arm64] os: [openharmony] - '@esbuild/openharmony-arm64@0.28.1': - resolution: {integrity: sha512-ge+Z7EXFNt2BO1oAMsVpiQ8EwndV9i1xXerAeTIK7AtPs3bKFXQM7nlRxDSIUIMeueR1CNXxqztLzdNeReKBJg==} - engines: {node: '>=18'} - cpu: [arm64] - os: [openharmony] - '@esbuild/sunos-x64@0.17.19': resolution: {integrity: sha512-vCRT7yP3zX+bKWFeP/zdS6SqdWB8OIpaRq/mbXQxTGHnIxspRtigpkUcDMlSCOejlHowLqII7K2JKevwyRP2rg==} engines: {node: '>=12'} @@ -2010,12 +1875,6 @@ packages: cpu: [x64] os: [sunos] - '@esbuild/sunos-x64@0.28.1': - resolution: {integrity: sha512-BEjgtECkL3vY+SaSQ6nzVfiALUeFxpawyp8Jmf5PtYhf1Ug40N1h/hxlhts+f1FvSvarEigdxS3BlSMI2PJLcQ==} - engines: {node: '>=18'} - cpu: [x64] - os: [sunos] - '@esbuild/win32-arm64@0.17.19': resolution: {integrity: sha512-yYx+8jwowUstVdorcMdNlzklLYhPxjniHWFKgRqH7IFlUEa0Umu3KuYplf1HUZZ422e3NU9F4LGb+4O0Kdcaag==} engines: {node: '>=12'} @@ -2034,12 +1893,6 @@ packages: cpu: [arm64] os: [win32] - '@esbuild/win32-arm64@0.28.1': - resolution: {integrity: sha512-lCv9eK/H6ZJWbE7bh2nw54CZ9M2nupBxJcTsdk/QQnWkdSjKGuxmmH8/GWrlT1eMmZfn4dGcCjRte397WqfQXA==} - engines: {node: '>=18'} - cpu: [arm64] - os: [win32] - '@esbuild/win32-ia32@0.17.19': resolution: {integrity: sha512-eggDKanJszUtCdlVs0RB+h35wNlb5v4TWEkq4vZcmVt5u/HiDZrTXe2bWFQUez3RgNHwx/x4sk5++4NSSicKkw==} engines: {node: '>=12'} @@ -2058,12 +1911,6 @@ packages: cpu: [ia32] os: [win32] - '@esbuild/win32-ia32@0.28.1': - resolution: {integrity: sha512-zvb/mB2bSCoJOpoCBgYKKpX6YM6mJBlBUVUtVj41DlZJVEB6/0CKlRYxP5wWl1C1ILiCoAU5wZZ4q1P3qeS6Eg==} - engines: {node: '>=18'} - cpu: [ia32] - os: [win32] - '@esbuild/win32-x64@0.17.19': resolution: {integrity: sha512-lAhycmKnVOuRYNtRtatQR1LPQf2oYCkRGkSFnseDAKPl8lu5SOsK/e1sXe5a0Pc5kHIHe6P2I/ilntNv2xf3cA==} engines: {node: '>=12'} @@ -2082,12 +1929,6 @@ packages: cpu: [x64] os: [win32] - '@esbuild/win32-x64@0.28.1': - resolution: {integrity: sha512-bm4Mowrv+GXMlpWX++EcXw/iLyd1o3+bJkC2DkWXYVvgZCqD/bSj9ctZeAMC3cIxgjRVR2Dufaiu4YPxr5gW1A==} - engines: {node: '>=18'} - cpu: [x64] - os: [win32] - '@eslint-community/eslint-utils@4.4.0': resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} @@ -2394,6 +2235,10 @@ packages: '@jridgewell/remapping@2.3.5': resolution: {integrity: sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ==} + '@jridgewell/resolve-uri@3.0.7': + resolution: {integrity: sha512-8cXDaBBHOr2pQ7j77Y6Vp5VDT2sIqWyWQ56TjEq4ih/a4iST3dItRe8Q9fp0rrIl9DoKhWQtUQz/YpOxLkXbNA==} + engines: {node: '>=6.0.0'} + '@jridgewell/resolve-uri@3.1.2': resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==} engines: {node: '>=6.0.0'} @@ -3295,8 +3140,8 @@ packages: '@types/node@14.18.33': resolution: {integrity: sha512-qelS/Ra6sacc4loe/3MSjXNL1dNQ/GjxNHVzuChwMfmk7HuycRLVQN2qNY3XahK+fZc5E2szqQSKUyAF0E+2bg==} - '@types/node@26.0.1': - resolution: {integrity: sha512-fc3KiUoBt6kie0N9bIW3E47vZsuaMf0PM2AaUpLCLT0s/LvX1nxAim6Fc049cNxODPpGm6qRAuUOB86SkRuPQw==} + '@types/node@18.11.9': + resolution: {integrity: sha512-CRpX21/kGdzjOpFsZSkcrXMGIBWMGNIHXXBVFSH+ggkftxg+XYP20TESbh+zFvFj3EQOl5byk0HTRn1IL6hbqg==} '@types/normalize-package-data@2.4.1': resolution: {integrity: sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw==} @@ -3839,9 +3684,6 @@ packages: array-ify@1.0.0: resolution: {integrity: sha512-c5AMf34bKdvPhQ7tBGhqkgKNUzMr4WUs+WDtC2ZUGOUncbxKMTvqxYctiseW3+L4bA8ec+GcZ6/A/FW4m8ukng==} - array-timsort@1.0.3: - resolution: {integrity: sha512-/+3GRL7dDAGEfM6TseQk/U+mi18TU2Ms9I3UlLdUMhz2hbvGNTKdj9xniwXfUqgYhHxRx0+8UnKkvlNwVU+cWQ==} - array-union@2.1.0: resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==} engines: {node: '>=8'} @@ -4300,10 +4142,6 @@ packages: resolution: {integrity: sha512-5EEkTNyHNGFPD2H+c/dXXfQZYa/scCKasxWcXJaWnNJ99pnQN9Vnmqow+p+PlFPE63Q6mThaZws1T+HxfpgtPw==} engines: {node: ^12.20.0 || >=14} - comment-json@5.0.0: - resolution: {integrity: sha512-uiqLcOiVDJtBP8WGkZHEP+FZIhTzP1dxvn59EfoYUi9gqupjrBWVQkO2atDrbnKPwLeotFYDsuNb26uBMqB+hw==} - engines: {node: '>= 6'} - commitizen@4.2.5: resolution: {integrity: sha512-9sXju8Qrz1B4Tw7kC5KhnvwYQN88qs2zbiB8oyMsnXZyJ24PPGiNM3nHr73d32dnE3i8VJEXddBFIbOgYSEXtQ==} engines: {node: '>= 12'} @@ -4886,11 +4724,6 @@ packages: engines: {node: '>=18'} hasBin: true - esbuild@0.28.1: - resolution: {integrity: sha512-HrJrvZv5ayxBzPfwphOoNzkzOIIlifzk0KJrGK2c8R4+LKpMtpYLQeUdjnwjWv/LZlkH2laZk+4w78pi99D4Vw==} - engines: {node: '>=18'} - hasBin: true - escalade@3.1.1: resolution: {integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==} engines: {node: '>=6'} @@ -5245,6 +5078,11 @@ packages: fs.realpath@1.0.0: resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} + fsevents@2.3.2: + resolution: {integrity: sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==} + engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} + os: [darwin] + fsevents@2.3.3: resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} @@ -5296,7 +5134,7 @@ packages: git-raw-commits@2.0.11: resolution: {integrity: sha512-VnctFhw+xfj8Va1xtfEqCUD2XDrbAPSJx+hSrE5K7fGdjZruW7XV+QOrN7LF/RJyvspRiD2I0asWsxFp0ya26A==} engines: {node: '>=10'} - deprecated: Deprecated and no longer maintained. Use @conventional-changelog/git-client instead. + deprecated: This package is no longer maintained. For the JavaScript API, please use @conventional-changelog/git-client instead. hasBin: true glob-parent@5.1.2: @@ -7529,17 +7367,6 @@ packages: rx@4.1.0: resolution: {integrity: sha512-CiaiuN6gapkdl+cZUr67W6I8jquN4lkak3vtIsIWCl4XIPP8ffsoyN6/+PuGXnQy8Cu8W2y9Xxh31Rq4M6wUug==} - rxjs@5.5.12: - resolution: {integrity: sha512-xx2itnL5sBbqeeiVgNPVuQQ1nC8Jp2WfNJhXWHmElW9YmrpS9UVnNzhP3EH3HFqexO5Tlp8GhYY+WEcqcVMvGw==} - engines: {npm: '>=2.0.0'} - - rxjs@6.6.7: - resolution: {integrity: sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==} - engines: {npm: '>=2.0.0'} - - rxjs@7.5.7: - resolution: {integrity: sha512-z9MzKh/UcOqB3i20H6rtrlaE/CgjLOvheWK/9ILrbhROGTweAi1BaFsTT9FbwZi5Trr1qNRs+MXkhmR06awzQA==} - rxjs@7.8.2: resolution: {integrity: sha512-dhKf903U/PQZY6boNNtAGdWbG85WAbjT/1xYoZIC7FAY0yWapOBQVsVrDl58W86//e1VpMNBtRV4MaXfdMySFA==} @@ -8037,10 +7864,6 @@ packages: resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} engines: {node: '>= 0.4'} - symbol-observable@1.0.1: - resolution: {integrity: sha512-Kb3PrPYz4HanVF1LVGuAdW6LoVgIwjUYJGzFe7NDrBLCN4lsV/5J0MFurV+ygS4bRVwrCEt2c7MQ1R2a72oJDw==} - engines: {node: '>=0.10.0'} - symbol-observable@4.0.0: resolution: {integrity: sha512-b19dMThMV4HVFynSAM1++gBHAbk2Tc/osgLIBZMKsyqh34jb2e8Os7T6ZW/Bt3pJFdBTd2JwAnAAEQV7rSNvcQ==} engines: {node: '>=0.10'} @@ -8246,11 +8069,6 @@ packages: peerDependencies: typescript: '>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta' - tsx@4.22.4: - resolution: {integrity: sha512-X8EX+XV4QR5xCsrgxaED954zTDfY8KqlDtskKEL0cHhyS/P8b4IFOvGDQpsC9Q1XnLq915wEfwwY/zzskCtmhg==} - engines: {node: '>=18.0.0'} - hasBin: true - tuf-js@1.1.7: resolution: {integrity: sha512-i3P9Kgw3ytjELUfpuKVDNBJvk4u5bXL6gskv572mcevPbSKCV3zt3djhmlEQ65yERjIbOSncy7U4cQJaB1CBCg==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} @@ -8323,9 +8141,6 @@ packages: resolution: {integrity: sha512-00y/AXhx0/SsnI51fTc0rLRmafiGOM4/O+ny10Ps7f+j/b8p/ZY11ytMgznXkOVo4GQ+KwQG5UQLkLGirsACRg==} deprecated: You are using an outdated version of ua-parser-js. Please update to ua-parser-js v0.7.33 / v1.0.33 / v2.0.0 (or later) to avoid ReDoS vulnerability [CVE-2022-25927](https://github.com/advisories/GHSA-fhg7-m89q-25r3) - undici-types@8.3.0: - resolution: {integrity: sha512-j375ScV60dom+YkPFIfTLcOiPxkN/buHz5GobjLhixFuANaNs3C9l4GmrWqejgXWJ7BbJcFYpTEUkS1Ge8bpZQ==} - undici@6.26.0: resolution: {integrity: sha512-4yqz8a3n5HmGTlsbADNtr/dJlhkh/55Rq798G6ibiULcXbDtaLpTl1pvdqcbFfeoj3iSi52lePFM7h9H21cw/A==} engines: {node: '>=18.17'} @@ -8983,7 +8798,7 @@ snapshots: '@angular-devkit/architect@0.1502.10(chokidar@3.5.3)': dependencies: '@angular-devkit/core': 15.2.10(chokidar@3.5.3) - rxjs: 6.6.7 + rxjs: 7.8.2 transitivePeerDependencies: - chokidar @@ -8994,13 +8809,13 @@ snapshots: transitivePeerDependencies: - chokidar - '@angular-devkit/build-angular@15.2.10(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5))(@angular/platform-server@15.2.10(597020a0fe8c1c77567a7c05da2eed63))(ng-packagr@15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5))(typescript@4.9.5)': + '@angular-devkit/build-angular@15.2.10(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5))(@angular/platform-server@15.2.10(bb9340fd85b833f543ade9387312e178))(ng-packagr@15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5))(typescript@4.9.5)': dependencies: '@ampproject/remapping': 2.2.0 '@angular-devkit/architect': 0.1502.10(chokidar@3.5.3) '@angular-devkit/build-webpack': 0.1502.10(chokidar@3.5.3)(webpack-dev-server@4.11.1(webpack@5.76.1(esbuild@0.17.8)))(webpack@5.76.1(esbuild@0.17.8)) '@angular-devkit/core': 15.2.10(chokidar@3.5.3) - '@angular/compiler-cli': 15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5) + '@angular/compiler-cli': 15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5) '@babel/core': 7.20.12 '@babel/generator': 7.20.14 '@babel/helper-annotate-as-pure': 7.18.6 @@ -9012,7 +8827,7 @@ snapshots: '@babel/runtime': 7.20.13 '@babel/template': 7.20.7 '@discoveryjs/json-ext': 0.5.7 - '@ngtools/webpack': 15.2.10(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5))(typescript@4.9.5)(webpack@5.76.1(esbuild@0.17.8)) + '@ngtools/webpack': 15.2.10(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5))(typescript@4.9.5)(webpack@5.76.1(esbuild@0.17.8)) ansi-colors: 4.1.3 autoprefixer: 10.4.13(postcss@8.4.31) babel-loader: 9.1.2(@babel/core@7.20.12)(webpack@5.76.1(esbuild@0.17.8)) @@ -9042,7 +8857,7 @@ snapshots: postcss: 8.4.31 postcss-loader: 7.0.2(postcss@8.4.31)(webpack@5.76.1(esbuild@0.17.8)) resolve-url-loader: 5.0.0 - rxjs: 6.6.7 + rxjs: 7.8.2 sass: 1.58.1 sass-loader: 13.2.0(sass@1.58.1)(webpack@5.76.1(esbuild@0.17.8)) semver: 7.5.3 @@ -9059,9 +8874,9 @@ snapshots: webpack-merge: 5.8.0 webpack-subresource-integrity: 5.1.0(webpack@5.76.1(esbuild@0.17.8)) optionalDependencies: - '@angular/platform-server': 15.2.10(597020a0fe8c1c77567a7c05da2eed63) + '@angular/platform-server': 15.2.10(bb9340fd85b833f543ade9387312e178) esbuild: 0.17.8 - ng-packagr: 15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5) + ng-packagr: 15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5) transitivePeerDependencies: - '@swc/core' - bluebird @@ -9079,7 +8894,7 @@ snapshots: '@angular-devkit/build-webpack@0.1502.10(chokidar@3.5.3)(webpack-dev-server@4.11.1(webpack@5.76.1(esbuild@0.17.8)))(webpack@5.76.1(esbuild@0.17.8))': dependencies: '@angular-devkit/architect': 0.1502.10(chokidar@3.5.3) - rxjs: 6.6.7 + rxjs: 7.8.2 webpack: 5.76.1(esbuild@0.17.8) webpack-dev-server: 4.11.1(webpack@5.76.1(esbuild@0.17.8)) transitivePeerDependencies: @@ -9090,7 +8905,7 @@ snapshots: ajv: 8.12.0 ajv-formats: 2.1.1(ajv@8.12.0) jsonc-parser: 3.2.0 - rxjs: 6.6.7 + rxjs: 7.8.2 source-map: 0.7.4 optionalDependencies: chokidar: 3.5.3 @@ -9112,7 +8927,7 @@ snapshots: jsonc-parser: 3.2.0 magic-string: 0.29.0 ora: 5.4.1 - rxjs: 6.6.7 + rxjs: 7.8.2 transitivePeerDependencies: - chokidar @@ -9190,11 +9005,11 @@ snapshots: - supports-color - typescript - '@angular-eslint/schematics@15.2.1(@angular/cli@21.2.12(@types/node@26.0.1)(chokidar@5.0.0))(eslint@8.56.0)(typescript@5.9.3)': + '@angular-eslint/schematics@15.2.1(@angular/cli@21.2.12(@types/node@12.20.52)(chokidar@5.0.0))(eslint@8.56.0)(typescript@5.9.3)': dependencies: '@angular-eslint/eslint-plugin': 15.2.1(eslint@8.56.0)(typescript@5.9.3) '@angular-eslint/eslint-plugin-template': 15.2.1(eslint@8.56.0)(typescript@5.9.3) - '@angular/cli': 21.2.12(@types/node@26.0.1)(chokidar@5.0.0) + '@angular/cli': 21.2.12(@types/node@12.20.52)(chokidar@5.0.0) ignore: 5.2.4 strip-json-comments: 3.1.1 tmp: 0.2.1 @@ -9228,12 +9043,12 @@ snapshots: transitivePeerDependencies: - supports-color - '@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))': + '@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))': dependencies: - '@angular/core': 15.2.10(rxjs@7.5.7)(zone.js@0.11.5) + '@angular/core': 15.2.10(rxjs@7.8.2)(zone.js@0.11.5) tslib: 2.6.2 - '@angular/build@21.2.12(999253b22980c8ff7ebcfd6e4ca36da1)': + '@angular/build@21.2.12(8124ac35316412ffa9726ce4256f5c59)': dependencies: '@ampproject/remapping': 2.3.0 '@angular-devkit/architect': 0.2102.12(chokidar@5.0.0) @@ -9242,8 +9057,8 @@ snapshots: '@babel/core': 7.29.0 '@babel/helper-annotate-as-pure': 7.27.3 '@babel/helper-split-export-declaration': 7.24.7 - '@inquirer/confirm': 5.1.21(@types/node@26.0.1) - '@vitejs/plugin-basic-ssl': 2.1.4(vite@7.3.2(@types/node@26.0.1)(less@4.1.3)(sass@1.97.3)(terser@5.16.3)(tsx@4.22.4)) + '@inquirer/confirm': 5.1.21(@types/node@12.20.52) + '@vitejs/plugin-basic-ssl': 2.1.4(vite@7.3.2(@types/node@12.20.52)(less@4.1.3)(sass@1.97.3)(terser@5.16.3)) beasties: 0.4.1 browserslist: 4.28.2 esbuild: 0.27.3 @@ -9264,17 +9079,17 @@ snapshots: tslib: 2.6.2 typescript: 5.9.3 undici: 7.24.4 - vite: 7.3.2(@types/node@26.0.1)(less@4.1.3)(sass@1.97.3)(terser@5.16.3)(tsx@4.22.4) + vite: 7.3.2(@types/node@12.20.52)(less@4.1.3)(sass@1.97.3)(terser@5.16.3) watchpack: 2.5.1 optionalDependencies: '@angular/core': 21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5) - '@angular/platform-browser': 21.2.14(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5)) - '@angular/platform-server': 15.2.10(597020a0fe8c1c77567a7c05da2eed63) + '@angular/platform-browser': 21.2.14(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5)) + '@angular/platform-server': 15.2.10(bb9340fd85b833f543ade9387312e178) less: 4.1.3 lmdb: 3.5.1 - ng-packagr: 15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5) + ng-packagr: 15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5) postcss: 8.5.15 - vitest: 4.1.7(@types/node@26.0.1)(jsdom@28.1.0)(vite@7.3.2(@types/node@26.0.1)(less@4.1.3)(sass@1.97.3)(terser@5.16.3)(tsx@4.22.4)) + vitest: 4.1.7(@types/node@12.20.52)(jsdom@28.1.0)(vite@7.3.2(@types/node@12.20.52)(less@4.1.3)(sass@1.97.3)(terser@5.16.3)) transitivePeerDependencies: - '@emnapi/core' - '@emnapi/runtime' @@ -9315,13 +9130,13 @@ snapshots: - chokidar - supports-color - '@angular/cli@21.2.12(@types/node@26.0.1)(chokidar@5.0.0)': + '@angular/cli@21.2.12(@types/node@12.20.52)(chokidar@5.0.0)': dependencies: '@angular-devkit/architect': 0.2102.12(chokidar@5.0.0) '@angular-devkit/core': 21.2.12(chokidar@5.0.0) '@angular-devkit/schematics': 21.2.12(chokidar@5.0.0) - '@inquirer/prompts': 7.10.1(@types/node@26.0.1) - '@listr2/prompt-adapter-inquirer': 3.0.5(@inquirer/prompts@7.10.1(@types/node@26.0.1))(@types/node@26.0.1)(listr2@9.0.5) + '@inquirer/prompts': 7.10.1(@types/node@12.20.52) + '@listr2/prompt-adapter-inquirer': 3.0.5(@inquirer/prompts@7.10.1(@types/node@12.20.52))(@types/node@12.20.52)(listr2@9.0.5) '@modelcontextprotocol/sdk': 1.26.0(zod@4.3.6) '@schematics/angular': 21.2.12(chokidar@5.0.0) '@yarnpkg/lockfile': 1.1.0 @@ -9341,12 +9156,6 @@ snapshots: - chokidar - supports-color - '@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7)': - dependencies: - '@angular/core': 15.2.10(rxjs@7.5.7)(zone.js@0.11.5) - rxjs: 7.5.7 - tslib: 2.5.0 - '@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2)': dependencies: '@angular/core': 15.2.10(rxjs@7.8.2)(zone.js@0.11.5) @@ -9359,9 +9168,9 @@ snapshots: rxjs: 7.8.2 tslib: 2.6.2 - '@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5)': + '@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5)': dependencies: - '@angular/compiler': 15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)) + '@angular/compiler': 15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)) '@babel/core': 7.19.3 '@jridgewell/sourcemap-codec': 1.4.15 chokidar: 3.5.3 @@ -9392,22 +9201,16 @@ snapshots: transitivePeerDependencies: - supports-color - '@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))': + '@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))': dependencies: tslib: 2.6.2 optionalDependencies: - '@angular/core': 15.2.10(rxjs@7.5.7)(zone.js@0.11.5) + '@angular/core': 15.2.10(rxjs@7.8.2)(zone.js@0.11.5) '@angular/compiler@21.2.14': dependencies: tslib: 2.6.2 - '@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)': - dependencies: - rxjs: 7.5.7 - tslib: 2.5.0 - zone.js: 0.11.5 - '@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)': dependencies: rxjs: 7.8.2 @@ -9422,72 +9225,72 @@ snapshots: '@angular/compiler': 21.2.14 zone.js: 0.11.5 - '@angular/forms@15.2.10(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(@angular/platform-browser@15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(rxjs@7.5.7)': + '@angular/forms@15.2.10(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(@angular/platform-browser@15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(rxjs@7.8.2)': dependencies: - '@angular/common': 15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7) - '@angular/core': 15.2.10(rxjs@7.5.7)(zone.js@0.11.5) - '@angular/platform-browser': 15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)) - rxjs: 7.5.7 + '@angular/common': 15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2) + '@angular/core': 15.2.10(rxjs@7.8.2)(zone.js@0.11.5) + '@angular/platform-browser': 15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)) + rxjs: 7.8.2 tslib: 2.6.2 - '@angular/forms@21.2.14(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(@angular/platform-browser@21.2.14(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5)))(rxjs@7.8.2)': + '@angular/forms@21.2.14(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(@angular/platform-browser@21.2.14(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5)))(rxjs@7.8.2)': dependencies: '@angular/common': 21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2) '@angular/core': 21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5) - '@angular/platform-browser': 21.2.14(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5)) + '@angular/platform-browser': 21.2.14(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5)) '@standard-schema/spec': 1.1.0 rxjs: 7.8.2 tslib: 2.6.2 - '@angular/platform-browser-dynamic@15.2.10(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(@angular/platform-browser@15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))': + '@angular/platform-browser-dynamic@15.2.10(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(@angular/platform-browser@15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))': dependencies: - '@angular/common': 15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7) - '@angular/compiler': 15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)) - '@angular/core': 15.2.10(rxjs@7.5.7)(zone.js@0.11.5) - '@angular/platform-browser': 15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)) + '@angular/common': 15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2) + '@angular/compiler': 15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)) + '@angular/core': 15.2.10(rxjs@7.8.2)(zone.js@0.11.5) + '@angular/platform-browser': 15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)) tslib: 2.6.2 - '@angular/platform-browser@15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))': + '@angular/platform-browser@15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))': dependencies: - '@angular/common': 15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7) - '@angular/core': 15.2.10(rxjs@7.5.7)(zone.js@0.11.5) + '@angular/common': 15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2) + '@angular/core': 15.2.10(rxjs@7.8.2)(zone.js@0.11.5) tslib: 2.6.2 optionalDependencies: - '@angular/animations': 15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)) + '@angular/animations': 15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)) - '@angular/platform-browser@21.2.14(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))': + '@angular/platform-browser@21.2.14(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))': dependencies: '@angular/common': 21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2) '@angular/core': 21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5) tslib: 2.6.2 optionalDependencies: - '@angular/animations': 15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)) + '@angular/animations': 15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)) - '@angular/platform-server@15.2.10(597020a0fe8c1c77567a7c05da2eed63)': + '@angular/platform-server@15.2.10(bb9340fd85b833f543ade9387312e178)': dependencies: - '@angular/animations': 15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)) - '@angular/common': 15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7) - '@angular/compiler': 15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)) - '@angular/core': 15.2.10(rxjs@7.5.7)(zone.js@0.11.5) - '@angular/platform-browser': 15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)) - '@angular/platform-browser-dynamic': 15.2.10(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(@angular/platform-browser@15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))) + '@angular/animations': 15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)) + '@angular/common': 15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2) + '@angular/compiler': 15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)) + '@angular/core': 15.2.10(rxjs@7.8.2)(zone.js@0.11.5) + '@angular/platform-browser': 15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)) + '@angular/platform-browser-dynamic': 15.2.10(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(@angular/platform-browser@15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))) domino: 2.1.6 tslib: 2.6.2 xhr2: 0.2.1 - '@angular/router@15.2.10(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(@angular/platform-browser@15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(rxjs@7.5.7)': + '@angular/router@15.2.10(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(@angular/platform-browser@15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(rxjs@7.8.2)': dependencies: - '@angular/common': 15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7) - '@angular/core': 15.2.10(rxjs@7.5.7)(zone.js@0.11.5) - '@angular/platform-browser': 15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)) - rxjs: 7.5.7 + '@angular/common': 15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2) + '@angular/core': 15.2.10(rxjs@7.8.2)(zone.js@0.11.5) + '@angular/platform-browser': 15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)) + rxjs: 7.8.2 tslib: 2.6.2 - '@angular/router@21.2.14(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(@angular/platform-browser@21.2.14(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5)))(rxjs@7.8.2)': + '@angular/router@21.2.14(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(@angular/platform-browser@21.2.14(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5)))(rxjs@7.8.2)': dependencies: '@angular/common': 21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2) '@angular/core': 21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5) - '@angular/platform-browser': 21.2.14(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5)) + '@angular/platform-browser': 21.2.14(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5)) rxjs: 7.8.2 tslib: 2.6.2 @@ -9601,7 +9404,7 @@ snapshots: '@babel/types': 7.29.7 '@jridgewell/remapping': 2.3.5 convert-source-map: 2.0.0 - debug: 4.4.3 + debug: 4.3.4 gensync: 1.0.0-beta.2 json5: 2.2.3 semver: 6.3.1 @@ -10391,7 +10194,7 @@ snapshots: '@babel/parser': 7.29.7 '@babel/template': 7.29.7 '@babel/types': 7.29.7 - debug: 4.4.3 + debug: 4.3.4 transitivePeerDependencies: - supports-color @@ -10441,7 +10244,7 @@ snapshots: dependencies: '@changesets/types': 6.1.0 - '@changesets/cli@2.31.0(@types/node@26.0.1)': + '@changesets/cli@2.31.0(@types/node@12.20.52)': dependencies: '@changesets/apply-release-plan': 7.1.1 '@changesets/assemble-release-plan': 6.0.10 @@ -10457,7 +10260,7 @@ snapshots: '@changesets/should-skip-package': 0.1.2 '@changesets/types': 6.1.0 '@changesets/write': 0.4.0 - '@inquirer/external-editor': 1.0.3(@types/node@26.0.1) + '@inquirer/external-editor': 1.0.3(@types/node@12.20.52) '@manypkg/get-packages': 1.1.3 ansi-colors: 4.1.3 enquirer: 2.4.1 @@ -10613,7 +10416,7 @@ snapshots: '@types/node': 14.18.33 chalk: 4.1.2 cosmiconfig: 7.0.1 - cosmiconfig-typescript-loader: 4.2.0(@types/node@14.18.33)(cosmiconfig@7.0.1)(ts-node@10.9.1(@types/node@14.18.33)(typescript@4.9.5))(typescript@4.9.5) + cosmiconfig-typescript-loader: 4.2.0(@types/node@14.18.33)(cosmiconfig@7.0.1)(ts-node@10.9.1(@types/node@12.20.52)(typescript@4.9.5))(typescript@4.9.5) lodash: 4.17.21 resolve-from: 5.0.0 ts-node: 10.9.1(@types/node@14.18.33)(typescript@4.9.5) @@ -10714,9 +10517,6 @@ snapshots: '@esbuild/aix-ppc64@0.27.3': optional: true - '@esbuild/aix-ppc64@0.28.1': - optional: true - '@esbuild/android-arm64@0.17.19': optional: true @@ -10726,9 +10526,6 @@ snapshots: '@esbuild/android-arm64@0.27.3': optional: true - '@esbuild/android-arm64@0.28.1': - optional: true - '@esbuild/android-arm@0.17.19': optional: true @@ -10738,9 +10535,6 @@ snapshots: '@esbuild/android-arm@0.27.3': optional: true - '@esbuild/android-arm@0.28.1': - optional: true - '@esbuild/android-x64@0.17.19': optional: true @@ -10750,9 +10544,6 @@ snapshots: '@esbuild/android-x64@0.27.3': optional: true - '@esbuild/android-x64@0.28.1': - optional: true - '@esbuild/darwin-arm64@0.17.19': optional: true @@ -10762,9 +10553,6 @@ snapshots: '@esbuild/darwin-arm64@0.27.3': optional: true - '@esbuild/darwin-arm64@0.28.1': - optional: true - '@esbuild/darwin-x64@0.17.19': optional: true @@ -10774,9 +10562,6 @@ snapshots: '@esbuild/darwin-x64@0.27.3': optional: true - '@esbuild/darwin-x64@0.28.1': - optional: true - '@esbuild/freebsd-arm64@0.17.19': optional: true @@ -10786,9 +10571,6 @@ snapshots: '@esbuild/freebsd-arm64@0.27.3': optional: true - '@esbuild/freebsd-arm64@0.28.1': - optional: true - '@esbuild/freebsd-x64@0.17.19': optional: true @@ -10798,9 +10580,6 @@ snapshots: '@esbuild/freebsd-x64@0.27.3': optional: true - '@esbuild/freebsd-x64@0.28.1': - optional: true - '@esbuild/linux-arm64@0.17.19': optional: true @@ -10810,9 +10589,6 @@ snapshots: '@esbuild/linux-arm64@0.27.3': optional: true - '@esbuild/linux-arm64@0.28.1': - optional: true - '@esbuild/linux-arm@0.17.19': optional: true @@ -10822,9 +10598,6 @@ snapshots: '@esbuild/linux-arm@0.27.3': optional: true - '@esbuild/linux-arm@0.28.1': - optional: true - '@esbuild/linux-ia32@0.17.19': optional: true @@ -10834,9 +10607,6 @@ snapshots: '@esbuild/linux-ia32@0.27.3': optional: true - '@esbuild/linux-ia32@0.28.1': - optional: true - '@esbuild/linux-loong64@0.17.19': optional: true @@ -10846,9 +10616,6 @@ snapshots: '@esbuild/linux-loong64@0.27.3': optional: true - '@esbuild/linux-loong64@0.28.1': - optional: true - '@esbuild/linux-mips64el@0.17.19': optional: true @@ -10858,9 +10625,6 @@ snapshots: '@esbuild/linux-mips64el@0.27.3': optional: true - '@esbuild/linux-mips64el@0.28.1': - optional: true - '@esbuild/linux-ppc64@0.17.19': optional: true @@ -10870,9 +10634,6 @@ snapshots: '@esbuild/linux-ppc64@0.27.3': optional: true - '@esbuild/linux-ppc64@0.28.1': - optional: true - '@esbuild/linux-riscv64@0.17.19': optional: true @@ -10882,9 +10643,6 @@ snapshots: '@esbuild/linux-riscv64@0.27.3': optional: true - '@esbuild/linux-riscv64@0.28.1': - optional: true - '@esbuild/linux-s390x@0.17.19': optional: true @@ -10894,9 +10652,6 @@ snapshots: '@esbuild/linux-s390x@0.27.3': optional: true - '@esbuild/linux-s390x@0.28.1': - optional: true - '@esbuild/linux-x64@0.17.19': optional: true @@ -10906,15 +10661,9 @@ snapshots: '@esbuild/linux-x64@0.27.3': optional: true - '@esbuild/linux-x64@0.28.1': - optional: true - '@esbuild/netbsd-arm64@0.27.3': optional: true - '@esbuild/netbsd-arm64@0.28.1': - optional: true - '@esbuild/netbsd-x64@0.17.19': optional: true @@ -10924,15 +10673,9 @@ snapshots: '@esbuild/netbsd-x64@0.27.3': optional: true - '@esbuild/netbsd-x64@0.28.1': - optional: true - '@esbuild/openbsd-arm64@0.27.3': optional: true - '@esbuild/openbsd-arm64@0.28.1': - optional: true - '@esbuild/openbsd-x64@0.17.19': optional: true @@ -10942,15 +10685,9 @@ snapshots: '@esbuild/openbsd-x64@0.27.3': optional: true - '@esbuild/openbsd-x64@0.28.1': - optional: true - '@esbuild/openharmony-arm64@0.27.3': optional: true - '@esbuild/openharmony-arm64@0.28.1': - optional: true - '@esbuild/sunos-x64@0.17.19': optional: true @@ -10960,9 +10697,6 @@ snapshots: '@esbuild/sunos-x64@0.27.3': optional: true - '@esbuild/sunos-x64@0.28.1': - optional: true - '@esbuild/win32-arm64@0.17.19': optional: true @@ -10972,9 +10706,6 @@ snapshots: '@esbuild/win32-arm64@0.27.3': optional: true - '@esbuild/win32-arm64@0.28.1': - optional: true - '@esbuild/win32-ia32@0.17.19': optional: true @@ -10984,9 +10715,6 @@ snapshots: '@esbuild/win32-ia32@0.27.3': optional: true - '@esbuild/win32-ia32@0.28.1': - optional: true - '@esbuild/win32-x64@0.17.19': optional: true @@ -10996,9 +10724,6 @@ snapshots: '@esbuild/win32-x64@0.27.3': optional: true - '@esbuild/win32-x64@0.28.1': - optional: true - '@eslint-community/eslint-utils@4.4.0(eslint@8.56.0)': dependencies: eslint: 8.56.0 @@ -11080,128 +10805,128 @@ snapshots: '@inquirer/ansi@1.0.2': {} - '@inquirer/checkbox@4.3.2(@types/node@26.0.1)': + '@inquirer/checkbox@4.3.2(@types/node@12.20.52)': dependencies: '@inquirer/ansi': 1.0.2 - '@inquirer/core': 10.3.2(@types/node@26.0.1) + '@inquirer/core': 10.3.2(@types/node@12.20.52) '@inquirer/figures': 1.0.15 - '@inquirer/type': 3.0.10(@types/node@26.0.1) + '@inquirer/type': 3.0.10(@types/node@12.20.52) yoctocolors-cjs: 2.1.3 optionalDependencies: - '@types/node': 26.0.1 + '@types/node': 12.20.52 - '@inquirer/confirm@5.1.21(@types/node@26.0.1)': + '@inquirer/confirm@5.1.21(@types/node@12.20.52)': dependencies: - '@inquirer/core': 10.3.2(@types/node@26.0.1) - '@inquirer/type': 3.0.10(@types/node@26.0.1) + '@inquirer/core': 10.3.2(@types/node@12.20.52) + '@inquirer/type': 3.0.10(@types/node@12.20.52) optionalDependencies: - '@types/node': 26.0.1 + '@types/node': 12.20.52 - '@inquirer/core@10.3.2(@types/node@26.0.1)': + '@inquirer/core@10.3.2(@types/node@12.20.52)': dependencies: '@inquirer/ansi': 1.0.2 '@inquirer/figures': 1.0.15 - '@inquirer/type': 3.0.10(@types/node@26.0.1) + '@inquirer/type': 3.0.10(@types/node@12.20.52) cli-width: 4.1.0 mute-stream: 2.0.0 signal-exit: 4.1.0 wrap-ansi: 6.2.0 yoctocolors-cjs: 2.1.3 optionalDependencies: - '@types/node': 26.0.1 + '@types/node': 12.20.52 - '@inquirer/editor@4.2.23(@types/node@26.0.1)': + '@inquirer/editor@4.2.23(@types/node@12.20.52)': dependencies: - '@inquirer/core': 10.3.2(@types/node@26.0.1) - '@inquirer/external-editor': 1.0.3(@types/node@26.0.1) - '@inquirer/type': 3.0.10(@types/node@26.0.1) + '@inquirer/core': 10.3.2(@types/node@12.20.52) + '@inquirer/external-editor': 1.0.3(@types/node@12.20.52) + '@inquirer/type': 3.0.10(@types/node@12.20.52) optionalDependencies: - '@types/node': 26.0.1 + '@types/node': 12.20.52 - '@inquirer/expand@4.0.23(@types/node@26.0.1)': + '@inquirer/expand@4.0.23(@types/node@12.20.52)': dependencies: - '@inquirer/core': 10.3.2(@types/node@26.0.1) - '@inquirer/type': 3.0.10(@types/node@26.0.1) + '@inquirer/core': 10.3.2(@types/node@12.20.52) + '@inquirer/type': 3.0.10(@types/node@12.20.52) yoctocolors-cjs: 2.1.3 optionalDependencies: - '@types/node': 26.0.1 + '@types/node': 12.20.52 - '@inquirer/external-editor@1.0.3(@types/node@26.0.1)': + '@inquirer/external-editor@1.0.3(@types/node@12.20.52)': dependencies: chardet: 2.1.1 iconv-lite: 0.7.2 optionalDependencies: - '@types/node': 26.0.1 + '@types/node': 12.20.52 '@inquirer/figures@1.0.15': {} - '@inquirer/input@4.3.1(@types/node@26.0.1)': + '@inquirer/input@4.3.1(@types/node@12.20.52)': dependencies: - '@inquirer/core': 10.3.2(@types/node@26.0.1) - '@inquirer/type': 3.0.10(@types/node@26.0.1) + '@inquirer/core': 10.3.2(@types/node@12.20.52) + '@inquirer/type': 3.0.10(@types/node@12.20.52) optionalDependencies: - '@types/node': 26.0.1 + '@types/node': 12.20.52 - '@inquirer/number@3.0.23(@types/node@26.0.1)': + '@inquirer/number@3.0.23(@types/node@12.20.52)': dependencies: - '@inquirer/core': 10.3.2(@types/node@26.0.1) - '@inquirer/type': 3.0.10(@types/node@26.0.1) + '@inquirer/core': 10.3.2(@types/node@12.20.52) + '@inquirer/type': 3.0.10(@types/node@12.20.52) optionalDependencies: - '@types/node': 26.0.1 + '@types/node': 12.20.52 - '@inquirer/password@4.0.23(@types/node@26.0.1)': + '@inquirer/password@4.0.23(@types/node@12.20.52)': dependencies: '@inquirer/ansi': 1.0.2 - '@inquirer/core': 10.3.2(@types/node@26.0.1) - '@inquirer/type': 3.0.10(@types/node@26.0.1) + '@inquirer/core': 10.3.2(@types/node@12.20.52) + '@inquirer/type': 3.0.10(@types/node@12.20.52) optionalDependencies: - '@types/node': 26.0.1 - - '@inquirer/prompts@7.10.1(@types/node@26.0.1)': - dependencies: - '@inquirer/checkbox': 4.3.2(@types/node@26.0.1) - '@inquirer/confirm': 5.1.21(@types/node@26.0.1) - '@inquirer/editor': 4.2.23(@types/node@26.0.1) - '@inquirer/expand': 4.0.23(@types/node@26.0.1) - '@inquirer/input': 4.3.1(@types/node@26.0.1) - '@inquirer/number': 3.0.23(@types/node@26.0.1) - '@inquirer/password': 4.0.23(@types/node@26.0.1) - '@inquirer/rawlist': 4.1.11(@types/node@26.0.1) - '@inquirer/search': 3.2.2(@types/node@26.0.1) - '@inquirer/select': 4.4.2(@types/node@26.0.1) + '@types/node': 12.20.52 + + '@inquirer/prompts@7.10.1(@types/node@12.20.52)': + dependencies: + '@inquirer/checkbox': 4.3.2(@types/node@12.20.52) + '@inquirer/confirm': 5.1.21(@types/node@12.20.52) + '@inquirer/editor': 4.2.23(@types/node@12.20.52) + '@inquirer/expand': 4.0.23(@types/node@12.20.52) + '@inquirer/input': 4.3.1(@types/node@12.20.52) + '@inquirer/number': 3.0.23(@types/node@12.20.52) + '@inquirer/password': 4.0.23(@types/node@12.20.52) + '@inquirer/rawlist': 4.1.11(@types/node@12.20.52) + '@inquirer/search': 3.2.2(@types/node@12.20.52) + '@inquirer/select': 4.4.2(@types/node@12.20.52) optionalDependencies: - '@types/node': 26.0.1 + '@types/node': 12.20.52 - '@inquirer/rawlist@4.1.11(@types/node@26.0.1)': + '@inquirer/rawlist@4.1.11(@types/node@12.20.52)': dependencies: - '@inquirer/core': 10.3.2(@types/node@26.0.1) - '@inquirer/type': 3.0.10(@types/node@26.0.1) + '@inquirer/core': 10.3.2(@types/node@12.20.52) + '@inquirer/type': 3.0.10(@types/node@12.20.52) yoctocolors-cjs: 2.1.3 optionalDependencies: - '@types/node': 26.0.1 + '@types/node': 12.20.52 - '@inquirer/search@3.2.2(@types/node@26.0.1)': + '@inquirer/search@3.2.2(@types/node@12.20.52)': dependencies: - '@inquirer/core': 10.3.2(@types/node@26.0.1) + '@inquirer/core': 10.3.2(@types/node@12.20.52) '@inquirer/figures': 1.0.15 - '@inquirer/type': 3.0.10(@types/node@26.0.1) + '@inquirer/type': 3.0.10(@types/node@12.20.52) yoctocolors-cjs: 2.1.3 optionalDependencies: - '@types/node': 26.0.1 + '@types/node': 12.20.52 - '@inquirer/select@4.4.2(@types/node@26.0.1)': + '@inquirer/select@4.4.2(@types/node@12.20.52)': dependencies: '@inquirer/ansi': 1.0.2 - '@inquirer/core': 10.3.2(@types/node@26.0.1) + '@inquirer/core': 10.3.2(@types/node@12.20.52) '@inquirer/figures': 1.0.15 - '@inquirer/type': 3.0.10(@types/node@26.0.1) + '@inquirer/type': 3.0.10(@types/node@12.20.52) yoctocolors-cjs: 2.1.3 optionalDependencies: - '@types/node': 26.0.1 + '@types/node': 12.20.52 - '@inquirer/type@3.0.10(@types/node@26.0.1)': + '@inquirer/type@3.0.10(@types/node@12.20.52)': optionalDependencies: - '@types/node': 26.0.1 + '@types/node': 12.20.52 '@isaacs/cliui@8.0.2': dependencies: @@ -11229,27 +10954,27 @@ snapshots: '@jest/console@29.7.0': dependencies: '@jest/types': 29.6.3 - '@types/node': 26.0.1 + '@types/node': 12.20.52 chalk: 4.1.2 jest-message-util: 29.7.0 jest-util: 29.7.0 slash: 3.0.0 - '@jest/core@29.7.0(ts-node@10.9.1(@types/node@14.18.33)(typescript@4.9.5))': + '@jest/core@29.7.0(ts-node@10.9.1(@types/node@12.20.52)(typescript@4.9.5))': dependencies: '@jest/console': 29.7.0 '@jest/reporters': 29.7.0 '@jest/test-result': 29.7.0 '@jest/transform': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 26.0.1 + '@types/node': 12.20.52 ansi-escapes: 4.3.2 chalk: 4.1.2 ci-info: 3.3.1 exit: 0.1.2 graceful-fs: 4.2.10 jest-changed-files: 29.7.0 - jest-config: 29.7.0(@types/node@26.0.1)(ts-node@10.9.1(@types/node@14.18.33)(typescript@4.9.5)) + jest-config: 29.7.0(@types/node@12.20.52)(ts-node@10.9.1(@types/node@12.20.52)(typescript@4.9.5)) jest-haste-map: 29.7.0 jest-message-util: 29.7.0 jest-regex-util: 29.6.3 @@ -11274,7 +10999,7 @@ snapshots: dependencies: '@jest/fake-timers': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 26.0.1 + '@types/node': 12.20.52 jest-mock: 29.7.0 '@jest/expect-utils@29.7.0': @@ -11292,7 +11017,7 @@ snapshots: dependencies: '@jest/types': 29.6.3 '@sinonjs/fake-timers': 10.3.0 - '@types/node': 26.0.1 + '@types/node': 12.20.52 jest-message-util: 29.7.0 jest-mock: 29.7.0 jest-util: 29.7.0 @@ -11314,7 +11039,7 @@ snapshots: '@jest/transform': 29.7.0 '@jest/types': 29.6.3 '@jridgewell/trace-mapping': 0.3.25 - '@types/node': 26.0.1 + '@types/node': 12.20.52 chalk: 4.1.2 collect-v8-coverage: 1.0.1 exit: 0.1.2 @@ -11361,9 +11086,9 @@ snapshots: '@jest/transform@29.7.0': dependencies: - '@babel/core': 7.29.0 + '@babel/core': 7.20.12 '@jest/types': 29.6.3 - '@jridgewell/trace-mapping': 0.3.31 + '@jridgewell/trace-mapping': 0.3.25 babel-plugin-istanbul: 6.1.1 chalk: 4.1.2 convert-source-map: 2.0.0 @@ -11372,7 +11097,7 @@ snapshots: jest-haste-map: 29.7.0 jest-regex-util: 29.6.3 jest-util: 29.7.0 - micromatch: 4.0.8 + micromatch: 4.0.5 pirates: 4.0.5 slash: 3.0.0 write-file-atomic: 4.0.2 @@ -11384,7 +11109,7 @@ snapshots: '@jest/schemas': 29.6.3 '@types/istanbul-lib-coverage': 2.0.4 '@types/istanbul-reports': 3.0.1 - '@types/node': 26.0.1 + '@types/node': 12.20.52 '@types/yargs': 17.0.10 chalk: 4.1.2 @@ -11406,8 +11131,10 @@ snapshots: '@jridgewell/remapping@2.3.5': dependencies: - '@jridgewell/gen-mapping': 0.3.13 - '@jridgewell/trace-mapping': 0.3.31 + '@jridgewell/gen-mapping': 0.3.5 + '@jridgewell/trace-mapping': 0.3.25 + + '@jridgewell/resolve-uri@3.0.7': {} '@jridgewell/resolve-uri@3.1.2': {} @@ -11415,8 +11142,8 @@ snapshots: '@jridgewell/source-map@0.3.6': dependencies: - '@jridgewell/gen-mapping': 0.3.13 - '@jridgewell/trace-mapping': 0.3.31 + '@jridgewell/gen-mapping': 0.3.5 + '@jridgewell/trace-mapping': 0.3.25 '@jridgewell/sourcemap-codec@1.4.15': {} @@ -11430,19 +11157,19 @@ snapshots: '@jridgewell/trace-mapping@0.3.31': dependencies: '@jridgewell/resolve-uri': 3.1.2 - '@jridgewell/sourcemap-codec': 1.5.5 + '@jridgewell/sourcemap-codec': 1.4.15 '@jridgewell/trace-mapping@0.3.9': dependencies: - '@jridgewell/resolve-uri': 3.1.2 - '@jridgewell/sourcemap-codec': 1.5.5 + '@jridgewell/resolve-uri': 3.0.7 + '@jridgewell/sourcemap-codec': 1.4.15 '@leichtgewicht/ip-codec@2.0.4': {} - '@listr2/prompt-adapter-inquirer@3.0.5(@inquirer/prompts@7.10.1(@types/node@26.0.1))(@types/node@26.0.1)(listr2@9.0.5)': + '@listr2/prompt-adapter-inquirer@3.0.5(@inquirer/prompts@7.10.1(@types/node@12.20.52))(@types/node@12.20.52)(listr2@9.0.5)': dependencies: - '@inquirer/prompts': 7.10.1(@types/node@26.0.1) - '@inquirer/type': 3.0.10(@types/node@26.0.1) + '@inquirer/prompts': 7.10.1(@types/node@12.20.52) + '@inquirer/type': 3.0.10(@types/node@12.20.52) listr2: 9.0.5 transitivePeerDependencies: - '@types/node' @@ -11603,25 +11330,25 @@ snapshots: '@tybys/wasm-util': 0.10.2 optional: true - '@ngtools/webpack@15.2.10(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5))(typescript@4.9.5)(webpack@5.76.1(esbuild@0.17.8))': + '@ngtools/webpack@15.2.10(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5))(typescript@4.9.5)(webpack@5.76.1(esbuild@0.17.8))': dependencies: - '@angular/compiler-cli': 15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5) + '@angular/compiler-cli': 15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5) typescript: 4.9.5 webpack: 5.76.1(esbuild@0.17.8) - '@nguniversal/builders@15.2.1(@angular-devkit/build-angular@15.2.10(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5))(@angular/platform-server@15.2.10(597020a0fe8c1c77567a7c05da2eed63))(ng-packagr@15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5))(typescript@4.9.5))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(@types/express@4.17.13)(chokidar@3.5.3)(typescript@4.9.5)': + '@nguniversal/builders@15.2.1(@angular-devkit/build-angular@15.2.10(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5))(@angular/platform-server@15.2.10(bb9340fd85b833f543ade9387312e178))(ng-packagr@15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5))(typescript@4.9.5))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(@types/express@4.17.13)(chokidar@3.5.3)(typescript@4.9.5)': dependencies: '@angular-devkit/architect': 0.1502.10(chokidar@3.5.3) - '@angular-devkit/build-angular': 15.2.10(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5))(@angular/platform-server@15.2.10(597020a0fe8c1c77567a7c05da2eed63))(ng-packagr@15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5))(typescript@4.9.5) + '@angular-devkit/build-angular': 15.2.10(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5))(@angular/platform-server@15.2.10(bb9340fd85b833f543ade9387312e178))(ng-packagr@15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5))(typescript@4.9.5) '@angular-devkit/core': 15.2.10(chokidar@3.5.3) - '@nguniversal/common': 15.2.1(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)) + '@nguniversal/common': 15.2.1(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)) browser-sync: 2.27.10 express: 4.20.0 guess-parser: 0.4.22(typescript@4.9.5) http-proxy-middleware: 2.0.6(@types/express@4.17.13) ora: 5.4.1 piscina: 3.2.0 - rxjs: 6.6.7 + rxjs: 7.8.2 tree-kill: 1.2.2 transitivePeerDependencies: - '@angular/common' @@ -11635,10 +11362,10 @@ snapshots: - typescript - utf-8-validate - '@nguniversal/common@15.2.1(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))': + '@nguniversal/common@15.2.1(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))': dependencies: - '@angular/common': 15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7) - '@angular/core': 15.2.10(rxjs@7.5.7)(zone.js@0.11.5) + '@angular/common': 15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2) + '@angular/core': 15.2.10(rxjs@7.8.2)(zone.js@0.11.5) critters: 0.0.16 jsdom: 21.1.0 tslib: 2.6.2 @@ -11648,12 +11375,12 @@ snapshots: - supports-color - utf-8-validate - '@nguniversal/express-engine@15.2.1(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(@angular/platform-server@15.2.10(597020a0fe8c1c77567a7c05da2eed63))(express@4.20.0)': + '@nguniversal/express-engine@15.2.1(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(@angular/platform-server@15.2.10(bb9340fd85b833f543ade9387312e178))(express@4.20.0)': dependencies: - '@angular/common': 15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7) - '@angular/core': 15.2.10(rxjs@7.5.7)(zone.js@0.11.5) - '@angular/platform-server': 15.2.10(597020a0fe8c1c77567a7c05da2eed63) - '@nguniversal/common': 15.2.1(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)) + '@angular/common': 15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2) + '@angular/core': 15.2.10(rxjs@7.8.2)(zone.js@0.11.5) + '@angular/platform-server': 15.2.10(bb9340fd85b833f543ade9387312e178) + '@nguniversal/common': 15.2.1(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)) express: 4.20.0 tslib: 2.6.2 transitivePeerDependencies: @@ -12109,33 +11836,33 @@ snapshots: '@types/babel__core@7.1.19': dependencies: - '@babel/parser': 7.29.7 - '@babel/types': 7.29.7 + '@babel/parser': 7.24.0 + '@babel/types': 7.24.0 '@types/babel__generator': 7.6.4 '@types/babel__template': 7.4.1 '@types/babel__traverse': 7.17.1 '@types/babel__generator@7.6.4': dependencies: - '@babel/types': 7.29.7 + '@babel/types': 7.24.0 '@types/babel__template@7.4.1': dependencies: - '@babel/parser': 7.29.7 - '@babel/types': 7.29.7 + '@babel/parser': 7.24.0 + '@babel/types': 7.24.0 '@types/babel__traverse@7.17.1': dependencies: - '@babel/types': 7.29.7 + '@babel/types': 7.24.0 '@types/body-parser@1.19.2': dependencies: '@types/connect': 3.4.35 - '@types/node': 26.0.1 + '@types/node': 18.11.9 '@types/bonjour@3.5.10': dependencies: - '@types/node': 26.0.1 + '@types/node': 12.20.52 '@types/chai@5.2.3': dependencies: @@ -12147,11 +11874,11 @@ snapshots: '@types/connect-history-api-fallback@1.3.5': dependencies: '@types/express-serve-static-core': 4.17.28 - '@types/node': 26.0.1 + '@types/node': 12.20.52 '@types/connect@3.4.35': dependencies: - '@types/node': 26.0.1 + '@types/node': 18.11.9 '@types/cookie@0.4.1': {} @@ -12166,8 +11893,8 @@ snapshots: '@types/eslint@8.4.2': dependencies: - '@types/estree': 1.0.8 - '@types/json-schema': 7.0.15 + '@types/estree': 0.0.51 + '@types/json-schema': 7.0.11 '@types/estree@0.0.51': {} @@ -12177,7 +11904,7 @@ snapshots: '@types/express-serve-static-core@4.17.28': dependencies: - '@types/node': 26.0.1 + '@types/node': 18.11.9 '@types/qs': 6.9.7 '@types/range-parser': 1.2.4 @@ -12190,11 +11917,11 @@ snapshots: '@types/graceful-fs@4.1.5': dependencies: - '@types/node': 26.0.1 + '@types/node': 12.20.52 '@types/http-proxy@1.17.9': dependencies: - '@types/node': 26.0.1 + '@types/node': 18.11.9 '@types/istanbul-lib-coverage@2.0.4': {} @@ -12213,7 +11940,7 @@ snapshots: '@types/jsdom@20.0.1': dependencies: - '@types/node': 26.0.1 + '@types/node': 12.20.52 '@types/tough-cookie': 4.0.2 parse5: 7.1.2 @@ -12227,15 +11954,13 @@ snapshots: '@types/node-forge@1.3.11': dependencies: - '@types/node': 26.0.1 + '@types/node': 12.20.52 '@types/node@12.20.52': {} '@types/node@14.18.33': {} - '@types/node@26.0.1': - dependencies: - undici-types: 8.3.0 + '@types/node@18.11.9': {} '@types/normalize-package-data@2.4.1': {} @@ -12258,11 +11983,11 @@ snapshots: '@types/serve-static@1.13.10': dependencies: '@types/mime': 1.3.2 - '@types/node': 26.0.1 + '@types/node': 18.11.9 '@types/sockjs@0.3.33': dependencies: - '@types/node': 26.0.1 + '@types/node': 12.20.52 '@types/stack-utils@2.0.1': {} @@ -12270,7 +11995,7 @@ snapshots: '@types/ws@8.5.3': dependencies: - '@types/node': 26.0.1 + '@types/node': 12.20.52 '@types/yargs-parser@21.0.0': {} @@ -12576,9 +12301,9 @@ snapshots: '@ungap/structured-clone@1.2.0': {} - '@vitejs/plugin-basic-ssl@2.1.4(vite@7.3.2(@types/node@26.0.1)(less@4.1.3)(sass@1.97.3)(terser@5.16.3)(tsx@4.22.4))': + '@vitejs/plugin-basic-ssl@2.1.4(vite@7.3.2(@types/node@12.20.52)(less@4.1.3)(sass@1.97.3)(terser@5.16.3))': dependencies: - vite: 7.3.2(@types/node@26.0.1)(less@4.1.3)(sass@1.97.3)(terser@5.16.3)(tsx@4.22.4) + vite: 7.3.2(@types/node@12.20.52)(less@4.1.3)(sass@1.97.3)(terser@5.16.3) '@vitest/expect@4.1.7': dependencies: @@ -12589,13 +12314,13 @@ snapshots: chai: 6.2.2 tinyrainbow: 3.1.0 - '@vitest/mocker@4.1.7(vite@7.3.2(@types/node@26.0.1)(less@4.1.3)(sass@1.97.3)(terser@5.16.3)(tsx@4.22.4))': + '@vitest/mocker@4.1.7(vite@7.3.2(@types/node@12.20.52)(less@4.1.3)(sass@1.97.3)(terser@5.16.3))': dependencies: '@vitest/spy': 4.1.7 estree-walker: 3.0.3 magic-string: 0.30.21 optionalDependencies: - vite: 7.3.2(@types/node@26.0.1)(less@4.1.3)(sass@1.97.3)(terser@5.16.3)(tsx@4.22.4) + vite: 7.3.2(@types/node@12.20.52)(less@4.1.3)(sass@1.97.3)(terser@5.16.3) '@vitest/pretty-format@4.1.7': dependencies: @@ -12939,8 +12664,6 @@ snapshots: array-ify@1.0.0: {} - array-timsort@1.0.3: {} - array-union@2.1.0: {} arrify@1.0.1: {} @@ -13025,8 +12748,8 @@ snapshots: babel-plugin-jest-hoist@29.6.3: dependencies: - '@babel/template': 7.29.7 - '@babel/types': 7.29.7 + '@babel/template': 7.24.0 + '@babel/types': 7.24.0 '@types/babel__core': 7.1.19 '@types/babel__traverse': 7.17.1 @@ -13184,7 +12907,7 @@ snapshots: etag: 1.8.1 fresh: 0.5.2 mitt: 1.2.0 - rxjs: 5.5.12 + rxjs: 7.8.2 typescript: 4.9.5 browser-sync-ui@2.27.10: @@ -13426,14 +13149,14 @@ snapshots: chokidar@3.5.3: dependencies: anymatch: 3.1.2 - braces: 3.0.3 + braces: 3.0.2 glob-parent: 5.1.2 is-binary-path: 2.1.0 is-glob: 4.0.3 normalize-path: 3.0.0 readdirp: 3.6.0 optionalDependencies: - fsevents: 2.3.3 + fsevents: 2.3.2 chokidar@4.0.3: dependencies: @@ -13544,11 +13267,6 @@ snapshots: commander@9.4.1: {} - comment-json@5.0.0: - dependencies: - array-timsort: 1.0.3 - esprima: 4.0.1 - commitizen@4.2.5: dependencies: cachedir: 2.3.0 @@ -13688,11 +13406,11 @@ snapshots: object-assign: 4.1.1 vary: 1.1.2 - cosmiconfig-typescript-loader@4.2.0(@types/node@14.18.33)(cosmiconfig@7.0.1)(ts-node@10.9.1(@types/node@14.18.33)(typescript@4.9.5))(typescript@4.9.5): + cosmiconfig-typescript-loader@4.2.0(@types/node@14.18.33)(cosmiconfig@7.0.1)(ts-node@10.9.1(@types/node@12.20.52)(typescript@4.9.5))(typescript@4.9.5): dependencies: '@types/node': 14.18.33 cosmiconfig: 7.0.1 - ts-node: 10.9.1(@types/node@14.18.33)(typescript@4.9.5) + ts-node: 10.9.1(@types/node@12.20.52)(typescript@4.9.5) typescript: 4.9.5 cosmiconfig@7.0.1: @@ -13703,13 +13421,13 @@ snapshots: path-type: 4.0.0 yaml: 1.10.2 - create-jest@29.7.0(@types/node@26.0.1)(ts-node@10.9.1(@types/node@14.18.33)(typescript@4.9.5)): + create-jest@29.7.0(@types/node@12.20.52)(ts-node@10.9.1(@types/node@12.20.52)(typescript@4.9.5)): dependencies: '@jest/types': 29.6.3 chalk: 4.1.2 exit: 0.1.2 graceful-fs: 4.2.10 - jest-config: 29.7.0(@types/node@26.0.1)(ts-node@10.9.1(@types/node@14.18.33)(typescript@4.9.5)) + jest-config: 29.7.0(@types/node@12.20.52)(ts-node@10.9.1(@types/node@12.20.52)(typescript@4.9.5)) jest-util: 29.7.0 prompts: 2.4.2 transitivePeerDependencies: @@ -14064,7 +13782,7 @@ snapshots: dependencies: '@types/cookie': 0.4.1 '@types/cors': 2.8.12 - '@types/node': 26.0.1 + '@types/node': 12.20.52 accepts: 1.3.8 base64id: 2.0.0 cookie: 0.4.2 @@ -14225,35 +13943,6 @@ snapshots: '@esbuild/win32-ia32': 0.27.3 '@esbuild/win32-x64': 0.27.3 - esbuild@0.28.1: - optionalDependencies: - '@esbuild/aix-ppc64': 0.28.1 - '@esbuild/android-arm': 0.28.1 - '@esbuild/android-arm64': 0.28.1 - '@esbuild/android-x64': 0.28.1 - '@esbuild/darwin-arm64': 0.28.1 - '@esbuild/darwin-x64': 0.28.1 - '@esbuild/freebsd-arm64': 0.28.1 - '@esbuild/freebsd-x64': 0.28.1 - '@esbuild/linux-arm': 0.28.1 - '@esbuild/linux-arm64': 0.28.1 - '@esbuild/linux-ia32': 0.28.1 - '@esbuild/linux-loong64': 0.28.1 - '@esbuild/linux-mips64el': 0.28.1 - '@esbuild/linux-ppc64': 0.28.1 - '@esbuild/linux-riscv64': 0.28.1 - '@esbuild/linux-s390x': 0.28.1 - '@esbuild/linux-x64': 0.28.1 - '@esbuild/netbsd-arm64': 0.28.1 - '@esbuild/netbsd-x64': 0.28.1 - '@esbuild/openbsd-arm64': 0.28.1 - '@esbuild/openbsd-x64': 0.28.1 - '@esbuild/openharmony-arm64': 0.28.1 - '@esbuild/sunos-x64': 0.28.1 - '@esbuild/win32-arm64': 0.28.1 - '@esbuild/win32-ia32': 0.28.1 - '@esbuild/win32-x64': 0.28.1 - escalade@3.1.1: {} escalade@3.2.0: {} @@ -14719,6 +14408,9 @@ snapshots: fs.realpath@1.0.0: {} + fsevents@2.3.2: + optional: true + fsevents@2.3.3: optional: true @@ -15421,7 +15113,7 @@ snapshots: '@jest/expect': 29.7.0 '@jest/test-result': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 26.0.1 + '@types/node': 12.20.52 chalk: 4.1.2 co: 4.6.0 dedent: 1.5.1 @@ -15441,16 +15133,16 @@ snapshots: - babel-plugin-macros - supports-color - jest-cli@29.7.0(@types/node@26.0.1)(ts-node@10.9.1(@types/node@14.18.33)(typescript@4.9.5)): + jest-cli@29.7.0(@types/node@12.20.52)(ts-node@10.9.1(@types/node@12.20.52)(typescript@4.9.5)): dependencies: - '@jest/core': 29.7.0(ts-node@10.9.1(@types/node@14.18.33)(typescript@4.9.5)) + '@jest/core': 29.7.0(ts-node@10.9.1(@types/node@12.20.52)(typescript@4.9.5)) '@jest/test-result': 29.7.0 '@jest/types': 29.6.3 chalk: 4.1.2 - create-jest: 29.7.0(@types/node@26.0.1)(ts-node@10.9.1(@types/node@14.18.33)(typescript@4.9.5)) + create-jest: 29.7.0(@types/node@12.20.52)(ts-node@10.9.1(@types/node@12.20.52)(typescript@4.9.5)) exit: 0.1.2 import-local: 3.1.0 - jest-config: 29.7.0(@types/node@26.0.1)(ts-node@10.9.1(@types/node@14.18.33)(typescript@4.9.5)) + jest-config: 29.7.0(@types/node@12.20.52)(ts-node@10.9.1(@types/node@12.20.52)(typescript@4.9.5)) jest-util: 29.7.0 jest-validate: 29.7.0 yargs: 17.6.2 @@ -15460,7 +15152,7 @@ snapshots: - supports-color - ts-node - jest-config@29.7.0(@types/node@26.0.1)(ts-node@10.9.1(@types/node@14.18.33)(typescript@4.9.5)): + jest-config@29.7.0(@types/node@12.20.52)(ts-node@10.9.1(@types/node@12.20.52)(typescript@4.9.5)): dependencies: '@babel/core': 7.20.12 '@jest/test-sequencer': 29.7.0 @@ -15485,8 +15177,8 @@ snapshots: slash: 3.0.0 strip-json-comments: 3.1.1 optionalDependencies: - '@types/node': 26.0.1 - ts-node: 10.9.1(@types/node@14.18.33)(typescript@4.9.5) + '@types/node': 12.20.52 + ts-node: 10.9.1(@types/node@12.20.52)(typescript@4.9.5) transitivePeerDependencies: - babel-plugin-macros - supports-color @@ -15516,7 +15208,7 @@ snapshots: '@jest/fake-timers': 29.7.0 '@jest/types': 29.6.3 '@types/jsdom': 20.0.1 - '@types/node': 26.0.1 + '@types/node': 12.20.52 jest-mock: 29.7.0 jest-util: 29.7.0 jsdom: 20.0.3 @@ -15530,7 +15222,7 @@ snapshots: '@jest/environment': 29.7.0 '@jest/fake-timers': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 26.0.1 + '@types/node': 12.20.52 jest-mock: 29.7.0 jest-util: 29.7.0 @@ -15540,17 +15232,17 @@ snapshots: dependencies: '@jest/types': 29.6.3 '@types/graceful-fs': 4.1.5 - '@types/node': 26.0.1 + '@types/node': 12.20.52 anymatch: 3.1.2 fb-watchman: 2.0.1 graceful-fs: 4.2.10 jest-regex-util: 29.6.3 jest-util: 29.7.0 jest-worker: 29.7.0 - micromatch: 4.0.8 + micromatch: 4.0.5 walker: 1.0.8 optionalDependencies: - fsevents: 2.3.3 + fsevents: 2.3.2 jest-leak-detector@29.7.0: dependencies: @@ -15579,26 +15271,26 @@ snapshots: jest-mock@29.7.0: dependencies: '@jest/types': 29.6.3 - '@types/node': 26.0.1 + '@types/node': 12.20.52 jest-util: 29.7.0 jest-pnp-resolver@1.2.2(jest-resolve@29.7.0): optionalDependencies: jest-resolve: 29.7.0 - jest-preset-angular@14.0.3(d85e106a5ec2f88a07487ae770218af4): + jest-preset-angular@14.0.3(1768b93d21c3361974a224b326b8b84c): dependencies: - '@angular-devkit/build-angular': 15.2.10(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5))(@angular/platform-server@15.2.10(597020a0fe8c1c77567a7c05da2eed63))(ng-packagr@15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5))(typescript@4.9.5) - '@angular/compiler-cli': 15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5) - '@angular/core': 15.2.10(rxjs@7.5.7)(zone.js@0.11.5) - '@angular/platform-browser-dynamic': 15.2.10(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(@angular/platform-browser@15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))) + '@angular-devkit/build-angular': 15.2.10(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5))(@angular/platform-server@15.2.10(bb9340fd85b833f543ade9387312e178))(ng-packagr@15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5))(typescript@4.9.5) + '@angular/compiler-cli': 15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5) + '@angular/core': 15.2.10(rxjs@7.8.2)(zone.js@0.11.5) + '@angular/platform-browser-dynamic': 15.2.10(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(@angular/platform-browser@15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))) bs-logger: 0.2.6 esbuild-wasm: 0.17.19 - jest: 29.7.0(@types/node@26.0.1)(ts-node@10.9.1(@types/node@14.18.33)(typescript@4.9.5)) + jest: 29.7.0(@types/node@12.20.52)(ts-node@10.9.1(@types/node@12.20.52)(typescript@4.9.5)) jest-environment-jsdom: 29.7.0 jest-util: 29.7.0 pretty-format: 29.7.0 - ts-jest: 29.1.2(@babel/core@7.20.12)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.20.12))(esbuild@0.17.19)(jest@29.7.0(@types/node@26.0.1)(ts-node@10.9.1(@types/node@14.18.33)(typescript@4.9.5)))(typescript@4.9.5) + ts-jest: 29.1.2(@babel/core@7.20.12)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.20.12))(esbuild@0.17.19)(jest@29.7.0(@types/node@12.20.52)(ts-node@10.9.1(@types/node@12.20.52)(typescript@4.9.5)))(typescript@4.9.5) typescript: 4.9.5 optionalDependencies: esbuild: 0.17.19 @@ -15639,7 +15331,7 @@ snapshots: '@jest/test-result': 29.7.0 '@jest/transform': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 26.0.1 + '@types/node': 12.20.52 chalk: 4.1.2 emittery: 0.13.1 graceful-fs: 4.2.10 @@ -15667,7 +15359,7 @@ snapshots: '@jest/test-result': 29.7.0 '@jest/transform': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 26.0.1 + '@types/node': 12.20.52 chalk: 4.1.2 cjs-module-lexer: 1.2.2 collect-v8-coverage: 1.0.1 @@ -15713,7 +15405,7 @@ snapshots: jest-util@29.7.0: dependencies: '@jest/types': 29.6.3 - '@types/node': 26.0.1 + '@types/node': 12.20.52 chalk: 4.1.2 ci-info: 3.3.1 graceful-fs: 4.2.10 @@ -15732,7 +15424,7 @@ snapshots: dependencies: '@jest/test-result': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 26.0.1 + '@types/node': 12.20.52 ansi-escapes: 4.3.2 chalk: 4.1.2 emittery: 0.13.1 @@ -15741,23 +15433,23 @@ snapshots: jest-worker@27.5.1: dependencies: - '@types/node': 26.0.1 + '@types/node': 12.20.52 merge-stream: 2.0.0 supports-color: 8.1.1 jest-worker@29.7.0: dependencies: - '@types/node': 26.0.1 + '@types/node': 12.20.52 jest-util: 29.7.0 merge-stream: 2.0.0 supports-color: 8.1.1 - jest@29.7.0(@types/node@26.0.1)(ts-node@10.9.1(@types/node@14.18.33)(typescript@4.9.5)): + jest@29.7.0(@types/node@12.20.52)(ts-node@10.9.1(@types/node@12.20.52)(typescript@4.9.5)): dependencies: - '@jest/core': 29.7.0(ts-node@10.9.1(@types/node@14.18.33)(typescript@4.9.5)) + '@jest/core': 29.7.0(ts-node@10.9.1(@types/node@12.20.52)(typescript@4.9.5)) '@jest/types': 29.6.3 import-local: 3.1.0 - jest-cli: 29.7.0(@types/node@26.0.1)(ts-node@10.9.1(@types/node@14.18.33)(typescript@4.9.5)) + jest-cli: 29.7.0(@types/node@12.20.52)(ts-node@10.9.1(@types/node@12.20.52)(typescript@4.9.5)) transitivePeerDependencies: - '@types/node' - babel-plugin-macros @@ -16483,9 +16175,9 @@ snapshots: neo-async@2.6.2: {} - ng-packagr@15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5): + ng-packagr@15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5): dependencies: - '@angular/compiler-cli': 15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5) + '@angular/compiler-cli': 15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5) '@rollup/plugin-json': 6.1.0(rollup@3.29.4) '@rollup/plugin-node-resolve': 15.2.3(rollup@3.29.4) ajv: 8.11.0 @@ -17396,7 +17088,7 @@ snapshots: rollup@3.29.4: optionalDependencies: - fsevents: 2.3.3 + fsevents: 2.3.2 rollup@4.60.4: dependencies: @@ -17447,18 +17139,6 @@ snapshots: rx@4.1.0: {} - rxjs@5.5.12: - dependencies: - symbol-observable: 1.0.1 - - rxjs@6.6.7: - dependencies: - tslib: 1.14.1 - - rxjs@7.5.7: - dependencies: - tslib: 2.6.2 - rxjs@7.8.2: dependencies: tslib: 2.6.2 @@ -17493,7 +17173,7 @@ snapshots: dependencies: chokidar: 4.0.3 immutable: 5.1.5 - source-map-js: 1.2.1 + source-map-js: 1.0.2 optionalDependencies: '@parcel/watcher': 2.5.6 @@ -18087,8 +17767,6 @@ snapshots: supports-preserve-symlinks-flag@1.0.0: {} - symbol-observable@1.0.1: {} - symbol-observable@4.0.0: {} symbol-tree@3.2.4: {} @@ -18133,7 +17811,7 @@ snapshots: terser@5.16.3: dependencies: '@jridgewell/source-map': 0.3.6 - acorn: 8.11.3 + acorn: 8.7.1 commander: 2.20.3 source-map-support: 0.5.21 @@ -18231,11 +17909,11 @@ snapshots: dependencies: typescript: 4.9.5 - ts-jest@29.1.2(@babel/core@7.20.12)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.20.12))(esbuild@0.17.19)(jest@29.7.0(@types/node@26.0.1)(ts-node@10.9.1(@types/node@14.18.33)(typescript@4.9.5)))(typescript@4.9.5): + ts-jest@29.1.2(@babel/core@7.20.12)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.20.12))(esbuild@0.17.19)(jest@29.7.0(@types/node@12.20.52)(ts-node@10.9.1(@types/node@12.20.52)(typescript@4.9.5)))(typescript@4.9.5): dependencies: bs-logger: 0.2.6 fast-json-stable-stringify: 2.1.0 - jest: 29.7.0(@types/node@26.0.1)(ts-node@10.9.1(@types/node@14.18.33)(typescript@4.9.5)) + jest: 29.7.0(@types/node@12.20.52)(ts-node@10.9.1(@types/node@12.20.52)(typescript@4.9.5)) jest-util: 29.7.0 json5: 2.2.3 lodash.memoize: 4.1.2 @@ -18249,6 +17927,24 @@ snapshots: babel-jest: 29.7.0(@babel/core@7.20.12) esbuild: 0.17.19 + ts-node@10.9.1(@types/node@12.20.52)(typescript@4.9.5): + dependencies: + '@cspotcode/source-map-support': 0.8.1 + '@tsconfig/node10': 1.0.9 + '@tsconfig/node12': 1.0.11 + '@tsconfig/node14': 1.0.3 + '@tsconfig/node16': 1.0.3 + '@types/node': 12.20.52 + acorn: 8.7.1 + acorn-walk: 8.2.0 + arg: 4.1.3 + create-require: 1.1.1 + diff: 4.0.2 + make-error: 1.3.6 + typescript: 4.9.5 + v8-compile-cache-lib: 3.0.1 + yn: 3.1.1 + ts-node@10.9.1(@types/node@14.18.33)(typescript@4.9.5): dependencies: '@cspotcode/source-map-support': 0.8.1 @@ -18257,7 +17953,7 @@ snapshots: '@tsconfig/node14': 1.0.3 '@tsconfig/node16': 1.0.3 '@types/node': 14.18.33 - acorn: 8.11.3 + acorn: 8.7.1 acorn-walk: 8.2.0 arg: 4.1.3 create-require: 1.1.1 @@ -18283,12 +17979,6 @@ snapshots: tslib: 1.14.1 typescript: 5.9.3 - tsx@4.22.4: - dependencies: - esbuild: 0.28.1 - optionalDependencies: - fsevents: 2.3.3 - tuf-js@1.1.7: dependencies: '@tufjs/models': 1.0.4 @@ -18352,8 +18042,6 @@ snapshots: ua-parser-js@1.0.2: {} - undici-types@8.3.0: {} - undici@6.26.0: {} undici@7.24.4: {} @@ -18449,26 +18137,25 @@ snapshots: vary@1.1.2: {} - vite@7.3.2(@types/node@26.0.1)(less@4.1.3)(sass@1.97.3)(terser@5.16.3)(tsx@4.22.4): + vite@7.3.2(@types/node@12.20.52)(less@4.1.3)(sass@1.97.3)(terser@5.16.3): dependencies: esbuild: 0.27.3 fdir: 6.5.0(picomatch@4.0.4) picomatch: 4.0.4 postcss: 8.5.15 rollup: 4.60.4 - tinyglobby: 0.2.16 + tinyglobby: 0.2.15 optionalDependencies: - '@types/node': 26.0.1 + '@types/node': 12.20.52 fsevents: 2.3.3 less: 4.1.3 sass: 1.97.3 terser: 5.16.3 - tsx: 4.22.4 - vitest@4.1.7(@types/node@26.0.1)(jsdom@28.1.0)(vite@7.3.2(@types/node@26.0.1)(less@4.1.3)(sass@1.97.3)(terser@5.16.3)(tsx@4.22.4)): + vitest@4.1.7(@types/node@12.20.52)(jsdom@28.1.0)(vite@7.3.2(@types/node@12.20.52)(less@4.1.3)(sass@1.97.3)(terser@5.16.3)): dependencies: '@vitest/expect': 4.1.7 - '@vitest/mocker': 4.1.7(vite@7.3.2(@types/node@26.0.1)(less@4.1.3)(sass@1.97.3)(terser@5.16.3)(tsx@4.22.4)) + '@vitest/mocker': 4.1.7(vite@7.3.2(@types/node@12.20.52)(less@4.1.3)(sass@1.97.3)(terser@5.16.3)) '@vitest/pretty-format': 4.1.7 '@vitest/runner': 4.1.7 '@vitest/snapshot': 4.1.7 @@ -18485,10 +18172,10 @@ snapshots: tinyexec: 1.2.2 tinyglobby: 0.2.16 tinyrainbow: 3.1.0 - vite: 7.3.2(@types/node@26.0.1)(less@4.1.3)(sass@1.97.3)(terser@5.16.3)(tsx@4.22.4) + vite: 7.3.2(@types/node@12.20.52)(less@4.1.3)(sass@1.97.3)(terser@5.16.3) why-is-node-running: 2.3.0 optionalDependencies: - '@types/node': 26.0.1 + '@types/node': 12.20.52 jsdom: 28.1.0 transitivePeerDependencies: - msw From a3fe125ed23cf0328d52a7a337e82bd5b0accec5 Mon Sep 17 00:00:00 2001 From: Orkun Date: Wed, 1 Jul 2026 14:28:59 +0300 Subject: [PATCH 24/32] refactor: install ts dependencies for ci --- pnpm-lock.yaml | 943 +++++++++++++++++++++++++++++++++---------------- 1 file changed, 632 insertions(+), 311 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 49f4402..9a4d5d8 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -13,40 +13,40 @@ importers: dependencies: '@angular/animations': specifier: ^15.2.10 - version: 15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)) + version: 15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)) '@angular/common': specifier: ^15.2.10 - version: 15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2) + version: 15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7) '@angular/compiler': specifier: ^15.2.10 - version: 15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)) + version: 15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)) '@angular/core': specifier: ^15.2.10 - version: 15.2.10(rxjs@7.8.2)(zone.js@0.11.5) + version: 15.2.10(rxjs@7.5.7)(zone.js@0.11.5) '@angular/forms': specifier: ^15.2.10 - version: 15.2.10(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(@angular/platform-browser@15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(rxjs@7.8.2) + version: 15.2.10(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(@angular/platform-browser@15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(rxjs@7.5.7) '@angular/platform-browser': specifier: ^15.2.10 - version: 15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)) + version: 15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)) '@angular/platform-browser-dynamic': specifier: ^15.2.10 - version: 15.2.10(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(@angular/platform-browser@15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))) + version: 15.2.10(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(@angular/platform-browser@15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))) '@angular/platform-server': specifier: ^15.2.10 - version: 15.2.10(bb9340fd85b833f543ade9387312e178) + version: 15.2.10(597020a0fe8c1c77567a7c05da2eed63) '@angular/router': specifier: ^15.2.10 - version: 15.2.10(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(@angular/platform-browser@15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(rxjs@7.8.2) + version: 15.2.10(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(@angular/platform-browser@15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(rxjs@7.5.7) '@nguniversal/express-engine': specifier: ^15.2.1 - version: 15.2.1(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(@angular/platform-server@15.2.10(bb9340fd85b833f543ade9387312e178))(express@4.20.0) + version: 15.2.1(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(@angular/platform-server@15.2.10(597020a0fe8c1c77567a7c05da2eed63))(express@4.20.0) express: specifier: ^4.20.0 version: 4.20.0 rxjs: - specifier: ~7.8.0 - version: 7.8.2 + specifier: ~7.5.0 + version: 7.5.7 tslib: specifier: ^2.3.0 version: 2.5.0 @@ -56,7 +56,7 @@ importers: devDependencies: '@angular-devkit/build-angular': specifier: ^15.2.10 - version: 15.2.10(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5))(@angular/platform-server@15.2.10(bb9340fd85b833f543ade9387312e178))(ng-packagr@15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5))(typescript@4.9.5) + version: 15.2.10(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5))(@angular/platform-server@15.2.10(597020a0fe8c1c77567a7c05da2eed63))(ng-packagr@15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5))(typescript@4.9.5) '@angular-eslint/schematics': specifier: ^15.2.1 version: 15.2.1(@angular/cli@15.2.10(chokidar@3.5.3))(eslint@8.56.0)(typescript@4.9.5) @@ -65,10 +65,10 @@ importers: version: 15.2.10(chokidar@3.5.3) '@angular/compiler-cli': specifier: ^15.2.10 - version: 15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5) + version: 15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5) '@changesets/cli': specifier: ^2.31.0 - version: 2.31.0(@types/node@12.20.52) + version: 2.31.0(@types/node@26.0.1) '@commitlint/cli': specifier: ^17.2.0 version: 17.2.0 @@ -92,7 +92,7 @@ importers: version: 0.1.0 '@nguniversal/builders': specifier: ^15.2.1 - version: 15.2.1(@angular-devkit/build-angular@15.2.10(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5))(@angular/platform-server@15.2.10(bb9340fd85b833f543ade9387312e178))(ng-packagr@15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5))(typescript@4.9.5))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(@types/express@4.17.13)(chokidar@3.5.3)(typescript@4.9.5) + version: 15.2.1(@angular-devkit/build-angular@15.2.10(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5))(@angular/platform-server@15.2.10(597020a0fe8c1c77567a7c05da2eed63))(ng-packagr@15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5))(typescript@4.9.5))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(@types/express@4.17.13)(chokidar@3.5.3)(typescript@4.9.5) '@types/express': specifier: ^4.17.0 version: 4.17.13 @@ -100,14 +100,17 @@ importers: specifier: ^29.5.12 version: 29.5.12 '@types/node': - specifier: ^12.11.1 - version: 12.20.52 + specifier: ^26.0.1 + version: 26.0.1 '@typescript-eslint/eslint-plugin': specifier: ^6.21.0 version: 6.21.0(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0)(typescript@4.9.5) '@typescript-eslint/parser': specifier: ^6.21.0 version: 6.21.0(eslint@8.56.0)(typescript@4.9.5) + comment-json: + specifier: ^5.0.0 + version: 5.0.0 commitizen: specifier: ^4.2.5 version: 4.2.5 @@ -125,19 +128,22 @@ importers: version: 4.0.1 jest: specifier: ^29.7.0 - version: 29.7.0(@types/node@12.20.52)(ts-node@10.9.1(@types/node@12.20.52)(typescript@4.9.5)) + version: 29.7.0(@types/node@26.0.1)(ts-node@10.9.1(@types/node@26.0.1)(typescript@4.9.5)) jest-preset-angular: specifier: ^14.0.3 - version: 14.0.3(1768b93d21c3361974a224b326b8b84c) + version: 14.0.3(a4921321e0bd129e68f0d6277f983f15) lint-staged: specifier: ^13.0.3 version: 13.0.3(enquirer@2.4.1) ng-packagr: specifier: ^15.2.2 - version: 15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5) + version: 15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5) prettier: specifier: ^3.2.4 version: 3.2.5 + tsx: + specifier: ^4.22.4 + version: 4.22.4 typedoc: specifier: ^0.24.8 version: 0.24.8(typescript@4.9.5) @@ -158,13 +164,13 @@ importers: version: 21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5) '@angular/forms': specifier: ^21.2.0 - version: 21.2.14(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(@angular/platform-browser@21.2.14(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5)))(rxjs@7.8.2) + version: 21.2.14(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(@angular/platform-browser@21.2.14(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5)))(rxjs@7.8.2) '@angular/platform-browser': specifier: ^21.2.0 - version: 21.2.14(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5)) + version: 21.2.14(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5)) '@angular/router': specifier: ^21.2.0 - version: 21.2.14(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(@angular/platform-browser@21.2.14(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5)))(rxjs@7.8.2) + version: 21.2.14(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(@angular/platform-browser@21.2.14(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5)))(rxjs@7.8.2) '@fingerprint/agent': specifier: ^4.0.0 version: 4.0.3 @@ -186,16 +192,16 @@ importers: version: 15.2.1(eslint@8.56.0)(typescript@5.9.3) '@angular-eslint/schematics': specifier: 15.2.1 - version: 15.2.1(@angular/cli@21.2.12(@types/node@12.20.52)(chokidar@5.0.0))(eslint@8.56.0)(typescript@5.9.3) + version: 15.2.1(@angular/cli@21.2.12(@types/node@26.0.1)(chokidar@5.0.0))(eslint@8.56.0)(typescript@5.9.3) '@angular-eslint/template-parser': specifier: 15.2.1 version: 15.2.1(eslint@8.56.0)(typescript@5.9.3) '@angular/build': specifier: ^21.2.12 - version: 21.2.12(8124ac35316412ffa9726ce4256f5c59) + version: 21.2.12(999253b22980c8ff7ebcfd6e4ca36da1) '@angular/cli': specifier: ^21.2.12 - version: 21.2.12(@types/node@12.20.52)(chokidar@5.0.0) + version: 21.2.12(@types/node@26.0.1)(chokidar@5.0.0) '@angular/compiler-cli': specifier: ^21.2.0 version: 21.2.14(@angular/compiler@21.2.14)(typescript@5.9.3) @@ -219,7 +225,7 @@ importers: version: 5.9.3 vitest: specifier: ^4.0.8 - version: 4.1.7(@types/node@12.20.52)(jsdom@28.1.0)(vite@7.3.2(@types/node@12.20.52)(less@4.1.3)(sass@1.97.3)(terser@5.16.3)) + version: 4.1.7(@types/node@26.0.1)(jsdom@28.1.0)(vite@7.3.2(@types/node@26.0.1)(less@4.1.3)(sass@1.97.3)(terser@5.16.3)(tsx@4.22.4)) projects/fingerprintjs-pro-angular: dependencies: @@ -486,14 +492,14 @@ packages: engines: {node: ^14.20.0 || ^16.13.0 || >=18.10.0} peerDependencies: '@angular/core': 15.2.10 - rxjs: ~7.8.0 + rxjs: ^6.5.3 || ^7.4.0 '@angular/common@21.2.14': resolution: {integrity: sha512-J6K7cE7uKOKmg4+sxLeGfsmaYDjP5l1XCiMMI0WPT0t68uxLk8g3MzV5Trqfb6ZnRxWcfp9c4c+XxAvMBB7ymA==} engines: {node: ^20.19.0 || ^22.12.0 || >=24.0.0} peerDependencies: '@angular/core': 21.2.14 - rxjs: ~7.8.0 + rxjs: ^6.5.3 || ^7.4.0 '@angular/compiler-cli@15.2.10': resolution: {integrity: sha512-mCFIxrs60XicKfA2o42hA7LrQvhybi9BQveWuZn/2iIEOXx7R62Iemz8E21pLWftAZHGxEW3NECfBrY1d3gVmA==} @@ -531,7 +537,7 @@ packages: resolution: {integrity: sha512-meGGidnitQJGDxYd9/LrqYiVlId+vGaLoiLgJdKBz+o2ZO6OmXQGuNw2VBqf17/Cc0/UjzrOY7+kILNFKkk/WQ==} engines: {node: ^14.20.0 || ^16.13.0 || >=18.10.0} peerDependencies: - rxjs: ~7.8.0 + rxjs: ^6.5.3 || ^7.4.0 zone.js: ~0.11.4 || ~0.12.0 || ~0.13.0 '@angular/core@21.2.14': @@ -539,7 +545,7 @@ packages: engines: {node: ^20.19.0 || ^22.12.0 || >=24.0.0} peerDependencies: '@angular/compiler': 21.2.14 - rxjs: ~7.8.0 + rxjs: ^6.5.3 || ^7.4.0 zone.js: ~0.15.0 || ~0.16.0 peerDependenciesMeta: '@angular/compiler': @@ -554,7 +560,7 @@ packages: '@angular/common': 15.2.10 '@angular/core': 15.2.10 '@angular/platform-browser': 15.2.10 - rxjs: ~7.8.0 + rxjs: ^6.5.3 || ^7.4.0 '@angular/forms@21.2.14': resolution: {integrity: sha512-HQYIybyMt0CrI31rW6vXbiDsSM2DDtTcOVeT/nWDRNCoqBrREDg8rVsm2Y+fUMsiQVJNa6dCXPwvYhjzJ4r7ug==} @@ -563,7 +569,7 @@ packages: '@angular/common': 21.2.14 '@angular/core': 21.2.14 '@angular/platform-browser': 21.2.14 - rxjs: ~7.8.0 + rxjs: ^6.5.3 || ^7.4.0 '@angular/platform-browser-dynamic@15.2.10': resolution: {integrity: sha512-JHP6W+FX715Qv7DhqvfZLuBZXSDJrboiQsR06gUAgDSjAUyhbqmpVg/2YOtgeWpPkzNDtXdPU2PhcRdIv5J3Yg==} @@ -614,7 +620,7 @@ packages: '@angular/common': 15.2.10 '@angular/core': 15.2.10 '@angular/platform-browser': 15.2.10 - rxjs: ~7.8.0 + rxjs: ^6.5.3 || ^7.4.0 '@angular/router@21.2.14': resolution: {integrity: sha512-Yo3LdgcqkfMu2/Ycl8o/4QjCBqZhtA+a7B8JVdW5cWdrpFTxKCOrzm+YRUMuIFmH5nzSv9oGnUuz64uk1+7r5Q==} @@ -623,7 +629,7 @@ packages: '@angular/common': 21.2.14 '@angular/core': 21.2.14 '@angular/platform-browser': 21.2.14 - rxjs: ~7.8.0 + rxjs: ^6.5.3 || ^7.4.0 '@asamuzakjp/css-color@5.1.11': resolution: {integrity: sha512-KVw6qIiCTUQhByfTd78h2yD1/00waTmm9uy/R7Ck/ctUyAPj+AEDLkQIdJW0T8+qGgj3j5bpNKK7Q3G+LedJWg==} @@ -1515,6 +1521,12 @@ packages: cpu: [ppc64] os: [aix] + '@esbuild/aix-ppc64@0.28.1': + resolution: {integrity: sha512-Svl7tq8k/08+p6CXPpRjQ1fKX+1odH/BQbb48fV6fj3CWHhsoIOoY87w1oHXm0qEpkIK3ZfVgp0hed3XBXzXMQ==} + engines: {node: '>=18'} + cpu: [ppc64] + os: [aix] + '@esbuild/android-arm64@0.17.19': resolution: {integrity: sha512-KBMWvEZooR7+kzY0BtbTQn0OAYY7CsiydT63pVEaPtVYF0hXbUaOyZog37DKxK7NF3XacBJOpYT4adIJh+avxA==} engines: {node: '>=12'} @@ -1533,6 +1545,12 @@ packages: cpu: [arm64] os: [android] + '@esbuild/android-arm64@0.28.1': + resolution: {integrity: sha512-34EGEbCIAgosYz6goLcopX6Mo7NyGv9tfwEM2/7Ce2VcVRk568iSvniGWcUXIy7wEDR1wzolcxcriFVrWYcwBg==} + engines: {node: '>=18'} + cpu: [arm64] + os: [android] + '@esbuild/android-arm@0.17.19': resolution: {integrity: sha512-rIKddzqhmav7MSmoFCmDIb6e2W57geRsM94gV2l38fzhXMwq7hZoClug9USI2pFRGL06f4IOPHHpFNOkWieR8A==} engines: {node: '>=12'} @@ -1551,6 +1569,12 @@ packages: cpu: [arm] os: [android] + '@esbuild/android-arm@0.28.1': + resolution: {integrity: sha512-0k2F129Xdio1TdJfzJ8sy1Q47vUD2NnwdhiAf7drUN1EBTfPf4hsFCtmMgu/6m8JSzsBrlmVjudMBQqOfG8usQ==} + engines: {node: '>=18'} + cpu: [arm] + os: [android] + '@esbuild/android-x64@0.17.19': resolution: {integrity: sha512-uUTTc4xGNDT7YSArp/zbtmbhO0uEEK9/ETW29Wk1thYUJBz3IVnvgEiEwEa9IeLyvnpKrWK64Utw2bgUmDveww==} engines: {node: '>=12'} @@ -1569,6 +1593,12 @@ packages: cpu: [x64] os: [android] + '@esbuild/android-x64@0.28.1': + resolution: {integrity: sha512-dbwY7ltSMDWsRatcRpCnES4F+im88OCUgGZjy52shC7GqHRE/cYlxNbB4Z4UpJswpcc4Qxd2oE/ufM0p61IKng==} + engines: {node: '>=18'} + cpu: [x64] + os: [android] + '@esbuild/darwin-arm64@0.17.19': resolution: {integrity: sha512-80wEoCfF/hFKM6WE1FyBHc9SfUblloAWx6FJkFWTWiCoht9Mc0ARGEM47e67W9rI09YoUxJL68WHfDRYEAvOhg==} engines: {node: '>=12'} @@ -1587,6 +1617,12 @@ packages: cpu: [arm64] os: [darwin] + '@esbuild/darwin-arm64@0.28.1': + resolution: {integrity: sha512-TZbWkQY7kvTAXbXUT7uVACR5cMHsDiSz9z7ZKAX/RTq/WJEk3QyRr0wZpNhBDX+/0CtdqUIJlOiodQcta6tY3Q==} + engines: {node: '>=18'} + cpu: [arm64] + os: [darwin] + '@esbuild/darwin-x64@0.17.19': resolution: {integrity: sha512-IJM4JJsLhRYr9xdtLytPLSH9k/oxR3boaUIYiHkAawtwNOXKE8KoU8tMvryogdcT8AU+Bflmh81Xn6Q0vTZbQw==} engines: {node: '>=12'} @@ -1605,6 +1641,12 @@ packages: cpu: [x64] os: [darwin] + '@esbuild/darwin-x64@0.28.1': + resolution: {integrity: sha512-zfdzgK9ACBNZLI/CyHTOx81SyNbM6YXn7rxSgX97VjyiPl9W1i4Ka4fgKECEoFCKGpvBj5qArWIGgQjOwkgskQ==} + engines: {node: '>=18'} + cpu: [x64] + os: [darwin] + '@esbuild/freebsd-arm64@0.17.19': resolution: {integrity: sha512-pBwbc7DufluUeGdjSU5Si+P3SoMF5DQ/F/UmTSb8HXO80ZEAJmrykPyzo1IfNbAoaqw48YRpv8shwd1NoI0jcQ==} engines: {node: '>=12'} @@ -1623,6 +1665,12 @@ packages: cpu: [arm64] os: [freebsd] + '@esbuild/freebsd-arm64@0.28.1': + resolution: {integrity: sha512-wG2EA8ENdEI0qhkSZMjfqrdY+ziCYCPMmtZjjIwOmXFjmyzEHn+UUxk5of+SYsjtfs3VpnlC7QLzSI5hY/rOAw==} + engines: {node: '>=18'} + cpu: [arm64] + os: [freebsd] + '@esbuild/freebsd-x64@0.17.19': resolution: {integrity: sha512-4lu+n8Wk0XlajEhbEffdy2xy53dpR06SlzvhGByyg36qJw6Kpfk7cp45DR/62aPH9mtJRmIyrXAS5UWBrJT6TQ==} engines: {node: '>=12'} @@ -1641,6 +1689,12 @@ packages: cpu: [x64] os: [freebsd] + '@esbuild/freebsd-x64@0.28.1': + resolution: {integrity: sha512-i7dZ9vQgnvSCzi/rYCXNgtF/U+eKZNJBzu3eTQbRgHnM7tNSizLOkRFAl3qzVc/Op/u5YkHHa4pf/3DOYHthLQ==} + engines: {node: '>=18'} + cpu: [x64] + os: [freebsd] + '@esbuild/linux-arm64@0.17.19': resolution: {integrity: sha512-ct1Tg3WGwd3P+oZYqic+YZF4snNl2bsnMKRkb3ozHmnM0dGWuxcPTTntAF6bOP0Sp4x0PjSF+4uHQ1xvxfRKqg==} engines: {node: '>=12'} @@ -1659,6 +1713,12 @@ packages: cpu: [arm64] os: [linux] + '@esbuild/linux-arm64@0.28.1': + resolution: {integrity: sha512-yHs+0uc8+nvEAfAfxrWQKK5peSNzBc4PegcMO0EJ2hT71uA7vB8Ihg2e77R2P7SG5uYjPbHlLLmve4LLLRCf0g==} + engines: {node: '>=18'} + cpu: [arm64] + os: [linux] + '@esbuild/linux-arm@0.17.19': resolution: {integrity: sha512-cdmT3KxjlOQ/gZ2cjfrQOtmhG4HJs6hhvm3mWSRDPtZ/lP5oe8FWceS10JaSJC13GBd4eH/haHnqf7hhGNLerA==} engines: {node: '>=12'} @@ -1677,6 +1737,12 @@ packages: cpu: [arm] os: [linux] + '@esbuild/linux-arm@0.28.1': + resolution: {integrity: sha512-qVXBOHQS+d5Y722GwJzJUtOLlX7km3CraOaGormF1pDtPd2C/l1SHRPgjLunLGe51Sh5YYWKMFDyV4SxgMQYTQ==} + engines: {node: '>=18'} + cpu: [arm] + os: [linux] + '@esbuild/linux-ia32@0.17.19': resolution: {integrity: sha512-w4IRhSy1VbsNxHRQpeGCHEmibqdTUx61Vc38APcsRbuVgK0OPEnQ0YD39Brymn96mOx48Y2laBQGqgZ0j9w6SQ==} engines: {node: '>=12'} @@ -1695,6 +1761,12 @@ packages: cpu: [ia32] os: [linux] + '@esbuild/linux-ia32@0.28.1': + resolution: {integrity: sha512-d1z4ZuP0ajrfz/FhGT4vv278rX8KnPPJx8i5+AtK7TYbx9Le9F1hyzurZpkEyjkGa9dUGhQow4C1NmeGvqxN2w==} + engines: {node: '>=18'} + cpu: [ia32] + os: [linux] + '@esbuild/linux-loong64@0.17.19': resolution: {integrity: sha512-2iAngUbBPMq439a+z//gE+9WBldoMp1s5GWsUSgqHLzLJ9WoZLZhpwWuym0u0u/4XmZ3gpHmzV84PonE+9IIdQ==} engines: {node: '>=12'} @@ -1713,6 +1785,12 @@ packages: cpu: [loong64] os: [linux] + '@esbuild/linux-loong64@0.28.1': + resolution: {integrity: sha512-M5sRjUVZrkm1OAPR3dlOYzNmN+loZKGVi1VUQGrwuqLcbR6qeAz+famMhjASeH3YVKvZz+zT1jlh/keC3Rj/lg==} + engines: {node: '>=18'} + cpu: [loong64] + os: [linux] + '@esbuild/linux-mips64el@0.17.19': resolution: {integrity: sha512-LKJltc4LVdMKHsrFe4MGNPp0hqDFA1Wpt3jE1gEyM3nKUvOiO//9PheZZHfYRfYl6AwdTH4aTcXSqBerX0ml4A==} engines: {node: '>=12'} @@ -1731,6 +1809,12 @@ packages: cpu: [mips64el] os: [linux] + '@esbuild/linux-mips64el@0.28.1': + resolution: {integrity: sha512-mRObBZeHh2OxcBFPWE/FjylkRgZdYuiTR3vaTozquCGOH14iP9oN4x4Ge81CoIDYQrXmIxpFumJBu5MtZpnQJQ==} + engines: {node: '>=18'} + cpu: [mips64el] + os: [linux] + '@esbuild/linux-ppc64@0.17.19': resolution: {integrity: sha512-/c/DGybs95WXNS8y3Ti/ytqETiW7EU44MEKuCAcpPto3YjQbyK3IQVKfF6nbghD7EcLUGl0NbiL5Rt5DMhn5tg==} engines: {node: '>=12'} @@ -1749,6 +1833,12 @@ packages: cpu: [ppc64] os: [linux] + '@esbuild/linux-ppc64@0.28.1': + resolution: {integrity: sha512-slScBsMAb3GFDcdrCgLwZtPYRoH2H/youv10QiZyRjmsP48fznoveWytSgCI/R0ZcUgpc0ZhIUEx6LHts8yrfQ==} + engines: {node: '>=18'} + cpu: [ppc64] + os: [linux] + '@esbuild/linux-riscv64@0.17.19': resolution: {integrity: sha512-FC3nUAWhvFoutlhAkgHf8f5HwFWUL6bYdvLc/TTuxKlvLi3+pPzdZiFKSWz/PF30TB1K19SuCxDTI5KcqASJqA==} engines: {node: '>=12'} @@ -1767,6 +1857,12 @@ packages: cpu: [riscv64] os: [linux] + '@esbuild/linux-riscv64@0.28.1': + resolution: {integrity: sha512-kw0owk1o0GFETUJyW0jc0G4Yzs0BHZn0JDZ8JRT088vjJYX777BAs1fDGxAC+q831qOs2DTC96mNsG2opdfyyQ==} + engines: {node: '>=18'} + cpu: [riscv64] + os: [linux] + '@esbuild/linux-s390x@0.17.19': resolution: {integrity: sha512-IbFsFbxMWLuKEbH+7sTkKzL6NJmG2vRyy6K7JJo55w+8xDk7RElYn6xvXtDW8HCfoKBFK69f3pgBJSUSQPr+4Q==} engines: {node: '>=12'} @@ -1785,6 +1881,12 @@ packages: cpu: [s390x] os: [linux] + '@esbuild/linux-s390x@0.28.1': + resolution: {integrity: sha512-/lAIjX8aYFRByhh6L5rYtPEDRqa9de/4V/juOXcta5frjvzXO4/sqEtyytse0g3zZFuWu5cDN0MkLz2qRDD2Ag==} + engines: {node: '>=18'} + cpu: [s390x] + os: [linux] + '@esbuild/linux-x64@0.17.19': resolution: {integrity: sha512-68ngA9lg2H6zkZcyp22tsVt38mlhWde8l3eJLWkyLrp4HwMUr3c1s/M2t7+kHIhvMjglIBrFpncX1SzMckomGw==} engines: {node: '>=12'} @@ -1803,12 +1905,24 @@ packages: cpu: [x64] os: [linux] + '@esbuild/linux-x64@0.28.1': + resolution: {integrity: sha512-u/anNYF2mmVOEDwLtnQ1wOr3EZ9sTNGLWrsYGYwHWzGA3Si84IOkHXlbWTD1NB+9/1lcnweYKO54uhxZydNzfA==} + engines: {node: '>=18'} + cpu: [x64] + os: [linux] + '@esbuild/netbsd-arm64@0.27.3': resolution: {integrity: sha512-sDpk0RgmTCR/5HguIZa9n9u+HVKf40fbEUt+iTzSnCaGvY9kFP0YKBWZtJaraonFnqef5SlJ8/TiPAxzyS+UoA==} engines: {node: '>=18'} cpu: [arm64] os: [netbsd] + '@esbuild/netbsd-arm64@0.28.1': + resolution: {integrity: sha512-oks0DYbLwWMmaakTsCb+zL4E+aHRVLom9IJZOAthMQEPiQmydXHkziYEsGYRx0uNV/IjEKGAV941JzH02pflqw==} + engines: {node: '>=18'} + cpu: [arm64] + os: [netbsd] + '@esbuild/netbsd-x64@0.17.19': resolution: {integrity: sha512-CwFq42rXCR8TYIjIfpXCbRX0rp1jo6cPIUPSaWwzbVI4aOfX96OXY8M6KNmtPcg7QjYeDmN+DD0Wp3LaBOLf4Q==} engines: {node: '>=12'} @@ -1827,12 +1941,24 @@ packages: cpu: [x64] os: [netbsd] + '@esbuild/netbsd-x64@0.28.1': + resolution: {integrity: sha512-aeL6lAnN89Hz43Mlh1G8ARasbuoYvSITDEx0tHh5b7jJnHcssqgjy9Yx430GDpmCa6OyrKoS0aNRjKundRizGg==} + engines: {node: '>=18'} + cpu: [x64] + os: [netbsd] + '@esbuild/openbsd-arm64@0.27.3': resolution: {integrity: sha512-AIcMP77AvirGbRl/UZFTq5hjXK+2wC7qFRGoHSDrZ5v5b8DK/GYpXW3CPRL53NkvDqb9D+alBiC/dV0Fb7eJcw==} engines: {node: '>=18'} cpu: [arm64] os: [openbsd] + '@esbuild/openbsd-arm64@0.28.1': + resolution: {integrity: sha512-MEFJe5C3R8pwXdZ5Y21oo6m7ePiS0d9pWucn99O/wvyJZChoIQKrQDxKrGeW8F5+T0okTHesAmDeiHDTIq0V/Q==} + engines: {node: '>=18'} + cpu: [arm64] + os: [openbsd] + '@esbuild/openbsd-x64@0.17.19': resolution: {integrity: sha512-cnq5brJYrSZ2CF6c35eCmviIN3k3RczmHz8eYaVlNasVqsNY+JKohZU5MKmaOI+KkllCdzOKKdPs762VCPC20g==} engines: {node: '>=12'} @@ -1851,12 +1977,24 @@ packages: cpu: [x64] os: [openbsd] + '@esbuild/openbsd-x64@0.28.1': + resolution: {integrity: sha512-i/ZLIOafE0Z8cI/XANJAixoJL/uRAoS2xOA3rb0xN+KK0K177cMAsQYkzHtBrtMXAKuAc7HGgcWiZ/sRC1Nxgw==} + engines: {node: '>=18'} + cpu: [x64] + os: [openbsd] + '@esbuild/openharmony-arm64@0.27.3': resolution: {integrity: sha512-NinAEgr/etERPTsZJ7aEZQvvg/A6IsZG/LgZy+81wON2huV7SrK3e63dU0XhyZP4RKGyTm7aOgmQk0bGp0fy2g==} engines: {node: '>=18'} cpu: [arm64] os: [openharmony] + '@esbuild/openharmony-arm64@0.28.1': + resolution: {integrity: sha512-ge+Z7EXFNt2BO1oAMsVpiQ8EwndV9i1xXerAeTIK7AtPs3bKFXQM7nlRxDSIUIMeueR1CNXxqztLzdNeReKBJg==} + engines: {node: '>=18'} + cpu: [arm64] + os: [openharmony] + '@esbuild/sunos-x64@0.17.19': resolution: {integrity: sha512-vCRT7yP3zX+bKWFeP/zdS6SqdWB8OIpaRq/mbXQxTGHnIxspRtigpkUcDMlSCOejlHowLqII7K2JKevwyRP2rg==} engines: {node: '>=12'} @@ -1875,6 +2013,12 @@ packages: cpu: [x64] os: [sunos] + '@esbuild/sunos-x64@0.28.1': + resolution: {integrity: sha512-BEjgtECkL3vY+SaSQ6nzVfiALUeFxpawyp8Jmf5PtYhf1Ug40N1h/hxlhts+f1FvSvarEigdxS3BlSMI2PJLcQ==} + engines: {node: '>=18'} + cpu: [x64] + os: [sunos] + '@esbuild/win32-arm64@0.17.19': resolution: {integrity: sha512-yYx+8jwowUstVdorcMdNlzklLYhPxjniHWFKgRqH7IFlUEa0Umu3KuYplf1HUZZ422e3NU9F4LGb+4O0Kdcaag==} engines: {node: '>=12'} @@ -1893,6 +2037,12 @@ packages: cpu: [arm64] os: [win32] + '@esbuild/win32-arm64@0.28.1': + resolution: {integrity: sha512-lCv9eK/H6ZJWbE7bh2nw54CZ9M2nupBxJcTsdk/QQnWkdSjKGuxmmH8/GWrlT1eMmZfn4dGcCjRte397WqfQXA==} + engines: {node: '>=18'} + cpu: [arm64] + os: [win32] + '@esbuild/win32-ia32@0.17.19': resolution: {integrity: sha512-eggDKanJszUtCdlVs0RB+h35wNlb5v4TWEkq4vZcmVt5u/HiDZrTXe2bWFQUez3RgNHwx/x4sk5++4NSSicKkw==} engines: {node: '>=12'} @@ -1911,6 +2061,12 @@ packages: cpu: [ia32] os: [win32] + '@esbuild/win32-ia32@0.28.1': + resolution: {integrity: sha512-zvb/mB2bSCoJOpoCBgYKKpX6YM6mJBlBUVUtVj41DlZJVEB6/0CKlRYxP5wWl1C1ILiCoAU5wZZ4q1P3qeS6Eg==} + engines: {node: '>=18'} + cpu: [ia32] + os: [win32] + '@esbuild/win32-x64@0.17.19': resolution: {integrity: sha512-lAhycmKnVOuRYNtRtatQR1LPQf2oYCkRGkSFnseDAKPl8lu5SOsK/e1sXe5a0Pc5kHIHe6P2I/ilntNv2xf3cA==} engines: {node: '>=12'} @@ -1929,6 +2085,12 @@ packages: cpu: [x64] os: [win32] + '@esbuild/win32-x64@0.28.1': + resolution: {integrity: sha512-bm4Mowrv+GXMlpWX++EcXw/iLyd1o3+bJkC2DkWXYVvgZCqD/bSj9ctZeAMC3cIxgjRVR2Dufaiu4YPxr5gW1A==} + engines: {node: '>=18'} + cpu: [x64] + os: [win32] + '@eslint-community/eslint-utils@4.4.0': resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} @@ -2235,10 +2397,6 @@ packages: '@jridgewell/remapping@2.3.5': resolution: {integrity: sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ==} - '@jridgewell/resolve-uri@3.0.7': - resolution: {integrity: sha512-8cXDaBBHOr2pQ7j77Y6Vp5VDT2sIqWyWQ56TjEq4ih/a4iST3dItRe8Q9fp0rrIl9DoKhWQtUQz/YpOxLkXbNA==} - engines: {node: '>=6.0.0'} - '@jridgewell/resolve-uri@3.1.2': resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==} engines: {node: '>=6.0.0'} @@ -3143,6 +3301,9 @@ packages: '@types/node@18.11.9': resolution: {integrity: sha512-CRpX21/kGdzjOpFsZSkcrXMGIBWMGNIHXXBVFSH+ggkftxg+XYP20TESbh+zFvFj3EQOl5byk0HTRn1IL6hbqg==} + '@types/node@26.0.1': + resolution: {integrity: sha512-fc3KiUoBt6kie0N9bIW3E47vZsuaMf0PM2AaUpLCLT0s/LvX1nxAim6Fc049cNxODPpGm6qRAuUOB86SkRuPQw==} + '@types/normalize-package-data@2.4.1': resolution: {integrity: sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw==} @@ -3684,6 +3845,9 @@ packages: array-ify@1.0.0: resolution: {integrity: sha512-c5AMf34bKdvPhQ7tBGhqkgKNUzMr4WUs+WDtC2ZUGOUncbxKMTvqxYctiseW3+L4bA8ec+GcZ6/A/FW4m8ukng==} + array-timsort@1.0.3: + resolution: {integrity: sha512-/+3GRL7dDAGEfM6TseQk/U+mi18TU2Ms9I3UlLdUMhz2hbvGNTKdj9xniwXfUqgYhHxRx0+8UnKkvlNwVU+cWQ==} + array-union@2.1.0: resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==} engines: {node: '>=8'} @@ -4142,6 +4306,10 @@ packages: resolution: {integrity: sha512-5EEkTNyHNGFPD2H+c/dXXfQZYa/scCKasxWcXJaWnNJ99pnQN9Vnmqow+p+PlFPE63Q6mThaZws1T+HxfpgtPw==} engines: {node: ^12.20.0 || >=14} + comment-json@5.0.0: + resolution: {integrity: sha512-uiqLcOiVDJtBP8WGkZHEP+FZIhTzP1dxvn59EfoYUi9gqupjrBWVQkO2atDrbnKPwLeotFYDsuNb26uBMqB+hw==} + engines: {node: '>= 6'} + commitizen@4.2.5: resolution: {integrity: sha512-9sXju8Qrz1B4Tw7kC5KhnvwYQN88qs2zbiB8oyMsnXZyJ24PPGiNM3nHr73d32dnE3i8VJEXddBFIbOgYSEXtQ==} engines: {node: '>= 12'} @@ -4724,6 +4892,11 @@ packages: engines: {node: '>=18'} hasBin: true + esbuild@0.28.1: + resolution: {integrity: sha512-HrJrvZv5ayxBzPfwphOoNzkzOIIlifzk0KJrGK2c8R4+LKpMtpYLQeUdjnwjWv/LZlkH2laZk+4w78pi99D4Vw==} + engines: {node: '>=18'} + hasBin: true + escalade@3.1.1: resolution: {integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==} engines: {node: '>=6'} @@ -5078,11 +5251,6 @@ packages: fs.realpath@1.0.0: resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} - fsevents@2.3.2: - resolution: {integrity: sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==} - engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} - os: [darwin] - fsevents@2.3.3: resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} @@ -5134,7 +5302,7 @@ packages: git-raw-commits@2.0.11: resolution: {integrity: sha512-VnctFhw+xfj8Va1xtfEqCUD2XDrbAPSJx+hSrE5K7fGdjZruW7XV+QOrN7LF/RJyvspRiD2I0asWsxFp0ya26A==} engines: {node: '>=10'} - deprecated: This package is no longer maintained. For the JavaScript API, please use @conventional-changelog/git-client instead. + deprecated: Deprecated and no longer maintained. Use @conventional-changelog/git-client instead. hasBin: true glob-parent@5.1.2: @@ -7367,6 +7535,17 @@ packages: rx@4.1.0: resolution: {integrity: sha512-CiaiuN6gapkdl+cZUr67W6I8jquN4lkak3vtIsIWCl4XIPP8ffsoyN6/+PuGXnQy8Cu8W2y9Xxh31Rq4M6wUug==} + rxjs@5.5.12: + resolution: {integrity: sha512-xx2itnL5sBbqeeiVgNPVuQQ1nC8Jp2WfNJhXWHmElW9YmrpS9UVnNzhP3EH3HFqexO5Tlp8GhYY+WEcqcVMvGw==} + engines: {npm: '>=2.0.0'} + + rxjs@6.6.7: + resolution: {integrity: sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==} + engines: {npm: '>=2.0.0'} + + rxjs@7.5.7: + resolution: {integrity: sha512-z9MzKh/UcOqB3i20H6rtrlaE/CgjLOvheWK/9ILrbhROGTweAi1BaFsTT9FbwZi5Trr1qNRs+MXkhmR06awzQA==} + rxjs@7.8.2: resolution: {integrity: sha512-dhKf903U/PQZY6boNNtAGdWbG85WAbjT/1xYoZIC7FAY0yWapOBQVsVrDl58W86//e1VpMNBtRV4MaXfdMySFA==} @@ -7864,6 +8043,10 @@ packages: resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} engines: {node: '>= 0.4'} + symbol-observable@1.0.1: + resolution: {integrity: sha512-Kb3PrPYz4HanVF1LVGuAdW6LoVgIwjUYJGzFe7NDrBLCN4lsV/5J0MFurV+ygS4bRVwrCEt2c7MQ1R2a72oJDw==} + engines: {node: '>=0.10.0'} + symbol-observable@4.0.0: resolution: {integrity: sha512-b19dMThMV4HVFynSAM1++gBHAbk2Tc/osgLIBZMKsyqh34jb2e8Os7T6ZW/Bt3pJFdBTd2JwAnAAEQV7rSNvcQ==} engines: {node: '>=0.10'} @@ -8069,6 +8252,11 @@ packages: peerDependencies: typescript: '>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta' + tsx@4.22.4: + resolution: {integrity: sha512-X8EX+XV4QR5xCsrgxaED954zTDfY8KqlDtskKEL0cHhyS/P8b4IFOvGDQpsC9Q1XnLq915wEfwwY/zzskCtmhg==} + engines: {node: '>=18.0.0'} + hasBin: true + tuf-js@1.1.7: resolution: {integrity: sha512-i3P9Kgw3ytjELUfpuKVDNBJvk4u5bXL6gskv572mcevPbSKCV3zt3djhmlEQ65yERjIbOSncy7U4cQJaB1CBCg==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} @@ -8141,6 +8329,9 @@ packages: resolution: {integrity: sha512-00y/AXhx0/SsnI51fTc0rLRmafiGOM4/O+ny10Ps7f+j/b8p/ZY11ytMgznXkOVo4GQ+KwQG5UQLkLGirsACRg==} deprecated: You are using an outdated version of ua-parser-js. Please update to ua-parser-js v0.7.33 / v1.0.33 / v2.0.0 (or later) to avoid ReDoS vulnerability [CVE-2022-25927](https://github.com/advisories/GHSA-fhg7-m89q-25r3) + undici-types@8.3.0: + resolution: {integrity: sha512-j375ScV60dom+YkPFIfTLcOiPxkN/buHz5GobjLhixFuANaNs3C9l4GmrWqejgXWJ7BbJcFYpTEUkS1Ge8bpZQ==} + undici@6.26.0: resolution: {integrity: sha512-4yqz8a3n5HmGTlsbADNtr/dJlhkh/55Rq798G6ibiULcXbDtaLpTl1pvdqcbFfeoj3iSi52lePFM7h9H21cw/A==} engines: {node: '>=18.17'} @@ -8798,7 +8989,7 @@ snapshots: '@angular-devkit/architect@0.1502.10(chokidar@3.5.3)': dependencies: '@angular-devkit/core': 15.2.10(chokidar@3.5.3) - rxjs: 7.8.2 + rxjs: 6.6.7 transitivePeerDependencies: - chokidar @@ -8809,13 +9000,13 @@ snapshots: transitivePeerDependencies: - chokidar - '@angular-devkit/build-angular@15.2.10(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5))(@angular/platform-server@15.2.10(bb9340fd85b833f543ade9387312e178))(ng-packagr@15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5))(typescript@4.9.5)': + '@angular-devkit/build-angular@15.2.10(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5))(@angular/platform-server@15.2.10(597020a0fe8c1c77567a7c05da2eed63))(ng-packagr@15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5))(typescript@4.9.5)': dependencies: '@ampproject/remapping': 2.2.0 '@angular-devkit/architect': 0.1502.10(chokidar@3.5.3) '@angular-devkit/build-webpack': 0.1502.10(chokidar@3.5.3)(webpack-dev-server@4.11.1(webpack@5.76.1(esbuild@0.17.8)))(webpack@5.76.1(esbuild@0.17.8)) '@angular-devkit/core': 15.2.10(chokidar@3.5.3) - '@angular/compiler-cli': 15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5) + '@angular/compiler-cli': 15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5) '@babel/core': 7.20.12 '@babel/generator': 7.20.14 '@babel/helper-annotate-as-pure': 7.18.6 @@ -8827,7 +9018,7 @@ snapshots: '@babel/runtime': 7.20.13 '@babel/template': 7.20.7 '@discoveryjs/json-ext': 0.5.7 - '@ngtools/webpack': 15.2.10(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5))(typescript@4.9.5)(webpack@5.76.1(esbuild@0.17.8)) + '@ngtools/webpack': 15.2.10(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5))(typescript@4.9.5)(webpack@5.76.1(esbuild@0.17.8)) ansi-colors: 4.1.3 autoprefixer: 10.4.13(postcss@8.4.31) babel-loader: 9.1.2(@babel/core@7.20.12)(webpack@5.76.1(esbuild@0.17.8)) @@ -8857,7 +9048,7 @@ snapshots: postcss: 8.4.31 postcss-loader: 7.0.2(postcss@8.4.31)(webpack@5.76.1(esbuild@0.17.8)) resolve-url-loader: 5.0.0 - rxjs: 7.8.2 + rxjs: 6.6.7 sass: 1.58.1 sass-loader: 13.2.0(sass@1.58.1)(webpack@5.76.1(esbuild@0.17.8)) semver: 7.5.3 @@ -8874,9 +9065,9 @@ snapshots: webpack-merge: 5.8.0 webpack-subresource-integrity: 5.1.0(webpack@5.76.1(esbuild@0.17.8)) optionalDependencies: - '@angular/platform-server': 15.2.10(bb9340fd85b833f543ade9387312e178) + '@angular/platform-server': 15.2.10(597020a0fe8c1c77567a7c05da2eed63) esbuild: 0.17.8 - ng-packagr: 15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5) + ng-packagr: 15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5) transitivePeerDependencies: - '@swc/core' - bluebird @@ -8894,7 +9085,7 @@ snapshots: '@angular-devkit/build-webpack@0.1502.10(chokidar@3.5.3)(webpack-dev-server@4.11.1(webpack@5.76.1(esbuild@0.17.8)))(webpack@5.76.1(esbuild@0.17.8))': dependencies: '@angular-devkit/architect': 0.1502.10(chokidar@3.5.3) - rxjs: 7.8.2 + rxjs: 6.6.7 webpack: 5.76.1(esbuild@0.17.8) webpack-dev-server: 4.11.1(webpack@5.76.1(esbuild@0.17.8)) transitivePeerDependencies: @@ -8905,7 +9096,7 @@ snapshots: ajv: 8.12.0 ajv-formats: 2.1.1(ajv@8.12.0) jsonc-parser: 3.2.0 - rxjs: 7.8.2 + rxjs: 6.6.7 source-map: 0.7.4 optionalDependencies: chokidar: 3.5.3 @@ -8927,7 +9118,7 @@ snapshots: jsonc-parser: 3.2.0 magic-string: 0.29.0 ora: 5.4.1 - rxjs: 7.8.2 + rxjs: 6.6.7 transitivePeerDependencies: - chokidar @@ -9005,11 +9196,11 @@ snapshots: - supports-color - typescript - '@angular-eslint/schematics@15.2.1(@angular/cli@21.2.12(@types/node@12.20.52)(chokidar@5.0.0))(eslint@8.56.0)(typescript@5.9.3)': + '@angular-eslint/schematics@15.2.1(@angular/cli@21.2.12(@types/node@26.0.1)(chokidar@5.0.0))(eslint@8.56.0)(typescript@5.9.3)': dependencies: '@angular-eslint/eslint-plugin': 15.2.1(eslint@8.56.0)(typescript@5.9.3) '@angular-eslint/eslint-plugin-template': 15.2.1(eslint@8.56.0)(typescript@5.9.3) - '@angular/cli': 21.2.12(@types/node@12.20.52)(chokidar@5.0.0) + '@angular/cli': 21.2.12(@types/node@26.0.1)(chokidar@5.0.0) ignore: 5.2.4 strip-json-comments: 3.1.1 tmp: 0.2.1 @@ -9043,12 +9234,12 @@ snapshots: transitivePeerDependencies: - supports-color - '@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))': + '@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))': dependencies: - '@angular/core': 15.2.10(rxjs@7.8.2)(zone.js@0.11.5) + '@angular/core': 15.2.10(rxjs@7.5.7)(zone.js@0.11.5) tslib: 2.6.2 - '@angular/build@21.2.12(8124ac35316412ffa9726ce4256f5c59)': + '@angular/build@21.2.12(999253b22980c8ff7ebcfd6e4ca36da1)': dependencies: '@ampproject/remapping': 2.3.0 '@angular-devkit/architect': 0.2102.12(chokidar@5.0.0) @@ -9057,8 +9248,8 @@ snapshots: '@babel/core': 7.29.0 '@babel/helper-annotate-as-pure': 7.27.3 '@babel/helper-split-export-declaration': 7.24.7 - '@inquirer/confirm': 5.1.21(@types/node@12.20.52) - '@vitejs/plugin-basic-ssl': 2.1.4(vite@7.3.2(@types/node@12.20.52)(less@4.1.3)(sass@1.97.3)(terser@5.16.3)) + '@inquirer/confirm': 5.1.21(@types/node@26.0.1) + '@vitejs/plugin-basic-ssl': 2.1.4(vite@7.3.2(@types/node@26.0.1)(less@4.1.3)(sass@1.97.3)(terser@5.16.3)(tsx@4.22.4)) beasties: 0.4.1 browserslist: 4.28.2 esbuild: 0.27.3 @@ -9079,17 +9270,17 @@ snapshots: tslib: 2.6.2 typescript: 5.9.3 undici: 7.24.4 - vite: 7.3.2(@types/node@12.20.52)(less@4.1.3)(sass@1.97.3)(terser@5.16.3) + vite: 7.3.2(@types/node@26.0.1)(less@4.1.3)(sass@1.97.3)(terser@5.16.3)(tsx@4.22.4) watchpack: 2.5.1 optionalDependencies: '@angular/core': 21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5) - '@angular/platform-browser': 21.2.14(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5)) - '@angular/platform-server': 15.2.10(bb9340fd85b833f543ade9387312e178) + '@angular/platform-browser': 21.2.14(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5)) + '@angular/platform-server': 15.2.10(597020a0fe8c1c77567a7c05da2eed63) less: 4.1.3 lmdb: 3.5.1 - ng-packagr: 15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5) + ng-packagr: 15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5) postcss: 8.5.15 - vitest: 4.1.7(@types/node@12.20.52)(jsdom@28.1.0)(vite@7.3.2(@types/node@12.20.52)(less@4.1.3)(sass@1.97.3)(terser@5.16.3)) + vitest: 4.1.7(@types/node@26.0.1)(jsdom@28.1.0)(vite@7.3.2(@types/node@26.0.1)(less@4.1.3)(sass@1.97.3)(terser@5.16.3)(tsx@4.22.4)) transitivePeerDependencies: - '@emnapi/core' - '@emnapi/runtime' @@ -9130,13 +9321,13 @@ snapshots: - chokidar - supports-color - '@angular/cli@21.2.12(@types/node@12.20.52)(chokidar@5.0.0)': + '@angular/cli@21.2.12(@types/node@26.0.1)(chokidar@5.0.0)': dependencies: '@angular-devkit/architect': 0.2102.12(chokidar@5.0.0) '@angular-devkit/core': 21.2.12(chokidar@5.0.0) '@angular-devkit/schematics': 21.2.12(chokidar@5.0.0) - '@inquirer/prompts': 7.10.1(@types/node@12.20.52) - '@listr2/prompt-adapter-inquirer': 3.0.5(@inquirer/prompts@7.10.1(@types/node@12.20.52))(@types/node@12.20.52)(listr2@9.0.5) + '@inquirer/prompts': 7.10.1(@types/node@26.0.1) + '@listr2/prompt-adapter-inquirer': 3.0.5(@inquirer/prompts@7.10.1(@types/node@26.0.1))(@types/node@26.0.1)(listr2@9.0.5) '@modelcontextprotocol/sdk': 1.26.0(zod@4.3.6) '@schematics/angular': 21.2.12(chokidar@5.0.0) '@yarnpkg/lockfile': 1.1.0 @@ -9156,6 +9347,12 @@ snapshots: - chokidar - supports-color + '@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7)': + dependencies: + '@angular/core': 15.2.10(rxjs@7.5.7)(zone.js@0.11.5) + rxjs: 7.5.7 + tslib: 2.5.0 + '@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2)': dependencies: '@angular/core': 15.2.10(rxjs@7.8.2)(zone.js@0.11.5) @@ -9168,9 +9365,9 @@ snapshots: rxjs: 7.8.2 tslib: 2.6.2 - '@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5)': + '@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5)': dependencies: - '@angular/compiler': 15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)) + '@angular/compiler': 15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)) '@babel/core': 7.19.3 '@jridgewell/sourcemap-codec': 1.4.15 chokidar: 3.5.3 @@ -9201,16 +9398,22 @@ snapshots: transitivePeerDependencies: - supports-color - '@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))': + '@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))': dependencies: tslib: 2.6.2 optionalDependencies: - '@angular/core': 15.2.10(rxjs@7.8.2)(zone.js@0.11.5) + '@angular/core': 15.2.10(rxjs@7.5.7)(zone.js@0.11.5) '@angular/compiler@21.2.14': dependencies: tslib: 2.6.2 + '@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)': + dependencies: + rxjs: 7.5.7 + tslib: 2.5.0 + zone.js: 0.11.5 + '@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)': dependencies: rxjs: 7.8.2 @@ -9225,72 +9428,72 @@ snapshots: '@angular/compiler': 21.2.14 zone.js: 0.11.5 - '@angular/forms@15.2.10(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(@angular/platform-browser@15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(rxjs@7.8.2)': + '@angular/forms@15.2.10(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(@angular/platform-browser@15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(rxjs@7.5.7)': dependencies: - '@angular/common': 15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2) - '@angular/core': 15.2.10(rxjs@7.8.2)(zone.js@0.11.5) - '@angular/platform-browser': 15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)) - rxjs: 7.8.2 + '@angular/common': 15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7) + '@angular/core': 15.2.10(rxjs@7.5.7)(zone.js@0.11.5) + '@angular/platform-browser': 15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)) + rxjs: 7.5.7 tslib: 2.6.2 - '@angular/forms@21.2.14(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(@angular/platform-browser@21.2.14(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5)))(rxjs@7.8.2)': + '@angular/forms@21.2.14(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(@angular/platform-browser@21.2.14(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5)))(rxjs@7.8.2)': dependencies: '@angular/common': 21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2) '@angular/core': 21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5) - '@angular/platform-browser': 21.2.14(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5)) + '@angular/platform-browser': 21.2.14(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5)) '@standard-schema/spec': 1.1.0 rxjs: 7.8.2 tslib: 2.6.2 - '@angular/platform-browser-dynamic@15.2.10(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(@angular/platform-browser@15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))': + '@angular/platform-browser-dynamic@15.2.10(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(@angular/platform-browser@15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))': dependencies: - '@angular/common': 15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2) - '@angular/compiler': 15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)) - '@angular/core': 15.2.10(rxjs@7.8.2)(zone.js@0.11.5) - '@angular/platform-browser': 15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)) + '@angular/common': 15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7) + '@angular/compiler': 15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)) + '@angular/core': 15.2.10(rxjs@7.5.7)(zone.js@0.11.5) + '@angular/platform-browser': 15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)) tslib: 2.6.2 - '@angular/platform-browser@15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))': + '@angular/platform-browser@15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))': dependencies: - '@angular/common': 15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2) - '@angular/core': 15.2.10(rxjs@7.8.2)(zone.js@0.11.5) + '@angular/common': 15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7) + '@angular/core': 15.2.10(rxjs@7.5.7)(zone.js@0.11.5) tslib: 2.6.2 optionalDependencies: - '@angular/animations': 15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)) + '@angular/animations': 15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)) - '@angular/platform-browser@21.2.14(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))': + '@angular/platform-browser@21.2.14(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))': dependencies: '@angular/common': 21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2) '@angular/core': 21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5) tslib: 2.6.2 optionalDependencies: - '@angular/animations': 15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)) + '@angular/animations': 15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)) - '@angular/platform-server@15.2.10(bb9340fd85b833f543ade9387312e178)': + '@angular/platform-server@15.2.10(597020a0fe8c1c77567a7c05da2eed63)': dependencies: - '@angular/animations': 15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)) - '@angular/common': 15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2) - '@angular/compiler': 15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)) - '@angular/core': 15.2.10(rxjs@7.8.2)(zone.js@0.11.5) - '@angular/platform-browser': 15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)) - '@angular/platform-browser-dynamic': 15.2.10(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(@angular/platform-browser@15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))) + '@angular/animations': 15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)) + '@angular/common': 15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7) + '@angular/compiler': 15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)) + '@angular/core': 15.2.10(rxjs@7.5.7)(zone.js@0.11.5) + '@angular/platform-browser': 15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)) + '@angular/platform-browser-dynamic': 15.2.10(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(@angular/platform-browser@15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))) domino: 2.1.6 tslib: 2.6.2 xhr2: 0.2.1 - '@angular/router@15.2.10(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(@angular/platform-browser@15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(rxjs@7.8.2)': + '@angular/router@15.2.10(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(@angular/platform-browser@15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(rxjs@7.5.7)': dependencies: - '@angular/common': 15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2) - '@angular/core': 15.2.10(rxjs@7.8.2)(zone.js@0.11.5) - '@angular/platform-browser': 15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)) - rxjs: 7.8.2 + '@angular/common': 15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7) + '@angular/core': 15.2.10(rxjs@7.5.7)(zone.js@0.11.5) + '@angular/platform-browser': 15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)) + rxjs: 7.5.7 tslib: 2.6.2 - '@angular/router@21.2.14(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(@angular/platform-browser@21.2.14(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5)))(rxjs@7.8.2)': + '@angular/router@21.2.14(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(@angular/platform-browser@21.2.14(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5)))(rxjs@7.8.2)': dependencies: '@angular/common': 21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2) '@angular/core': 21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5) - '@angular/platform-browser': 21.2.14(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5)) + '@angular/platform-browser': 21.2.14(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5)) rxjs: 7.8.2 tslib: 2.6.2 @@ -9404,7 +9607,7 @@ snapshots: '@babel/types': 7.29.7 '@jridgewell/remapping': 2.3.5 convert-source-map: 2.0.0 - debug: 4.3.4 + debug: 4.4.3 gensync: 1.0.0-beta.2 json5: 2.2.3 semver: 6.3.1 @@ -10194,7 +10397,7 @@ snapshots: '@babel/parser': 7.29.7 '@babel/template': 7.29.7 '@babel/types': 7.29.7 - debug: 4.3.4 + debug: 4.4.3 transitivePeerDependencies: - supports-color @@ -10244,7 +10447,7 @@ snapshots: dependencies: '@changesets/types': 6.1.0 - '@changesets/cli@2.31.0(@types/node@12.20.52)': + '@changesets/cli@2.31.0(@types/node@26.0.1)': dependencies: '@changesets/apply-release-plan': 7.1.1 '@changesets/assemble-release-plan': 6.0.10 @@ -10260,7 +10463,7 @@ snapshots: '@changesets/should-skip-package': 0.1.2 '@changesets/types': 6.1.0 '@changesets/write': 0.4.0 - '@inquirer/external-editor': 1.0.3(@types/node@12.20.52) + '@inquirer/external-editor': 1.0.3(@types/node@26.0.1) '@manypkg/get-packages': 1.1.3 ansi-colors: 4.1.3 enquirer: 2.4.1 @@ -10416,7 +10619,7 @@ snapshots: '@types/node': 14.18.33 chalk: 4.1.2 cosmiconfig: 7.0.1 - cosmiconfig-typescript-loader: 4.2.0(@types/node@14.18.33)(cosmiconfig@7.0.1)(ts-node@10.9.1(@types/node@12.20.52)(typescript@4.9.5))(typescript@4.9.5) + cosmiconfig-typescript-loader: 4.2.0(@types/node@14.18.33)(cosmiconfig@7.0.1)(ts-node@10.9.1(@types/node@26.0.1)(typescript@4.9.5))(typescript@4.9.5) lodash: 4.17.21 resolve-from: 5.0.0 ts-node: 10.9.1(@types/node@14.18.33)(typescript@4.9.5) @@ -10517,6 +10720,9 @@ snapshots: '@esbuild/aix-ppc64@0.27.3': optional: true + '@esbuild/aix-ppc64@0.28.1': + optional: true + '@esbuild/android-arm64@0.17.19': optional: true @@ -10526,6 +10732,9 @@ snapshots: '@esbuild/android-arm64@0.27.3': optional: true + '@esbuild/android-arm64@0.28.1': + optional: true + '@esbuild/android-arm@0.17.19': optional: true @@ -10535,6 +10744,9 @@ snapshots: '@esbuild/android-arm@0.27.3': optional: true + '@esbuild/android-arm@0.28.1': + optional: true + '@esbuild/android-x64@0.17.19': optional: true @@ -10544,6 +10756,9 @@ snapshots: '@esbuild/android-x64@0.27.3': optional: true + '@esbuild/android-x64@0.28.1': + optional: true + '@esbuild/darwin-arm64@0.17.19': optional: true @@ -10553,6 +10768,9 @@ snapshots: '@esbuild/darwin-arm64@0.27.3': optional: true + '@esbuild/darwin-arm64@0.28.1': + optional: true + '@esbuild/darwin-x64@0.17.19': optional: true @@ -10562,6 +10780,9 @@ snapshots: '@esbuild/darwin-x64@0.27.3': optional: true + '@esbuild/darwin-x64@0.28.1': + optional: true + '@esbuild/freebsd-arm64@0.17.19': optional: true @@ -10571,6 +10792,9 @@ snapshots: '@esbuild/freebsd-arm64@0.27.3': optional: true + '@esbuild/freebsd-arm64@0.28.1': + optional: true + '@esbuild/freebsd-x64@0.17.19': optional: true @@ -10580,6 +10804,9 @@ snapshots: '@esbuild/freebsd-x64@0.27.3': optional: true + '@esbuild/freebsd-x64@0.28.1': + optional: true + '@esbuild/linux-arm64@0.17.19': optional: true @@ -10589,6 +10816,9 @@ snapshots: '@esbuild/linux-arm64@0.27.3': optional: true + '@esbuild/linux-arm64@0.28.1': + optional: true + '@esbuild/linux-arm@0.17.19': optional: true @@ -10598,6 +10828,9 @@ snapshots: '@esbuild/linux-arm@0.27.3': optional: true + '@esbuild/linux-arm@0.28.1': + optional: true + '@esbuild/linux-ia32@0.17.19': optional: true @@ -10607,6 +10840,9 @@ snapshots: '@esbuild/linux-ia32@0.27.3': optional: true + '@esbuild/linux-ia32@0.28.1': + optional: true + '@esbuild/linux-loong64@0.17.19': optional: true @@ -10616,6 +10852,9 @@ snapshots: '@esbuild/linux-loong64@0.27.3': optional: true + '@esbuild/linux-loong64@0.28.1': + optional: true + '@esbuild/linux-mips64el@0.17.19': optional: true @@ -10625,6 +10864,9 @@ snapshots: '@esbuild/linux-mips64el@0.27.3': optional: true + '@esbuild/linux-mips64el@0.28.1': + optional: true + '@esbuild/linux-ppc64@0.17.19': optional: true @@ -10634,6 +10876,9 @@ snapshots: '@esbuild/linux-ppc64@0.27.3': optional: true + '@esbuild/linux-ppc64@0.28.1': + optional: true + '@esbuild/linux-riscv64@0.17.19': optional: true @@ -10643,6 +10888,9 @@ snapshots: '@esbuild/linux-riscv64@0.27.3': optional: true + '@esbuild/linux-riscv64@0.28.1': + optional: true + '@esbuild/linux-s390x@0.17.19': optional: true @@ -10652,6 +10900,9 @@ snapshots: '@esbuild/linux-s390x@0.27.3': optional: true + '@esbuild/linux-s390x@0.28.1': + optional: true + '@esbuild/linux-x64@0.17.19': optional: true @@ -10661,9 +10912,15 @@ snapshots: '@esbuild/linux-x64@0.27.3': optional: true + '@esbuild/linux-x64@0.28.1': + optional: true + '@esbuild/netbsd-arm64@0.27.3': optional: true + '@esbuild/netbsd-arm64@0.28.1': + optional: true + '@esbuild/netbsd-x64@0.17.19': optional: true @@ -10673,9 +10930,15 @@ snapshots: '@esbuild/netbsd-x64@0.27.3': optional: true + '@esbuild/netbsd-x64@0.28.1': + optional: true + '@esbuild/openbsd-arm64@0.27.3': optional: true + '@esbuild/openbsd-arm64@0.28.1': + optional: true + '@esbuild/openbsd-x64@0.17.19': optional: true @@ -10685,9 +10948,15 @@ snapshots: '@esbuild/openbsd-x64@0.27.3': optional: true + '@esbuild/openbsd-x64@0.28.1': + optional: true + '@esbuild/openharmony-arm64@0.27.3': optional: true + '@esbuild/openharmony-arm64@0.28.1': + optional: true + '@esbuild/sunos-x64@0.17.19': optional: true @@ -10697,6 +10966,9 @@ snapshots: '@esbuild/sunos-x64@0.27.3': optional: true + '@esbuild/sunos-x64@0.28.1': + optional: true + '@esbuild/win32-arm64@0.17.19': optional: true @@ -10706,6 +10978,9 @@ snapshots: '@esbuild/win32-arm64@0.27.3': optional: true + '@esbuild/win32-arm64@0.28.1': + optional: true + '@esbuild/win32-ia32@0.17.19': optional: true @@ -10715,6 +10990,9 @@ snapshots: '@esbuild/win32-ia32@0.27.3': optional: true + '@esbuild/win32-ia32@0.28.1': + optional: true + '@esbuild/win32-x64@0.17.19': optional: true @@ -10724,6 +11002,9 @@ snapshots: '@esbuild/win32-x64@0.27.3': optional: true + '@esbuild/win32-x64@0.28.1': + optional: true + '@eslint-community/eslint-utils@4.4.0(eslint@8.56.0)': dependencies: eslint: 8.56.0 @@ -10805,128 +11086,128 @@ snapshots: '@inquirer/ansi@1.0.2': {} - '@inquirer/checkbox@4.3.2(@types/node@12.20.52)': + '@inquirer/checkbox@4.3.2(@types/node@26.0.1)': dependencies: '@inquirer/ansi': 1.0.2 - '@inquirer/core': 10.3.2(@types/node@12.20.52) + '@inquirer/core': 10.3.2(@types/node@26.0.1) '@inquirer/figures': 1.0.15 - '@inquirer/type': 3.0.10(@types/node@12.20.52) + '@inquirer/type': 3.0.10(@types/node@26.0.1) yoctocolors-cjs: 2.1.3 optionalDependencies: - '@types/node': 12.20.52 + '@types/node': 26.0.1 - '@inquirer/confirm@5.1.21(@types/node@12.20.52)': + '@inquirer/confirm@5.1.21(@types/node@26.0.1)': dependencies: - '@inquirer/core': 10.3.2(@types/node@12.20.52) - '@inquirer/type': 3.0.10(@types/node@12.20.52) + '@inquirer/core': 10.3.2(@types/node@26.0.1) + '@inquirer/type': 3.0.10(@types/node@26.0.1) optionalDependencies: - '@types/node': 12.20.52 + '@types/node': 26.0.1 - '@inquirer/core@10.3.2(@types/node@12.20.52)': + '@inquirer/core@10.3.2(@types/node@26.0.1)': dependencies: '@inquirer/ansi': 1.0.2 '@inquirer/figures': 1.0.15 - '@inquirer/type': 3.0.10(@types/node@12.20.52) + '@inquirer/type': 3.0.10(@types/node@26.0.1) cli-width: 4.1.0 mute-stream: 2.0.0 signal-exit: 4.1.0 wrap-ansi: 6.2.0 yoctocolors-cjs: 2.1.3 optionalDependencies: - '@types/node': 12.20.52 + '@types/node': 26.0.1 - '@inquirer/editor@4.2.23(@types/node@12.20.52)': + '@inquirer/editor@4.2.23(@types/node@26.0.1)': dependencies: - '@inquirer/core': 10.3.2(@types/node@12.20.52) - '@inquirer/external-editor': 1.0.3(@types/node@12.20.52) - '@inquirer/type': 3.0.10(@types/node@12.20.52) + '@inquirer/core': 10.3.2(@types/node@26.0.1) + '@inquirer/external-editor': 1.0.3(@types/node@26.0.1) + '@inquirer/type': 3.0.10(@types/node@26.0.1) optionalDependencies: - '@types/node': 12.20.52 + '@types/node': 26.0.1 - '@inquirer/expand@4.0.23(@types/node@12.20.52)': + '@inquirer/expand@4.0.23(@types/node@26.0.1)': dependencies: - '@inquirer/core': 10.3.2(@types/node@12.20.52) - '@inquirer/type': 3.0.10(@types/node@12.20.52) + '@inquirer/core': 10.3.2(@types/node@26.0.1) + '@inquirer/type': 3.0.10(@types/node@26.0.1) yoctocolors-cjs: 2.1.3 optionalDependencies: - '@types/node': 12.20.52 + '@types/node': 26.0.1 - '@inquirer/external-editor@1.0.3(@types/node@12.20.52)': + '@inquirer/external-editor@1.0.3(@types/node@26.0.1)': dependencies: chardet: 2.1.1 iconv-lite: 0.7.2 optionalDependencies: - '@types/node': 12.20.52 + '@types/node': 26.0.1 '@inquirer/figures@1.0.15': {} - '@inquirer/input@4.3.1(@types/node@12.20.52)': + '@inquirer/input@4.3.1(@types/node@26.0.1)': dependencies: - '@inquirer/core': 10.3.2(@types/node@12.20.52) - '@inquirer/type': 3.0.10(@types/node@12.20.52) + '@inquirer/core': 10.3.2(@types/node@26.0.1) + '@inquirer/type': 3.0.10(@types/node@26.0.1) optionalDependencies: - '@types/node': 12.20.52 + '@types/node': 26.0.1 - '@inquirer/number@3.0.23(@types/node@12.20.52)': + '@inquirer/number@3.0.23(@types/node@26.0.1)': dependencies: - '@inquirer/core': 10.3.2(@types/node@12.20.52) - '@inquirer/type': 3.0.10(@types/node@12.20.52) + '@inquirer/core': 10.3.2(@types/node@26.0.1) + '@inquirer/type': 3.0.10(@types/node@26.0.1) optionalDependencies: - '@types/node': 12.20.52 + '@types/node': 26.0.1 - '@inquirer/password@4.0.23(@types/node@12.20.52)': + '@inquirer/password@4.0.23(@types/node@26.0.1)': dependencies: '@inquirer/ansi': 1.0.2 - '@inquirer/core': 10.3.2(@types/node@12.20.52) - '@inquirer/type': 3.0.10(@types/node@12.20.52) + '@inquirer/core': 10.3.2(@types/node@26.0.1) + '@inquirer/type': 3.0.10(@types/node@26.0.1) optionalDependencies: - '@types/node': 12.20.52 - - '@inquirer/prompts@7.10.1(@types/node@12.20.52)': - dependencies: - '@inquirer/checkbox': 4.3.2(@types/node@12.20.52) - '@inquirer/confirm': 5.1.21(@types/node@12.20.52) - '@inquirer/editor': 4.2.23(@types/node@12.20.52) - '@inquirer/expand': 4.0.23(@types/node@12.20.52) - '@inquirer/input': 4.3.1(@types/node@12.20.52) - '@inquirer/number': 3.0.23(@types/node@12.20.52) - '@inquirer/password': 4.0.23(@types/node@12.20.52) - '@inquirer/rawlist': 4.1.11(@types/node@12.20.52) - '@inquirer/search': 3.2.2(@types/node@12.20.52) - '@inquirer/select': 4.4.2(@types/node@12.20.52) + '@types/node': 26.0.1 + + '@inquirer/prompts@7.10.1(@types/node@26.0.1)': + dependencies: + '@inquirer/checkbox': 4.3.2(@types/node@26.0.1) + '@inquirer/confirm': 5.1.21(@types/node@26.0.1) + '@inquirer/editor': 4.2.23(@types/node@26.0.1) + '@inquirer/expand': 4.0.23(@types/node@26.0.1) + '@inquirer/input': 4.3.1(@types/node@26.0.1) + '@inquirer/number': 3.0.23(@types/node@26.0.1) + '@inquirer/password': 4.0.23(@types/node@26.0.1) + '@inquirer/rawlist': 4.1.11(@types/node@26.0.1) + '@inquirer/search': 3.2.2(@types/node@26.0.1) + '@inquirer/select': 4.4.2(@types/node@26.0.1) optionalDependencies: - '@types/node': 12.20.52 + '@types/node': 26.0.1 - '@inquirer/rawlist@4.1.11(@types/node@12.20.52)': + '@inquirer/rawlist@4.1.11(@types/node@26.0.1)': dependencies: - '@inquirer/core': 10.3.2(@types/node@12.20.52) - '@inquirer/type': 3.0.10(@types/node@12.20.52) + '@inquirer/core': 10.3.2(@types/node@26.0.1) + '@inquirer/type': 3.0.10(@types/node@26.0.1) yoctocolors-cjs: 2.1.3 optionalDependencies: - '@types/node': 12.20.52 + '@types/node': 26.0.1 - '@inquirer/search@3.2.2(@types/node@12.20.52)': + '@inquirer/search@3.2.2(@types/node@26.0.1)': dependencies: - '@inquirer/core': 10.3.2(@types/node@12.20.52) + '@inquirer/core': 10.3.2(@types/node@26.0.1) '@inquirer/figures': 1.0.15 - '@inquirer/type': 3.0.10(@types/node@12.20.52) + '@inquirer/type': 3.0.10(@types/node@26.0.1) yoctocolors-cjs: 2.1.3 optionalDependencies: - '@types/node': 12.20.52 + '@types/node': 26.0.1 - '@inquirer/select@4.4.2(@types/node@12.20.52)': + '@inquirer/select@4.4.2(@types/node@26.0.1)': dependencies: '@inquirer/ansi': 1.0.2 - '@inquirer/core': 10.3.2(@types/node@12.20.52) + '@inquirer/core': 10.3.2(@types/node@26.0.1) '@inquirer/figures': 1.0.15 - '@inquirer/type': 3.0.10(@types/node@12.20.52) + '@inquirer/type': 3.0.10(@types/node@26.0.1) yoctocolors-cjs: 2.1.3 optionalDependencies: - '@types/node': 12.20.52 + '@types/node': 26.0.1 - '@inquirer/type@3.0.10(@types/node@12.20.52)': + '@inquirer/type@3.0.10(@types/node@26.0.1)': optionalDependencies: - '@types/node': 12.20.52 + '@types/node': 26.0.1 '@isaacs/cliui@8.0.2': dependencies: @@ -10954,27 +11235,27 @@ snapshots: '@jest/console@29.7.0': dependencies: '@jest/types': 29.6.3 - '@types/node': 12.20.52 + '@types/node': 26.0.1 chalk: 4.1.2 jest-message-util: 29.7.0 jest-util: 29.7.0 slash: 3.0.0 - '@jest/core@29.7.0(ts-node@10.9.1(@types/node@12.20.52)(typescript@4.9.5))': + '@jest/core@29.7.0(ts-node@10.9.1(@types/node@26.0.1)(typescript@4.9.5))': dependencies: '@jest/console': 29.7.0 '@jest/reporters': 29.7.0 '@jest/test-result': 29.7.0 '@jest/transform': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 12.20.52 + '@types/node': 26.0.1 ansi-escapes: 4.3.2 chalk: 4.1.2 ci-info: 3.3.1 exit: 0.1.2 graceful-fs: 4.2.10 jest-changed-files: 29.7.0 - jest-config: 29.7.0(@types/node@12.20.52)(ts-node@10.9.1(@types/node@12.20.52)(typescript@4.9.5)) + jest-config: 29.7.0(@types/node@26.0.1)(ts-node@10.9.1(@types/node@26.0.1)(typescript@4.9.5)) jest-haste-map: 29.7.0 jest-message-util: 29.7.0 jest-regex-util: 29.6.3 @@ -10999,7 +11280,7 @@ snapshots: dependencies: '@jest/fake-timers': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 12.20.52 + '@types/node': 26.0.1 jest-mock: 29.7.0 '@jest/expect-utils@29.7.0': @@ -11017,7 +11298,7 @@ snapshots: dependencies: '@jest/types': 29.6.3 '@sinonjs/fake-timers': 10.3.0 - '@types/node': 12.20.52 + '@types/node': 26.0.1 jest-message-util: 29.7.0 jest-mock: 29.7.0 jest-util: 29.7.0 @@ -11039,7 +11320,7 @@ snapshots: '@jest/transform': 29.7.0 '@jest/types': 29.6.3 '@jridgewell/trace-mapping': 0.3.25 - '@types/node': 12.20.52 + '@types/node': 26.0.1 chalk: 4.1.2 collect-v8-coverage: 1.0.1 exit: 0.1.2 @@ -11086,9 +11367,9 @@ snapshots: '@jest/transform@29.7.0': dependencies: - '@babel/core': 7.20.12 + '@babel/core': 7.29.0 '@jest/types': 29.6.3 - '@jridgewell/trace-mapping': 0.3.25 + '@jridgewell/trace-mapping': 0.3.31 babel-plugin-istanbul: 6.1.1 chalk: 4.1.2 convert-source-map: 2.0.0 @@ -11097,7 +11378,7 @@ snapshots: jest-haste-map: 29.7.0 jest-regex-util: 29.6.3 jest-util: 29.7.0 - micromatch: 4.0.5 + micromatch: 4.0.8 pirates: 4.0.5 slash: 3.0.0 write-file-atomic: 4.0.2 @@ -11109,7 +11390,7 @@ snapshots: '@jest/schemas': 29.6.3 '@types/istanbul-lib-coverage': 2.0.4 '@types/istanbul-reports': 3.0.1 - '@types/node': 12.20.52 + '@types/node': 18.11.9 '@types/yargs': 17.0.10 chalk: 4.1.2 @@ -11131,10 +11412,8 @@ snapshots: '@jridgewell/remapping@2.3.5': dependencies: - '@jridgewell/gen-mapping': 0.3.5 - '@jridgewell/trace-mapping': 0.3.25 - - '@jridgewell/resolve-uri@3.0.7': {} + '@jridgewell/gen-mapping': 0.3.13 + '@jridgewell/trace-mapping': 0.3.31 '@jridgewell/resolve-uri@3.1.2': {} @@ -11142,8 +11421,8 @@ snapshots: '@jridgewell/source-map@0.3.6': dependencies: - '@jridgewell/gen-mapping': 0.3.5 - '@jridgewell/trace-mapping': 0.3.25 + '@jridgewell/gen-mapping': 0.3.13 + '@jridgewell/trace-mapping': 0.3.31 '@jridgewell/sourcemap-codec@1.4.15': {} @@ -11157,19 +11436,19 @@ snapshots: '@jridgewell/trace-mapping@0.3.31': dependencies: '@jridgewell/resolve-uri': 3.1.2 - '@jridgewell/sourcemap-codec': 1.4.15 + '@jridgewell/sourcemap-codec': 1.5.5 '@jridgewell/trace-mapping@0.3.9': dependencies: - '@jridgewell/resolve-uri': 3.0.7 - '@jridgewell/sourcemap-codec': 1.4.15 + '@jridgewell/resolve-uri': 3.1.2 + '@jridgewell/sourcemap-codec': 1.5.5 '@leichtgewicht/ip-codec@2.0.4': {} - '@listr2/prompt-adapter-inquirer@3.0.5(@inquirer/prompts@7.10.1(@types/node@12.20.52))(@types/node@12.20.52)(listr2@9.0.5)': + '@listr2/prompt-adapter-inquirer@3.0.5(@inquirer/prompts@7.10.1(@types/node@26.0.1))(@types/node@26.0.1)(listr2@9.0.5)': dependencies: - '@inquirer/prompts': 7.10.1(@types/node@12.20.52) - '@inquirer/type': 3.0.10(@types/node@12.20.52) + '@inquirer/prompts': 7.10.1(@types/node@26.0.1) + '@inquirer/type': 3.0.10(@types/node@26.0.1) listr2: 9.0.5 transitivePeerDependencies: - '@types/node' @@ -11330,25 +11609,25 @@ snapshots: '@tybys/wasm-util': 0.10.2 optional: true - '@ngtools/webpack@15.2.10(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5))(typescript@4.9.5)(webpack@5.76.1(esbuild@0.17.8))': + '@ngtools/webpack@15.2.10(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5))(typescript@4.9.5)(webpack@5.76.1(esbuild@0.17.8))': dependencies: - '@angular/compiler-cli': 15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5) + '@angular/compiler-cli': 15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5) typescript: 4.9.5 webpack: 5.76.1(esbuild@0.17.8) - '@nguniversal/builders@15.2.1(@angular-devkit/build-angular@15.2.10(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5))(@angular/platform-server@15.2.10(bb9340fd85b833f543ade9387312e178))(ng-packagr@15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5))(typescript@4.9.5))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(@types/express@4.17.13)(chokidar@3.5.3)(typescript@4.9.5)': + '@nguniversal/builders@15.2.1(@angular-devkit/build-angular@15.2.10(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5))(@angular/platform-server@15.2.10(597020a0fe8c1c77567a7c05da2eed63))(ng-packagr@15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5))(typescript@4.9.5))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(@types/express@4.17.13)(chokidar@3.5.3)(typescript@4.9.5)': dependencies: '@angular-devkit/architect': 0.1502.10(chokidar@3.5.3) - '@angular-devkit/build-angular': 15.2.10(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5))(@angular/platform-server@15.2.10(bb9340fd85b833f543ade9387312e178))(ng-packagr@15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5))(typescript@4.9.5) + '@angular-devkit/build-angular': 15.2.10(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5))(@angular/platform-server@15.2.10(597020a0fe8c1c77567a7c05da2eed63))(ng-packagr@15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5))(typescript@4.9.5) '@angular-devkit/core': 15.2.10(chokidar@3.5.3) - '@nguniversal/common': 15.2.1(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)) + '@nguniversal/common': 15.2.1(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)) browser-sync: 2.27.10 express: 4.20.0 guess-parser: 0.4.22(typescript@4.9.5) http-proxy-middleware: 2.0.6(@types/express@4.17.13) ora: 5.4.1 piscina: 3.2.0 - rxjs: 7.8.2 + rxjs: 6.6.7 tree-kill: 1.2.2 transitivePeerDependencies: - '@angular/common' @@ -11362,10 +11641,10 @@ snapshots: - typescript - utf-8-validate - '@nguniversal/common@15.2.1(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))': + '@nguniversal/common@15.2.1(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))': dependencies: - '@angular/common': 15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2) - '@angular/core': 15.2.10(rxjs@7.8.2)(zone.js@0.11.5) + '@angular/common': 15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7) + '@angular/core': 15.2.10(rxjs@7.5.7)(zone.js@0.11.5) critters: 0.0.16 jsdom: 21.1.0 tslib: 2.6.2 @@ -11375,12 +11654,12 @@ snapshots: - supports-color - utf-8-validate - '@nguniversal/express-engine@15.2.1(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(@angular/platform-server@15.2.10(bb9340fd85b833f543ade9387312e178))(express@4.20.0)': + '@nguniversal/express-engine@15.2.1(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(@angular/platform-server@15.2.10(597020a0fe8c1c77567a7c05da2eed63))(express@4.20.0)': dependencies: - '@angular/common': 15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2) - '@angular/core': 15.2.10(rxjs@7.8.2)(zone.js@0.11.5) - '@angular/platform-server': 15.2.10(bb9340fd85b833f543ade9387312e178) - '@nguniversal/common': 15.2.1(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)) + '@angular/common': 15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7) + '@angular/core': 15.2.10(rxjs@7.5.7)(zone.js@0.11.5) + '@angular/platform-server': 15.2.10(597020a0fe8c1c77567a7c05da2eed63) + '@nguniversal/common': 15.2.1(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)) express: 4.20.0 tslib: 2.6.2 transitivePeerDependencies: @@ -11836,33 +12115,33 @@ snapshots: '@types/babel__core@7.1.19': dependencies: - '@babel/parser': 7.24.0 - '@babel/types': 7.24.0 + '@babel/parser': 7.29.7 + '@babel/types': 7.29.7 '@types/babel__generator': 7.6.4 '@types/babel__template': 7.4.1 '@types/babel__traverse': 7.17.1 '@types/babel__generator@7.6.4': dependencies: - '@babel/types': 7.24.0 + '@babel/types': 7.29.7 '@types/babel__template@7.4.1': dependencies: - '@babel/parser': 7.24.0 - '@babel/types': 7.24.0 + '@babel/parser': 7.29.7 + '@babel/types': 7.29.7 '@types/babel__traverse@7.17.1': dependencies: - '@babel/types': 7.24.0 + '@babel/types': 7.29.7 '@types/body-parser@1.19.2': dependencies: '@types/connect': 3.4.35 - '@types/node': 18.11.9 + '@types/node': 26.0.1 '@types/bonjour@3.5.10': dependencies: - '@types/node': 12.20.52 + '@types/node': 26.0.1 '@types/chai@5.2.3': dependencies: @@ -11874,11 +12153,11 @@ snapshots: '@types/connect-history-api-fallback@1.3.5': dependencies: '@types/express-serve-static-core': 4.17.28 - '@types/node': 12.20.52 + '@types/node': 26.0.1 '@types/connect@3.4.35': dependencies: - '@types/node': 18.11.9 + '@types/node': 26.0.1 '@types/cookie@0.4.1': {} @@ -11893,8 +12172,8 @@ snapshots: '@types/eslint@8.4.2': dependencies: - '@types/estree': 0.0.51 - '@types/json-schema': 7.0.11 + '@types/estree': 1.0.8 + '@types/json-schema': 7.0.15 '@types/estree@0.0.51': {} @@ -11904,7 +12183,7 @@ snapshots: '@types/express-serve-static-core@4.17.28': dependencies: - '@types/node': 18.11.9 + '@types/node': 26.0.1 '@types/qs': 6.9.7 '@types/range-parser': 1.2.4 @@ -11917,11 +12196,11 @@ snapshots: '@types/graceful-fs@4.1.5': dependencies: - '@types/node': 12.20.52 + '@types/node': 18.11.9 '@types/http-proxy@1.17.9': dependencies: - '@types/node': 18.11.9 + '@types/node': 26.0.1 '@types/istanbul-lib-coverage@2.0.4': {} @@ -11940,7 +12219,7 @@ snapshots: '@types/jsdom@20.0.1': dependencies: - '@types/node': 12.20.52 + '@types/node': 26.0.1 '@types/tough-cookie': 4.0.2 parse5: 7.1.2 @@ -11954,7 +12233,7 @@ snapshots: '@types/node-forge@1.3.11': dependencies: - '@types/node': 12.20.52 + '@types/node': 26.0.1 '@types/node@12.20.52': {} @@ -11962,6 +12241,10 @@ snapshots: '@types/node@18.11.9': {} + '@types/node@26.0.1': + dependencies: + undici-types: 8.3.0 + '@types/normalize-package-data@2.4.1': {} '@types/parse-json@4.0.0': {} @@ -11983,11 +12266,11 @@ snapshots: '@types/serve-static@1.13.10': dependencies: '@types/mime': 1.3.2 - '@types/node': 18.11.9 + '@types/node': 26.0.1 '@types/sockjs@0.3.33': dependencies: - '@types/node': 12.20.52 + '@types/node': 26.0.1 '@types/stack-utils@2.0.1': {} @@ -11995,7 +12278,7 @@ snapshots: '@types/ws@8.5.3': dependencies: - '@types/node': 12.20.52 + '@types/node': 26.0.1 '@types/yargs-parser@21.0.0': {} @@ -12301,9 +12584,9 @@ snapshots: '@ungap/structured-clone@1.2.0': {} - '@vitejs/plugin-basic-ssl@2.1.4(vite@7.3.2(@types/node@12.20.52)(less@4.1.3)(sass@1.97.3)(terser@5.16.3))': + '@vitejs/plugin-basic-ssl@2.1.4(vite@7.3.2(@types/node@26.0.1)(less@4.1.3)(sass@1.97.3)(terser@5.16.3)(tsx@4.22.4))': dependencies: - vite: 7.3.2(@types/node@12.20.52)(less@4.1.3)(sass@1.97.3)(terser@5.16.3) + vite: 7.3.2(@types/node@26.0.1)(less@4.1.3)(sass@1.97.3)(terser@5.16.3)(tsx@4.22.4) '@vitest/expect@4.1.7': dependencies: @@ -12314,13 +12597,13 @@ snapshots: chai: 6.2.2 tinyrainbow: 3.1.0 - '@vitest/mocker@4.1.7(vite@7.3.2(@types/node@12.20.52)(less@4.1.3)(sass@1.97.3)(terser@5.16.3))': + '@vitest/mocker@4.1.7(vite@7.3.2(@types/node@26.0.1)(less@4.1.3)(sass@1.97.3)(terser@5.16.3)(tsx@4.22.4))': dependencies: '@vitest/spy': 4.1.7 estree-walker: 3.0.3 magic-string: 0.30.21 optionalDependencies: - vite: 7.3.2(@types/node@12.20.52)(less@4.1.3)(sass@1.97.3)(terser@5.16.3) + vite: 7.3.2(@types/node@26.0.1)(less@4.1.3)(sass@1.97.3)(terser@5.16.3)(tsx@4.22.4) '@vitest/pretty-format@4.1.7': dependencies: @@ -12664,6 +12947,8 @@ snapshots: array-ify@1.0.0: {} + array-timsort@1.0.3: {} + array-union@2.1.0: {} arrify@1.0.1: {} @@ -12748,8 +13033,8 @@ snapshots: babel-plugin-jest-hoist@29.6.3: dependencies: - '@babel/template': 7.24.0 - '@babel/types': 7.24.0 + '@babel/template': 7.29.7 + '@babel/types': 7.29.7 '@types/babel__core': 7.1.19 '@types/babel__traverse': 7.17.1 @@ -12907,7 +13192,7 @@ snapshots: etag: 1.8.1 fresh: 0.5.2 mitt: 1.2.0 - rxjs: 7.8.2 + rxjs: 5.5.12 typescript: 4.9.5 browser-sync-ui@2.27.10: @@ -13149,14 +13434,14 @@ snapshots: chokidar@3.5.3: dependencies: anymatch: 3.1.2 - braces: 3.0.2 + braces: 3.0.3 glob-parent: 5.1.2 is-binary-path: 2.1.0 is-glob: 4.0.3 normalize-path: 3.0.0 readdirp: 3.6.0 optionalDependencies: - fsevents: 2.3.2 + fsevents: 2.3.3 chokidar@4.0.3: dependencies: @@ -13267,6 +13552,11 @@ snapshots: commander@9.4.1: {} + comment-json@5.0.0: + dependencies: + array-timsort: 1.0.3 + esprima: 4.0.1 + commitizen@4.2.5: dependencies: cachedir: 2.3.0 @@ -13406,11 +13696,11 @@ snapshots: object-assign: 4.1.1 vary: 1.1.2 - cosmiconfig-typescript-loader@4.2.0(@types/node@14.18.33)(cosmiconfig@7.0.1)(ts-node@10.9.1(@types/node@12.20.52)(typescript@4.9.5))(typescript@4.9.5): + cosmiconfig-typescript-loader@4.2.0(@types/node@14.18.33)(cosmiconfig@7.0.1)(ts-node@10.9.1(@types/node@26.0.1)(typescript@4.9.5))(typescript@4.9.5): dependencies: '@types/node': 14.18.33 cosmiconfig: 7.0.1 - ts-node: 10.9.1(@types/node@12.20.52)(typescript@4.9.5) + ts-node: 10.9.1(@types/node@14.18.33)(typescript@4.9.5) typescript: 4.9.5 cosmiconfig@7.0.1: @@ -13421,13 +13711,13 @@ snapshots: path-type: 4.0.0 yaml: 1.10.2 - create-jest@29.7.0(@types/node@12.20.52)(ts-node@10.9.1(@types/node@12.20.52)(typescript@4.9.5)): + create-jest@29.7.0(@types/node@26.0.1)(ts-node@10.9.1(@types/node@26.0.1)(typescript@4.9.5)): dependencies: '@jest/types': 29.6.3 chalk: 4.1.2 exit: 0.1.2 graceful-fs: 4.2.10 - jest-config: 29.7.0(@types/node@12.20.52)(ts-node@10.9.1(@types/node@12.20.52)(typescript@4.9.5)) + jest-config: 29.7.0(@types/node@26.0.1)(ts-node@10.9.1(@types/node@26.0.1)(typescript@4.9.5)) jest-util: 29.7.0 prompts: 2.4.2 transitivePeerDependencies: @@ -13782,7 +14072,7 @@ snapshots: dependencies: '@types/cookie': 0.4.1 '@types/cors': 2.8.12 - '@types/node': 12.20.52 + '@types/node': 26.0.1 accepts: 1.3.8 base64id: 2.0.0 cookie: 0.4.2 @@ -13943,6 +14233,35 @@ snapshots: '@esbuild/win32-ia32': 0.27.3 '@esbuild/win32-x64': 0.27.3 + esbuild@0.28.1: + optionalDependencies: + '@esbuild/aix-ppc64': 0.28.1 + '@esbuild/android-arm': 0.28.1 + '@esbuild/android-arm64': 0.28.1 + '@esbuild/android-x64': 0.28.1 + '@esbuild/darwin-arm64': 0.28.1 + '@esbuild/darwin-x64': 0.28.1 + '@esbuild/freebsd-arm64': 0.28.1 + '@esbuild/freebsd-x64': 0.28.1 + '@esbuild/linux-arm': 0.28.1 + '@esbuild/linux-arm64': 0.28.1 + '@esbuild/linux-ia32': 0.28.1 + '@esbuild/linux-loong64': 0.28.1 + '@esbuild/linux-mips64el': 0.28.1 + '@esbuild/linux-ppc64': 0.28.1 + '@esbuild/linux-riscv64': 0.28.1 + '@esbuild/linux-s390x': 0.28.1 + '@esbuild/linux-x64': 0.28.1 + '@esbuild/netbsd-arm64': 0.28.1 + '@esbuild/netbsd-x64': 0.28.1 + '@esbuild/openbsd-arm64': 0.28.1 + '@esbuild/openbsd-x64': 0.28.1 + '@esbuild/openharmony-arm64': 0.28.1 + '@esbuild/sunos-x64': 0.28.1 + '@esbuild/win32-arm64': 0.28.1 + '@esbuild/win32-ia32': 0.28.1 + '@esbuild/win32-x64': 0.28.1 + escalade@3.1.1: {} escalade@3.2.0: {} @@ -14408,9 +14727,6 @@ snapshots: fs.realpath@1.0.0: {} - fsevents@2.3.2: - optional: true - fsevents@2.3.3: optional: true @@ -15113,7 +15429,7 @@ snapshots: '@jest/expect': 29.7.0 '@jest/test-result': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 12.20.52 + '@types/node': 26.0.1 chalk: 4.1.2 co: 4.6.0 dedent: 1.5.1 @@ -15133,16 +15449,16 @@ snapshots: - babel-plugin-macros - supports-color - jest-cli@29.7.0(@types/node@12.20.52)(ts-node@10.9.1(@types/node@12.20.52)(typescript@4.9.5)): + jest-cli@29.7.0(@types/node@26.0.1)(ts-node@10.9.1(@types/node@26.0.1)(typescript@4.9.5)): dependencies: - '@jest/core': 29.7.0(ts-node@10.9.1(@types/node@12.20.52)(typescript@4.9.5)) + '@jest/core': 29.7.0(ts-node@10.9.1(@types/node@26.0.1)(typescript@4.9.5)) '@jest/test-result': 29.7.0 '@jest/types': 29.6.3 chalk: 4.1.2 - create-jest: 29.7.0(@types/node@12.20.52)(ts-node@10.9.1(@types/node@12.20.52)(typescript@4.9.5)) + create-jest: 29.7.0(@types/node@26.0.1)(ts-node@10.9.1(@types/node@26.0.1)(typescript@4.9.5)) exit: 0.1.2 import-local: 3.1.0 - jest-config: 29.7.0(@types/node@12.20.52)(ts-node@10.9.1(@types/node@12.20.52)(typescript@4.9.5)) + jest-config: 29.7.0(@types/node@26.0.1)(ts-node@10.9.1(@types/node@26.0.1)(typescript@4.9.5)) jest-util: 29.7.0 jest-validate: 29.7.0 yargs: 17.6.2 @@ -15152,7 +15468,7 @@ snapshots: - supports-color - ts-node - jest-config@29.7.0(@types/node@12.20.52)(ts-node@10.9.1(@types/node@12.20.52)(typescript@4.9.5)): + jest-config@29.7.0(@types/node@26.0.1)(ts-node@10.9.1(@types/node@26.0.1)(typescript@4.9.5)): dependencies: '@babel/core': 7.20.12 '@jest/test-sequencer': 29.7.0 @@ -15177,8 +15493,8 @@ snapshots: slash: 3.0.0 strip-json-comments: 3.1.1 optionalDependencies: - '@types/node': 12.20.52 - ts-node: 10.9.1(@types/node@12.20.52)(typescript@4.9.5) + '@types/node': 26.0.1 + ts-node: 10.9.1(@types/node@14.18.33)(typescript@4.9.5) transitivePeerDependencies: - babel-plugin-macros - supports-color @@ -15208,7 +15524,7 @@ snapshots: '@jest/fake-timers': 29.7.0 '@jest/types': 29.6.3 '@types/jsdom': 20.0.1 - '@types/node': 12.20.52 + '@types/node': 26.0.1 jest-mock: 29.7.0 jest-util: 29.7.0 jsdom: 20.0.3 @@ -15222,7 +15538,7 @@ snapshots: '@jest/environment': 29.7.0 '@jest/fake-timers': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 12.20.52 + '@types/node': 26.0.1 jest-mock: 29.7.0 jest-util: 29.7.0 @@ -15232,17 +15548,17 @@ snapshots: dependencies: '@jest/types': 29.6.3 '@types/graceful-fs': 4.1.5 - '@types/node': 12.20.52 + '@types/node': 18.11.9 anymatch: 3.1.2 fb-watchman: 2.0.1 graceful-fs: 4.2.10 jest-regex-util: 29.6.3 jest-util: 29.7.0 jest-worker: 29.7.0 - micromatch: 4.0.5 + micromatch: 4.0.8 walker: 1.0.8 optionalDependencies: - fsevents: 2.3.2 + fsevents: 2.3.3 jest-leak-detector@29.7.0: dependencies: @@ -15271,26 +15587,26 @@ snapshots: jest-mock@29.7.0: dependencies: '@jest/types': 29.6.3 - '@types/node': 12.20.52 + '@types/node': 26.0.1 jest-util: 29.7.0 jest-pnp-resolver@1.2.2(jest-resolve@29.7.0): optionalDependencies: jest-resolve: 29.7.0 - jest-preset-angular@14.0.3(1768b93d21c3361974a224b326b8b84c): + jest-preset-angular@14.0.3(a4921321e0bd129e68f0d6277f983f15): dependencies: - '@angular-devkit/build-angular': 15.2.10(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5))(@angular/platform-server@15.2.10(bb9340fd85b833f543ade9387312e178))(ng-packagr@15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5))(typescript@4.9.5) - '@angular/compiler-cli': 15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5) - '@angular/core': 15.2.10(rxjs@7.8.2)(zone.js@0.11.5) - '@angular/platform-browser-dynamic': 15.2.10(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(@angular/platform-browser@15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))) + '@angular-devkit/build-angular': 15.2.10(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5))(@angular/platform-server@15.2.10(597020a0fe8c1c77567a7c05da2eed63))(ng-packagr@15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5))(typescript@4.9.5) + '@angular/compiler-cli': 15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5) + '@angular/core': 15.2.10(rxjs@7.5.7)(zone.js@0.11.5) + '@angular/platform-browser-dynamic': 15.2.10(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(@angular/platform-browser@15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))) bs-logger: 0.2.6 esbuild-wasm: 0.17.19 - jest: 29.7.0(@types/node@12.20.52)(ts-node@10.9.1(@types/node@12.20.52)(typescript@4.9.5)) + jest: 29.7.0(@types/node@26.0.1)(ts-node@10.9.1(@types/node@26.0.1)(typescript@4.9.5)) jest-environment-jsdom: 29.7.0 jest-util: 29.7.0 pretty-format: 29.7.0 - ts-jest: 29.1.2(@babel/core@7.20.12)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.20.12))(esbuild@0.17.19)(jest@29.7.0(@types/node@12.20.52)(ts-node@10.9.1(@types/node@12.20.52)(typescript@4.9.5)))(typescript@4.9.5) + ts-jest: 29.1.2(@babel/core@7.20.12)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.20.12))(esbuild@0.17.19)(jest@29.7.0(@types/node@26.0.1)(ts-node@10.9.1(@types/node@26.0.1)(typescript@4.9.5)))(typescript@4.9.5) typescript: 4.9.5 optionalDependencies: esbuild: 0.17.19 @@ -15331,7 +15647,7 @@ snapshots: '@jest/test-result': 29.7.0 '@jest/transform': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 12.20.52 + '@types/node': 26.0.1 chalk: 4.1.2 emittery: 0.13.1 graceful-fs: 4.2.10 @@ -15359,7 +15675,7 @@ snapshots: '@jest/test-result': 29.7.0 '@jest/transform': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 12.20.52 + '@types/node': 26.0.1 chalk: 4.1.2 cjs-module-lexer: 1.2.2 collect-v8-coverage: 1.0.1 @@ -15405,7 +15721,7 @@ snapshots: jest-util@29.7.0: dependencies: '@jest/types': 29.6.3 - '@types/node': 12.20.52 + '@types/node': 26.0.1 chalk: 4.1.2 ci-info: 3.3.1 graceful-fs: 4.2.10 @@ -15424,7 +15740,7 @@ snapshots: dependencies: '@jest/test-result': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 12.20.52 + '@types/node': 26.0.1 ansi-escapes: 4.3.2 chalk: 4.1.2 emittery: 0.13.1 @@ -15433,23 +15749,23 @@ snapshots: jest-worker@27.5.1: dependencies: - '@types/node': 12.20.52 + '@types/node': 26.0.1 merge-stream: 2.0.0 supports-color: 8.1.1 jest-worker@29.7.0: dependencies: - '@types/node': 12.20.52 + '@types/node': 18.11.9 jest-util: 29.7.0 merge-stream: 2.0.0 supports-color: 8.1.1 - jest@29.7.0(@types/node@12.20.52)(ts-node@10.9.1(@types/node@12.20.52)(typescript@4.9.5)): + jest@29.7.0(@types/node@26.0.1)(ts-node@10.9.1(@types/node@26.0.1)(typescript@4.9.5)): dependencies: - '@jest/core': 29.7.0(ts-node@10.9.1(@types/node@12.20.52)(typescript@4.9.5)) + '@jest/core': 29.7.0(ts-node@10.9.1(@types/node@26.0.1)(typescript@4.9.5)) '@jest/types': 29.6.3 import-local: 3.1.0 - jest-cli: 29.7.0(@types/node@12.20.52)(ts-node@10.9.1(@types/node@12.20.52)(typescript@4.9.5)) + jest-cli: 29.7.0(@types/node@26.0.1)(ts-node@10.9.1(@types/node@26.0.1)(typescript@4.9.5)) transitivePeerDependencies: - '@types/node' - babel-plugin-macros @@ -16175,9 +16491,9 @@ snapshots: neo-async@2.6.2: {} - ng-packagr@15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5): + ng-packagr@15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5): dependencies: - '@angular/compiler-cli': 15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5) + '@angular/compiler-cli': 15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5) '@rollup/plugin-json': 6.1.0(rollup@3.29.4) '@rollup/plugin-node-resolve': 15.2.3(rollup@3.29.4) ajv: 8.11.0 @@ -17088,7 +17404,7 @@ snapshots: rollup@3.29.4: optionalDependencies: - fsevents: 2.3.2 + fsevents: 2.3.3 rollup@4.60.4: dependencies: @@ -17139,6 +17455,18 @@ snapshots: rx@4.1.0: {} + rxjs@5.5.12: + dependencies: + symbol-observable: 1.0.1 + + rxjs@6.6.7: + dependencies: + tslib: 1.14.1 + + rxjs@7.5.7: + dependencies: + tslib: 2.6.2 + rxjs@7.8.2: dependencies: tslib: 2.6.2 @@ -17173,7 +17501,7 @@ snapshots: dependencies: chokidar: 4.0.3 immutable: 5.1.5 - source-map-js: 1.0.2 + source-map-js: 1.2.1 optionalDependencies: '@parcel/watcher': 2.5.6 @@ -17767,6 +18095,8 @@ snapshots: supports-preserve-symlinks-flag@1.0.0: {} + symbol-observable@1.0.1: {} + symbol-observable@4.0.0: {} symbol-tree@3.2.4: {} @@ -17811,7 +18141,7 @@ snapshots: terser@5.16.3: dependencies: '@jridgewell/source-map': 0.3.6 - acorn: 8.7.1 + acorn: 8.11.3 commander: 2.20.3 source-map-support: 0.5.21 @@ -17909,11 +18239,11 @@ snapshots: dependencies: typescript: 4.9.5 - ts-jest@29.1.2(@babel/core@7.20.12)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.20.12))(esbuild@0.17.19)(jest@29.7.0(@types/node@12.20.52)(ts-node@10.9.1(@types/node@12.20.52)(typescript@4.9.5)))(typescript@4.9.5): + ts-jest@29.1.2(@babel/core@7.20.12)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.20.12))(esbuild@0.17.19)(jest@29.7.0(@types/node@26.0.1)(ts-node@10.9.1(@types/node@26.0.1)(typescript@4.9.5)))(typescript@4.9.5): dependencies: bs-logger: 0.2.6 fast-json-stable-stringify: 2.1.0 - jest: 29.7.0(@types/node@12.20.52)(ts-node@10.9.1(@types/node@12.20.52)(typescript@4.9.5)) + jest: 29.7.0(@types/node@26.0.1)(ts-node@10.9.1(@types/node@26.0.1)(typescript@4.9.5)) jest-util: 29.7.0 json5: 2.2.3 lodash.memoize: 4.1.2 @@ -17927,24 +18257,6 @@ snapshots: babel-jest: 29.7.0(@babel/core@7.20.12) esbuild: 0.17.19 - ts-node@10.9.1(@types/node@12.20.52)(typescript@4.9.5): - dependencies: - '@cspotcode/source-map-support': 0.8.1 - '@tsconfig/node10': 1.0.9 - '@tsconfig/node12': 1.0.11 - '@tsconfig/node14': 1.0.3 - '@tsconfig/node16': 1.0.3 - '@types/node': 12.20.52 - acorn: 8.7.1 - acorn-walk: 8.2.0 - arg: 4.1.3 - create-require: 1.1.1 - diff: 4.0.2 - make-error: 1.3.6 - typescript: 4.9.5 - v8-compile-cache-lib: 3.0.1 - yn: 3.1.1 - ts-node@10.9.1(@types/node@14.18.33)(typescript@4.9.5): dependencies: '@cspotcode/source-map-support': 0.8.1 @@ -17953,7 +18265,7 @@ snapshots: '@tsconfig/node14': 1.0.3 '@tsconfig/node16': 1.0.3 '@types/node': 14.18.33 - acorn: 8.7.1 + acorn: 8.11.3 acorn-walk: 8.2.0 arg: 4.1.3 create-require: 1.1.1 @@ -17979,6 +18291,12 @@ snapshots: tslib: 1.14.1 typescript: 5.9.3 + tsx@4.22.4: + dependencies: + esbuild: 0.28.1 + optionalDependencies: + fsevents: 2.3.3 + tuf-js@1.1.7: dependencies: '@tufjs/models': 1.0.4 @@ -18042,6 +18360,8 @@ snapshots: ua-parser-js@1.0.2: {} + undici-types@8.3.0: {} + undici@6.26.0: {} undici@7.24.4: {} @@ -18137,25 +18457,26 @@ snapshots: vary@1.1.2: {} - vite@7.3.2(@types/node@12.20.52)(less@4.1.3)(sass@1.97.3)(terser@5.16.3): + vite@7.3.2(@types/node@26.0.1)(less@4.1.3)(sass@1.97.3)(terser@5.16.3)(tsx@4.22.4): dependencies: esbuild: 0.27.3 fdir: 6.5.0(picomatch@4.0.4) picomatch: 4.0.4 postcss: 8.5.15 rollup: 4.60.4 - tinyglobby: 0.2.15 + tinyglobby: 0.2.16 optionalDependencies: - '@types/node': 12.20.52 + '@types/node': 26.0.1 fsevents: 2.3.3 less: 4.1.3 sass: 1.97.3 terser: 5.16.3 + tsx: 4.22.4 - vitest@4.1.7(@types/node@12.20.52)(jsdom@28.1.0)(vite@7.3.2(@types/node@12.20.52)(less@4.1.3)(sass@1.97.3)(terser@5.16.3)): + vitest@4.1.7(@types/node@26.0.1)(jsdom@28.1.0)(vite@7.3.2(@types/node@26.0.1)(less@4.1.3)(sass@1.97.3)(terser@5.16.3)(tsx@4.22.4)): dependencies: '@vitest/expect': 4.1.7 - '@vitest/mocker': 4.1.7(vite@7.3.2(@types/node@12.20.52)(less@4.1.3)(sass@1.97.3)(terser@5.16.3)) + '@vitest/mocker': 4.1.7(vite@7.3.2(@types/node@26.0.1)(less@4.1.3)(sass@1.97.3)(terser@5.16.3)(tsx@4.22.4)) '@vitest/pretty-format': 4.1.7 '@vitest/runner': 4.1.7 '@vitest/snapshot': 4.1.7 @@ -18172,10 +18493,10 @@ snapshots: tinyexec: 1.2.2 tinyglobby: 0.2.16 tinyrainbow: 3.1.0 - vite: 7.3.2(@types/node@12.20.52)(less@4.1.3)(sass@1.97.3)(terser@5.16.3) + vite: 7.3.2(@types/node@26.0.1)(less@4.1.3)(sass@1.97.3)(terser@5.16.3)(tsx@4.22.4) why-is-node-running: 2.3.0 optionalDependencies: - '@types/node': 12.20.52 + '@types/node': 26.0.1 jsdom: 28.1.0 transitivePeerDependencies: - msw From a7200129911639cf87a6f564b4060864a33ad702 Mon Sep 17 00:00:00 2001 From: Orkun Date: Wed, 1 Jul 2026 14:29:51 +0300 Subject: [PATCH 25/32] refactor: update frozen lockfile --- pnpm-lock.yaml | 20 ++++++-------------- 1 file changed, 6 insertions(+), 14 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 9a4d5d8..7158e8f 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -4,9 +4,6 @@ settings: autoInstallPeers: true excludeLinksFromLockfile: false -overrides: - rxjs: ~7.8.0 - importers: .: @@ -3298,9 +3295,6 @@ packages: '@types/node@14.18.33': resolution: {integrity: sha512-qelS/Ra6sacc4loe/3MSjXNL1dNQ/GjxNHVzuChwMfmk7HuycRLVQN2qNY3XahK+fZc5E2szqQSKUyAF0E+2bg==} - '@types/node@18.11.9': - resolution: {integrity: sha512-CRpX21/kGdzjOpFsZSkcrXMGIBWMGNIHXXBVFSH+ggkftxg+XYP20TESbh+zFvFj3EQOl5byk0HTRn1IL6hbqg==} - '@types/node@26.0.1': resolution: {integrity: sha512-fc3KiUoBt6kie0N9bIW3E47vZsuaMf0PM2AaUpLCLT0s/LvX1nxAim6Fc049cNxODPpGm6qRAuUOB86SkRuPQw==} @@ -10619,7 +10613,7 @@ snapshots: '@types/node': 14.18.33 chalk: 4.1.2 cosmiconfig: 7.0.1 - cosmiconfig-typescript-loader: 4.2.0(@types/node@14.18.33)(cosmiconfig@7.0.1)(ts-node@10.9.1(@types/node@26.0.1)(typescript@4.9.5))(typescript@4.9.5) + cosmiconfig-typescript-loader: 4.2.0(@types/node@14.18.33)(cosmiconfig@7.0.1)(ts-node@10.9.1(@types/node@14.18.33)(typescript@4.9.5))(typescript@4.9.5) lodash: 4.17.21 resolve-from: 5.0.0 ts-node: 10.9.1(@types/node@14.18.33)(typescript@4.9.5) @@ -11390,7 +11384,7 @@ snapshots: '@jest/schemas': 29.6.3 '@types/istanbul-lib-coverage': 2.0.4 '@types/istanbul-reports': 3.0.1 - '@types/node': 18.11.9 + '@types/node': 26.0.1 '@types/yargs': 17.0.10 chalk: 4.1.2 @@ -12196,7 +12190,7 @@ snapshots: '@types/graceful-fs@4.1.5': dependencies: - '@types/node': 18.11.9 + '@types/node': 26.0.1 '@types/http-proxy@1.17.9': dependencies: @@ -12239,8 +12233,6 @@ snapshots: '@types/node@14.18.33': {} - '@types/node@18.11.9': {} - '@types/node@26.0.1': dependencies: undici-types: 8.3.0 @@ -13696,7 +13688,7 @@ snapshots: object-assign: 4.1.1 vary: 1.1.2 - cosmiconfig-typescript-loader@4.2.0(@types/node@14.18.33)(cosmiconfig@7.0.1)(ts-node@10.9.1(@types/node@26.0.1)(typescript@4.9.5))(typescript@4.9.5): + cosmiconfig-typescript-loader@4.2.0(@types/node@14.18.33)(cosmiconfig@7.0.1)(ts-node@10.9.1(@types/node@14.18.33)(typescript@4.9.5))(typescript@4.9.5): dependencies: '@types/node': 14.18.33 cosmiconfig: 7.0.1 @@ -15548,7 +15540,7 @@ snapshots: dependencies: '@jest/types': 29.6.3 '@types/graceful-fs': 4.1.5 - '@types/node': 18.11.9 + '@types/node': 26.0.1 anymatch: 3.1.2 fb-watchman: 2.0.1 graceful-fs: 4.2.10 @@ -15755,7 +15747,7 @@ snapshots: jest-worker@29.7.0: dependencies: - '@types/node': 18.11.9 + '@types/node': 26.0.1 jest-util: 29.7.0 merge-stream: 2.0.0 supports-color: 8.1.1 From 0f8baf150e0576070f9bfb120e130ad6dca50e29 Mon Sep 17 00:00:00 2001 From: Orkun Date: Wed, 1 Jul 2026 14:33:44 +0300 Subject: [PATCH 26/32] refactor: adapt for pnpm v11 --- package.json | 8 +- pnpm-lock.yaml | 250 +++++++++++++++++++------------------------- pnpm-workspace.yaml | 2 + 3 files changed, 109 insertions(+), 151 deletions(-) diff --git a/package.json b/package.json index 60e6670..a0dff32 100644 --- a/package.json +++ b/package.json @@ -88,11 +88,5 @@ }, "workspaces": [ "projects/*" - ], - "pnpm": { - "onlyBuiltDependencies": ["@parcel/watcher", "esbuild", "lmdb", "msgpackr-extract"], - "overrides": { - "rxjs": "~7.8.0" - } - } + ] } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 7158e8f..89eed9a 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -4,46 +4,49 @@ settings: autoInstallPeers: true excludeLinksFromLockfile: false +overrides: + rxjs: ~7.8.0 + importers: .: dependencies: '@angular/animations': specifier: ^15.2.10 - version: 15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)) + version: 15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)) '@angular/common': specifier: ^15.2.10 - version: 15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7) + version: 15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2) '@angular/compiler': specifier: ^15.2.10 - version: 15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)) + version: 15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)) '@angular/core': specifier: ^15.2.10 - version: 15.2.10(rxjs@7.5.7)(zone.js@0.11.5) + version: 15.2.10(rxjs@7.8.2)(zone.js@0.11.5) '@angular/forms': specifier: ^15.2.10 - version: 15.2.10(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(@angular/platform-browser@15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(rxjs@7.5.7) + version: 15.2.10(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(@angular/platform-browser@15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(rxjs@7.8.2) '@angular/platform-browser': specifier: ^15.2.10 - version: 15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)) + version: 15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)) '@angular/platform-browser-dynamic': specifier: ^15.2.10 - version: 15.2.10(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(@angular/platform-browser@15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))) + version: 15.2.10(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(@angular/platform-browser@15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))) '@angular/platform-server': specifier: ^15.2.10 - version: 15.2.10(597020a0fe8c1c77567a7c05da2eed63) + version: 15.2.10(bb9340fd85b833f543ade9387312e178) '@angular/router': specifier: ^15.2.10 - version: 15.2.10(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(@angular/platform-browser@15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(rxjs@7.5.7) + version: 15.2.10(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(@angular/platform-browser@15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(rxjs@7.8.2) '@nguniversal/express-engine': specifier: ^15.2.1 - version: 15.2.1(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(@angular/platform-server@15.2.10(597020a0fe8c1c77567a7c05da2eed63))(express@4.20.0) + version: 15.2.1(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(@angular/platform-server@15.2.10(bb9340fd85b833f543ade9387312e178))(express@4.20.0) express: specifier: ^4.20.0 version: 4.20.0 rxjs: - specifier: ~7.5.0 - version: 7.5.7 + specifier: ~7.8.0 + version: 7.8.2 tslib: specifier: ^2.3.0 version: 2.5.0 @@ -53,7 +56,7 @@ importers: devDependencies: '@angular-devkit/build-angular': specifier: ^15.2.10 - version: 15.2.10(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5))(@angular/platform-server@15.2.10(597020a0fe8c1c77567a7c05da2eed63))(ng-packagr@15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5))(typescript@4.9.5) + version: 15.2.10(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5))(@angular/platform-server@15.2.10(bb9340fd85b833f543ade9387312e178))(ng-packagr@15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5))(typescript@4.9.5) '@angular-eslint/schematics': specifier: ^15.2.1 version: 15.2.1(@angular/cli@15.2.10(chokidar@3.5.3))(eslint@8.56.0)(typescript@4.9.5) @@ -62,7 +65,7 @@ importers: version: 15.2.10(chokidar@3.5.3) '@angular/compiler-cli': specifier: ^15.2.10 - version: 15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5) + version: 15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5) '@changesets/cli': specifier: ^2.31.0 version: 2.31.0(@types/node@26.0.1) @@ -89,7 +92,7 @@ importers: version: 0.1.0 '@nguniversal/builders': specifier: ^15.2.1 - version: 15.2.1(@angular-devkit/build-angular@15.2.10(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5))(@angular/platform-server@15.2.10(597020a0fe8c1c77567a7c05da2eed63))(ng-packagr@15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5))(typescript@4.9.5))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(@types/express@4.17.13)(chokidar@3.5.3)(typescript@4.9.5) + version: 15.2.1(@angular-devkit/build-angular@15.2.10(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5))(@angular/platform-server@15.2.10(bb9340fd85b833f543ade9387312e178))(ng-packagr@15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5))(typescript@4.9.5))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(@types/express@4.17.13)(chokidar@3.5.3)(typescript@4.9.5) '@types/express': specifier: ^4.17.0 version: 4.17.13 @@ -128,13 +131,13 @@ importers: version: 29.7.0(@types/node@26.0.1)(ts-node@10.9.1(@types/node@26.0.1)(typescript@4.9.5)) jest-preset-angular: specifier: ^14.0.3 - version: 14.0.3(a4921321e0bd129e68f0d6277f983f15) + version: 14.0.3(d9ae305fe687d06d093767e806cd9d64) lint-staged: specifier: ^13.0.3 version: 13.0.3(enquirer@2.4.1) ng-packagr: specifier: ^15.2.2 - version: 15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5) + version: 15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5) prettier: specifier: ^3.2.4 version: 3.2.5 @@ -161,13 +164,13 @@ importers: version: 21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5) '@angular/forms': specifier: ^21.2.0 - version: 21.2.14(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(@angular/platform-browser@21.2.14(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5)))(rxjs@7.8.2) + version: 21.2.14(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(@angular/platform-browser@21.2.14(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5)))(rxjs@7.8.2) '@angular/platform-browser': specifier: ^21.2.0 - version: 21.2.14(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5)) + version: 21.2.14(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5)) '@angular/router': specifier: ^21.2.0 - version: 21.2.14(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(@angular/platform-browser@21.2.14(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5)))(rxjs@7.8.2) + version: 21.2.14(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(@angular/platform-browser@21.2.14(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5)))(rxjs@7.8.2) '@fingerprint/agent': specifier: ^4.0.0 version: 4.0.3 @@ -195,7 +198,7 @@ importers: version: 15.2.1(eslint@8.56.0)(typescript@5.9.3) '@angular/build': specifier: ^21.2.12 - version: 21.2.12(999253b22980c8ff7ebcfd6e4ca36da1) + version: 21.2.12(050458936ce566fce64b753dfce229f3) '@angular/cli': specifier: ^21.2.12 version: 21.2.12(@types/node@26.0.1)(chokidar@5.0.0) @@ -489,14 +492,14 @@ packages: engines: {node: ^14.20.0 || ^16.13.0 || >=18.10.0} peerDependencies: '@angular/core': 15.2.10 - rxjs: ^6.5.3 || ^7.4.0 + rxjs: ~7.8.0 '@angular/common@21.2.14': resolution: {integrity: sha512-J6K7cE7uKOKmg4+sxLeGfsmaYDjP5l1XCiMMI0WPT0t68uxLk8g3MzV5Trqfb6ZnRxWcfp9c4c+XxAvMBB7ymA==} engines: {node: ^20.19.0 || ^22.12.0 || >=24.0.0} peerDependencies: '@angular/core': 21.2.14 - rxjs: ^6.5.3 || ^7.4.0 + rxjs: ~7.8.0 '@angular/compiler-cli@15.2.10': resolution: {integrity: sha512-mCFIxrs60XicKfA2o42hA7LrQvhybi9BQveWuZn/2iIEOXx7R62Iemz8E21pLWftAZHGxEW3NECfBrY1d3gVmA==} @@ -534,7 +537,7 @@ packages: resolution: {integrity: sha512-meGGidnitQJGDxYd9/LrqYiVlId+vGaLoiLgJdKBz+o2ZO6OmXQGuNw2VBqf17/Cc0/UjzrOY7+kILNFKkk/WQ==} engines: {node: ^14.20.0 || ^16.13.0 || >=18.10.0} peerDependencies: - rxjs: ^6.5.3 || ^7.4.0 + rxjs: ~7.8.0 zone.js: ~0.11.4 || ~0.12.0 || ~0.13.0 '@angular/core@21.2.14': @@ -542,7 +545,7 @@ packages: engines: {node: ^20.19.0 || ^22.12.0 || >=24.0.0} peerDependencies: '@angular/compiler': 21.2.14 - rxjs: ^6.5.3 || ^7.4.0 + rxjs: ~7.8.0 zone.js: ~0.15.0 || ~0.16.0 peerDependenciesMeta: '@angular/compiler': @@ -557,7 +560,7 @@ packages: '@angular/common': 15.2.10 '@angular/core': 15.2.10 '@angular/platform-browser': 15.2.10 - rxjs: ^6.5.3 || ^7.4.0 + rxjs: ~7.8.0 '@angular/forms@21.2.14': resolution: {integrity: sha512-HQYIybyMt0CrI31rW6vXbiDsSM2DDtTcOVeT/nWDRNCoqBrREDg8rVsm2Y+fUMsiQVJNa6dCXPwvYhjzJ4r7ug==} @@ -566,7 +569,7 @@ packages: '@angular/common': 21.2.14 '@angular/core': 21.2.14 '@angular/platform-browser': 21.2.14 - rxjs: ^6.5.3 || ^7.4.0 + rxjs: ~7.8.0 '@angular/platform-browser-dynamic@15.2.10': resolution: {integrity: sha512-JHP6W+FX715Qv7DhqvfZLuBZXSDJrboiQsR06gUAgDSjAUyhbqmpVg/2YOtgeWpPkzNDtXdPU2PhcRdIv5J3Yg==} @@ -617,7 +620,7 @@ packages: '@angular/common': 15.2.10 '@angular/core': 15.2.10 '@angular/platform-browser': 15.2.10 - rxjs: ^6.5.3 || ^7.4.0 + rxjs: ~7.8.0 '@angular/router@21.2.14': resolution: {integrity: sha512-Yo3LdgcqkfMu2/Ycl8o/4QjCBqZhtA+a7B8JVdW5cWdrpFTxKCOrzm+YRUMuIFmH5nzSv9oGnUuz64uk1+7r5Q==} @@ -626,7 +629,7 @@ packages: '@angular/common': 21.2.14 '@angular/core': 21.2.14 '@angular/platform-browser': 21.2.14 - rxjs: ^6.5.3 || ^7.4.0 + rxjs: ~7.8.0 '@asamuzakjp/css-color@5.1.11': resolution: {integrity: sha512-KVw6qIiCTUQhByfTd78h2yD1/00waTmm9uy/R7Ck/ctUyAPj+AEDLkQIdJW0T8+qGgj3j5bpNKK7Q3G+LedJWg==} @@ -7529,17 +7532,6 @@ packages: rx@4.1.0: resolution: {integrity: sha512-CiaiuN6gapkdl+cZUr67W6I8jquN4lkak3vtIsIWCl4XIPP8ffsoyN6/+PuGXnQy8Cu8W2y9Xxh31Rq4M6wUug==} - rxjs@5.5.12: - resolution: {integrity: sha512-xx2itnL5sBbqeeiVgNPVuQQ1nC8Jp2WfNJhXWHmElW9YmrpS9UVnNzhP3EH3HFqexO5Tlp8GhYY+WEcqcVMvGw==} - engines: {npm: '>=2.0.0'} - - rxjs@6.6.7: - resolution: {integrity: sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==} - engines: {npm: '>=2.0.0'} - - rxjs@7.5.7: - resolution: {integrity: sha512-z9MzKh/UcOqB3i20H6rtrlaE/CgjLOvheWK/9ILrbhROGTweAi1BaFsTT9FbwZi5Trr1qNRs+MXkhmR06awzQA==} - rxjs@7.8.2: resolution: {integrity: sha512-dhKf903U/PQZY6boNNtAGdWbG85WAbjT/1xYoZIC7FAY0yWapOBQVsVrDl58W86//e1VpMNBtRV4MaXfdMySFA==} @@ -8037,10 +8029,6 @@ packages: resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} engines: {node: '>= 0.4'} - symbol-observable@1.0.1: - resolution: {integrity: sha512-Kb3PrPYz4HanVF1LVGuAdW6LoVgIwjUYJGzFe7NDrBLCN4lsV/5J0MFurV+ygS4bRVwrCEt2c7MQ1R2a72oJDw==} - engines: {node: '>=0.10.0'} - symbol-observable@4.0.0: resolution: {integrity: sha512-b19dMThMV4HVFynSAM1++gBHAbk2Tc/osgLIBZMKsyqh34jb2e8Os7T6ZW/Bt3pJFdBTd2JwAnAAEQV7rSNvcQ==} engines: {node: '>=0.10'} @@ -8983,7 +8971,7 @@ snapshots: '@angular-devkit/architect@0.1502.10(chokidar@3.5.3)': dependencies: '@angular-devkit/core': 15.2.10(chokidar@3.5.3) - rxjs: 6.6.7 + rxjs: 7.8.2 transitivePeerDependencies: - chokidar @@ -8994,13 +8982,13 @@ snapshots: transitivePeerDependencies: - chokidar - '@angular-devkit/build-angular@15.2.10(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5))(@angular/platform-server@15.2.10(597020a0fe8c1c77567a7c05da2eed63))(ng-packagr@15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5))(typescript@4.9.5)': + '@angular-devkit/build-angular@15.2.10(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5))(@angular/platform-server@15.2.10(bb9340fd85b833f543ade9387312e178))(ng-packagr@15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5))(typescript@4.9.5)': dependencies: '@ampproject/remapping': 2.2.0 '@angular-devkit/architect': 0.1502.10(chokidar@3.5.3) '@angular-devkit/build-webpack': 0.1502.10(chokidar@3.5.3)(webpack-dev-server@4.11.1(webpack@5.76.1(esbuild@0.17.8)))(webpack@5.76.1(esbuild@0.17.8)) '@angular-devkit/core': 15.2.10(chokidar@3.5.3) - '@angular/compiler-cli': 15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5) + '@angular/compiler-cli': 15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5) '@babel/core': 7.20.12 '@babel/generator': 7.20.14 '@babel/helper-annotate-as-pure': 7.18.6 @@ -9012,7 +9000,7 @@ snapshots: '@babel/runtime': 7.20.13 '@babel/template': 7.20.7 '@discoveryjs/json-ext': 0.5.7 - '@ngtools/webpack': 15.2.10(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5))(typescript@4.9.5)(webpack@5.76.1(esbuild@0.17.8)) + '@ngtools/webpack': 15.2.10(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5))(typescript@4.9.5)(webpack@5.76.1(esbuild@0.17.8)) ansi-colors: 4.1.3 autoprefixer: 10.4.13(postcss@8.4.31) babel-loader: 9.1.2(@babel/core@7.20.12)(webpack@5.76.1(esbuild@0.17.8)) @@ -9042,7 +9030,7 @@ snapshots: postcss: 8.4.31 postcss-loader: 7.0.2(postcss@8.4.31)(webpack@5.76.1(esbuild@0.17.8)) resolve-url-loader: 5.0.0 - rxjs: 6.6.7 + rxjs: 7.8.2 sass: 1.58.1 sass-loader: 13.2.0(sass@1.58.1)(webpack@5.76.1(esbuild@0.17.8)) semver: 7.5.3 @@ -9059,9 +9047,9 @@ snapshots: webpack-merge: 5.8.0 webpack-subresource-integrity: 5.1.0(webpack@5.76.1(esbuild@0.17.8)) optionalDependencies: - '@angular/platform-server': 15.2.10(597020a0fe8c1c77567a7c05da2eed63) + '@angular/platform-server': 15.2.10(bb9340fd85b833f543ade9387312e178) esbuild: 0.17.8 - ng-packagr: 15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5) + ng-packagr: 15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5) transitivePeerDependencies: - '@swc/core' - bluebird @@ -9079,7 +9067,7 @@ snapshots: '@angular-devkit/build-webpack@0.1502.10(chokidar@3.5.3)(webpack-dev-server@4.11.1(webpack@5.76.1(esbuild@0.17.8)))(webpack@5.76.1(esbuild@0.17.8))': dependencies: '@angular-devkit/architect': 0.1502.10(chokidar@3.5.3) - rxjs: 6.6.7 + rxjs: 7.8.2 webpack: 5.76.1(esbuild@0.17.8) webpack-dev-server: 4.11.1(webpack@5.76.1(esbuild@0.17.8)) transitivePeerDependencies: @@ -9090,7 +9078,7 @@ snapshots: ajv: 8.12.0 ajv-formats: 2.1.1(ajv@8.12.0) jsonc-parser: 3.2.0 - rxjs: 6.6.7 + rxjs: 7.8.2 source-map: 0.7.4 optionalDependencies: chokidar: 3.5.3 @@ -9112,7 +9100,7 @@ snapshots: jsonc-parser: 3.2.0 magic-string: 0.29.0 ora: 5.4.1 - rxjs: 6.6.7 + rxjs: 7.8.2 transitivePeerDependencies: - chokidar @@ -9228,12 +9216,12 @@ snapshots: transitivePeerDependencies: - supports-color - '@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))': + '@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))': dependencies: - '@angular/core': 15.2.10(rxjs@7.5.7)(zone.js@0.11.5) + '@angular/core': 15.2.10(rxjs@7.8.2)(zone.js@0.11.5) tslib: 2.6.2 - '@angular/build@21.2.12(999253b22980c8ff7ebcfd6e4ca36da1)': + '@angular/build@21.2.12(050458936ce566fce64b753dfce229f3)': dependencies: '@ampproject/remapping': 2.3.0 '@angular-devkit/architect': 0.2102.12(chokidar@5.0.0) @@ -9268,11 +9256,11 @@ snapshots: watchpack: 2.5.1 optionalDependencies: '@angular/core': 21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5) - '@angular/platform-browser': 21.2.14(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5)) - '@angular/platform-server': 15.2.10(597020a0fe8c1c77567a7c05da2eed63) + '@angular/platform-browser': 21.2.14(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5)) + '@angular/platform-server': 15.2.10(bb9340fd85b833f543ade9387312e178) less: 4.1.3 lmdb: 3.5.1 - ng-packagr: 15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5) + ng-packagr: 15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5) postcss: 8.5.15 vitest: 4.1.7(@types/node@26.0.1)(jsdom@28.1.0)(vite@7.3.2(@types/node@26.0.1)(less@4.1.3)(sass@1.97.3)(terser@5.16.3)(tsx@4.22.4)) transitivePeerDependencies: @@ -9341,12 +9329,6 @@ snapshots: - chokidar - supports-color - '@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7)': - dependencies: - '@angular/core': 15.2.10(rxjs@7.5.7)(zone.js@0.11.5) - rxjs: 7.5.7 - tslib: 2.5.0 - '@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2)': dependencies: '@angular/core': 15.2.10(rxjs@7.8.2)(zone.js@0.11.5) @@ -9359,9 +9341,9 @@ snapshots: rxjs: 7.8.2 tslib: 2.6.2 - '@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5)': + '@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5)': dependencies: - '@angular/compiler': 15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)) + '@angular/compiler': 15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)) '@babel/core': 7.19.3 '@jridgewell/sourcemap-codec': 1.4.15 chokidar: 3.5.3 @@ -9392,22 +9374,16 @@ snapshots: transitivePeerDependencies: - supports-color - '@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))': + '@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))': dependencies: tslib: 2.6.2 optionalDependencies: - '@angular/core': 15.2.10(rxjs@7.5.7)(zone.js@0.11.5) + '@angular/core': 15.2.10(rxjs@7.8.2)(zone.js@0.11.5) '@angular/compiler@21.2.14': dependencies: tslib: 2.6.2 - '@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)': - dependencies: - rxjs: 7.5.7 - tslib: 2.5.0 - zone.js: 0.11.5 - '@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)': dependencies: rxjs: 7.8.2 @@ -9422,72 +9398,72 @@ snapshots: '@angular/compiler': 21.2.14 zone.js: 0.11.5 - '@angular/forms@15.2.10(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(@angular/platform-browser@15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(rxjs@7.5.7)': + '@angular/forms@15.2.10(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(@angular/platform-browser@15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(rxjs@7.8.2)': dependencies: - '@angular/common': 15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7) - '@angular/core': 15.2.10(rxjs@7.5.7)(zone.js@0.11.5) - '@angular/platform-browser': 15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)) - rxjs: 7.5.7 + '@angular/common': 15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2) + '@angular/core': 15.2.10(rxjs@7.8.2)(zone.js@0.11.5) + '@angular/platform-browser': 15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)) + rxjs: 7.8.2 tslib: 2.6.2 - '@angular/forms@21.2.14(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(@angular/platform-browser@21.2.14(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5)))(rxjs@7.8.2)': + '@angular/forms@21.2.14(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(@angular/platform-browser@21.2.14(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5)))(rxjs@7.8.2)': dependencies: '@angular/common': 21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2) '@angular/core': 21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5) - '@angular/platform-browser': 21.2.14(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5)) + '@angular/platform-browser': 21.2.14(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5)) '@standard-schema/spec': 1.1.0 rxjs: 7.8.2 tslib: 2.6.2 - '@angular/platform-browser-dynamic@15.2.10(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(@angular/platform-browser@15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))': + '@angular/platform-browser-dynamic@15.2.10(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(@angular/platform-browser@15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))': dependencies: - '@angular/common': 15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7) - '@angular/compiler': 15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)) - '@angular/core': 15.2.10(rxjs@7.5.7)(zone.js@0.11.5) - '@angular/platform-browser': 15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)) + '@angular/common': 15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2) + '@angular/compiler': 15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)) + '@angular/core': 15.2.10(rxjs@7.8.2)(zone.js@0.11.5) + '@angular/platform-browser': 15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)) tslib: 2.6.2 - '@angular/platform-browser@15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))': + '@angular/platform-browser@15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))': dependencies: - '@angular/common': 15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7) - '@angular/core': 15.2.10(rxjs@7.5.7)(zone.js@0.11.5) + '@angular/common': 15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2) + '@angular/core': 15.2.10(rxjs@7.8.2)(zone.js@0.11.5) tslib: 2.6.2 optionalDependencies: - '@angular/animations': 15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)) + '@angular/animations': 15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)) - '@angular/platform-browser@21.2.14(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))': + '@angular/platform-browser@21.2.14(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))': dependencies: '@angular/common': 21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2) '@angular/core': 21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5) tslib: 2.6.2 optionalDependencies: - '@angular/animations': 15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)) + '@angular/animations': 15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)) - '@angular/platform-server@15.2.10(597020a0fe8c1c77567a7c05da2eed63)': + '@angular/platform-server@15.2.10(bb9340fd85b833f543ade9387312e178)': dependencies: - '@angular/animations': 15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)) - '@angular/common': 15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7) - '@angular/compiler': 15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)) - '@angular/core': 15.2.10(rxjs@7.5.7)(zone.js@0.11.5) - '@angular/platform-browser': 15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)) - '@angular/platform-browser-dynamic': 15.2.10(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(@angular/platform-browser@15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))) + '@angular/animations': 15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)) + '@angular/common': 15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2) + '@angular/compiler': 15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)) + '@angular/core': 15.2.10(rxjs@7.8.2)(zone.js@0.11.5) + '@angular/platform-browser': 15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)) + '@angular/platform-browser-dynamic': 15.2.10(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(@angular/platform-browser@15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))) domino: 2.1.6 tslib: 2.6.2 xhr2: 0.2.1 - '@angular/router@15.2.10(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(@angular/platform-browser@15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(rxjs@7.5.7)': + '@angular/router@15.2.10(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(@angular/platform-browser@15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(rxjs@7.8.2)': dependencies: - '@angular/common': 15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7) - '@angular/core': 15.2.10(rxjs@7.5.7)(zone.js@0.11.5) - '@angular/platform-browser': 15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)) - rxjs: 7.5.7 + '@angular/common': 15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2) + '@angular/core': 15.2.10(rxjs@7.8.2)(zone.js@0.11.5) + '@angular/platform-browser': 15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)) + rxjs: 7.8.2 tslib: 2.6.2 - '@angular/router@21.2.14(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(@angular/platform-browser@21.2.14(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5)))(rxjs@7.8.2)': + '@angular/router@21.2.14(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(@angular/platform-browser@21.2.14(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5)))(rxjs@7.8.2)': dependencies: '@angular/common': 21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2) '@angular/core': 21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5) - '@angular/platform-browser': 21.2.14(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5)) + '@angular/platform-browser': 21.2.14(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@21.2.14(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@21.2.14(@angular/compiler@21.2.14)(rxjs@7.8.2)(zone.js@0.11.5)) rxjs: 7.8.2 tslib: 2.6.2 @@ -11603,25 +11579,25 @@ snapshots: '@tybys/wasm-util': 0.10.2 optional: true - '@ngtools/webpack@15.2.10(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5))(typescript@4.9.5)(webpack@5.76.1(esbuild@0.17.8))': + '@ngtools/webpack@15.2.10(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5))(typescript@4.9.5)(webpack@5.76.1(esbuild@0.17.8))': dependencies: - '@angular/compiler-cli': 15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5) + '@angular/compiler-cli': 15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5) typescript: 4.9.5 webpack: 5.76.1(esbuild@0.17.8) - '@nguniversal/builders@15.2.1(@angular-devkit/build-angular@15.2.10(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5))(@angular/platform-server@15.2.10(597020a0fe8c1c77567a7c05da2eed63))(ng-packagr@15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5))(typescript@4.9.5))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(@types/express@4.17.13)(chokidar@3.5.3)(typescript@4.9.5)': + '@nguniversal/builders@15.2.1(@angular-devkit/build-angular@15.2.10(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5))(@angular/platform-server@15.2.10(bb9340fd85b833f543ade9387312e178))(ng-packagr@15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5))(typescript@4.9.5))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(@types/express@4.17.13)(chokidar@3.5.3)(typescript@4.9.5)': dependencies: '@angular-devkit/architect': 0.1502.10(chokidar@3.5.3) - '@angular-devkit/build-angular': 15.2.10(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5))(@angular/platform-server@15.2.10(597020a0fe8c1c77567a7c05da2eed63))(ng-packagr@15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5))(typescript@4.9.5) + '@angular-devkit/build-angular': 15.2.10(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5))(@angular/platform-server@15.2.10(bb9340fd85b833f543ade9387312e178))(ng-packagr@15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5))(typescript@4.9.5) '@angular-devkit/core': 15.2.10(chokidar@3.5.3) - '@nguniversal/common': 15.2.1(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)) + '@nguniversal/common': 15.2.1(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)) browser-sync: 2.27.10 express: 4.20.0 guess-parser: 0.4.22(typescript@4.9.5) http-proxy-middleware: 2.0.6(@types/express@4.17.13) ora: 5.4.1 piscina: 3.2.0 - rxjs: 6.6.7 + rxjs: 7.8.2 tree-kill: 1.2.2 transitivePeerDependencies: - '@angular/common' @@ -11635,10 +11611,10 @@ snapshots: - typescript - utf-8-validate - '@nguniversal/common@15.2.1(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))': + '@nguniversal/common@15.2.1(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))': dependencies: - '@angular/common': 15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7) - '@angular/core': 15.2.10(rxjs@7.5.7)(zone.js@0.11.5) + '@angular/common': 15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2) + '@angular/core': 15.2.10(rxjs@7.8.2)(zone.js@0.11.5) critters: 0.0.16 jsdom: 21.1.0 tslib: 2.6.2 @@ -11648,12 +11624,12 @@ snapshots: - supports-color - utf-8-validate - '@nguniversal/express-engine@15.2.1(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(@angular/platform-server@15.2.10(597020a0fe8c1c77567a7c05da2eed63))(express@4.20.0)': + '@nguniversal/express-engine@15.2.1(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(@angular/platform-server@15.2.10(bb9340fd85b833f543ade9387312e178))(express@4.20.0)': dependencies: - '@angular/common': 15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7) - '@angular/core': 15.2.10(rxjs@7.5.7)(zone.js@0.11.5) - '@angular/platform-server': 15.2.10(597020a0fe8c1c77567a7c05da2eed63) - '@nguniversal/common': 15.2.1(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)) + '@angular/common': 15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2) + '@angular/core': 15.2.10(rxjs@7.8.2)(zone.js@0.11.5) + '@angular/platform-server': 15.2.10(bb9340fd85b833f543ade9387312e178) + '@nguniversal/common': 15.2.1(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)) express: 4.20.0 tslib: 2.6.2 transitivePeerDependencies: @@ -13184,7 +13160,7 @@ snapshots: etag: 1.8.1 fresh: 0.5.2 mitt: 1.2.0 - rxjs: 5.5.12 + rxjs: 7.8.2 typescript: 4.9.5 browser-sync-ui@2.27.10: @@ -15586,12 +15562,12 @@ snapshots: optionalDependencies: jest-resolve: 29.7.0 - jest-preset-angular@14.0.3(a4921321e0bd129e68f0d6277f983f15): + jest-preset-angular@14.0.3(d9ae305fe687d06d093767e806cd9d64): dependencies: - '@angular-devkit/build-angular': 15.2.10(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5))(@angular/platform-server@15.2.10(597020a0fe8c1c77567a7c05da2eed63))(ng-packagr@15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5))(typescript@4.9.5) - '@angular/compiler-cli': 15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5) - '@angular/core': 15.2.10(rxjs@7.5.7)(zone.js@0.11.5) - '@angular/platform-browser-dynamic': 15.2.10(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(@angular/platform-browser@15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))(rxjs@7.5.7))(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5))) + '@angular-devkit/build-angular': 15.2.10(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5))(@angular/platform-server@15.2.10(bb9340fd85b833f543ade9387312e178))(ng-packagr@15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5))(typescript@4.9.5) + '@angular/compiler-cli': 15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5) + '@angular/core': 15.2.10(rxjs@7.8.2)(zone.js@0.11.5) + '@angular/platform-browser-dynamic': 15.2.10(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(@angular/platform-browser@15.2.10(@angular/animations@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(@angular/common@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))(rxjs@7.8.2))(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5))) bs-logger: 0.2.6 esbuild-wasm: 0.17.19 jest: 29.7.0(@types/node@26.0.1)(ts-node@10.9.1(@types/node@26.0.1)(typescript@4.9.5)) @@ -16483,9 +16459,9 @@ snapshots: neo-async@2.6.2: {} - ng-packagr@15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5): + ng-packagr@15.2.2(@angular/compiler-cli@15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5))(tslib@2.5.0)(typescript@4.9.5): dependencies: - '@angular/compiler-cli': 15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.5.7)(zone.js@0.11.5)))(typescript@4.9.5) + '@angular/compiler-cli': 15.2.10(@angular/compiler@15.2.10(@angular/core@15.2.10(rxjs@7.8.2)(zone.js@0.11.5)))(typescript@4.9.5) '@rollup/plugin-json': 6.1.0(rollup@3.29.4) '@rollup/plugin-node-resolve': 15.2.3(rollup@3.29.4) ajv: 8.11.0 @@ -17447,18 +17423,6 @@ snapshots: rx@4.1.0: {} - rxjs@5.5.12: - dependencies: - symbol-observable: 1.0.1 - - rxjs@6.6.7: - dependencies: - tslib: 1.14.1 - - rxjs@7.5.7: - dependencies: - tslib: 2.6.2 - rxjs@7.8.2: dependencies: tslib: 2.6.2 @@ -18087,8 +18051,6 @@ snapshots: supports-preserve-symlinks-flag@1.0.0: {} - symbol-observable@1.0.1: {} - symbol-observable@4.0.0: {} symbol-tree@3.2.4: {} diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml index f536531..102b0b7 100644 --- a/pnpm-workspace.yaml +++ b/pnpm-workspace.yaml @@ -6,3 +6,5 @@ allowBuilds: lmdb: true msgpackr-extract: true nice-napi: true +overrides: + rxjs: '~7.8.0' From 230ba68cd5fec70aa39319af3409e8c5d4202e91 Mon Sep 17 00:00:00 2001 From: Orkun Date: Wed, 1 Jul 2026 14:34:41 +0300 Subject: [PATCH 27/32] refactor: adapt for pnpm v9 --- package.json | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/package.json b/package.json index a0dff32..60e6670 100644 --- a/package.json +++ b/package.json @@ -88,5 +88,11 @@ }, "workspaces": [ "projects/*" - ] + ], + "pnpm": { + "onlyBuiltDependencies": ["@parcel/watcher", "esbuild", "lmdb", "msgpackr-extract"], + "overrides": { + "rxjs": "~7.8.0" + } + } } From ed5b65b259e89a836b2f8632e4025a7b102f5cbc Mon Sep 17 00:00:00 2001 From: Orkun Date: Wed, 1 Jul 2026 14:36:39 +0300 Subject: [PATCH 28/32] refactor: simplify test matrix version argument in CI workflow --- .github/workflows/test-matrix.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test-matrix.yml b/.github/workflows/test-matrix.yml index 3c7741e..2849ba6 100644 --- a/.github/workflows/test-matrix.yml +++ b/.github/workflows/test-matrix.yml @@ -46,4 +46,4 @@ jobs: run: pnpm generate:version - name: Run Matrix Check for Angular ${{ matrix.angular }} - run: pnpm run test:matrix -- --version=${{ matrix.angular }} + run: pnpm run test:matrix --version=${{ matrix.angular }} From c48b11aee9cedcb75f174594241ac1eed6209b4e Mon Sep 17 00:00:00 2001 From: Orkun Date: Tue, 7 Jul 2026 12:53:13 +0300 Subject: [PATCH 29/32] refactor: remove property from Angular metadata --- bin/utils/angularMetadata.ts | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/bin/utils/angularMetadata.ts b/bin/utils/angularMetadata.ts index ee88d13..0cd0d4c 100644 --- a/bin/utils/angularMetadata.ts +++ b/bin/utils/angularMetadata.ts @@ -1,5 +1,4 @@ export interface AngularVersionMetadata { - typescript: string zone: string jpa: string jest: string @@ -7,11 +6,11 @@ export interface AngularVersionMetadata { } export const angularMetadata: Record = { - 15: { typescript: '~4.9.5', zone: '~0.11.4', jpa: '^13.1.4', jest: '^29.0.0' }, - 16: { typescript: '~5.1.6', zone: '~0.13.3', jpa: '^13.1.4', jest: '^29.0.0' }, - 17: { typescript: '~5.2.2', zone: '~0.14.4', jpa: '^14.1.1', jest: '^29.0.0' }, - 18: { typescript: '~5.4.5', zone: '~0.14.4', jpa: '^14.1.1', jest: '^29.0.0' }, - 19: { typescript: '~5.6.3', zone: '~0.15.0', jpa: '^14.4.2', jest: '^29.0.0' }, - 20: { typescript: '~5.8.3', zone: '~0.15.0', jpa: '^15.0.0', jest: '^30.2.0', typesJest: '^30.0.0' }, - 21: { typescript: '~5.9.2', zone: '~0.16.0', jpa: '^17.0.0', jest: '^30.2.0', typesJest: '^30.0.0' }, + 15: { zone: '~0.11.4', jpa: '^13.1.4', jest: '^29.0.0' }, + 16: { zone: '~0.13.3', jpa: '^13.1.4', jest: '^29.0.0' }, + 17: { zone: '~0.14.4', jpa: '^14.1.1', jest: '^29.0.0' }, + 18: { zone: '~0.14.4', jpa: '^14.1.1', jest: '^29.0.0' }, + 19: { zone: '~0.15.0', jpa: '^14.4.2', jest: '^29.0.0' }, + 20: { zone: '~0.15.0', jpa: '^15.0.0', jest: '^30.2.0', typesJest: '^30.0.0' }, + 21: { zone: '~0.16.0', jpa: '^17.0.0', jest: '^30.2.0', typesJest: '^30.0.0' }, } From bb45142b51695cec0b56564aa2eb8bcb70f6150b Mon Sep 17 00:00:00 2001 From: Orkun Date: Tue, 7 Jul 2026 12:55:14 +0300 Subject: [PATCH 30/32] refactor: remove version generation step from CI test matrix workflow --- .github/workflows/test-matrix.yml | 3 --- 1 file changed, 3 deletions(-) diff --git a/.github/workflows/test-matrix.yml b/.github/workflows/test-matrix.yml index 2849ba6..836f7aa 100644 --- a/.github/workflows/test-matrix.yml +++ b/.github/workflows/test-matrix.yml @@ -42,8 +42,5 @@ jobs: - name: Install dependencies run: pnpm install - - name: Generate project version - run: pnpm generate:version - - name: Run Matrix Check for Angular ${{ matrix.angular }} run: pnpm run test:matrix --version=${{ matrix.angular }} From 3cdc8ca826b751f82d1a17bbb7b8eba0fd359e9f Mon Sep 17 00:00:00 2001 From: Orkun Date: Tue, 7 Jul 2026 13:02:06 +0300 Subject: [PATCH 31/32] refactor: adjust concurrency in test-matrix workflow --- .github/workflows/test-matrix.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.github/workflows/test-matrix.yml b/.github/workflows/test-matrix.yml index 836f7aa..ca6c5bd 100644 --- a/.github/workflows/test-matrix.yml +++ b/.github/workflows/test-matrix.yml @@ -3,6 +3,10 @@ name: Test Angular Matrix on: pull_request: +concurrency: + group: ${{ github.workflow }}-${{ github.head_ref || github.ref_name }} + cancel-in-progress: true + jobs: test-matrix: name: Angular ${{ matrix.angular }} From cb62c046d3d60fc476ce66c5e89666ffb06072fc Mon Sep 17 00:00:00 2001 From: Orkun Date: Tue, 7 Jul 2026 13:02:50 +0300 Subject: [PATCH 32/32] chore: try concurrency with new push