diff --git a/.github/workflows/qunit_tests.yml b/.github/workflows/qunit_tests.yml index 86d0994d64ce..2ae2c013fc1d 100644 --- a/.github/workflows/qunit_tests.yml +++ b/.github/workflows/qunit_tests.yml @@ -111,7 +111,7 @@ jobs: shell: bash env: DEVEXTREME_TEST_CI: "true" - run: pnpm exec nx build:systemjs + run: pnpm exec nx build:dev - name: Zip artifacts working-directory: ./packages/devextreme diff --git a/packages/devextreme/docker-ci.sh b/packages/devextreme/docker-ci.sh index 28f51484ee3c..4944b701684c 100755 --- a/packages/devextreme/docker-ci.sh +++ b/packages/devextreme/docker-ci.sh @@ -40,7 +40,8 @@ function run_test { function run_test_impl { local port=`node -e "console.log(require('./ports.json').qunit)"` - local url="http://0.0.0.0:$port/run?notimers=true" + # Use 127.0.0.1, not 0.0.0.0 — Chrome cannot fetch modules from 0.0.0.0. + local url="http://127.0.0.1:$port/run?notimers=true" local runner_pid local runner_result=0 diff --git a/packages/devextreme/js/__internal/grids/grid_core/views/m_grid_view.ts b/packages/devextreme/js/__internal/grids/grid_core/views/m_grid_view.ts index b121904058a5..4409a48e4cb1 100644 --- a/packages/devextreme/js/__internal/grids/grid_core/views/m_grid_view.ts +++ b/packages/devextreme/js/__internal/grids/grid_core/views/m_grid_view.ts @@ -11,6 +11,7 @@ import { Deferred, when } from '@js/core/utils/deferred'; import { each } from '@js/core/utils/iterator'; import { getBoundingRect } from '@js/core/utils/position'; import { getHeight, getWidth } from '@js/core/utils/size'; +import { setHeight } from '@js/core/utils/style'; import { isDefined, isNumeric, isString } from '@js/core/utils/type'; import { getWindow, hasWindow } from '@js/core/utils/window'; import * as accessibility from '@js/ui/shared/accessibility'; @@ -826,7 +827,7 @@ export class ResizingController extends modules.ViewController { // IE11 if (maxHeightHappened && !isMaxHeightApplied) { - $(groupElement).css('height', maxHeight); + setHeight($(groupElement), maxHeight); } if (!dataController.isLoaded()) { diff --git a/packages/devextreme/js/__internal/grids/grid_core/views/m_rows_view.ts b/packages/devextreme/js/__internal/grids/grid_core/views/m_rows_view.ts index ee5eb9a8b98d..018c38129c5f 100644 --- a/packages/devextreme/js/__internal/grids/grid_core/views/m_rows_view.ts +++ b/packages/devextreme/js/__internal/grids/grid_core/views/m_rows_view.ts @@ -536,7 +536,7 @@ export class RowsView extends ColumnsView { $cell = that._createCell({ column: columns[i], rowType: 'freeSpace', columnIndex: i, columns, }); - isNumeric(height) && $cell.css('height', height); + isNumeric(height) && setHeight($cell, height); $row.append($cell); } @@ -1035,7 +1035,7 @@ export class RowsView extends ColumnsView { if (showFreeSpaceRow) { deferRender(() => { - freeSpaceRowElements.css('height', resultHeight); + setHeight(freeSpaceRowElements, resultHeight); isFreeSpaceRowVisible = true; freeSpaceRowElements.show(); }); @@ -1044,7 +1044,7 @@ export class RowsView extends ColumnsView { }); } } else { - freeSpaceRowElements.css('height', 0); + setHeight(freeSpaceRowElements, 0); freeSpaceRowElements.show(); this._updateLastRowBorder(true); } diff --git a/packages/devextreme/package.json b/packages/devextreme/package.json index d017b11fb31e..5a1df7b918eb 100644 --- a/packages/devextreme/package.json +++ b/packages/devextreme/package.json @@ -130,11 +130,6 @@ "minimist": "1.2.8", "qunit": "2.25.0", "sinon": "18.0.1", - "systemjs": "0.19.41", - "systemjs-plugin-babel": "0.0.25", - "systemjs-plugin-css": "0.1.37", - "systemjs-plugin-json": "0.3.0", - "systemjs-plugin-text": "0.0.11", "terser-webpack-plugin": "5.3.17", "ts-jest": "29.1.2", "tsc-alias": "1.8.16", diff --git a/packages/devextreme/project.json b/packages/devextreme/project.json index e1f741f3fce4..7a92022c8bb3 100644 --- a/packages/devextreme/project.json +++ b/packages/devextreme/project.json @@ -152,6 +152,20 @@ "{projectRoot}/artifacts/npm/devextreme-internal/bundles/dx.custom.config.js" ] }, + "copy:qunit:dx-custom": { + "executor": "devextreme-nx-infra-plugin:copy-files", + "options": { + "files": [ + { + "from": "./build/bundle-templates/dx.custom.js", + "to": "./artifacts/transpiled-esm-npm/bundles/dx.custom.js" + } + ] + }, + "dependsOn": ["build:devextreme-bundler-config"], + "inputs": ["{projectRoot}/build/bundle-templates/dx.custom.js"], + "outputs": ["{projectRoot}/artifacts/transpiled-esm-npm/bundles/dx.custom.js"] + }, "build:devextreme-bundler-config:watch": { "executor": "devextreme-nx-infra-plugin:concatenate-files", "cache": false, @@ -322,6 +336,11 @@ { "from": "./js/viz/vector_map.utils/_settings.json", "to": "./viz/vector_map.utils/_settings.json" } ] }, + "configurations": { + "qunit": { + "removeDebug": false + } + }, "inputs": [ "jsSourcesProduction", "jsAssetsProduction" @@ -410,6 +429,11 @@ ".jsx": ".js" } }, + "configurations": { + "qunit": { + "removeDebug": false + } + }, "inputs": [ "internalTsArtifacts" ], @@ -417,6 +441,72 @@ "{projectRoot}/artifacts/transpiled-esm-npm/esm/__internal" ] }, + "build:npm:esm:watch": { + "executor": "devextreme-nx-infra-plugin:babel-transform", + "cache": false, + "options": { + "babelConfigPath": "./build/transpile-config.js", + "configKey": "esm", + "sourcePattern": "./js/**/*.{js,jsx}", + "excludePatterns": [ + "./js/**/*.d.ts", + "./js/__internal/**/*" + ], + "outDir": "./artifacts/transpiled-esm-npm/esm", + "removeDebug": true, + "watch": true, + "copyAssets": [ + { "from": "./js/localization/messages", "to": "./localization/messages" }, + { "from": "./js/viz/vector_map.utils/_settings.json", "to": "./viz/vector_map.utils/_settings.json" } + ] + }, + "configurations": { + "qunit": { + "removeDebug": false + } + } + }, + "build:npm:esm:internal:watch": { + "executor": "devextreme-nx-infra-plugin:babel-transform", + "cache": false, + "options": { + "babelConfigPath": "./build/transpile-config.js", + "configKey": "esm", + "sourcePattern": "./artifacts/dist_ts/__internal/**/*.{js,jsx}", + "outDir": "./artifacts/transpiled-esm-npm/esm/__internal", + "removeDebug": true, + "watch": true, + "renameExtensions": { + ".jsx": ".js" + } + }, + "configurations": { + "qunit": { + "removeDebug": false + } + } + }, + "build:qunit-esm": { + "executor": "nx:run-commands", + "options": { + "cwd": "{projectRoot}", + "parallel": true, + "commands": [ + "pnpm nx run devextreme:build:npm:esm -c qunit", + "pnpm nx run devextreme:build:npm:esm:internal -c qunit" + ] + }, + "dependsOn": [ + "build:ts:internal" + ], + "outputs": [ + "{projectRoot}/artifacts/transpiled-esm-npm/esm" + ], + "cache": true, + "metadata": { + "description": "ESM artifacts for QUnit native import-map loader (?loader=esm)." + } + }, "build:npm:cjs:internal": { "executor": "devextreme-nx-infra-plugin:babel-transform", "options": { @@ -530,14 +620,12 @@ "pnpm nx build:devextreme-bundler-config devextreme", "pnpm nx build:devextreme-bundler-config devextreme -c prod", "pnpm nx build:ts:internal devextreme", - "pnpm nx run-many --targets=build:cjs,build:cjs:internal,build:cjs:bundles --projects=devextreme --parallel", - "pnpm nx run-many --targets=build:cjs,build:cjs:internal,build:cjs:bundles --projects=devextreme --parallel -c production", - "pnpm nx run-many --targets=build:npm:cjs,build:npm:cjs:internal --projects=devextreme --parallel", + "pnpm nx run-many --targets=build:npm:esm,build:npm:esm:internal --projects=devextreme --parallel -c qunit", + "pnpm nx copy:qunit:dx-custom devextreme", "pnpm nx clean:dist-ts devextreme" ], "outputs": [ - "{projectRoot}/artifacts/transpiled", - "{projectRoot}/artifacts/transpiled-renovation-npm", + "{projectRoot}/artifacts/transpiled-esm-npm", "{projectRoot}/build/bundle-templates/dx.custom.js", "{projectRoot}/artifacts/npm/devextreme/bundles/dx.custom.config.js" ] @@ -570,10 +658,8 @@ "options": { "commands": [ "pnpm nx build:ts:internal:watch devextreme", - "pnpm nx build:cjs:watch devextreme", - "pnpm nx build:cjs:watch devextreme -c production", - "pnpm nx build:cjs:internal:watch devextreme", - "pnpm nx build:cjs:internal:watch devextreme -c production" + "pnpm nx build:npm:esm:watch devextreme -c qunit", + "pnpm nx build:npm:esm:internal:watch devextreme -c qunit" ], "cwd": "{projectRoot}", "parallel": true @@ -1729,7 +1815,7 @@ "pnpm nx clean:artifacts devextreme", "pnpm nx build:localization devextreme", "pnpm nx build:transpile devextreme -c ci", - "pnpm nx run-many --targets=bundle:debug,build:vectormap,copy:vendor --projects=devextreme --parallel" + "pnpm nx run-many --targets=build:vectormap,copy:vendor --projects=devextreme --parallel" ], "parallel": false }, @@ -1755,58 +1841,9 @@ ], "cache": true, "metadata": { - "description": "Dev/CI test build. Skips prod bundles, aspnet, declarations, npm, and license checks." + "description": "Dev/CI QUnit build (native ESM import-map). Skips all CJS transpile/bundle steps, npm CJS dual-mode, prod bundles, aspnet, declarations, npm packing, and license checks." } }, - "build:systemjs": { - "executor": "nx:run-commands", - "options": { - "cwd": "{projectRoot}", - "parallel": true, - "commands": [ - "node testing/systemjs-builder.js --transpile=modules", - "node testing/systemjs-builder.js --transpile=testing", - "node testing/systemjs-builder.js --transpile=css", - "node testing/systemjs-builder.js --transpile=js-vendors" - ] - }, - "dependsOn": [ - "build:dev" - ], - "inputs": [ - "internalPackageEnv", - { - "env": "DEVEXTREME_TEST_CI" - }, - { - "dependentTasksOutputFiles": "{projectRoot}/artifacts/transpiled/**/*" - }, - { - "dependentTasksOutputFiles": "{projectRoot}/artifacts/css/dx.light.css" - }, - { - "dependentTasksOutputFiles": "{projectRoot}/artifacts/css/dx.material.blue.light.css" - }, - { - "dependentTasksOutputFiles": "{projectRoot}/artifacts/css/dx.fluent.blue.light.css" - }, - { - "dependentTasksOutputFiles": "{projectRoot}/artifacts/css/dx-gantt.css" - }, - "{projectRoot}/testing/content/**/*", - "{projectRoot}/testing/helpers/**/*", - "{projectRoot}/testing/tests/**/*", - "{projectRoot}/testing/systemjs-builder.js", - "{workspaceRoot}/pnpm-lock.yaml" - ], - "outputs": [ - "{projectRoot}/artifacts/transpiled-systemjs", - "{projectRoot}/artifacts/transpiled-testing", - "{projectRoot}/artifacts/css-systemjs", - "{projectRoot}/artifacts/js-systemjs" - ], - "cache": true - }, "dev": { "executor": "nx:run-commands", "cache": false, @@ -1827,7 +1864,6 @@ "commands": [ "pnpm nx build:transpile:watch devextreme", "pnpm nx build:devextreme-bundler-config:watch devextreme", - "pnpm nx bundle:watch devextreme", "pnpm nx test-env devextreme" ] } diff --git a/packages/devextreme/testing/helpers/chartMocks.js b/packages/devextreme/testing/helpers/chartMocks.js index 5e7a2ba7c4d5..f7acef832d79 100644 --- a/packages/devextreme/testing/helpers/chartMocks.js +++ b/packages/devextreme/testing/helpers/chartMocks.js @@ -16,6 +16,8 @@ import { } from './vizMocks.js'; import { Range } from 'viz/translators/range'; +const mutableSeriesFamilyModule = seriesFamilyModule.default ?? seriesFamilyModule; + const LoadingIndicatorOrig = loadingIndicatorModule.LoadingIndicator; const firstCategory = 'First'; @@ -394,7 +396,7 @@ export const resetMockFactory = function resetMockFactory() { }; export const setupSeriesFamily = function() { - seriesFamilyModule.SeriesFamily = function(options) { + mutableSeriesFamilyModule.SeriesFamily = function(options) { return new MockSeriesFamily(options); }; }; diff --git a/packages/devextreme/testing/helpers/data.errorHandlingHelper.js b/packages/devextreme/testing/helpers/data.errorHandlingHelper.js index 9e4d4d445357..329c36b0f3cb 100644 --- a/packages/devextreme/testing/helpers/data.errorHandlingHelper.js +++ b/packages/devextreme/testing/helpers/data.errorHandlingHelper.js @@ -1,16 +1,8 @@ -(function(root, factory) { - root.DevExpress = root.DevExpress || {}; - root.DevExpress.data = root.DevExpress.data || {}; - root.DevExpress.data.testing = root.DevExpress.data.testing || {}; - - if(typeof define === 'function' && define.amd) { - define(function(require, exports, module) { - root.DevExpress.data.testing.ErrorHandlingHelper = module.exports = factory(require('jquery'), require('core/class'), require('common/data/errors')); - }); - } else { - root.DevExpress.data.testing.ErrorHandlingHelper = factory(window.jQuery, DevExpress.Class, DevExpress.data); - } -}(window, function($, Class, errorsModule) { +import $ from 'jquery'; +import Class from 'core/class'; +import * as errorsModule from 'common/data/errors'; + +const __moduleExports = (function($, Class, errorsModule) { return Class.inherit({ ctor: function() { @@ -76,4 +68,11 @@ }); } }); -})); +})($, Class, errorsModule); + +window.DevExpress = window.DevExpress || {}; +window.DevExpress.data = window.DevExpress.data || {}; +window.DevExpress.data.testing = window.DevExpress.data.testing || {}; +window.DevExpress.data.testing.ErrorHandlingHelper = __moduleExports; + +export default __moduleExports; diff --git a/packages/devextreme/testing/helpers/dataGridMocks.js b/packages/devextreme/testing/helpers/dataGridMocks.js index 966f4ccb369a..418f18963e79 100644 --- a/packages/devextreme/testing/helpers/dataGridMocks.js +++ b/packages/devextreme/testing/helpers/dataGridMocks.js @@ -1,32 +1,46 @@ -let gridBaseMock; +import $ from 'jquery'; +import gridCoreModule from '__internal/grids/data_grid/m_core'; +import columnResizingReorderingModule from '__internal/grids/data_grid/module_not_extended/columns_resizing_reordering'; +import domUtilsModule from '__internal/core/utils/m_dom'; +import commonUtilsModule from '__internal/core/utils/m_common'; +import typeUtilsModule from '__internal/core/utils/m_type'; +import ArrayStoreModule from 'common/data/array_store'; +import gridBaseMockModule from './gridBaseMocks.js'; -/* global jQuery */ -if(typeof define === 'function' && define.amd) { - define(function(require, exports, module) { - gridBaseMock = require('./gridBaseMocks.js'); +const gridBaseMock = gridBaseMockModule.default ?? gridBaseMockModule; +const gridCore = gridCoreModule.default ?? gridCoreModule; +const columnResizingReordering = columnResizingReorderingModule.default ?? columnResizingReorderingModule; +const domUtils = domUtilsModule.default ?? domUtilsModule; +const commonUtils = commonUtilsModule.default ?? commonUtilsModule; +const typeUtils = typeUtilsModule.default ?? typeUtilsModule; +const ArrayStore = ArrayStoreModule.default ?? ArrayStoreModule; - window.dataGridMocks = module.exports = gridBaseMock( - require('jquery'), - require('__internal/grids/data_grid/m_core').default, - require('__internal/grids/data_grid/module_not_extended/columns_resizing_reordering').default, - require('__internal/core/utils/m_dom'), - require('__internal/core/utils/m_common'), - require('__internal/core/utils/m_type'), - require('common/data/array_store'), - 'DataGrid' - ); - }); -} else { - gridBaseMock = DevExpress.require('./gridBaseMocks.js'); +const dataGridMocks = gridBaseMock( + $, + gridCore, + columnResizingReordering, + domUtils, + commonUtils, + typeUtils, + ArrayStore, + 'DataGrid' +); - jQuery.extend(window, gridBaseMock( - jQuery, - DevExpress.require('__internal/grids/data_grid/m_core'), - DevExpress.require('__internal/grids/data_grid/module_not_extended/columns_resizing_reordering'), - DevExpress.require('__internal/core/utils/m_dom'), - DevExpress.require('__internal/core/utils/m_common'), - DevExpress.require('__internal/core/utils/m_type'), - DevExpress.require('common/data/array_store'), - 'DataGrid' - )); -} +window.dataGridMocks = dataGridMocks; + +export const setupDataGridModules = dataGridMocks.setupDataGridModules; +export const MockDataController = dataGridMocks.MockDataController; +export const MockEditingController = dataGridMocks.MockEditingController; +export const MockSelectionController = dataGridMocks.MockSelectionController; +export const MockColumnsController = dataGridMocks.MockColumnsController; +export const MockTablePositionViewController = dataGridMocks.MockTablePositionViewController; +export const MockGridDataSource = dataGridMocks.MockGridDataSource; +export const getCells = dataGridMocks.getCells; +export const MockColumnsSeparatorView = dataGridMocks.MockColumnsSeparatorView; +export const MockTrackerView = dataGridMocks.MockTrackerView; +export const MockDraggingPanel = dataGridMocks.MockDraggingPanel; +export const TestDraggingHeader = dataGridMocks.TestDraggingHeader; +export const generateItems = dataGridMocks.generateItems; +export const generateNestedData = dataGridMocks.generateNestedData; + +export default dataGridMocks; diff --git a/packages/devextreme/testing/helpers/esm-shims/fluent_blue_light.css.js b/packages/devextreme/testing/helpers/esm-shims/fluent_blue_light.css.js new file mode 100644 index 000000000000..28ba858f51a8 --- /dev/null +++ b/packages/devextreme/testing/helpers/esm-shims/fluent_blue_light.css.js @@ -0,0 +1,5 @@ +import { injectStylesheet } from './injectStylesheet.js'; + +await injectStylesheet('/packages/devextreme/artifacts/css/dx.fluent.blue.light.css', { + themeName: 'fluent.blue.light', +}); diff --git a/packages/devextreme/testing/helpers/esm-shims/gantt.css.js b/packages/devextreme/testing/helpers/esm-shims/gantt.css.js new file mode 100644 index 000000000000..e247d21d5527 --- /dev/null +++ b/packages/devextreme/testing/helpers/esm-shims/gantt.css.js @@ -0,0 +1,3 @@ +import { injectStylesheet } from './injectStylesheet.js'; + +await injectStylesheet('/packages/devextreme/artifacts/css/dx-gantt.css'); diff --git a/packages/devextreme/testing/helpers/esm-shims/generic_light.css.js b/packages/devextreme/testing/helpers/esm-shims/generic_light.css.js new file mode 100644 index 000000000000..a218b5bccec0 --- /dev/null +++ b/packages/devextreme/testing/helpers/esm-shims/generic_light.css.js @@ -0,0 +1,5 @@ +import { injectStylesheet } from './injectStylesheet.js'; + +await injectStylesheet('/packages/devextreme/artifacts/css/dx.light.css', { + themeName: 'generic.light', +}); diff --git a/packages/devextreme/testing/helpers/esm-shims/injectStylesheet.js b/packages/devextreme/testing/helpers/esm-shims/injectStylesheet.js new file mode 100644 index 000000000000..55eacd3c7014 --- /dev/null +++ b/packages/devextreme/testing/helpers/esm-shims/injectStylesheet.js @@ -0,0 +1,57 @@ +/** + * Injects a stylesheet once for ESM import-map QUnit mode + * (`*.css!` suite imports resolve here). + * + * Only appends ``. + * Do not add dx-theme-* classes on body — that belongs to themes.attachCssClasses + * on `.dx-viewport` and would change typography/layout. + * + * Returns a Promise so importers can `await` load — otherwise tests that + * assert computed styles race the async fetch. + * + * @param {string} href + * @param {{ themeName?: string }} [options] + * themeName — optional `data-theme` (fluent.blue.light / generic.light / …) + */ +export function injectStylesheet(href, options = {}) { + const existing = document.querySelector(`link[data-dx-esm-css="${href}"]`); + if(existing) { + return waitForStylesheet(existing, href); + } + + const link = document.createElement('link'); + link.rel = 'stylesheet'; + link.href = href; + link.setAttribute('data-dx-esm-css', href); + if(options.themeName) { + link.setAttribute('data-theme', options.themeName); + } + document.head.appendChild(link); + return waitForStylesheet(link, href); +} + +function waitForStylesheet(link, href) { + if(link.sheet || link.dataset.dxEsmCssLoaded === '1') { + return Promise.resolve(); + } + + return new Promise((resolve, reject) => { + const onLoad = () => { + link.dataset.dxEsmCssLoaded = '1'; + resolve(); + }; + const onError = () => { + reject(new Error(`Failed to load stylesheet: ${href}`)); + }; + + link.addEventListener('load', onLoad, { once: true }); + link.addEventListener('error', onError, { once: true }); + + // Cached stylesheets may already be applied before listeners attach + if(link.sheet) { + link.removeEventListener('load', onLoad); + link.removeEventListener('error', onError); + onLoad(); + } + }); +} diff --git a/packages/devextreme/testing/helpers/esm-shims/jquery.js b/packages/devextreme/testing/helpers/esm-shims/jquery.js new file mode 100644 index 000000000000..a6a3df9f758a --- /dev/null +++ b/packages/devextreme/testing/helpers/esm-shims/jquery.js @@ -0,0 +1,17 @@ +/** + * ESM jquery shim for QUnit import-map loader. + * jQuery is loaded via classic script tag before modules run; + * run-suite calls `jQuery.noConflict()` which clears `window.$`. + * Re-attach `$` so suites that use the global alias (without importing + * jquery) keep working. + */ +const $ = window.jQuery; + +if(!$ || typeof $.fn === 'undefined') { + throw new Error('ESM jquery shim: window.jQuery is not available'); +} + +window.$ = $; + +export default $; +export { $ }; diff --git a/packages/devextreme/testing/helpers/esm-shims/jspdf_autotable.js b/packages/devextreme/testing/helpers/esm-shims/jspdf_autotable.js new file mode 100644 index 000000000000..cbd2e5ff587b --- /dev/null +++ b/packages/devextreme/testing/helpers/esm-shims/jspdf_autotable.js @@ -0,0 +1,37 @@ +/** + * jspdf-autotable side-effect import under native ESM. + * The vendor build attaches itself through a CJS require call, which is + * unavailable in the browser — call applyPlugin explicitly instead. + * + * Note: the `.mjs` build exports `autoTable` only as default + * (`export { …, autoTable as default }`), not as a named export. + */ +import { jsPDF } from 'jspdf'; +/* eslint-disable import/named -- vendor ESM re-exports include default + named applyPlugin */ +import autoTable, { + Cell, + CellHookData, + Column, + Row, + Table, + __createTable, + __drawTable, + applyPlugin, +} from '../../../node_modules/jspdf-autotable/dist/jspdf.plugin.autotable.mjs'; +/* eslint-enable import/named */ + +const JsPdfCtor = typeof jsPDF === 'function' ? jsPDF : jsPDF.jsPDF; +applyPlugin(JsPdfCtor); + +export { + Cell, + CellHookData, + Column, + Row, + Table, + __createTable, + __drawTable, + applyPlugin, + autoTable, +}; +export default autoTable; diff --git a/packages/devextreme/testing/helpers/esm-shims/knockout.js b/packages/devextreme/testing/helpers/esm-shims/knockout.js new file mode 100644 index 000000000000..b1f45f77edec --- /dev/null +++ b/packages/devextreme/testing/helpers/esm-shims/knockout.js @@ -0,0 +1,12 @@ +/** + * ESM knockout shim for QUnit import-map loader. + * Knockout is loaded via classic script tag before modules run. + */ +const ko = window.ko; + +if(!ko) { + throw new Error('ESM knockout shim: window.ko is not available'); +} + +export default ko; +export { ko }; diff --git a/packages/devextreme/testing/helpers/esm-shims/material_blue_light.css.js b/packages/devextreme/testing/helpers/esm-shims/material_blue_light.css.js new file mode 100644 index 000000000000..0c9ff647951b --- /dev/null +++ b/packages/devextreme/testing/helpers/esm-shims/material_blue_light.css.js @@ -0,0 +1,5 @@ +import { injectStylesheet } from './injectStylesheet.js'; + +await injectStylesheet('/packages/devextreme/artifacts/css/dx.material.blue.light.css', { + themeName: 'material.blue.light', +}); diff --git a/packages/devextreme/testing/helpers/esm-shims/mutable_facade.js b/packages/devextreme/testing/helpers/esm-shims/mutable_facade.js new file mode 100644 index 000000000000..8cc00339e1b3 --- /dev/null +++ b/packages/devextreme/testing/helpers/esm-shims/mutable_facade.js @@ -0,0 +1,50 @@ +/** + * Shared helpers for mutable ESM facades used by QUnit stubbing. + */ +export function wrapCtor(api, name) { + const ExportWrapper = function(...args) { + const Impl = api[name]; + if(new.target) { + return new Impl(...args); + } + return Impl.apply(this, args); + }; + Object.defineProperty(ExportWrapper, 'name', { value: name, configurable: true }); + // Point at the live implementation prototype so stubClass(import { X }) + // sees real methods (e.g. vizMocks Tooltip/Title/ExportMenu). + // Also inherit statics (Class.inherit / redefine / parent / …) so + // `BaseThemeManager.inherit(...)` keeps working under the facade. + const Impl = api[name]; + if(typeof Impl === 'function') { + Object.setPrototypeOf(ExportWrapper, Impl); + if(Impl.prototype) { + ExportWrapper.prototype = Impl.prototype; + } + } + return ExportWrapper; +} + +/** + * @param {object} original + * @param {string} globalKey + * @param {Record} [debugSets] map DEBUG_set_* → api property name + */ +export function createMutableApi(original, globalKey, debugSets = {}) { + if(globalThis[globalKey]) { + return globalThis[globalKey]; + } + + const api = { ...original }; + Object.entries(debugSets).forEach(([debugName, propName]) => { + const originalDebugSet = api[debugName]; + api[debugName] = (value) => { + api[propName] = value; + if(typeof originalDebugSet === 'function') { + originalDebugSet(value); + } + }; + }); + + globalThis[globalKey] = api; + return api; +} diff --git a/packages/devextreme/testing/helpers/esm-shims/themes.js b/packages/devextreme/testing/helpers/esm-shims/themes.js new file mode 100644 index 000000000000..3aa9ec10dfa9 --- /dev/null +++ b/packages/devextreme/testing/helpers/esm-shims/themes.js @@ -0,0 +1,48 @@ +/** + * Mutable facade for ui/themes — QUnit stubs replace api.isMaterial / isFluent / + * isMaterialBased / isGeneric / current on the default export object. + * + * Named exports always forward to the current api.* implementation so + * library `import { isMaterial }` keeps working after stubs. + * + * api is stored on globalThis so import-map and static-redirect URLs + * (cache-buster differences) still share one stubbable object. + */ +import * as original from '../../../artifacts/transpiled-esm-npm/esm/__internal/ui/themes.js?dx-original=1'; + +const GLOBAL_KEY = '__dxMutableUiThemes'; + +const api = globalThis[GLOBAL_KEY] ?? (globalThis[GLOBAL_KEY] = { + ...original, + // Keep composition live so stubbing isMaterial / isFluent affects isMaterialBased. + isMaterialBased(themeName) { + return api.isMaterial(themeName) || api.isFluent(themeName); + }, +}); + +function wrapExport(name) { + return function(...args) { + return api[name](...args); + }; +} + +export const setDefaultTimeout = wrapExport('setDefaultTimeout'); +export const init = wrapExport('init'); +export const initialized = wrapExport('initialized'); +export const resetTheme = wrapExport('resetTheme'); +export const ready = wrapExport('ready'); +export const waitWebFont = wrapExport('waitWebFont'); +export const isWebFontLoaded = wrapExport('isWebFontLoaded'); +export const isCompact = wrapExport('isCompact'); +export const isDark = wrapExport('isDark'); +export const isGeneric = wrapExport('isGeneric'); +export const isMaterial = wrapExport('isMaterial'); +export const isFluent = wrapExport('isFluent'); +export const isMaterialBased = wrapExport('isMaterialBased'); +export const detachCssClasses = wrapExport('detachCssClasses'); +export const attachCssClasses = wrapExport('attachCssClasses'); +export const current = wrapExport('current'); +export const waitForThemeLoad = wrapExport('waitForThemeLoad'); +export const isPendingThemeLoaded = wrapExport('isPendingThemeLoaded'); + +export default api; diff --git a/packages/devextreme/testing/helpers/esm-shims/tslib.js b/packages/devextreme/testing/helpers/esm-shims/tslib.js new file mode 100644 index 000000000000..377dace0c5bc --- /dev/null +++ b/packages/devextreme/testing/helpers/esm-shims/tslib.js @@ -0,0 +1,41 @@ +/** + * Minimal tslib fallback for QUnit when the package is not hoisted. + * Covers helpers used by rrule's ESM build. + */ +export function __assign(target) { + for(let i = 1; i < arguments.length; i++) { + const source = arguments[i]; + for(const key in source) { + if(Object.prototype.hasOwnProperty.call(source, key)) { + target[key] = source[key]; + } + } + } + return target; +} + +export function __extends(derived, base) { + Object.setPrototypeOf(derived, base); + function PrototypeBridge() { + this.constructor = derived; + } + PrototypeBridge.prototype = base === null ? Object.create(base) : base.prototype; + // eslint-disable-next-line new-cap, no-new + derived.prototype = new PrototypeBridge(); +} + +export function __spreadArray(to, from, pack) { + if(pack || arguments.length === 2) { + let packed; + for(let i = 0, length = from.length; i < length; i++) { + if(packed || !(i in from)) { + if(!packed) { + packed = Array.prototype.slice.call(from, 0, i); + } + packed[i] = from[i]; + } + } + return to.concat(packed || Array.prototype.slice.call(from)); + } + return to.concat(from); +} diff --git a/packages/devextreme/testing/helpers/esm-shims/zod-to-json-schema.js b/packages/devextreme/testing/helpers/esm-shims/zod-to-json-schema.js new file mode 100644 index 000000000000..c1ce5b58b1a2 --- /dev/null +++ b/packages/devextreme/testing/helpers/esm-shims/zod-to-json-schema.js @@ -0,0 +1,8 @@ +/** + * Minimal zod-to-json-schema stub for QUnit ESM / import-map loader. + */ +export function zodToJsonSchema() { + return { type: 'object' }; +} + +export default zodToJsonSchema; diff --git a/packages/devextreme/testing/helpers/esm-shims/zod.js b/packages/devextreme/testing/helpers/esm-shims/zod.js new file mode 100644 index 000000000000..489d0bbcf5ba --- /dev/null +++ b/packages/devextreme/testing/helpers/esm-shims/zod.js @@ -0,0 +1,35 @@ +/** + * Minimal zod stub for QUnit ESM / import-map loader. + */ +const z = { + object() { return z; }, + string() { return z; }, + boolean() { return z; }, + number() { return z; }, + date() { return z; }, + null() { return z; }, + enum() { return z; }, + union() { return z; }, + array() { return z; }, + tuple() { return z; }, + literal() { return z; }, + record() { return z; }, + lazy() { return z; }, + optional() { return z; }, + nullable() { return z; }, + // eslint-disable-next-line spellcheck/spell-checker + nullish() { return z; }, + strict() { return z; }, + int() { return z; }, + // eslint-disable-next-line spellcheck/spell-checker + nonnegative() { return z; }, + positive() { return z; }, + min() { return z; }, + max() { return z; }, + transform() { return z; }, + describe() { return z; }, + safeParse() { return { success: true, data: {} }; }, +}; + +export { z }; +export default z; diff --git a/packages/devextreme/testing/helpers/executeAsyncMock.js b/packages/devextreme/testing/helpers/executeAsyncMock.js index cd52380fd3a7..5da48be090e1 100644 --- a/packages/devextreme/testing/helpers/executeAsyncMock.js +++ b/packages/devextreme/testing/helpers/executeAsyncMock.js @@ -1,28 +1,20 @@ -(function(root, factory) { - root.DevExpress = root.DevExpress || {}; - root.DevExpress.testing = root.DevExpress.testing || {}; +import commonUtils from '__internal/core/utils/m_common'; - if(typeof define === 'function' && define.amd) { - define(function(require, exports, module) { - root.DevExpress.testing.executeAsyncMock = module.exports = factory(require('__internal/core/utils/m_common').default); - }); - } else { - root.DevExpress.testing.executeAsyncMock = factory(DevExpress.utils.common); - } -}(window, function(commonUtils) { - const originalExecuteAsync = commonUtils.executeAsync; - - return { - setup: function() { - commonUtils.executeAsync = function(action, context) { - return originalExecuteAsync.apply(this, [action, context, function(callback) { return callback.apply(this, arguments); }]); - }; - }, - teardown: function() { - commonUtils.executeAsync = originalExecuteAsync; - } - }; +const originalExecuteAsync = commonUtils.executeAsync; -})); +const executeAsyncMock = { + setup: function() { + commonUtils.executeAsync = function(action, context) { + return originalExecuteAsync.apply(this, [action, context, function(callback) { return callback.apply(this, arguments); }]); + }; + }, + teardown: function() { + commonUtils.executeAsync = originalExecuteAsync; + } +}; +window.DevExpress = window.DevExpress || {}; +window.DevExpress.testing = window.DevExpress.testing || {}; +window.DevExpress.testing.executeAsyncMock = executeAsyncMock; +export default executeAsyncMock; diff --git a/packages/devextreme/testing/helpers/getTextCloudInfo.js b/packages/devextreme/testing/helpers/getTextCloudInfo.js new file mode 100644 index 000000000000..2abda39d22a1 --- /dev/null +++ b/packages/devextreme/testing/helpers/getTextCloudInfo.js @@ -0,0 +1,52 @@ +/** + * Geometry helper for gauge text-cloud marker QUnit tests. + * Kept out of product ESM (DEBUG-only in source); tests import this directly. + */ +const COEFFICIENTS_MAP = {}; +COEFFICIENTS_MAP['right-bottom'] = COEFFICIENTS_MAP.rb = [0, -1, -1, 0, 0, 1, 1, 0]; +COEFFICIENTS_MAP['bottom-right'] = COEFFICIENTS_MAP.br = [-1, 0, 0, -1, 1, 0, 0, 1]; +COEFFICIENTS_MAP['left-bottom'] = COEFFICIENTS_MAP.lb = [0, -1, 1, 0, 0, 1, -1, 0]; +COEFFICIENTS_MAP['bottom-left'] = COEFFICIENTS_MAP.bl = [1, 0, 0, -1, -1, 0, 0, 1]; +COEFFICIENTS_MAP['left-top'] = COEFFICIENTS_MAP.lt = [0, 1, 1, 0, 0, -1, -1, 0]; +COEFFICIENTS_MAP['top-left'] = COEFFICIENTS_MAP.tl = [1, 0, 0, 1, -1, 0, 0, -1]; +COEFFICIENTS_MAP['right-top'] = COEFFICIENTS_MAP.rt = [0, 1, -1, 0, 0, -1, 1, 0]; +COEFFICIENTS_MAP['top-right'] = COEFFICIENTS_MAP.tr = [-1, 0, 0, 1, 1, 0, 0, -1]; + +const round = Math.round; + +export function getTextCloudInfo(options) { + let x = options.x; + let y = options.y; + const type = COEFFICIENTS_MAP[options.type]; + const cloudWidth = options.cloudWidth; + const cloudHeight = options.cloudHeight; + let tailWidth; + let tailHeight; + const cx = x; + const cy = y; + + tailWidth = tailHeight = options.tailLength; + + if(type[0] & 1) { + tailHeight = Math.min(tailHeight, cloudHeight / 3); + } else { + tailWidth = Math.min(tailWidth, cloudWidth / 3); + } + + return { + cx: round(cx + type[0] * tailWidth + (type[0] + type[2]) * cloudWidth / 2), + cy: round(cy + type[1] * tailHeight + (type[1] + type[3]) * cloudHeight / 2), + points: [ + round(x), + round(y), + round(x += type[0] * (cloudWidth + tailWidth)), + round(y += type[1] * (cloudHeight + tailHeight)), + round(x += type[2] * cloudWidth), + round(y += type[3] * cloudHeight), + round(x += type[4] * cloudWidth), + round(y += type[5] * cloudHeight), + round(x += type[6] * (cloudWidth - tailWidth)), + round(y += type[7] * (cloudHeight - tailHeight)), + ], + }; +} diff --git a/packages/devextreme/testing/helpers/includeThemesLinks.js b/packages/devextreme/testing/helpers/includeThemesLinks.js index a6e01e6d0104..6d8b3d53ee93 100644 --- a/packages/devextreme/testing/helpers/includeThemesLinks.js +++ b/packages/devextreme/testing/helpers/includeThemesLinks.js @@ -1,9 +1,12 @@ -const themesList = ['generic.light', 'material.blue.light']; +const themesList = [ + { name: 'generic.light', href: '/packages/devextreme/artifacts/css/dx.light.css' }, + { name: 'material.blue.light', href: '/packages/devextreme/artifacts/css/dx.material.blue.light.css' }, +]; -themesList.forEach(theme => { +themesList.forEach(({ name, href }) => { const link = document.createElement('link'); link.setAttribute('rel', 'dx-theme'); - link.setAttribute('data-theme', theme); - link.setAttribute('href', SystemJS.normalizeSync(theme.replace(/\./g, '_') + '.css')); + link.setAttribute('data-theme', name); + link.setAttribute('href', href); document.head.appendChild(link); }); diff --git a/packages/devextreme/testing/helpers/keyboardMock.js b/packages/devextreme/testing/helpers/keyboardMock.js index ade1eefd1974..1107d8978d43 100644 --- a/packages/devextreme/testing/helpers/keyboardMock.js +++ b/packages/devextreme/testing/helpers/keyboardMock.js @@ -1,16 +1,8 @@ -let focused; - -(function(root, factory) { - if(typeof define === 'function' && define.amd) { - define(function(require, exports, module) { - focused = require('__internal/core/utils/m_selectors').focused; - root.keyboardMock = module.exports = factory(require('jquery'), require('inferno')); - }); - } else { - focused = DevExpress.require('__internal/core/utils/m_selectors').focused; - root.keyboardMock = factory(root.jQuery); - } -}(window, function($, inferno) { +import $ from 'jquery'; +import * as inferno from 'inferno'; +import { focused } from '__internal/core/utils/m_selectors'; + +const keyboardMock = (function($, inferno) { let $element; let caret; @@ -427,4 +419,6 @@ let focused; } }; }; -})); +})($, inferno); + +export default keyboardMock; diff --git a/packages/devextreme/testing/helpers/memoryLeaksHelper.js b/packages/devextreme/testing/helpers/memoryLeaksHelper.js index 6a4efcca90a9..bab8140b8826 100644 --- a/packages/devextreme/testing/helpers/memoryLeaksHelper.js +++ b/packages/devextreme/testing/helpers/memoryLeaksHelper.js @@ -1,17 +1,6 @@ -(function(root, factory) { - /* global jQuery */ - if(typeof define === 'function' && define.amd) { - define(function(require, exports, module) { - root.memoryLeaksHelper = module.exports = factory( - require('jquery') - ); - }); - } else { - jQuery.extend(window, factory( - jQuery - )); - } -}(window, function($) { +import $ from 'jquery'; + +const __moduleExports = (function($) { const exports = {}; @@ -142,4 +131,8 @@ }; return exports; -})); +})($); + +window.memoryLeaksHelper = __moduleExports; + +export default __moduleExports; diff --git a/packages/devextreme/testing/helpers/mockModule.js b/packages/devextreme/testing/helpers/mockModule.js index 5864029817d4..2cbbd4521fbd 100644 --- a/packages/devextreme/testing/helpers/mockModule.js +++ b/packages/devextreme/testing/helpers/mockModule.js @@ -1,12 +1,13 @@ /* eslint-disable no-undef */ -const $ = require('jquery'); - -exports.mock = (module, value) => { - const normalizedName = System.normalizeSync(module); - System.delete(normalizedName); - value.__esModule = true; - $.extend({ default: value }); - System.set(normalizedName, System.newModule($.extend({ default: value }, value))); - return value; +/** + * Module replacement helper — not supported under native ESM + * (no module registry). Mutate a mutable import-map facade instead + * (see trackerMock.js / esm-shims/viz_chart_tracker.js). + */ +exports.mock = function mock() { + throw new Error( + 'mockModule.mock is not supported under native ESM; ' + + 'mutate the target module\'s mutable facade (default export) instead', + ); }; diff --git a/packages/devextreme/testing/helpers/nativePointerMock.js b/packages/devextreme/testing/helpers/nativePointerMock.js index fab9e3227981..c50749f0d0f5 100644 --- a/packages/devextreme/testing/helpers/nativePointerMock.js +++ b/packages/devextreme/testing/helpers/nativePointerMock.js @@ -1,13 +1,6 @@ -(function(root, factory) { - /* global jQuery */ - if(typeof define === 'function' && define.amd) { - define(function(require, exports, module) { - root.nativePointerMock = module.exports = factory(require('jquery')); - }); - } else { - root.nativePointerMock = factory(jQuery); - } -}(window, function($) { +import $ from 'jquery'; + +const __moduleExports = (function($) { const UA = (function() { const ua = window.navigator.userAgent; let matches; @@ -980,4 +973,8 @@ return result; -})); +})($); + +window.nativePointerMock = __moduleExports; + +export default __moduleExports; diff --git a/packages/devextreme/testing/helpers/noDiagram.js b/packages/devextreme/testing/helpers/noDiagram.js index 1d0e288bbae3..189f31a52683 100644 --- a/packages/devextreme/testing/helpers/noDiagram.js +++ b/packages/devextreme/testing/helpers/noDiagram.js @@ -1,4 +1,4 @@ if(window.DevExpress) { window.DevExpress.diagram = undefined; } -module.exports = null; +export default null; diff --git a/packages/devextreme/testing/helpers/noGantt.js b/packages/devextreme/testing/helpers/noGantt.js index ed0a8a552761..abc0e1f6294f 100644 --- a/packages/devextreme/testing/helpers/noGantt.js +++ b/packages/devextreme/testing/helpers/noGantt.js @@ -1,4 +1,4 @@ if(window.DevExpress) { window.DevExpress.Gantt = undefined; } -module.exports = null; +export default null; diff --git a/packages/devextreme/testing/helpers/noJQuery.js b/packages/devextreme/testing/helpers/noJQuery.js index 25af527694e7..7646bbd17d04 100644 --- a/packages/devextreme/testing/helpers/noJQuery.js +++ b/packages/devextreme/testing/helpers/noJQuery.js @@ -1 +1 @@ -window.jQuery = module.exports = null; +export default null; diff --git a/packages/devextreme/testing/helpers/pointerMock.js b/packages/devextreme/testing/helpers/pointerMock.js index 439c852ea5b6..6b89ba1b2301 100644 --- a/packages/devextreme/testing/helpers/pointerMock.js +++ b/packages/devextreme/testing/helpers/pointerMock.js @@ -1,17 +1,9 @@ -(function(root, factory) { - /* global jQuery */ - if(typeof define === 'function' && define.amd) { - define(function(require, exports, module) { - root.pointerMock = module.exports = factory( - require('jquery'), - require('inferno'), - require('common/core/events/gesture/emitter.gesture'), - require('common/core/events/click')); - }); - } else { - root.pointerMock = factory(jQuery, DevExpress.events.GestureEmitter, DevExpress.events.click); - } -}(window, function($, inferno, GestureEmitter, clickEvent) { +import $ from 'jquery'; +import * as inferno from 'inferno'; +import GestureEmitter from 'common/core/events/gesture/emitter.gesture'; +import * as clickEvent from 'common/core/events/click'; + +const pointerMock = (function($, inferno, GestureEmitter, clickEvent) { GestureEmitter.touchBoundary(0); @@ -236,4 +228,6 @@ } }; }; -})); +})($, inferno, GestureEmitter, clickEvent); + +export default pointerMock; diff --git a/packages/devextreme/testing/helpers/positionFixtures.js b/packages/devextreme/testing/helpers/positionFixtures.js index cada61dab25b..978a65f1fabc 100644 --- a/packages/devextreme/testing/helpers/positionFixtures.js +++ b/packages/devextreme/testing/helpers/positionFixtures.js @@ -1,12 +1,6 @@ -(function(root, factory) { - if(typeof define === 'function' && define.amd) { - define(function(require, exports, module) { - root.fixtures = module.exports = factory(require('jquery')); - }); - } else { - root.fixtures = factory(root.jQuery); - } -}(window, function($) { +import $ from 'jquery'; + +const __moduleExports = (function($) { const fixtures = { simple: { @@ -258,4 +252,8 @@ }; return fixtures; -})); +})($); + +window.fixtures = __moduleExports; + +export default __moduleExports; diff --git a/packages/devextreme/testing/helpers/publicModulesHelper.js b/packages/devextreme/testing/helpers/publicModulesHelper.js index bff3366338de..3c39a4f42755 100644 --- a/packages/devextreme/testing/helpers/publicModulesHelper.js +++ b/packages/devextreme/testing/helpers/publicModulesHelper.js @@ -1,12 +1,6 @@ -(function(root, factory) { - if(typeof define === 'function' && define.amd) { - define(function(require, exports, module) { - root.testGlobalExports = module.exports = factory(require('jquery')); - }); - } else { - root.testGlobalExports = factory(root.jQuery); - } -}(window, function($) { +import $ from 'jquery'; + +const __moduleExports = (function($) { return function(namespaces, fields) { $.each(namespaces, function(namespaceName, namespace) { $.each(fields, function(fieldName, fieldValue) { @@ -17,4 +11,8 @@ }); }); }; -})); +})($); + +window.testGlobalExports = __moduleExports; + +export default __moduleExports; diff --git a/packages/devextreme/testing/helpers/quillDependencies/noQuill.js b/packages/devextreme/testing/helpers/quillDependencies/noQuill.js index e45fa7973937..3b197fe204b6 100644 --- a/packages/devextreme/testing/helpers/quillDependencies/noQuill.js +++ b/packages/devextreme/testing/helpers/quillDependencies/noQuill.js @@ -1 +1,2 @@ -window.Quill = module.exports = null; +window.Quill = null; +export default null; diff --git a/packages/devextreme/testing/helpers/qunitExtensions.js b/packages/devextreme/testing/helpers/qunitExtensions.js index c7b3344d568b..75507728a1bb 100644 --- a/packages/devextreme/testing/helpers/qunitExtensions.js +++ b/packages/devextreme/testing/helpers/qunitExtensions.js @@ -514,7 +514,7 @@ if(timerType === 'timeouts') { if( callback.indexOf('.Deferred.exceptionHook') > -1 || // NOTE: jQuery.Deferred are now asynchronous - callback.indexOf('e._drain()') > -1 // NOTE: SystemJS Promise polyfill + callback.indexOf('e._drain()') > -1 // NOTE: legacy Promise polyfill ) { return true; } diff --git a/packages/devextreme/testing/helpers/stubs/zodStub.js b/packages/devextreme/testing/helpers/stubs/zodStub.js deleted file mode 100644 index 668e5fd8ecd2..000000000000 --- a/packages/devextreme/testing/helpers/stubs/zodStub.js +++ /dev/null @@ -1,53 +0,0 @@ -/** - * Minimal zod stub for QUnit / SystemJS tests. - * - * Uses AMD define() when available (CSP mode) and falls back - * to global assignment for regular SystemJS (NoCsp mode). - */ - -(function() { - const z = { - // top-level constructors - object: function() { return z; }, - string: function() { return z; }, - boolean: function() { return z; }, - number: function() { return z; }, - date: function() { return z; }, - null: function() { return z; }, - enum: function() { return z; }, - union: function() { return z; }, - array: function() { return z; }, - tuple: function() { return z; }, - literal: function() { return z; }, - record: function() { return z; }, - lazy: function() { return z; }, - // chain modifiers - optional: function() { return z; }, - nullable: function() { return z; }, - // eslint-disable-next-line spellcheck/spell-checker - nullish: function() { return z; }, - strict: function() { return z; }, - int: function() { return z; }, - // eslint-disable-next-line spellcheck/spell-checker - nonnegative: function() { return z; }, - positive: function() { return z; }, - min: function() { return z; }, - max: function() { return z; }, - transform: function() { return z; }, - describe: function() { return z; }, - // validation - safeParse: function() { return { success: true, data: {} }; }, - }; - - if(typeof define === 'function') { - define(function(require, exports) { - Object.defineProperty(exports, '__esModule', { value: true }); - exports.z = z; - exports.default = z; - }); - } else { - const root = typeof self !== 'undefined' ? self : typeof window !== 'undefined' ? window : globalThis; - root.z = z; - root.zod = z; - } -})(); diff --git a/packages/devextreme/testing/helpers/stubs/zodToJsonSchemaStub.js b/packages/devextreme/testing/helpers/stubs/zodToJsonSchemaStub.js deleted file mode 100644 index a7aa7e3e9d70..000000000000 --- a/packages/devextreme/testing/helpers/stubs/zodToJsonSchemaStub.js +++ /dev/null @@ -1,21 +0,0 @@ -/** - * Minimal zod-to-json-schema stub for QUnit / SystemJS tests. - * - * Uses AMD define() when available (CSP mode) and falls back - * to global assignment for regular SystemJS (NoCsp mode). - */ - -(function() { - const zodToJsonSchema = function() { return { type: 'object' }; }; - - if(typeof define === 'function') { - define(function(require, exports) { - Object.defineProperty(exports, '__esModule', { value: true }); - exports.zodToJsonSchema = zodToJsonSchema; - exports.default = zodToJsonSchema; - }); - } else { - const root = typeof self !== 'undefined' ? self : typeof window !== 'undefined' ? window : globalThis; - root.zodToJsonSchema = zodToJsonSchema; - } -})(); diff --git a/packages/devextreme/testing/helpers/trackerMock.js b/packages/devextreme/testing/helpers/trackerMock.js index 745abb5717e9..3a930364f4d5 100644 --- a/packages/devextreme/testing/helpers/trackerMock.js +++ b/packages/devextreme/testing/helpers/trackerMock.js @@ -1,13 +1,12 @@ -const mock = require('./mockModule.js').mock; const vizMocks = require('./vizMocks.js'); -const { ChartTracker, PieTracker } = require('viz/chart_components/tracker'); -const ChartTrackerStub = vizMocks.stubClass(ChartTracker); -const PieTrackerStub = vizMocks.stubClass(PieTracker); +// Mutate the import-map facade (see esm-shims/viz_chart_tracker.js). +const trackerModule = require('viz/chart_components/tracker'); -const trackerModule = mock('viz/chart_components/tracker', { - ChartTracker: sinon.spy((parameters) => new ChartTrackerStub(parameters)), - PieTracker: sinon.spy((parameters) => new PieTrackerStub(parameters)) -}); +const ChartTrackerStub = vizMocks.stubClass(trackerModule.ChartTracker); +const PieTrackerStub = vizMocks.stubClass(trackerModule.PieTracker); + +trackerModule.ChartTracker = sinon.spy((parameters) => new ChartTrackerStub(parameters)); +trackerModule.PieTracker = sinon.spy((parameters) => new PieTrackerStub(parameters)); exports.default = trackerModule; exports.__esModule = true; diff --git a/packages/devextreme/testing/helpers/treeListMocks.js b/packages/devextreme/testing/helpers/treeListMocks.js index 45f1d23b83e0..fcb1a8d606a1 100644 --- a/packages/devextreme/testing/helpers/treeListMocks.js +++ b/packages/devextreme/testing/helpers/treeListMocks.js @@ -1,32 +1,44 @@ -let gridBaseMock; +import $ from 'jquery'; +import treeListCoreModule from '__internal/grids/tree_list/m_core'; +import domUtilsModule from '__internal/core/utils/m_dom'; +import commonUtilsModule from '__internal/core/utils/m_common'; +import typeUtilsModule from '__internal/core/utils/m_type'; +import ArrayStoreModule from 'common/data/array_store'; +import gridBaseMockModule from './gridBaseMocks.js'; -/* global jQuery */ -if(typeof define === 'function' && define.amd) { - define(function(require, exports, module) { - gridBaseMock = require('./gridBaseMocks.js'); +const gridBaseMock = gridBaseMockModule.default ?? gridBaseMockModule; +const treeListCore = treeListCoreModule.default ?? treeListCoreModule; +const domUtils = domUtilsModule.default ?? domUtilsModule; +const commonUtils = commonUtilsModule.default ?? commonUtilsModule; +const typeUtils = typeUtilsModule.default ?? typeUtilsModule; +const ArrayStore = ArrayStoreModule.default ?? ArrayStoreModule; - window.treeListMocks = module.exports = gridBaseMock( - require('jquery'), - require('__internal/grids/tree_list/m_core').default, - null, - require('__internal/core/utils/m_dom'), - require('__internal/core/utils/m_common'), - require('__internal/core/utils/m_type'), - require('common/data/array_store'), - 'TreeList' - ); - }); -} else { - gridBaseMock = require('./gridBaseMocks.js'); +const treeListMocks = gridBaseMock( + $, + treeListCore, + null, + domUtils, + commonUtils, + typeUtils, + ArrayStore, + 'TreeList' +); - jQuery.extend(window, gridBaseMock( - jQuery, - DevExpress.require('__internal/grids/tree_list/m_core'), - null, - DevExpress.require('__internal/core/utils/m_dom'), - DevExpress.require('__internal/core/utils/m_common'), - DevExpress.require('__internal/core/utils/m_type'), - DevExpress.require('common/data/array_store'), - 'TreeList' - )); -} +window.treeListMocks = treeListMocks; + +export const setupTreeListModules = treeListMocks.setupTreeListModules; +export const MockDataController = treeListMocks.MockDataController; +export const MockEditingController = treeListMocks.MockEditingController; +export const MockSelectionController = treeListMocks.MockSelectionController; +export const MockColumnsController = treeListMocks.MockColumnsController; +export const MockTablePositionViewController = treeListMocks.MockTablePositionViewController; +export const MockGridDataSource = treeListMocks.MockGridDataSource; +export const getCells = treeListMocks.getCells; +export const MockColumnsSeparatorView = treeListMocks.MockColumnsSeparatorView; +export const MockTrackerView = treeListMocks.MockTrackerView; +export const MockDraggingPanel = treeListMocks.MockDraggingPanel; +export const TestDraggingHeader = treeListMocks.TestDraggingHeader; +export const generateItems = treeListMocks.generateItems; +export const generateNestedData = treeListMocks.generateNestedData; + +export default treeListMocks; diff --git a/packages/devextreme/testing/helpers/vizMocks.js b/packages/devextreme/testing/helpers/vizMocks.js index 8a6838ea73a5..1d96bbb2face 100644 --- a/packages/devextreme/testing/helpers/vizMocks.js +++ b/packages/devextreme/testing/helpers/vizMocks.js @@ -10,7 +10,7 @@ import { Series } from 'viz/series/base_series'; import * as loadingIndicatorModule from 'viz/core/loading_indicator'; import * as exportMenuModule from 'viz/core/export'; import rendererModule from 'viz/core/renderers/renderer_default'; -import * as errors from 'viz/core/errors_warnings'; +import errors from 'viz/core/errors_warnings'; import * as baseWidgetUtils from '__internal/viz/core/base_widget.utils'; import * as typeUtils from 'core/utils/type'; @@ -367,7 +367,17 @@ const Point = stubClass(pointModule.Point); const Legend = stubClass(legendModule.Legend); const Title = stubClass(titleModule.Title); const Tooltip = stubClass(tooltipModule.Tooltip); -const Axis = stubClass(axisModule.Axis); +// ESM npm artifacts strip /// #DEBUG methods (removeDebug: true). +// Restore the ones gauges/charts call on mocks (kept in legacy CJS transpile). +const Axis = stubClass(axisModule.Axis, null, { + $extraFunctions: [ + 'shift', + '_getTickMarkPoints', + '_validateOverlappingMode', + '_getStep', + '_validateDisplayMode', + ], +}); const SeriesStub = stubClass(Series); export { diff --git a/packages/devextreme/testing/helpers/xmlHttpRequestMock.js b/packages/devextreme/testing/helpers/xmlHttpRequestMock.js index cc55e4440a93..604163d61f3f 100644 --- a/packages/devextreme/testing/helpers/xmlHttpRequestMock.js +++ b/packages/devextreme/testing/helpers/xmlHttpRequestMock.js @@ -1,4 +1,4 @@ -/* global $ */ +import $ from 'jquery'; const RealXMLHttpRequest = window.XMLHttpRequest; diff --git a/packages/devextreme/testing/runner/README.md b/packages/devextreme/testing/runner/README.md new file mode 100644 index 000000000000..6b0d34b5e9a7 --- /dev/null +++ b/packages/devextreme/testing/runner/README.md @@ -0,0 +1,103 @@ +# QUnit test runner (native ESM) + +Developer notes for the Node HTTP runner that serves QUnit suites with **native ESM + import maps** (no SystemJS). + +Related layout: + +| Path | Role | +| --- | --- | +| `testing/runner/lib/` | Server-side request handling, source rewrites, import-map build | +| `testing/helpers/esm-shims/` | Browser-side shim modules wired through the import map / static redirects | + +After changing TypeScript under `testing/runner/`, recompile (`tsc -p testing/runner/tsconfig.json`) and **restart** the process on port `20060` — templates and rewrite logic are loaded at process start. + +--- + +## `lib/static.ts` + +HTTP static file server for the QUnit runner. + +**Responsibilities:** + +- Resolve and serve workspace files (tests, helpers, artifacts, vendors) with correct content types and cache headers. +- Apply **serve-time transforms** so the browser receives valid ESM: + - QUnit tests/helpers → `cjsInterop.rewriteQunitTestHelperSource` + - `aspnet.js` UMD artifact → `cjsInterop.rewriteAspnetArtifactToEsm` + - Vendor / Globalize / Intl / VectorMap bundles → wrap as ESM modules + - JSON (`?esm-export=1`) → `export default …` +- Serve **generated** mutable facades for modules in `MUTABLE_MODULE_GROUPS` / viz namespace-reexports; redirect only special hand-written cases (e.g. themes). +- For pure `import * as X; export default X` viz reexports, generate facades on the fly via `autoMutableFacade.tryBuildAutoMutableFacade`. +- Support `?dx-original=1` so a shim can import the **real** artifact without being redirected back to itself. + +This module is the integration point: almost every special-case rewrite for QUnit ESM loading goes through `tryServeStatic`. + +--- + +## `lib/cjsInterop.ts` + +Serve-time **CJS → ESM** source rewrites for QUnit tests, helpers, and bundle templates. + +Legacy suites still use `require()`, `module.exports` / `exports.*`, AMD `define(function () { … })`, and CJS-style `import x from 'bare-specifier'`. Native ESM cannot load those as-is. + +**What it does:** + +1. **`require('…')`** → hoisted `import * as __dxReq_N` plus `(ns.default ?? { …ns })` at the call site (mutable shallow copy when there is no default — needed when tests assign onto the module object). +2. **`module.exports` / `exports.*`** → wrap the file with a synthetic `module`/`exports` object and emit `export default` + named exports. +3. **Bare default / named imports** → namespace import + CJS default interop (`ns.default ?? …`, merge default object/function into named bindings when needed). +4. **AMD `define(function () { … })`** → IIFE, with imports hoisted to file top (imports inside `if (define.amd)` are illegal in ESM). +5. **Plugin-style JSON** (`file.json!` / `file.json!json`) → absolute URLs with `?esm-export=1`. +6. **`aspnet.js`** → dedicated UMD → ESM conversion (`rewriteAspnetArtifactToEsm`). + +`esm-shims/` files are **excluded** from this pipeline (`isQunitTestOrHelperPath`) — they are already real ESM. + +--- + +## `lib/autoMutableFacade.ts` + +Generates **mutable ESM facades** at request time so QUnit can `sinon.stub` module APIs without editing `packages/devextreme/js`. + +**Two sources of facades:** + +1. **`MUTABLE_MODULE_GROUPS`** ([`mutableModuleGroups.ts`](./lib/mutableModuleGroups.ts)) — explicit list of stub-able modules (animation frame, viz renderer, exporter, …). All aliases share one `globalThis` api; named exports use `wrapCtor` / live forwards. Import map points at the ESM artifact URL; `static.ts` serves the generated facade unless `?dx-original=1`. Codegen lives in `autoMutableFacade.ts`. +2. **Namespace-default reexports** (`import * as X; export default X`) under `viz/` — discovered automatically. + +Hand-written files under `esm-shims/` remain only for **non-generic** cases (themes composition, CSS inject, jquery/knockout globals, vendor stubs). + +Typical generated shape: + +```js +import * as original from '.../module.js?dx-original=1'; +import { createMutableApi, wrapCtor } from '.../mutable_facade.js'; + +const api = createMutableApi(original, '__dxAutoMutable_…'); +export const Foo = wrapCtor(api, 'Foo'); +export default api; +``` + +To stub a new module, add a group entry in [`mutableModuleGroups.ts`](./lib/mutableModuleGroups.ts): + +```ts +{ + internal: '__internal/viz/core/title.js', // real module under esm/ + also: ['viz/core/title.js'], // extra artifact URLs → same facade + extraKeys: ['animation/frame'], // optional bare import-map keys + apiFromDefault: true, // when default export is the stub target +} +``` + +Import-map keys are derived as `strip(.js)` of `internal`/`also`, plus `extraKeys`. Prefer this over a new hand-written shim. +--- + +## `testing/helpers/esm-shims/` + +Browser modules that the import map (and/or `static.ts` artifact redirects) substitute for real package / artifact specifiers during QUnit runs. + +**Why they exist:** + +- **Stubbing / mutation** — prefer `MUTABLE_MODULE_GROUPS` in `mutableModuleGroups.ts` (serve-time generated facades via `autoMutableFacade.ts`). Keep a hand-written shim only for custom composition (e.g. themes). +- **Globals bridge** — e.g. `jquery.js` / `knockout.js` re-export the classic ``; - const integrationImportPaths = getJQueryIntegrationImports(); - const cspMetaTag = runProps.NoCsp - ? '' - : ``; + // Native ESM + import maps: keep CSP off. + // `nocsp` remains a QUnit URL flag for suites that branch on it. + const cspMetaTag = ''; return renderTemplate('run-suite.template.html', { CSP_META_TAG: cspMetaTag, @@ -258,14 +164,16 @@ export function createPagesRenderer({ QUNIT_JS_URL: qunitJs, QUNIT_EXTENSIONS_JS_URL: qunitExtensionsJs, JQUERY_JS_URL: jqueryJs, + KNOCKOUT_JS_URL: knockoutJs, SINON_JS_URL: sinonJs, - SYSTEM_JS_URL: systemJs, + IMPORT_MAP_SCRIPT: importMapScript, + ESM_MODULE_ROOT_JSON: jsonString(getEsmModuleRoot()), IS_CONTINUOUS_INTEGRATION_JSON: jsonString(runProps.IsContinuousIntegration), CACHE_BUSTER_JSON: jsonString(cacheBuster), - SYSTEM_CONFIG_JSON: jsonString(systemConfig), - INTEGRATION_IMPORT_PATHS_JSON: jsonString(integrationImportPaths), + INTEGRATION_IMPORT_PATHS_JSON: jsonString(getJQueryIntegrationImports()), + THEME_CSS_IMPORT_PATHS_JSON: jsonString(themeCssImportPaths), IS_SERVER_SIDE_TEST_JSON: jsonString(isServerSideTest), - TEST_URL_JSON: jsonString(getTestUrl()), + TEST_URL_JSON: jsonString(scriptVirtualPath), }); } diff --git a/packages/devextreme/testing/runner/lib/static.ts b/packages/devextreme/testing/runner/lib/static.ts index 700f513bc99c..6f5cf861a7e5 100644 --- a/packages/devextreme/testing/runner/lib/static.ts +++ b/packages/devextreme/testing/runner/lib/static.ts @@ -2,6 +2,13 @@ import * as fs from 'node:fs'; import { IncomingMessage, ServerResponse } from 'node:http'; import * as path from 'node:path'; +import { findHandWrittenMutableFacade, tryBuildAutoMutableFacade } from './autoMutableFacade'; +import { + isQunitTestOrHelperPath, + rewriteAspnetArtifactToEsm, + rewriteQunitTestHelperSource, +} from './cjsInterop'; + interface StaticFileServiceDeps { escapeHtml: (value: string) => string; rootDirectory: string; @@ -18,53 +25,96 @@ export interface StaticFileService { ) => boolean; } +const CONTENT_TYPES: Readonly> = { + '.html': 'text/html; charset=utf-8', + '.htm': 'text/html; charset=utf-8', + '.css': 'text/css; charset=utf-8', + '.js': 'application/javascript; charset=utf-8', + '.mjs': 'application/javascript; charset=utf-8', + '.json': 'application/json; charset=utf-8', + '.xml': 'text/xml; charset=utf-8', + '.xsl': 'text/xml; charset=utf-8', + '.txt': 'text/plain; charset=utf-8', + '.md': 'text/plain; charset=utf-8', + '.log': 'text/plain; charset=utf-8', + '.svg': 'image/svg+xml', + '.png': 'image/png', + '.jpg': 'image/jpeg', + '.jpeg': 'image/jpeg', + '.gif': 'image/gif', + '.ico': 'image/x-icon', + '.woff': 'font/woff', + '.woff2': 'font/woff2', + '.ttf': 'font/ttf', + '.eot': 'application/vnd.ms-fontobject', + '.map': 'application/json; charset=utf-8', + '.wasm': 'application/wasm', +}; + +const JS_CONTENT_TYPE = 'application/javascript; charset=utf-8'; +const ESM_ARTIFACT_MARKER = '/artifacts/transpiled-esm-npm/esm/'; + +function normalizeUrlPath(filePath: string): string { + return filePath.split(path.sep).join('/'); +} + function getContentType(filePath: string): string { - const ext = path.extname(filePath).toLowerCase(); - - switch (ext) { - case '.html': - case '.htm': - return 'text/html; charset=utf-8'; - case '.css': - return 'text/css; charset=utf-8'; - case '.js': - case '.mjs': - return 'application/javascript; charset=utf-8'; - case '.json': - return 'application/json; charset=utf-8'; - case '.xml': - case '.xsl': - return 'text/xml; charset=utf-8'; - case '.txt': - case '.md': - case '.log': - return 'text/plain; charset=utf-8'; - case '.svg': - return 'image/svg+xml'; - case '.png': - return 'image/png'; - case '.jpg': - case '.jpeg': - return 'image/jpeg'; - case '.gif': - return 'image/gif'; - case '.ico': - return 'image/x-icon'; - case '.woff': - return 'font/woff'; - case '.woff2': - return 'font/woff2'; - case '.ttf': - return 'font/ttf'; - case '.eot': - return 'application/vnd.ms-fontobject'; - case '.map': - return 'application/json; charset=utf-8'; - case '.wasm': - return 'application/wasm'; - default: - return 'application/octet-stream'; + return CONTENT_TYPES[path.extname(filePath).toLowerCase()] ?? 'application/octet-stream'; +} + +function sendError(res: ServerResponse, statusCode: number, message: string): boolean { + res.statusCode = statusCode; + res.setHeader('Content-Type', 'text/plain; charset=utf-8'); + res.end(message); + return true; +} + +function sendJsModuleBody(res: ServerResponse, body: string): boolean { + const buffer = Buffer.from(body, 'utf8'); + res.statusCode = 200; + res.setHeader('Content-Type', JS_CONTENT_TYPE); + res.setHeader('Content-Length', String(buffer.length)); + res.end(buffer); + return true; +} + +function sendTransformedJs( + res: ServerResponse, + filePath: string, + transform: (raw: string) => string, + errorMessage: string, +): boolean { + try { + return sendJsModuleBody(res, transform(fs.readFileSync(filePath, 'utf8'))); + } catch { + return sendError(res, 500, errorMessage); + } +} + +/** + * Native ESM requires resolvable URLs. Our transpiled ESM tree uses + * extensionless relative imports (`from './wrapper'`). Resolve those + * to `.js` / `/index.js` on disk so import maps can load artifacts. + * + * Prefer `name.js` over a sibling directory `name/` — otherwise imports like + * `../__internal/integration/jquery` resolve to a directory listing (HTML) + * and the browser reports "Failed to fetch dynamically imported module". + * + * Also: files like `ui.collection_widget.edit` have a dotted basename; + * `path.extname` returns `.edit`, so we must still try appending `.js`. + */ +function resolveStaticFilePath(filePath: string): string | null { + if (fs.existsSync(filePath) && fs.statSync(filePath).isFile()) { + return filePath; + } + + for (const candidate of [`${filePath}.js`, `${filePath}.mjs`, path.join(filePath, 'index.js')]) { + if (fs.existsSync(candidate) && fs.statSync(candidate).isFile()) { + return candidate; + } } + + return fs.existsSync(filePath) ? filePath : null; } function sendStaticFile(res: ServerResponse, filePath: string, fileSize: number): boolean { @@ -88,6 +138,326 @@ function sendStaticFile(res: ServerResponse, filePath: string, fileSize: number) return true; } +// --- Vendor / UMD → ESM wrappers ------------------------------------------------ + +const ESM_DEFAULT_FROM_CJS = `const __dxVendorExport = module.exports && module.exports.__esModule + && Object.prototype.hasOwnProperty.call(module.exports, 'default') + ? module.exports.default + : module.exports; +export default __dxVendorExport; +`; + +function forceVendorGlobalThis(source: string): string { + return source.replace(/}\(\s*this\s*,/g, '}(globalThis,'); +} + +function wrapVendorCjsBranch( + source: string, + options: { + preamble?: string; + requireShim?: string; + exportsInit?: string; + trailing?: string; + rewriteThis?: boolean; + } = {}, +): string { + const { + preamble = '', + requireShim = '', + exportsInit = '{}', + trailing = ESM_DEFAULT_FROM_CJS, + rewriteThis = true, + } = options; + + const vendorSource = rewriteThis ? forceVendorGlobalThis(source) : source; + + return [ + preamble, + preamble ? '\n' : '', + `const module = { exports: ${exportsInit} };\n`, + 'const exports = module.exports;\n', + 'var define;\n', + requireShim, + vendorSource, + '\n', + trailing, + ].join(''); +} + +/** + * `intl/dist/Intl.complete.js` appends locale data that expects a free + * `IntlPolyfill` binding from the UMD *browser* branch. Forcing CJS breaks + * that, so keep the global branch and re-export the polyfill. + */ +function wrapIntlVendorAsEsm(source: string): string { + return 'var define;\n' + + 'var IntlPolyfill;\n' + + `${source + .replace(/}\(this,/g, '}(globalThis,') + .replace(/e\.IntlPolyfill=r\(\)/g, 'e.IntlPolyfill=IntlPolyfill=r()')}\n` + + 'export default IntlPolyfill;\n'; +} + +/** + * Force the CJS branch of a UMD wrapper and re-export `module.exports` as default. + * Also emit synthetic named exports from the webpack entry module so + * `import Def, * as Ns from 'pkg'` gets CJS-style interop + * (needed by diagram.importer → `Ns.DiagramControl`). + */ +function collectWebpackEntryExportNames(source: string): string[] { + const entryMatch = /var __webpack_exports__ = __webpack_require__\((\d+)\);/.exec(source); + if (!entryMatch) { + return []; + } + + const entryId = entryMatch[1]; + const moduleStart = source.indexOf(`/***/ ${entryId}`); + if (moduleStart < 0) { + return []; + } + + const nextModule = source.indexOf('\n/***/ ', moduleStart + 1); + const moduleSource = nextModule < 0 + ? source.slice(moduleStart) + : source.slice(moduleStart, nextModule); + + const names = new Set(); + const definePropertyRe = /Object\.defineProperty\(\s*exports\s*,\s*["']([^"']+)["']/g; + let match = definePropertyRe.exec(moduleSource); + while (match) { + const name = match[1]; + if (name !== '__esModule' && name !== 'default' && /^[A-Za-z_$][\w$]*$/.test(name)) { + names.add(name); + } + match = definePropertyRe.exec(moduleSource); + } + + return [...names].sort(); +} + +function wrapWebpackVendorAsEsm(source: string): string { + const namedExports = collectWebpackEntryExportNames(source) + .map((name) => `export const ${name} = module.exports.${name};`) + .join('\n'); + + return wrapVendorCjsBranch(source, { + rewriteThis: false, + trailing: `${ESM_DEFAULT_FROM_CJS}${namedExports ? `${namedExports}\n` : ''}`, + }); +} + +/** globalize / cldrjs ship as UMD; native ESM needs a CJS-branch + require shim. */ +function wrapGlobalizeOrCldrAsEsm(source: string, relativeUrlPath: string): string { + const normalized = normalizeUrlPath(relativeUrlPath); + const isCldrMain = normalized.endsWith('/cldrjs/dist/cldr.js'); + const isCldrPlugin = /\/cldrjs\/dist\/cldr\/[^/]+\.js$/i.test(normalized); + const isGlobalizeMain = normalized.endsWith('/globalize/dist/globalize.js'); + const isGlobalizePlugin = normalized.includes('/globalize/dist/globalize/'); + const baseName = path.basename(normalized, '.js'); + const needsNumber = isGlobalizePlugin && (baseName === 'currency' || baseName === 'date'); + + const preamble: string[] = []; + if (isCldrPlugin) { + preamble.push('import __dxCldr from \'cldr\';'); + } else if (isGlobalizeMain || isGlobalizePlugin) { + preamble.push('import __dxCldr from \'cldr\';'); + preamble.push('import \'cldr/event\';'); + if (isGlobalizePlugin) { + preamble.push('import \'cldr/supplemental\';'); + preamble.push('import __dxGlobalize from \'globalize\';'); + if (needsNumber) { + // CJS factory skips `./number`; AMD/DevExtreme always load it first. + preamble.push('import \'./number.js\';'); + } + } + } + + const requireShim = isCldrMain + ? 'function require(id) { throw new Error(\'Unexpected require in cldr: \' + id); }\n' + : [ + 'function require(id) {\n', + ' if (id === \'cldrjs\' || id === \'cldr\' || id === \'../cldr\') {\n', + ' return __dxCldr;\n', + ' }\n', + ' if (id === \'../globalize\' || id === \'globalize\') {\n', + ' return __dxGlobalize;\n', + ' }\n', + ' throw new Error(\'Unhandled require in globalize/cldr UMD: \' + id);\n', + '}\n', + ].join(''); + + return wrapVendorCjsBranch(source, { + preamble: preamble.join('\n'), + requireShim, + }); +} + +/** + * Vector map geo data UMD: CJS writes into `exports`, browser branch expects + * bare `DevExpress`. Under ESM imports hoist above suite setup, so create the + * global sources bag and point `module.exports` at the same object. + */ +function wrapVectorMapDataAsEsm(source: string): string { + return wrapVendorCjsBranch(source, { + preamble: [ + 'globalThis.DevExpress = globalThis.DevExpress || {};', + 'globalThis.DevExpress.viz = globalThis.DevExpress.viz || {};', + 'globalThis.DevExpress.viz.map = globalThis.DevExpress.viz.map || {};', + 'globalThis.DevExpress.viz.map.sources = globalThis.DevExpress.viz.map.sources || {};', + ].join('\n'), + exportsInit: 'globalThis.DevExpress.viz.map.sources', + trailing: 'export default module.exports;\n', + }); +} + +/** `dx.vectormaputils.js` is UMD (`exports.parse = …`); tests do `import { parse }`. */ +function wrapVectorMapUtilsAsEsm(source: string): string { + return wrapVendorCjsBranch(source, { + rewriteThis: false, + trailing: 'export default module.exports;\nexport const parse = module.exports.parse;\n', + }); +} + +type VendorWrapper = (source: string, relativeUrlPath: string) => string; + +function resolveVendorEsmWrapper(relativeUrlPath: string): VendorWrapper | null { + const normalized = normalizeUrlPath(relativeUrlPath); + + if ( + normalized.endsWith('/intl/dist/Intl.complete.js') + || normalized.endsWith('/intl/dist/Intl.js') + ) { + return (source) => wrapIntlVendorAsEsm(source); + } + + if ( + normalized.endsWith('/globalize/dist/globalize.js') + || normalized.includes('/globalize/dist/globalize/') + || normalized.endsWith('/cldrjs/dist/cldr.js') + || /\/cldrjs\/dist\/cldr\/[^/]+\.js$/i.test(normalized) + ) { + return wrapGlobalizeOrCldrAsEsm; + } + + if (/\/artifacts\/js\/vectormap-data\/[^/]+\.js$/i.test(normalized)) { + return (source) => wrapVectorMapDataAsEsm(source); + } + + if (/\/artifacts\/js\/vectormap-utils\/dx\.vectormaputils\.js$/i.test(normalized)) { + return (source) => wrapVectorMapUtilsAsEsm(source); + } + + if ( + normalized.endsWith('/devextreme-quill/dist/dx-quill.js') + || normalized.endsWith('/artifacts/js/dx-diagram.js') + || normalized.endsWith('/artifacts/js/dx-gantt.js') + || normalized.endsWith('/artifacts/js/dx-exceljs-fork.js') + || normalized.endsWith('/artifacts/js/jszip.js') + ) { + return (source) => wrapWebpackVendorAsEsm(source); + } + + return null; +} + +/** Serve JSON as `export default …` for native ESM (`*.json!` replacement). */ +function sendJsonAsEsmModule(res: ServerResponse, filePath: string): boolean { + return sendTransformedJs( + res, + filePath, + (raw) => { + JSON.parse(raw); + return `export default ${raw};\n`; + }, + 'Failed to export JSON as ESM module', + ); +} + +// --- Mutable artifact facades --------------------------------------------------- + +function sendMutableFacadeModule(res: ServerResponse, shimUrl: string): boolean { + // Serve a re-export at the artifact URL so relative library imports and + // bare import-map entries share the same shim module graph. + return sendJsModuleBody( + res, + `export * from '${shimUrl}';\nexport { default } from '${shimUrl}';\n`, + ); +} + +// --- ESM artifact tweaks -------------------------------------------------------- + +/** + * Convert leftover `exports.foo = …` (from #DEBUG / dual CJS-ESM sources) + * into native ESM exports so the browser does not throw "exports is not defined". + */ +function rewriteLegacyCjsExportsInEsmArtifact(source: string): string { + if (!/\bexports\./.test(source)) { + return source; + } + + return source + .replace( + /^exports\.([A-Za-z_$][\w$]*)\s*=\s*([A-Za-z_$][\w$]*);?\s*$/gm, + (_match, exportName: string, valueName: string) => (exportName === valueName + ? `export { ${exportName} };` + : `export { ${valueName} as ${exportName} };`), + ) + .replace( + /^exports\.([A-Za-z_$][\w$]*)\s*=\s*function\s*\(/gm, + 'export function $1(', + ) + .replace( + /^exports\.([A-Za-z_$][\w$]*)\s*=\s*async\s+function\s*\(/gm, + 'export async function $1(', + ); +} + +/** + * ESM npm artifacts are built with removeDebug:true, which strips QUnit-only + * hooks. Re-attach the ones still present as locals in the compiled module. + * + * When debug is kept (`-c qunit`), some sources still emit CJS `exports.*` + * assignments that throw under native ESM — rewrite those to ESM exports. + */ +function restoreEsmDebugTestHooks(relativeUrlPath: string, source: string): string { + const normalized = normalizeUrlPath(relativeUrlPath); + if (!normalized.includes(ESM_ARTIFACT_MARKER)) { + return source; + } + + let next = source; + + if (normalized.endsWith('/__internal/events/core/m_events_engine.js') + && !next.includes('eventsEngine.detectPassiveEventHandlersSupport')) { + next = next.replace( + /eventsEngine\.passiveEventHandlersSupported\s*=\s*passiveEventHandlersSupported;/, + 'eventsEngine.passiveEventHandlersSupported = passiveEventHandlersSupported;\n' + + 'eventsEngine.elementDataMap = elementDataMap;\n' + + 'eventsEngine.detectPassiveEventHandlersSupport = detectPassiveEventHandlersSupport;', + ); + } + + return rewriteLegacyCjsExportsInEsmArtifact(next); +} + +function sendEsmArtifactJs( + res: ServerResponse, + filePath: string, + relativeUrlPath: string, +): boolean { + try { + const raw = fs.readFileSync(filePath, 'utf8'); + let body = restoreEsmDebugTestHooks(relativeUrlPath, raw); + body = rewriteAspnetArtifactToEsm(body, relativeUrlPath); + if (body === raw) { + return sendStaticFile(res, filePath, fs.statSync(filePath).size); + } + return sendJsModuleBody(res, body); + } catch { + return sendError(res, 500, 'Failed to serve ESM artifact'); + } +} + function sendDirectoryListing( res: ServerResponse, requestPath: string, @@ -157,29 +527,88 @@ export function createStaticFileService({ if (relativeToRoot.startsWith('..') || path.isAbsolute(relativeToRoot)) { setNoCacheHeaders(res); - res.statusCode = 403; - res.setHeader('Content-Type', 'text/plain; charset=utf-8'); - res.end('Forbidden'); - return true; + return sendError(res, 403, 'Forbidden'); } - if (!fs.existsSync(filePath)) { + const resolvedFilePath = resolveStaticFilePath(filePath); + if (!resolvedFilePath) { return false; } setStaticCacheHeaders(res, searchParams); - const stat = fs.statSync(filePath); + const stat = fs.statSync(resolvedFilePath); if (stat.isDirectory()) { - return sendDirectoryListing(res, pathname, filePath, escapeHtml); + return sendDirectoryListing(res, pathname, resolvedFilePath, escapeHtml); } - if (stat.isFile()) { - return sendStaticFile(res, filePath, stat.size); + if (!stat.isFile()) { + return false; + } + + if (searchParams.has('esm-export') && path.extname(resolvedFilePath).toLowerCase() === '.json') { + return sendJsonAsEsmModule(res, resolvedFilePath); + } + + // Native ESM resolves relative imports against the request URL, not the + // on-disk file. Redirect extensionless URLs to the canonical file URL. + const resolvedUrlPath = `/${normalizeUrlPath(path.relative(rootDirectory, resolvedFilePath))}`; + if (resolvedUrlPath !== normalizedPath) { + const query = searchParams.toString(); + res.statusCode = 302; + res.setHeader('Location', query ? `${resolvedUrlPath}?${query}` : resolvedUrlPath); + res.end(); + return true; + } + + const relativeUrlPath = normalizeUrlPath(relativeToRoot); + const isJs = path.extname(resolvedFilePath).toLowerCase() === '.js'; + + if (isJs && isQunitTestOrHelperPath(relativeUrlPath)) { + return sendTransformedJs( + res, + resolvedFilePath, + (raw) => rewriteQunitTestHelperSource(raw, relativeUrlPath), + 'Failed to rewrite CJS-style test/helper module', + ); + } + + // Relative library imports bypass import maps — serve mutable facades + // at the artifact URL unless ?dx-original=1 (used by the facade itself). + // Hand-written shims (themes, …) win; otherwise auto-generate. + if (!searchParams.has('dx-original')) { + const shimUrl = findHandWrittenMutableFacade(relativeUrlPath); + if (shimUrl) { + return sendMutableFacadeModule(res, shimUrl); + } + const autoFacade = tryBuildAutoMutableFacade( + relativeUrlPath, + resolvedFilePath, + rootDirectory, + ); + if (autoFacade) { + return sendJsModuleBody(res, autoFacade); + } + } + + if (isJs) { + const vendorWrapper = resolveVendorEsmWrapper(relativeUrlPath); + if (vendorWrapper) { + return sendTransformedJs( + res, + resolvedFilePath, + (raw) => vendorWrapper(raw, relativeUrlPath), + 'Failed to wrap vendor bundle as ESM', + ); + } + + if (relativeUrlPath.includes(ESM_ARTIFACT_MARKER)) { + return sendEsmArtifactJs(res, resolvedFilePath, relativeUrlPath); + } } - return false; + return sendStaticFile(res, resolvedFilePath, stat.size); } return { diff --git a/packages/devextreme/testing/runner/templates/run-suite.template.html b/packages/devextreme/testing/runner/templates/run-suite.template.html index a7660dce96c2..d206af4ba123 100644 --- a/packages/devextreme/testing/runner/templates/run-suite.template.html +++ b/packages/devextreme/testing/runner/templates/run-suite.template.html @@ -99,9 +99,9 @@ - + - + + + {{{IMPORT_MAP_SCRIPT}}} +
- + diff --git a/packages/devextreme/testing/systemjs-builder.js b/packages/devextreme/testing/systemjs-builder.js deleted file mode 100644 index 940b87d249de..000000000000 --- a/packages/devextreme/testing/systemjs-builder.js +++ /dev/null @@ -1,272 +0,0 @@ -const path = require('path'); -const fs = require('fs'); -const babel = require('@babel/core'); -const parseArguments = require('minimist'); - - -const root = path.join(__dirname, '..'); -const transpilePath = path.join(root, '/artifacts/transpiled'); - -const getFileList = (dirName) => { - let files = []; - const items = fs.readdirSync(dirName, { withFileTypes: true }); - - // eslint-disable-next-line no-restricted-syntax - for(const item of items) { - if(item.isDirectory()) { - files = [...files, ...getFileList(path.join(dirName, item.name))]; - } else if( - item.name.endsWith('.js') || - (item.name.endsWith('.json') && !item.name.includes('tsconfig') && !item.name.includes('__meta')) - ) { - files.push(path.join(dirName, item.name)); - } - } - - return files; -}; - -const writeFileSync = (destPath, file) => { - const destDir = path.dirname(destPath); - if(!fs.existsSync(destDir)) { - fs.mkdirSync(destDir, { recursive: true }); - } - - fs.writeFileSync(destPath, file); -}; - -const buildAmdModule = (body) => ` -define(function(require, exports, module) { - ${body} -}); -`; - -const transpileCommonJSFile = (source, pathToFile) => { - const [pre, post] = path.extname(pathToFile) === '.json' - ? ['module.exports = ', ';'] - : ['', '']; - - writeFileSync( - pathToFile, - buildAmdModule( - `${pre}${source}${post}`.replace(/(\n|\r)/g, '$1 ') - ) - ); -}; - -const buildJsonModule = (body) => ` -define(function(require, exports, module) { - module.exports = ${body}; -}); -`; - -const buildSystemJSModule = (body, pre = '') => ` -SystemJS.register([], function(exports) { - ${pre} - - return { - setters: [], - execute: function() { - ${body} - } - }; -}); -`; - -const transpileFile = async(sourcePath, targetPath) => { - const code = fs.readFileSync(sourcePath) - .toString() - .replaceAll('/packages/devextreme/testing/helpers/wrapRenovatedWidget.js', '/packages/devextreme/artifacts/transpiled-testing/helpers/wrapRenovatedWidget.js') - .replaceAll(path.normalize('/testing/helpers/'), path.normalize('/artifacts/transpiled-testing/helpers/')) - // TODO see packages/devextreme/testing/tests/DevExpress.viz.vectorMap.utils/tests.js - // import { parse } from '../../../artifacts/js/vectormap-utils/dx.vectormaputils.js'; - // This used to work because the runner cwd was the same as the devextreme root folder - // remove next 3 lines after fix - .replaceAll( - path.normalize('../../../artifacts/js/vectormap-utils/dx.vectormaputils.js'), - path.normalize('../../../../artifacts/js/vectormap-utils/dx.vectormaputils.js')); - - if(sourcePath.includes('testing/helpers/includeThemesLinks.js')) { - writeFileSync(targetPath, buildSystemJSModule('', code.replaceAll('\n', ' '))); - return; - } - - if( - /(^|\s)System(JS)?\.register/gm.test(code) || - /(^|\s)define\(/gm.test(code) || - sourcePath.includes('helpers/forMap') - ) { - writeFileSync(targetPath, code); - } else if(/(\(|\s|^)require\(/.test(code) || /(module\.)?exports(\.\w+)?\s?=/.test(code)) { - transpileCommonJSFile(code, targetPath); - } else if(sourcePath.endsWith('.json')) { - writeFileSync(targetPath, buildJsonModule(code)); - } else { - await transpileWithBabel(code, targetPath); - } -}; - -const transpileModules = async() => { - await Promise.all( - getFileList(transpilePath).map((filePath) => { - return transpileFile( - filePath, - filePath.replace(path.normalize('/transpiled'), path.normalize('/transpiled-systemjs')), - ); - }) - ); -}; - -const buildCssAsSystemModule = (name, filePath) => ` -System.register('${filePath}', [], false, function() {}); -(function() { - if (typeof document == 'undefined') return; - var link = document.createElement('link'); - link.rel = 'stylesheet'; - link.href = '/packages/devextreme/${filePath}'; - link.setAttribute('data-theme', '${name}'); - document.getElementsByTagName('head')[0].appendChild(link); -})(); -`; - -const transpileCss = async() => { - const cssList = [ - ['artifacts/css/dx.light.css', 'generic.light'], - ['artifacts/css/dx.material.blue.light.css', 'material.blue.light'], - ['artifacts/css/dx.fluent.blue.light.css', 'fluent.blue.light'], - ['artifacts/css/dx-gantt.css', 'gantt'], - ]; - - // eslint-disable-next-line no-restricted-syntax - for(const [cssFile, styleName] of cssList) { - const destPath = path.join(root, cssFile.replace('css', 'css-systemjs')); - - writeFileSync(destPath, buildCssAsSystemModule(styleName, cssFile)); - } -}; - -const transpileWithBabel = async(sourceCode, destPath) => { - const { code } = await babel.transform(sourceCode, { - compact: false, - plugins: ['@babel/plugin-transform-modules-systemjs'], - sourceMaps: true, - }); - - writeFileSync(destPath, code); -}; - -const transpileIntl = async() => { - const listIntlFiles = [ - { - filePath: require.resolve('intl/lib/core.js'), - destPath: path.join(root, 'artifacts/js-systemjs/intl/intl.js'), - }, - { - filePath: require.resolve('intl/locale-data/complete.js'), - destPath: path.join(root, 'artifacts/js-systemjs/intl/intl.complete.js'), - }, - ]; - - await Promise.all(listIntlFiles.map(({ filePath, destPath }) => { - const code = fs.readFileSync(filePath).toString(); - - writeFileSync( - destPath, - buildAmdModule( - code.replace('IntlPolyfill', 'require("./intl.js")') - ) - ); - })); - - const intlIndex = ` - define(function(require, exports, module) { - window.IntlPolyfill = require('./intl.js'); - - require('./intl.complete.js'); - - if (!window.Intl) { - window.Intl = window.IntlPolyfill; - window.IntlPolyfill.__applyLocaleSensitivePrototypes(); - } - - module.exports = window.IntlPolyfill; - }); - `; - - writeFileSync(path.join(root, 'artifacts/js-systemjs/intl/index.js'), intlIndex); -}; - -const transpileJsVendors = async() => { - const pluginsList = [ - { - filePath: require.resolve('systemjs-plugin-css/css.js'), - destPath: path.join(root, 'artifacts/js-systemjs/css.js'), - }, - { - filePath: require.resolve('systemjs-plugin-json/json.js'), - destPath: path.join(root, 'artifacts/js-systemjs/json.js'), - }, - ]; - - await Promise.all( - pluginsList.map(({ filePath, destPath }) => { - const code = fs.readFileSync(filePath).toString(); - - return writeFileSync( - destPath, - buildSystemJSModule( - '', - code.replaceAll('module.exports', 'exports') - ) - ); - }), - ); - - await transpileIntl(); - - await transpileFile( - require.resolve('knockout/build/output/knockout-latest.debug.js'), - path.join(root, 'artifacts/js-systemjs/knockout.js') - ); - await transpileFile( - path.join(root, 'node_modules/@preact/signals-core/dist/signals-core.js'), - path.join(root, 'artifacts/js-systemjs/preact-signals.js') - ); - - - [].concat( - getFileList(path.join(root, 'node_modules/devextreme-cldr-data')), - getFileList(path.join(root, 'node_modules/cldr-core/supplemental')) - ) - .filter(filePath => filePath.endsWith('.json')) - .forEach((filePath) => { - transpileFile(filePath, filePath.replace(path.normalize('/node_modules'), path.normalize('/artifacts/js-systemjs'))); - }); -}; - -const transpileTesting = async() => { - const contentList = getFileList(path.join(root, 'testing/content')); - const helpersList = getFileList(path.join(root, 'testing/helpers')); - const testsList = getFileList(path.join(root, 'testing/tests')); - - [].concat(contentList, helpersList, testsList) - .forEach((filePath) => { - transpileFile(filePath, filePath.replace(path.normalize('/testing/'), path.normalize('/artifacts/transpiled-testing/'))); - }); -}; - -(async() => { - - const { transpile } = parseArguments(process.argv); - - switch(transpile) { - case 'modules': - return await transpileModules(); - case 'testing': - return await transpileTesting(); - case 'css': - return await transpileCss(); - case 'js-vendors': - return await transpileJsVendors(); - } -})(); diff --git a/packages/devextreme/testing/tests/DevExpress.aspnet/aspnet.tests.js b/packages/devextreme/testing/tests/DevExpress.aspnet/aspnet.tests.js index c61b8e313b3c..6d2fdbc87a94 100644 --- a/packages/devextreme/testing/tests/DevExpress.aspnet/aspnet.tests.js +++ b/packages/devextreme/testing/tests/DevExpress.aspnet/aspnet.tests.js @@ -1,39 +1,28 @@ -(function(factory) { - if(typeof define === 'function' && define.amd) { - define(function(require, exports, module) { - require('integration/jquery'), - require('ui/button'); - require('ui/check_box'); - require('ui/drop_down_button'); - require('ui/form'); - require('ui/popup'); - require('ui/select_box'); - require('ui/text_box'); - require('ui/toolbar'); - require('ui/validator'); - require('ui/validation_summary'); - - const aspnet = require('aspnet'); - window.DevExpress = { aspnet: aspnet }; // for DevExpress.aspnet.createComponent in templates - - module.exports = factory( - require('jquery'), - require('core/templates/template_engine_registry').setTemplateEngine, - aspnet, - function() { return require('ui/widget/ui.errors'); }, - function() { return require('../../helpers/ajaxMock.js'); } - ); - }); - } else { - factory( - window.jQuery, - DevExpress.setTemplateEngine, - DevExpress.aspnet, - function() { return window.DevExpress_ui_widget_errors; }, - function() { return window.ajaxMock; } - ); - } -}(function($, setTemplateEngine, aspnet, errorsAccessor, ajaxMockAccessor) { +import 'integration/jquery'; +import 'ui/button'; +import 'ui/check_box'; +import 'ui/drop_down_button'; +import 'ui/form'; +import 'ui/popup'; +import 'ui/select_box'; +import 'ui/text_box'; +import 'ui/toolbar'; +import 'ui/validator'; +import 'ui/validation_summary'; + +import $ from 'jquery'; +import { setTemplateEngine } from 'core/templates/template_engine_registry'; +import aspnetModule from 'aspnet'; +import errorsModule from 'ui/widget/ui.errors'; +import ajaxMock from '../../helpers/ajaxMock.js'; + +// Templates call DevExpress.aspnet.createComponent / renderComponent. +// MVC-style templates also expect global `$` (runner calls jQuery.noConflict()). +window.DevExpress = window.DevExpress || {}; +window.DevExpress.aspnet = aspnetModule; +window.$ = $; + +(function($, setTemplateEngine, aspnet, errorsAccessor, ajaxMockAccessor) { if(QUnit.urlParams['nojquery']) { return; @@ -696,4 +685,4 @@ }); }); -})); +})($, setTemplateEngine, aspnetModule, function() { return errorsModule; }, function() { return ajaxMock; }); diff --git a/packages/devextreme/testing/tests/DevExpress.common/charts.tests.js b/packages/devextreme/testing/tests/DevExpress.common/charts.tests.js index 6c7ff287bb62..e1d72136d9ca 100644 --- a/packages/devextreme/testing/tests/DevExpress.common/charts.tests.js +++ b/packages/devextreme/testing/tests/DevExpress.common/charts.tests.js @@ -1,16 +1,19 @@ import { registerPattern, registerGradient } from 'common/charts'; import graphicObjects from '__internal/common/m_charts'; -import utils from 'viz/core/utils_default'; +function clearGraphicObjects() { + const objects = graphicObjects.getGraphicObjects(); + Object.keys(objects).forEach((key) => { + delete objects[key]; + }); +} QUnit.module('Graphic objects', { beforeEach: function() { - this.getNextDefsStub = sinon.stub(utils, 'getNextDefsSvgId'); - this.getNextDefsStub.onCall(0).returns('DevExpressId_1'); - this.getNextDefsStub.onCall(1).returns('DevExpressId_2'); + clearGraphicObjects(); }, afterEach: function() { - this.getNextDefsStub.restore(); + clearGraphicObjects(); } }); @@ -18,12 +21,11 @@ QUnit.test('should register pattern', function(assert) { const id_1 = registerPattern({ key: 'test_key_1' }); const id_2 = registerPattern({ key: 'test_key_2' }); - assert.equal(this.getNextDefsStub.callCount, 2); - assert.equal(id_1, 'DevExpressId_1'); - assert.equal(id_2, 'DevExpressId_2'); + assert.ok(/^DevExpress_\d+$/.test(id_1), 'id has expected format'); + assert.notEqual(id_1, id_2, 'ids are unique'); assert.deepEqual(graphicObjects.getGraphicObjects(), { - 'DevExpressId_1': { key: 'test_key_1', type: 'pattern' }, - 'DevExpressId_2': { key: 'test_key_2', type: 'pattern' } + [id_1]: { key: 'test_key_1', type: 'pattern' }, + [id_2]: { key: 'test_key_2', type: 'pattern' } }); }); @@ -31,11 +33,10 @@ QUnit.test('should register gradient', function(assert) { const id_1 = registerGradient('gradient_type', { key: 'test_key_1' }); const id_2 = registerGradient('gradient_type', { key: 'test_key_2' }); - assert.equal(this.getNextDefsStub.callCount, 2); - assert.equal(id_1, 'DevExpressId_1'); - assert.equal(id_2, 'DevExpressId_2'); + assert.ok(/^DevExpress_\d+$/.test(id_1), 'id has expected format'); + assert.notEqual(id_1, id_2, 'ids are unique'); assert.deepEqual(graphicObjects.getGraphicObjects(), { - 'DevExpressId_1': { key: 'test_key_1', type: 'gradient_type' }, - 'DevExpressId_2': { key: 'test_key_2', type: 'gradient_type' } + [id_1]: { key: 'test_key_1', type: 'gradient_type' }, + [id_2]: { key: 'test_key_2', type: 'gradient_type' } }); }); diff --git a/packages/devextreme/testing/tests/DevExpress.core/config_bundled.tests.js b/packages/devextreme/testing/tests/DevExpress.core/config_bundled.tests.js index 7800023e6c96..e7cdd80db419 100644 --- a/packages/devextreme/testing/tests/DevExpress.core/config_bundled.tests.js +++ b/packages/devextreme/testing/tests/DevExpress.core/config_bundled.tests.js @@ -3,14 +3,14 @@ const useJQuery = !QUnit.urlParams['nojquery']; window.DevExpress = window.DevExpress || {}; window.DevExpress.config = { useJQuery: useJQuery }; -define(function(require) { - QUnit.test = QUnit.urlParams['nocsp'] ? QUnit.test : QUnit.skip; - require('bundles/dx.all.js'); +// Must stay dynamic: static imports hoist above the config assignment. +await import('bundles/dx.all.js'); - QUnit.module('config.useJQuery'); +QUnit.test = QUnit.urlParams['nocsp'] ? QUnit.test : QUnit.skip; - QUnit.test('config value useJQuery with jQuery in window', function(assert) { - const config = DevExpress.config; - assert.equal(config().useJQuery, useJQuery); - }); +QUnit.module('config.useJQuery'); + +QUnit.test('config value useJQuery with jQuery in window', function(assert) { + const config = DevExpress.config; + assert.equal(config().useJQuery, useJQuery); }); diff --git a/packages/devextreme/testing/tests/DevExpress.jquery/bundled.tests.js b/packages/devextreme/testing/tests/DevExpress.jquery/bundled.tests.js index 0fc86f98a8e9..26ba47daecfb 100644 --- a/packages/devextreme/testing/tests/DevExpress.jquery/bundled.tests.js +++ b/packages/devextreme/testing/tests/DevExpress.jquery/bundled.tests.js @@ -1,18 +1,13 @@ -define(function(require) { - if(QUnit.urlParams['nojquery']) { - return; - } - - const $ = require('jquery'); - - require('bundles/dx.all.js'); - +import $ from 'jquery'; +import 'integration/jquery'; +import dxButton from 'ui/button'; +if(!QUnit.urlParams['nojquery']) { QUnit.module('jquery integration'); QUnit.test('renderer uses correct strategy', function(assert) { const node = document.createElement('div'); - const element = new DevExpress.ui.dxButton(node).element(); + const element = new dxButton(node).element(); assert.ok(element instanceof window.jQuery); }); @@ -22,4 +17,4 @@ define(function(require) { assert.equal(typeof $element.dxButton, 'function'); }); -}); +} diff --git a/packages/devextreme/testing/tests/DevExpress.jquery/template.tests.js b/packages/devextreme/testing/tests/DevExpress.jquery/template.tests.js index c072d222b479..06020db1cc88 100644 --- a/packages/devextreme/testing/tests/DevExpress.jquery/template.tests.js +++ b/packages/devextreme/testing/tests/DevExpress.jquery/template.tests.js @@ -1,9 +1,3 @@ -SystemJS.config({ - map: { - 'jqueryify': SystemJS.map.jquery - } -}); - define(function(require) { const $ = require('jquery'); const Template = require('core/templates/template').Template; diff --git a/packages/devextreme/testing/tests/DevExpress.localization/localization.globalize.tests.js b/packages/devextreme/testing/tests/DevExpress.localization/localization.globalize.tests.js index d028a628baf6..b1131dcb7c4d 100644 --- a/packages/devextreme/testing/tests/DevExpress.localization/localization.globalize.tests.js +++ b/packages/devextreme/testing/tests/DevExpress.localization/localization.globalize.tests.js @@ -1,26 +1,3 @@ -SystemJS.config({ - meta: { - './localization.base.tests.js': { - deps: [ - 'common/core/localization/globalize/core', - 'common/core/localization/globalize/number', - 'common/core/localization/globalize/currency', - 'common/core/localization/globalize/date', - 'common/core/localization/globalize/message' - ] - } - }, - packages: { - 'globalize': { - meta: { - '../globalize.js': { - deps: ['cldr/unresolved'] - } - } - } - } -}); - define(function(require, exports, module) { const cldrData = [ require('devextreme-cldr-data/ar.json!json'), @@ -547,7 +524,7 @@ define(function(require, exports, module) { }); QUnit.module('Exceljs format', () => { - ExcelJSLocalizationFormatTests.default.runCurrencyTests([ + ExcelJSLocalizationFormatTests.runCurrencyTests([ { value: 'USD', expected: '$#,##0_);\\($#,##0\\)' }, { value: 'RUB', expected: '\\R\\U\\B#,##0_);\\(\\R\\U\\B#,##0\\)' }, { value: 'JPY', expected: '\\¥#,##0_);\\(\\¥#,##0\\)' }, @@ -556,7 +533,7 @@ define(function(require, exports, module) { { value: 'SEK', expected: '\\S\\E\\K#,##0_);\\(\\S\\E\\K#,##0\\)' } ]); - ExcelJSLocalizationFormatTests.default.runPivotGridCurrencyTests([ + ExcelJSLocalizationFormatTests.runPivotGridCurrencyTests([ { value: 'USD', expected: '$#,##0_);\\($#,##0\\)' }, { value: 'RUB', expected: '\\R\\U\\B#,##0_);\\(\\R\\U\\B#,##0\\)' }, { value: 'JPY', expected: '\\¥#,##0_);\\(\\¥#,##0\\)' }, diff --git a/packages/devextreme/testing/tests/DevExpress.ui.widgets.dataGrid/adaptiveColumns.tests.js b/packages/devextreme/testing/tests/DevExpress.ui.widgets.dataGrid/adaptiveColumns.tests.js index 62f7c4e1a833..ec8e84cf6f59 100644 --- a/packages/devextreme/testing/tests/DevExpress.ui.widgets.dataGrid/adaptiveColumns.tests.js +++ b/packages/devextreme/testing/tests/DevExpress.ui.widgets.dataGrid/adaptiveColumns.tests.js @@ -105,19 +105,22 @@ QUnit.module('AdaptiveColumns', { if(name === 'width' || name === 'height') { ++cssInvokeCounter; } + return cssFunc.apply(this, arguments); }; - // arrange, act - $('.dx-datagrid').width(200); - setupDataGrid(this); - this.rowsView.render($('#container')); - this.resizingController.updateDimensions(); - this.clock.tick(10); - - // assert - assert.equal(cssInvokeCounter, 0, 'no $.css() invokes for width/height CSS properties'); - - renderer.fn.css = cssFunc; + try { + // arrange, act + $('.dx-datagrid').width(200); + setupDataGrid(this); + this.rowsView.render($('#container')); + this.resizingController.updateDimensions(); + this.clock.tick(10); + + // assert + assert.equal(cssInvokeCounter, 0, 'no $.css() invokes for width/height CSS properties'); + } finally { + renderer.fn.css = cssFunc; + } }); // T516888 diff --git a/packages/devextreme/testing/tests/DevExpress.ui.widgets.htmlEditor/htmlEditorParts/importQuill.tests.js b/packages/devextreme/testing/tests/DevExpress.ui.widgets.htmlEditor/htmlEditorParts/importQuill.tests.js index 8ba22c6b1e98..7513514e8cfd 100644 --- a/packages/devextreme/testing/tests/DevExpress.ui.widgets.htmlEditor/htmlEditorParts/importQuill.tests.js +++ b/packages/devextreme/testing/tests/DevExpress.ui.widgets.htmlEditor/htmlEditorParts/importQuill.tests.js @@ -1,22 +1,13 @@ +import { getQuill } from '__internal/ui/html_editor/m_quill_importer'; -SystemJS.config({ - map: { - 'devextreme-quill': '/packages/devextreme/testing/helpers/quillDependencies/noQuill.js' - } -}); - -define(function(require) { - const getQuill = require('ui/html_editor/quill_importer').getQuill; - - QUnit.module('Import 3rd party', function() { - QUnit.test('it throw an error if the quill script isn\'t referenced', function(assert) { - assert.throws( - function() { getQuill(); }, - function(e) { - return /(E1041)[\s\S]*(Quill)/.test(e.message); - }, - 'The Quill script isn\'t referenced' - ); - }); +QUnit.module('Import 3rd party', function() { + QUnit.test('it throw an error if the quill script isn\'t referenced', function(assert) { + assert.throws( + function() { getQuill(); }, + function(e) { + return /(E1041)[\s\S]*(Quill)/.test(e.message); + }, + 'The Quill script isn\'t referenced' + ); }); }); diff --git a/packages/devextreme/testing/tests/DevExpress.ui.widgets.htmlEditor/htmlEditorParts/tableResizingModule.tests.js b/packages/devextreme/testing/tests/DevExpress.ui.widgets.htmlEditor/htmlEditorParts/tableResizingModule.tests.js index 939672ded248..cf29a6de403a 100644 --- a/packages/devextreme/testing/tests/DevExpress.ui.widgets.htmlEditor/htmlEditorParts/tableResizingModule.tests.js +++ b/packages/devextreme/testing/tests/DevExpress.ui.widgets.htmlEditor/htmlEditorParts/tableResizingModule.tests.js @@ -72,6 +72,8 @@ const moduleConfig = { }, afterEach: function() { + this.clock.tick(1000); + resizeCallbacks.empty(); this.clock.restore(); } }; @@ -176,7 +178,7 @@ module('Table resizing module', moduleConfig, () => { resizeCallbacks.fire(); - assert.strictEqual(typeof resizingInstance._resizeHandlerWithContext, 'object', '_resizeHandler is an object'); + assert.ok(resizingInstance._resizeHandlerWithContext, '_resizeHandlerWithContext is registered'); }); test('Window resize callback should be cleaned after the widget dispose', function(assert) { diff --git a/packages/devextreme/testing/tests/DevExpress.ui.widgets.htmlEditor/htmlEditorParts/toolbarModule.tests.js b/packages/devextreme/testing/tests/DevExpress.ui.widgets.htmlEditor/htmlEditorParts/toolbarModule.tests.js index 3afd5c78e87e..bcc686b7c3b1 100644 --- a/packages/devextreme/testing/tests/DevExpress.ui.widgets.htmlEditor/htmlEditorParts/toolbarModule.tests.js +++ b/packages/devextreme/testing/tests/DevExpress.ui.widgets.htmlEditor/htmlEditorParts/toolbarModule.tests.js @@ -1883,6 +1883,7 @@ testModule('Toolbar items state update', { test('state of the items in menu should be synchronized after toolbar repaint (t1117604)', function(assert) { this.options.items = this.mapToMenuItems(TABLE_OPERATIONS); + resizeCallbacks.empty(); const toolbar = new Toolbar(this.quillMock, this.options); this.quillMock.getFormat = () => ({ table: true }); toolbar.updateTableWidgets(); diff --git a/packages/devextreme/testing/tests/DevExpress.ui.widgets.scheduler/desktopTooltip.tests.js b/packages/devextreme/testing/tests/DevExpress.ui.widgets.scheduler/desktopTooltip.tests.js index b1036770423d..b608994f4096 100644 --- a/packages/devextreme/testing/tests/DevExpress.ui.widgets.scheduler/desktopTooltip.tests.js +++ b/packages/devextreme/testing/tests/DevExpress.ui.widgets.scheduler/desktopTooltip.tests.js @@ -1,3 +1,4 @@ +import $ from 'jquery'; import { DesktopTooltipStrategy } from '__internal/scheduler/tooltip_strategies/desktop_tooltip_strategy'; import { FunctionTemplate } from 'core/templates/function_template'; import { extend } from 'core/utils/extend'; diff --git a/packages/devextreme/testing/tests/DevExpress.ui.widgets/diagramParts/importDiagram.tests.js b/packages/devextreme/testing/tests/DevExpress.ui.widgets/diagramParts/importDiagram.tests.js index ecc19597f49f..11113aa6afb5 100644 --- a/packages/devextreme/testing/tests/DevExpress.ui.widgets/diagramParts/importDiagram.tests.js +++ b/packages/devextreme/testing/tests/DevExpress.ui.widgets/diagramParts/importDiagram.tests.js @@ -1,20 +1,12 @@ -SystemJS.config({ - map: { - 'devexpress-diagram': '/packages/devextreme/testing/helpers/noDiagram.js' - } -}); - -define(function(require) { - const getDiagram = require('__internal/ui/diagram/diagram.importer').getDiagram; +import { getDiagram } from '__internal/ui/diagram/diagram.importer'; - QUnit.module('Import devexpress-diagram', function() { - QUnit.test('throw an error if the devexpress-diagram script isn\'t referenced', function(assert) { - assert.throws( - function() { getDiagram(); }, - function(e) { - return /(E1041)[\s\S]*(devexpress-diagram)/.test(e.message); - } - ); - }); +QUnit.module('Import devexpress-diagram', function() { + QUnit.test('throw an error if the devexpress-diagram script isn\'t referenced', function(assert) { + assert.throws( + function() { getDiagram(); }, + function(e) { + return /(E1041)[\s\S]*(devexpress-diagram)/.test(e.message); + } + ); }); }); diff --git a/packages/devextreme/testing/tests/DevExpress.ui.widgets/ganttParts/importGantt.tests.js b/packages/devextreme/testing/tests/DevExpress.ui.widgets/ganttParts/importGantt.tests.js index 66e095bfe854..58162b185b4c 100644 --- a/packages/devextreme/testing/tests/DevExpress.ui.widgets/ganttParts/importGantt.tests.js +++ b/packages/devextreme/testing/tests/DevExpress.ui.widgets/ganttParts/importGantt.tests.js @@ -1,21 +1,12 @@ +import { getGanttViewCore as getGantt } from '__internal/ui/gantt/gantt_importer'; -SystemJS.config({ - map: { - 'devexpress-gantt': '/packages/devextreme/testing/helpers/noGantt.js' - } -}); - -define(function(require) { - const getGantt = require('__internal/ui/gantt/gantt_importer').getGanttViewCore; - - QUnit.module('Import devexpress-gantt', function() { - QUnit.test('throw an error if the devexpress-gantt script isn\'t referenced', function(assert) { - assert.throws( - function() { getGantt(); }, - function(e) { - return /(E1041)[\s\S]*(devexpress-gantt)/.test(e.message); - } - ); - }); +QUnit.module('Import devexpress-gantt', function() { + QUnit.test('throw an error if the devexpress-gantt script isn\'t referenced', function(assert) { + assert.throws( + function() { getGantt(); }, + function(e) { + return /(E1041)[\s\S]*(devexpress-gantt)/.test(e.message); + } + ); }); }); diff --git a/packages/devextreme/testing/tests/DevExpress.ui/themes.tests.js b/packages/devextreme/testing/tests/DevExpress.ui/themes.tests.js index 3e98fd22e59e..dff805a7fd8e 100644 --- a/packages/devextreme/testing/tests/DevExpress.ui/themes.tests.js +++ b/packages/devextreme/testing/tests/DevExpress.ui/themes.tests.js @@ -770,7 +770,7 @@ QUnit.module('initialized method', (hooks) => { test('initialized fires for ordinary link (init before link addition - should wait theme loading)', function(assert) { const done = assert.async(); - const url = ROOT_URL + 'packages/devextreme/testing' + '/helpers/themeMarker.css'; // WA for systemjs builder + const url = ROOT_URL + 'packages/devextreme/testing' + '/helpers/themeMarker.css'; const $frame = createFrame(); themes.setDefaultTimeout(30000); diff --git a/packages/devextreme/testing/tests/DevExpress.viz.charts/chart.integration.tests.js b/packages/devextreme/testing/tests/DevExpress.viz.charts/chart.integration.tests.js index 953ea43bdf2c..8bcfe439037a 100644 --- a/packages/devextreme/testing/tests/DevExpress.viz.charts/chart.integration.tests.js +++ b/packages/devextreme/testing/tests/DevExpress.viz.charts/chart.integration.tests.js @@ -12,7 +12,9 @@ import seriesFamilyModule from 'viz/core/series_family'; import { setupSeriesFamily } from '../../helpers/chartMocks.js'; import pointerMock from '../../helpers/pointerMock.js'; -const seriesFamilyNativeConstructor = { ...seriesFamilyModule }.SeriesFamily; +const mutableRendererModule = rendererModule.default ?? { ...rendererModule }; +const mutableSeriesFamilyModule = seriesFamilyModule.default ?? seriesFamilyModule; +const seriesFamilyNativeConstructor = mutableSeriesFamilyModule.SeriesFamily; setupSeriesFamily(); QUnit.testStart(function() { const markup = @@ -2325,7 +2327,7 @@ QUnit.test('check horizontal alignment === center', function(assert) { QUnit.module('Auto hide point markers', $.extend({}, moduleSetup, { beforeEach: function() { moduleSetup.beforeEach.call(this); - seriesFamilyModule.SeriesFamily = seriesFamilyNativeConstructor; + mutableSeriesFamilyModule.SeriesFamily = seriesFamilyNativeConstructor; const dataSource = []; for(let i = 0; i < 500000; i += 250) { const y1 = Math.sin(i); @@ -3300,14 +3302,14 @@ QUnit.module('Option changing in onDrawn after zooming', { beforeEach: function() { this.legendShiftSpy = sinon.spy(legendModule.Legend.prototype, 'move'); this.titleShiftSpy = sinon.spy(titleModule.Title.prototype, 'move'); - sinon.stub(rendererModule, 'Renderer').callsFake(function() { + sinon.stub(mutableRendererModule, 'Renderer').callsFake(function() { return new Renderer(); }); }, afterEach: function() { legendModule.Legend.prototype.move.restore(); titleModule.Title.prototype.move.restore(); - rendererModule.Renderer.restore(); + mutableRendererModule.Renderer.restore(); } }); @@ -4901,7 +4903,7 @@ QUnit.test('Reset axes animation before adjusting position of vertical axes (fix QUnit.module('SeriesFamily', $.extend({}, moduleSetup, { beforeEach: function() { moduleSetup.beforeEach.call(this); - seriesFamilyModule.SeriesFamily = seriesFamilyNativeConstructor; + mutableSeriesFamilyModule.SeriesFamily = seriesFamilyNativeConstructor; } })); diff --git a/packages/devextreme/testing/tests/DevExpress.viz.charts/chart.part7.tests.js b/packages/devextreme/testing/tests/DevExpress.viz.charts/chart.part7.tests.js index 358b3781265e..510f626adffa 100644 --- a/packages/devextreme/testing/tests/DevExpress.viz.charts/chart.part7.tests.js +++ b/packages/devextreme/testing/tests/DevExpress.viz.charts/chart.part7.tests.js @@ -10,12 +10,14 @@ import { createChartInstance, LabelCtor, } from './chartParts/commons.js'; -import { ERROR_MESSAGES as dxErrors } from 'viz/core/errors_warnings'; +import errorsWarnings from 'viz/core/errors_warnings'; import seriesModule from 'viz/series/base_series'; import dataValidatorModule from 'viz/components/data_validator'; import { MockSeries, categories, seriesMockData, MockTranslator } from '../../helpers/chartMocks.js'; import graphicObjects from '__internal/common/m_charts'; +const dxErrors = errorsWarnings.ERROR_MESSAGES; + $('
').appendTo('#qunit-fixture'); (function seriesCreationTests() { diff --git a/packages/devextreme/testing/tests/DevExpress.viz.core/axisDrawing.tests.js b/packages/devextreme/testing/tests/DevExpress.viz.core/axisDrawing.tests.js index 5a818a865b72..a1cc51c986d2 100644 --- a/packages/devextreme/testing/tests/DevExpress.viz.core/axisDrawing.tests.js +++ b/packages/devextreme/testing/tests/DevExpress.viz.core/axisDrawing.tests.js @@ -1,5 +1,5 @@ import $ from 'jquery'; -import { ERROR_MESSAGES as dxErrors } from 'viz/core/errors_warnings'; +import errorsWarnings from 'viz/core/errors_warnings'; import translator2DModule from 'viz/translators/translator2d'; import { Range } from 'viz/translators/range'; import tickGeneratorModule from 'viz/axes/tick_generator'; @@ -9,6 +9,8 @@ import { stubClass, } from '../../helpers/vizMocks.js'; +const dxErrors = errorsWarnings.ERROR_MESSAGES; + const StubTranslator = stubClass(translator2DModule.Translator2D, { updateBusinessRange: function(range) { this.getBusinessRange.returns(range); diff --git a/packages/devextreme/testing/tests/DevExpress.viz.gauges/barGauge.tests.js b/packages/devextreme/testing/tests/DevExpress.viz.gauges/barGauge.tests.js index 6f4bb5c49201..9b44a0a266e2 100644 --- a/packages/devextreme/testing/tests/DevExpress.viz.gauges/barGauge.tests.js +++ b/packages/devextreme/testing/tests/DevExpress.viz.gauges/barGauge.tests.js @@ -61,12 +61,21 @@ QUnit.begin(function() { step(1); that.animationStep && that.animationStep(1); complete(); - that.animationComplete && that.animationComplete(); + // Drop the hook before calling it — overlapping animate() + // chains (or a second completion after done()) must not + // re-enter assert.async() under native ESM scheduling. + const onGroupComplete = that.animationComplete; + that.animationComplete = null; + onGroupComplete && onGroupComplete(); test.renderer.animationCompleted && test.renderer.animationCompleted(); } } if(arguments[1] && typeof arguments[1].step === 'function') { + // Real renderer replaces the in-flight animation; without this, + // a second animate() leaves an orphan setTimeout chain and + // animationComplete / assert.async() fire twice. + this.stopAnimation(); that = this; step = arguments[1].step; complete = arguments[1].complete || noop; @@ -77,6 +86,7 @@ QUnit.begin(function() { }; group.stopAnimation = function() { clearTimeout(this.__animation); + this.__animation = null; return this; }; return group; diff --git a/packages/devextreme/testing/tests/DevExpress.viz.gauges/circularMarker.tests.js b/packages/devextreme/testing/tests/DevExpress.viz.gauges/circularMarker.tests.js index 7a11c7f02c1a..dd2fec130026 100644 --- a/packages/devextreme/testing/tests/DevExpress.viz.gauges/circularMarker.tests.js +++ b/packages/devextreme/testing/tests/DevExpress.viz.gauges/circularMarker.tests.js @@ -3,7 +3,7 @@ import { Renderer, } from '../../helpers/vizMocks.js'; import * as circularIndicatorsModule from '__internal/viz/gauges/circular_indicators'; -import { getTextCloudInfo } from '__internal/viz/gauges/base_indicators'; +import { getTextCloudInfo } from '../../helpers/getTextCloudInfo.js'; import { Translator1D } from '__internal/viz/translators/translator1d'; QUnit.module('TriangleMarker', { diff --git a/packages/devextreme/testing/tests/DevExpress.viz.gauges/linearMarker.tests.js b/packages/devextreme/testing/tests/DevExpress.viz.gauges/linearMarker.tests.js index 14334a0ef3dd..3e3104cd6cc6 100644 --- a/packages/devextreme/testing/tests/DevExpress.viz.gauges/linearMarker.tests.js +++ b/packages/devextreme/testing/tests/DevExpress.viz.gauges/linearMarker.tests.js @@ -1,6 +1,6 @@ import { Renderer as VizMocksRenderer } from '../../helpers/vizMocks.js'; import * as linearIndicatorsModule from '__internal/viz/gauges/linear_indicators'; -import { getTextCloudInfo } from '__internal/viz/gauges/base_indicators'; +import { getTextCloudInfo } from '../../helpers/getTextCloudInfo.js'; import { Translator1D } from '__internal/viz/translators/translator1d'; QUnit.module('TriangleMarker', { diff --git a/packages/devextreme/testing/tests/DevExpress.viz.gauges/textCloud.tests.js b/packages/devextreme/testing/tests/DevExpress.viz.gauges/textCloud.tests.js index b5896434662f..38c4e4e5d445 100644 --- a/packages/devextreme/testing/tests/DevExpress.viz.gauges/textCloud.tests.js +++ b/packages/devextreme/testing/tests/DevExpress.viz.gauges/textCloud.tests.js @@ -1,5 +1,5 @@ import $ from 'jquery'; -import { getTextCloudInfo } from '__internal/viz/gauges/base_indicators'; +import { getTextCloudInfo } from '../../helpers/getTextCloudInfo.js'; const data = { 'right-bottom': { diff --git a/packages/devextreme/testing/tests/Memory Leaks/vizWidgets.tests.js b/packages/devextreme/testing/tests/Memory Leaks/vizWidgets.tests.js index 4799c4cef71f..56edcb6d686e 100644 --- a/packages/devextreme/testing/tests/Memory Leaks/vizWidgets.tests.js +++ b/packages/devextreme/testing/tests/Memory Leaks/vizWidgets.tests.js @@ -1,4 +1,4 @@ -window.DevExpress = { viz: { map: { sources: {} } } }; +window.DevExpress = window.DevExpress || { viz: { map: { sources: {} } } }; import $ from 'core/renderer'; import { getWidth, getHeight, setWidth, setHeight } from 'core/utils/size'; @@ -18,6 +18,8 @@ import 'viz/tree_map'; import '/packages/devextreme/artifacts/js/vectormap-data/world.js'; import '/packages/devextreme/artifacts/js/vectormap-data/usa.js'; +const DevExpress = window.DevExpress; + const chartTestsSignature = { getInitOptions() { return { diff --git a/packages/nx-infra-plugin/AGENTS.md b/packages/nx-infra-plugin/AGENTS.md index 058a1f43d399..c0f41b0ac880 100644 --- a/packages/nx-infra-plugin/AGENTS.md +++ b/packages/nx-infra-plugin/AGENTS.md @@ -79,7 +79,7 @@ Each behavior is owned by exactly ONE executor's canonical tests; consumers must | `test-env` | `test-env` | Uses `nx:run-commands` to wrap the existing `node ./testing/launch` script (compiles the QUnit runner, starts the test server on port 20060, opens the browser). `cache: false`, no outputs (long-running server). `cwd` is `{projectRoot}`. | | `transpile-watch` | `build:transpile:watch` | `nx:run-commands` (parallel, `cache: false`) fanning out to the incremental watch targets `build:ts:internal:watch` (TypeScript watch program emitting `dist_ts`), `build:cjs:watch` (+ `-c production`), and `build:cjs:internal:watch` (+ `-c production`). Together these keep `artifacts/transpiled` and `artifacts/transpiled-renovation-npm` fresh, matching the old gulp JS + TS watch pipes. Watch capability lives in the `babel-transform` (per-file, chokidar + debounce, `watch` option) and `build-typescript` (`ts.createWatchProgram`, `watch` option) executors via the shared `src/utils/watch.ts` helper. `babel-transform` watch is intentionally file-level incremental and does **not** do an initial full transform — it relies on a preceding build having already populated its source directory (mirroring gulp-watch, which fed babel from a single in-memory TS-compiler stream with no such gap). Because `build:transpile`'s last step (`clean:dist-ts`) deletes `artifacts/dist_ts` — the exact directory `build:cjs:internal:watch` reads from and that runs right before `dev-watch` starts — `build:transpile:watch` itself (not the leaf `build:cjs:internal:watch` target, to avoid two parallel invocations each re-running the compile) declares `dependsOn: ["build:ts:internal"]`, so a real (or Nx-cache-restored) TS compile always repopulates `dist_ts/__internal` once, up front, before any of the fanned-out watch processes start; without it, whichever of the parallel TS-watch/babel-watch processes started first would decide — nondeterministically — whether the initial compile burst is picked up. | | `transpile-tests` | `transpile:tests` | Uses `devextreme-nx-infra-plugin:babel-transform` with the flat (keyless) `./testing/tests.babelrc.json` config to transpile `testing/**/*.js` in place. `dependsOn: ["build:devextreme-bundler-config"]` reproduces the old gulp `series('bundler-config', …)` prerequisite. `cache: false` (in-place source transform, not a cached artifact). Run via `pnpm nx transpile:tests devextreme`. | -| `transpile-systemjs` | `build:systemjs` | Uses `nx:run-commands` (no custom executor — same precedent as `test-env`) to run `node testing/systemjs-builder.js --transpile=` for each mode (`modules`, `testing`, `css`, `js-vendors`) with `parallel: true` and `cwd: {projectRoot}`, mirroring the old `gulp.parallel`. The transform logic stays entirely in `testing/systemjs-builder.js` (untouched, guaranteeing byte parity); the devextreme-specific script path + mode list live in `project.json`, not in the plugin. `cache: true`, keeps the existing `inputs`/`outputs`/`dependsOn: [build:dev]`. CI runs `pnpm exec nx build:systemjs` directly. | +| `transpile-systemjs` | _(removed)_ | QUnit uses native ESM + import maps only. `build:systemjs` and `testing/systemjs-builder.js` are gone. ESM for QUnit is `artifacts/transpiled-esm-npm` from `build:transpile -c ci` (via `build:dev` / CI) or the dedicated `build:qunit-esm` target. | | `js-bundles-watch` | `bundle:watch` | Webpack watch via `devextreme-nx-infra-plugin:bundle` with `watch: true`. Does not run `compress:bundles`. | | `js-bundles-prod` | `bundle:prod` | Use `pnpm nx bundle:prod devextreme` (add `-c production` for uglify/dist parity). | | `js-bundles-debug` | `bundle:debug` | Use `pnpm nx bundle:debug devextreme` (add `-c production` for uglify/dist parity). | diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 5cd403518503..3932cbfba250 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -235,13 +235,13 @@ importers: devDependencies: '@nx/devkit': specifier: 23.0.1 - version: 23.0.1(nx@23.0.1(@swc/core@1.15.30(@swc/helpers@0.5.21))) + version: 23.0.1(nx@23.0.1(@swc/core@1.15.30(@swc/helpers@0.5.21))(debug@4.4.3)) '@nx/jest': specifier: 23.0.1 - version: 23.0.1(@babel/traverse@7.29.7)(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(babel-plugin-macros@3.1.0)(jest@29.7.0(@types/node@20.19.37)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(typescript@5.9.3)))(node-notifier@9.0.1)(nx@23.0.1(@swc/core@1.15.30(@swc/helpers@0.5.21)))(supports-color@7.2.0)(ts-jest@29.1.3(@babel/core@7.29.7)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.29.7))(jest@29.7.0(@types/node@20.19.37)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(typescript@5.9.3)))(typescript@5.9.3))(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(typescript@5.9.3))(typescript@5.9.3) + version: 23.0.1(@babel/traverse@7.29.7)(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(babel-plugin-macros@3.1.0)(jest@29.7.0(@types/node@20.19.37)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(typescript@5.9.3)))(node-notifier@9.0.1)(nx@23.0.1(@swc/core@1.15.30(@swc/helpers@0.5.21))(debug@4.4.3))(ts-jest@29.1.3(@babel/core@7.29.7)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.29.7))(jest@29.7.0(@types/node@20.19.37)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(typescript@5.9.3)))(typescript@5.9.3))(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(typescript@5.9.3))(typescript@5.9.3) '@nx/js': specifier: 23.0.1 - version: 23.0.1(@babel/traverse@7.29.7)(@swc/core@1.15.30(@swc/helpers@0.5.21))(nx@23.0.1(@swc/core@1.15.30(@swc/helpers@0.5.21))) + version: 23.0.1(@babel/traverse@7.29.7)(@swc/core@1.15.30(@swc/helpers@0.5.21))(nx@23.0.1(@swc/core@1.15.30(@swc/helpers@0.5.21))(debug@4.4.3)) '@types/jest': specifier: 29.5.14 version: 29.5.14 @@ -277,13 +277,13 @@ importers: version: 14.0.1(enquirer@2.4.1) nx: specifier: 23.0.1 - version: 23.0.1(@swc/core@1.15.30(@swc/helpers@0.5.21)) + version: 23.0.1(@swc/core@1.15.30(@swc/helpers@0.5.21))(debug@4.4.3) shelljs: specifier: 0.8.5 version: 0.8.5 stylelint: specifier: 'catalog:' - version: 16.22.0(supports-color@7.2.0)(typescript@5.9.3) + version: 16.22.0(typescript@5.9.3) ts-node: specifier: 10.9.2 version: 10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(typescript@5.9.3) @@ -341,7 +341,7 @@ importers: version: 20.3.24(431b9a173f4030f6c919fbeca6cf3425) '@angular/cli': specifier: catalog:angular - version: 20.3.24(@types/node@20.11.17)(chokidar@4.0.3)(supports-color@7.2.0) + version: 20.3.24(@types/node@20.11.17)(chokidar@4.0.3) '@types/jasmine': specifier: 5.1.4 version: 5.1.4 @@ -362,7 +362,7 @@ importers: dependencies: '@angular-devkit/build-angular': specifier: ^22.0.0 - version: 22.0.4(99184f0856de60c7c2bc5a20bfdb9d92) + version: 22.0.4(3a8a7e7d68263645d367c565db3ab89d) '@angular/animations': specifier: ^22.0.0 version: 22.0.2(@angular/core@22.0.2(@angular/compiler@22.0.2)(rxjs@7.8.2)(zone.js@0.16.2)) @@ -548,7 +548,7 @@ importers: version: 9.0.4 remark-parse: specifier: 10.0.2 - version: 10.0.2(supports-color@7.2.0) + version: 10.0.2 remark-rehype: specifier: 10.1.0 version: 10.1.0 @@ -606,7 +606,7 @@ importers: version: 7.29.7 '@babel/eslint-parser': specifier: 'catalog:' - version: 7.29.7(@babel/core@7.29.7)(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0)) + version: 7.29.7(@babel/core@7.29.7)(eslint@9.39.4(jiti@2.6.1)) '@babel/preset-env': specifier: 7.29.7 version: 7.29.7(@babel/core@7.29.7) @@ -618,7 +618,7 @@ importers: version: 7.29.7(@babel/core@7.29.7) '@eslint/compat': specifier: 1.4.1 - version: 1.4.1(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0)) + version: 1.4.1(eslint@9.39.4(jiti@2.6.1)) '@eslint/eslintrc': specifier: 'catalog:' version: 3.3.5 @@ -636,7 +636,7 @@ importers: version: 5.0.7(rollup@4.59.0) '@stylistic/eslint-plugin': specifier: 'catalog:' - version: 5.10.0(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0)) + version: 5.10.0(eslint@9.39.4(jiti@2.6.1)) '@testcafe-community/axe': specifier: 3.5.0 version: 3.5.0(axe-core@4.11.3)(testcafe@3.7.5) @@ -660,13 +660,13 @@ importers: version: 17.0.35 '@typescript-eslint/eslint-plugin': specifier: 'catalog:' - version: 8.52.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0)(typescript@6.0.3))(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0)(typescript@6.0.3) + version: 8.52.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3))(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3) '@typescript-eslint/parser': specifier: 'catalog:' - version: 8.52.0(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0)(typescript@6.0.3) + version: 8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3) '@vue/eslint-config-typescript': specifier: 12.0.0 - version: 12.0.0(eslint-plugin-vue@10.4.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0)(typescript@6.0.3))(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(vue-eslint-parser@10.0.0(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0)))(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0)(typescript@6.0.3) + version: 12.0.0(eslint-plugin-vue@10.4.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3))(eslint@9.39.4(jiti@2.6.1))(vue-eslint-parser@10.0.0(eslint@9.39.4(jiti@2.6.1))))(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3) '@vue/tsconfig': specifier: 0.9.1 version: 0.9.1(typescript@6.0.3)(vue@3.5.32(typescript@6.0.3)) @@ -690,40 +690,40 @@ importers: version: 2.0.17(testcafe@3.7.5) eslint: specifier: 'catalog:' - version: 9.39.4(jiti@2.6.1)(supports-color@7.2.0) + version: 9.39.4(jiti@2.6.1) eslint-config-airbnb-typescript: specifier: 'catalog:' - version: 18.0.0(@typescript-eslint/eslint-plugin@8.52.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0)(typescript@6.0.3))(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0)(typescript@6.0.3))(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0)(typescript@6.0.3))(eslint-plugin-import@2.32.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0)(typescript@6.0.3))(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0)))(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0)) + version: 18.0.0(@typescript-eslint/eslint-plugin@8.52.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3))(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3))(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3))(eslint-plugin-import@2.32.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3))(eslint@9.39.4(jiti@2.6.1)))(eslint@9.39.4(jiti@2.6.1)) eslint-config-devextreme: specifier: 'catalog:' - version: 1.1.11(8a02c8ea109c9cf26ed5b6a911da64a7) + version: 1.1.11(183133270bd4e0fadb4e7343580111ff) eslint-plugin-deprecation: specifier: 3.0.0 - version: 3.0.0(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0)(typescript@6.0.3) + version: 3.0.0(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3) eslint-plugin-import: specifier: 'catalog:' - version: 2.32.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0)(typescript@6.0.3))(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0)) + version: 2.32.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3))(eslint@9.39.4(jiti@2.6.1)) eslint-plugin-jest: specifier: 29.15.2 - version: 29.15.2(@typescript-eslint/eslint-plugin@8.52.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0)(typescript@6.0.3))(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0)(typescript@6.0.3))(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(jest@29.7.0(@types/node@26.1.1)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(typescript@6.0.3)))(supports-color@7.2.0)(typescript@6.0.3) + version: 29.15.2(@typescript-eslint/eslint-plugin@8.52.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3))(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3))(eslint@9.39.4(jiti@2.6.1))(jest@29.7.0(@types/node@25.9.3)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(typescript@6.0.3)))(typescript@6.0.3) eslint-plugin-no-only-tests: specifier: 'catalog:' version: 3.3.0 eslint-plugin-react: specifier: 7.37.5 - version: 7.37.5(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0)) + version: 7.37.5(eslint@9.39.4(jiti@2.6.1)) eslint-plugin-react-hooks: specifier: 5.2.0 - version: 5.2.0(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0)) + version: 5.2.0(eslint@9.39.4(jiti@2.6.1)) eslint-plugin-react-perf: specifier: 3.3.3 - version: 3.3.3(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0)) + version: 3.3.3(eslint@9.39.4(jiti@2.6.1)) eslint-plugin-spellcheck: specifier: 0.0.20 - version: 0.0.20(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0)) + version: 0.0.20(eslint@9.39.4(jiti@2.6.1)) eslint-plugin-vue: specifier: 'catalog:' - version: 10.4.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0)(typescript@6.0.3))(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(vue-eslint-parser@10.0.0(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0)) + version: 10.4.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3))(eslint@9.39.4(jiti@2.6.1))(vue-eslint-parser@10.0.0(eslint@9.39.4(jiti@2.6.1))) express: specifier: 4.22.1 version: 4.22.1 @@ -735,10 +735,10 @@ importers: version: 15.14.0 http-server: specifier: 14.1.1 - version: 14.1.1(supports-color@7.2.0) + version: 14.1.1 jest: specifier: 29.7.0 - version: 29.7.0(@types/node@26.1.1)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(typescript@6.0.3)) + version: 29.7.0(@types/node@25.9.3)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(typescript@6.0.3)) jest-environment-node: specifier: 29.7.0 version: 29.7.0 @@ -783,7 +783,7 @@ importers: version: 0.16.15(patch_hash=c78b3d7eb812436aa2d80299b3d3f2738f0366b53f710a25956a3762edf73014) testcafe: specifier: 'catalog:' - version: 3.7.5(supports-color@7.2.0) + version: 3.7.5 testcafe-reporter-spec-time: specifier: 4.0.0 version: 4.0.0 @@ -792,7 +792,7 @@ importers: version: 10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(typescript@6.0.3) vue-eslint-parser: specifier: 'catalog:' - version: 10.0.0(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0) + version: 10.0.0(eslint@9.39.4(jiti@2.6.1)) vue-tsc: specifier: 3.0.8 version: 3.0.8(typescript@6.0.3) @@ -863,7 +863,7 @@ importers: devDependencies: '@storybook/addon-docs': specifier: 10.2.10 - version: 10.2.10(@types/react@18.3.28)(esbuild@0.28.1)(rollup@4.59.0)(storybook@10.2.10(@testing-library/dom@10.4.1)(prettier@3.8.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(vite@7.3.6(@types/node@26.1.1)(jiti@2.6.1)(less@4.8.0)(lightningcss@1.32.0)(sass-embedded@1.93.3)(sass@1.99.0)(terser@5.49.0)(yaml@2.9.0))(webpack@5.106.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1)) + version: 10.2.10(@types/react@18.3.28)(esbuild@0.28.1)(rollup@4.59.0)(storybook@10.2.10(@testing-library/dom@10.4.1)(prettier@3.8.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(vite@7.3.5(@types/node@25.9.3)(jiti@2.6.1)(less@4.6.6)(lightningcss@1.32.0)(sass-embedded@1.93.3)(sass@1.99.0)(terser@5.47.1)(yaml@2.9.0))(webpack@5.106.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1)) '@storybook/addon-links': specifier: 10.2.10 version: 10.2.10(react@18.3.1)(storybook@10.2.10(@testing-library/dom@10.4.1)(prettier@3.8.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)) @@ -872,7 +872,7 @@ importers: version: 4.0.3(@swc/helpers@0.5.21)(storybook@10.2.10(@testing-library/dom@10.4.1)(prettier@3.8.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(webpack@5.106.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1)) '@storybook/react-webpack5': specifier: 10.2.10 - version: 10.2.10(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@10.2.10(@testing-library/dom@10.4.1)(prettier@3.8.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(supports-color@7.2.0)(typescript@5.9.3) + version: 10.2.10(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@10.2.10(@testing-library/dom@10.4.1)(prettier@3.8.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(typescript@5.9.3) '@types/react': specifier: 18.3.28 version: 18.3.28 @@ -881,7 +881,7 @@ importers: version: 18.3.7(@types/react@18.3.28) http-server: specifier: 14.1.1 - version: 14.1.1(supports-color@7.2.0) + version: 14.1.1 prop-types: specifier: 15.8.1 version: 15.8.1 @@ -1002,7 +1002,7 @@ importers: version: 9.39.4(jiti@2.6.1) eslint-config-devextreme: specifier: 'catalog:' - version: 1.1.11(df15cfffce683e1bcb7bfdacad1a6df8) + version: 1.1.11(ec017a369c67ed38b63ff5745f4d5a7b) eslint-plugin-i18n: specifier: 'catalog:' version: 2.4.0 @@ -1035,7 +1035,7 @@ importers: version: 4.59.0 vite: specifier: 8.0.16 - version: 8.0.16(@types/node@20.19.37)(esbuild@0.28.1)(jiti@2.6.1)(less@4.8.0)(sass-embedded@1.93.3)(sass@1.99.0)(terser@5.49.0)(yaml@2.8.3) + version: 8.0.16(@types/node@20.19.37)(esbuild@0.28.1)(jiti@2.6.1)(less@4.6.6)(sass-embedded@1.93.3)(sass@1.99.0)(terser@5.47.1)(yaml@2.8.3) webpack: specifier: 5.105.4 version: 5.105.4(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1)(webpack-cli@4.10.0) @@ -1149,7 +1149,7 @@ importers: version: 9.39.4(jiti@2.6.1) eslint-config-devextreme: specifier: 'catalog:' - version: 1.1.11(3323971c1e531ea4fcc264c8af1d91e5) + version: 1.1.11(50f3c3285bd7eabd5ea20f1cb31b03f8) eslint-migration-utils: specifier: workspace:* version: link:../../packages/eslint-migration-utils @@ -1176,7 +1176,7 @@ importers: version: 0.12.1 testcafe: specifier: 'catalog:' - version: 3.7.5(supports-color@7.2.0) + version: 3.7.5 testcafe-reporter-spec-time: specifier: 4.0.0 version: 4.0.0 @@ -1291,13 +1291,13 @@ importers: devDependencies: '@analogjs/vite-plugin-angular': specifier: 1.22.5 - version: 1.22.5(@angular-devkit/build-angular@20.3.24(0cd51b99b5dfb814a8dbe8f5e89d9086))(@angular/build@20.3.24(0a555739555ef0e9d469b245b0a858c0)) + version: 1.22.5(@angular-devkit/build-angular@20.3.24(af5c29b672a0472d9db264df7fa63c43))(@angular/build@20.3.24(189a507a67cbb35869a1d74e23dc2880)) '@angular-devkit/build-angular': specifier: catalog:angular - version: 20.3.24(0cd51b99b5dfb814a8dbe8f5e89d9086) + version: 20.3.24(af5c29b672a0472d9db264df7fa63c43) '@angular/cli': specifier: catalog:angular - version: 20.3.24(@types/node@26.1.1)(chokidar@4.0.3) + version: 20.3.24(@types/node@25.9.3)(chokidar@4.0.3) '@angular/compiler-cli': specifier: catalog:angular version: 20.3.25(@angular/compiler@20.3.25)(typescript@5.8.3) @@ -1315,10 +1315,10 @@ importers: version: 19.1.3(@types/react@19.1.2) '@vitejs/plugin-react': specifier: 4.7.0 - version: 4.7.0(vite@8.0.16(@types/node@26.1.1)(esbuild@0.28.1)(jiti@2.6.1)(less@4.8.0)(sass-embedded@1.93.3)(sass@1.99.0)(terser@5.49.0)(yaml@2.8.3)) + version: 4.7.0(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(jiti@2.6.1)(less@4.6.6)(sass-embedded@1.93.3)(sass@1.99.0)(terser@5.47.1)(yaml@2.8.3)) '@vitejs/plugin-vue': specifier: 5.2.4 - version: 5.2.4(vite@8.0.16(@types/node@26.1.1)(esbuild@0.28.1)(jiti@2.6.1)(less@4.8.0)(sass-embedded@1.93.3)(sass@1.99.0)(terser@5.49.0)(yaml@2.8.3))(vue@3.5.32(typescript@5.8.3)) + version: 5.2.4(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(jiti@2.6.1)(less@4.6.6)(sass-embedded@1.93.3)(sass@1.99.0)(terser@5.47.1)(yaml@2.8.3))(vue@3.5.32(typescript@5.8.3)) eslint: specifier: 9.39.4 version: 9.39.4(jiti@2.6.1) @@ -1351,13 +1351,13 @@ importers: version: 2.1.0(jasmine-core@5.6.0)(karma-jasmine@5.1.0(karma@6.4.4))(karma@6.4.4) testcafe: specifier: 'catalog:' - version: 3.7.5(supports-color@7.2.0) + version: 3.7.5 typescript: specifier: 5.8.3 version: 5.8.3 vite: specifier: 8.0.16 - version: 8.0.16(@types/node@26.1.1)(esbuild@0.28.1)(jiti@2.6.1)(less@4.8.0)(sass-embedded@1.93.3)(sass@1.99.0)(terser@5.49.0)(yaml@2.8.3) + version: 8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(jiti@2.6.1)(less@4.6.6)(sass-embedded@1.93.3)(sass@1.99.0)(terser@5.47.1)(yaml@2.8.3) packages/devextreme: dependencies: @@ -1451,7 +1451,7 @@ importers: version: 8.52.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@4.9.5))(eslint@9.39.4(jiti@2.6.1))(typescript@4.9.5) '@typescript-eslint/experimental-utils': specifier: 5.62.0 - version: 5.62.0(eslint@9.39.4(jiti@2.6.1))(supports-color@7.2.0)(typescript@4.9.5) + version: 5.62.0(eslint@9.39.4(jiti@2.6.1))(typescript@4.9.5) '@typescript-eslint/parser': specifier: 'catalog:' version: 8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@4.9.5) @@ -1517,7 +1517,7 @@ importers: version: 3.3.0 eslint-plugin-perfectionist: specifier: 'catalog:' - version: 5.9.1(eslint@9.39.4(jiti@2.6.1))(supports-color@7.2.0)(typescript@4.9.5) + version: 5.9.1(eslint@9.39.4(jiti@2.6.1))(typescript@4.9.5) eslint-plugin-qunit: specifier: 'catalog:' version: 8.2.6(eslint@9.39.4(jiti@2.6.1)) @@ -1584,21 +1584,6 @@ importers: sinon: specifier: 18.0.1 version: 18.0.1 - systemjs: - specifier: 0.19.41 - version: 0.19.41 - systemjs-plugin-babel: - specifier: 0.0.25 - version: 0.0.25 - systemjs-plugin-css: - specifier: 0.1.37 - version: 0.1.37 - systemjs-plugin-json: - specifier: 0.3.0 - version: 0.3.0 - systemjs-plugin-text: - specifier: 0.0.11 - version: 0.0.11 terser-webpack-plugin: specifier: 5.3.17 version: 5.3.17(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1)(webpack@5.105.4(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1)) @@ -1616,7 +1601,7 @@ importers: version: typescript@4.9.5 vite: specifier: 8.0.16 - version: 8.0.16(@types/node@20.19.37)(esbuild@0.28.1)(jiti@2.6.1)(less@4.8.0)(sass-embedded@1.93.3)(sass@1.99.0)(terser@5.49.0)(yaml@2.8.3) + version: 8.0.16(@types/node@20.19.37)(esbuild@0.28.1)(jiti@2.6.1)(less@4.6.6)(sass-embedded@1.93.3)(sass@1.99.0)(terser@5.47.1)(yaml@2.8.3) webpack: specifier: 5.105.4 version: 5.105.4(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1) @@ -1873,7 +1858,7 @@ importers: version: 18.0.0(@typescript-eslint/eslint-plugin@8.52.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@4.9.5))(eslint@9.39.4(jiti@2.6.1))(typescript@4.9.5))(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@4.9.5))(eslint-plugin-import@2.32.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@4.9.5))(eslint@9.39.4(jiti@2.6.1)))(eslint@9.39.4(jiti@2.6.1)) eslint-config-devextreme: specifier: 'catalog:' - version: 1.1.11(2159c8bdfeeb538cd9a87b0f06dfe45f) + version: 1.1.11(4051f50fa4cef3752123c12096732564) eslint-migration-utils: specifier: workspace:* version: link:../eslint-migration-utils @@ -1894,7 +1879,7 @@ importers: version: 18.3.1(react@18.3.1) ts-jest: specifier: 29.1.3 - version: 29.1.3(@babel/core@7.29.7)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.29.7))(jest@30.2.0(@types/node@26.1.1)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@26.1.1)(typescript@4.9.5)))(typescript@4.9.5) + version: 29.1.3(@babel/core@7.29.7)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.29.7))(jest@30.2.0(@types/node@25.9.3)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@25.9.3)(typescript@4.9.5)))(typescript@4.9.5) typescript: specifier: 4.9.5 version: 4.9.5 @@ -1907,7 +1892,7 @@ importers: version: 3.1.3(stylelint@16.22.0(typescript@6.0.3)) autoprefixer: specifier: 10.5.0 - version: 10.5.0(postcss@8.5.23) + version: 10.5.0(postcss@8.5.25) clean-css: specifier: 5.3.3 version: 5.3.3 @@ -1916,7 +1901,7 @@ importers: version: 1.3.4 postcss: specifier: ^8.5.23 - version: 8.5.23 + version: 8.5.25 sass-embedded: specifier: 1.93.3 version: 1.93.3 @@ -1925,19 +1910,19 @@ importers: version: 16.22.0(typescript@6.0.3) stylelint-config-standard-scss: specifier: 14.0.0 - version: 14.0.0(postcss@8.5.23)(stylelint@16.22.0(typescript@6.0.3)) + version: 14.0.0(postcss@8.5.25)(stylelint@16.22.0(typescript@6.0.3)) stylelint-scss: specifier: 6.10.0 version: 6.10.0(stylelint@16.22.0(typescript@6.0.3)) ts-jest: specifier: 29.1.2 - version: 29.1.2(@babel/core@7.29.7)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.29.7))(jest@30.2.0(@types/node@26.1.1)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@26.1.1)(typescript@6.0.3)))(typescript@5.9.3) + version: 29.1.2(@babel/core@7.29.7)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.29.7))(jest@30.2.0(@types/node@25.9.3)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@25.9.3)(typescript@6.0.3)))(typescript@5.9.3) packages/devextreme-themebuilder: dependencies: autoprefixer: specifier: ^10.4.21 - version: 10.5.0(postcss@8.5.23) + version: 10.5.0(postcss@8.5.25) bootstrap: specifier: ^5.3.8 version: 5.3.8(@popperjs/core@2.11.8) @@ -1946,7 +1931,7 @@ importers: version: 5.3.3 postcss: specifier: ^8.5.23 - version: 8.5.23 + version: 8.5.25 sass-embedded: specifier: 1.93.3 version: 1.93.3 @@ -2065,7 +2050,7 @@ importers: version: 18.0.0(@typescript-eslint/eslint-plugin@8.52.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@4.9.5))(eslint@9.39.4(jiti@2.6.1))(typescript@4.9.5))(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@4.9.5))(eslint-plugin-import@2.32.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@4.9.5))(eslint@9.39.4(jiti@2.6.1)))(eslint@9.39.4(jiti@2.6.1)) eslint-config-devextreme: specifier: 'catalog:' - version: 1.1.11(2159c8bdfeeb538cd9a87b0f06dfe45f) + version: 1.1.11(4051f50fa4cef3752123c12096732564) eslint-plugin-i18n: specifier: 'catalog:' version: 2.4.0 @@ -2086,7 +2071,7 @@ importers: version: 29.7.0 ts-jest: specifier: 29.1.3 - version: 29.1.3(@babel/core@7.29.7)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.29.7))(jest@30.2.0(@types/node@26.1.1)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@26.1.1)(typescript@4.9.5)))(typescript@4.9.5) + version: 29.1.3(@babel/core@7.29.7)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.29.7))(jest@30.2.0(@types/node@25.9.3)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@25.9.3)(typescript@4.9.5)))(typescript@4.9.5) typescript: specifier: 4.9.5 version: 4.9.5 @@ -2211,7 +2196,7 @@ importers: version: link:../devextreme/artifacts/npm/devextreme testcafe: specifier: 'catalog:' - version: 3.7.5(supports-color@7.2.0) + version: 3.7.5 packages: @@ -3936,10 +3921,6 @@ packages: resolution: {integrity: sha512-JiDShH45zKHWyGe4ZNVRrCjBz8Nh9TMmZG1kh4QTK8hCBTWBi8Da+i7s1fJw7/lYpM4ccepSNfqzZ/QvABBi5g==} engines: {node: '>=6.9.0'} - '@babel/runtime@7.29.7': - resolution: {integrity: sha512-Nq8OhGWiZIZGV6hLHoyAKLLcJihP/xFeBMGJoUrxTX2psI8dCifzLhZISFb+VWS3wFMRDmCGw5R+dOySCqPLhw==} - engines: {node: '>=6.9.0'} - '@babel/template@7.29.7': resolution: {integrity: sha512-puq+Gf35oI24FeN11LkoUQFqv9uwNeWpxXZi/Ji3rRIoKAzKnxRaZ+Gkj0vKS9ZCiTESfng1N9LyOyXvo+m+Gg==} engines: {node: '>=6.9.0'} @@ -3963,8 +3944,8 @@ packages: '@bcoe/v8-coverage@0.2.3': resolution: {integrity: sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==} - '@bufbuild/protobuf@2.13.0': - resolution: {integrity: sha512-acq7c49vxfm1ggJ95P70TX7ABDM0vxr1SYD3BB0o0jnBLB4OAqeHyKuN+cD3w80gXEDQ2zxHpR6CUeA+O/aU9g==} + '@bufbuild/protobuf@2.11.0': + resolution: {integrity: sha512-sBXGT13cpmPR5BMgHE6UEEfEaShh5Ror6rfN3yEK5si7QVrtZg8LEPQb0VVhiLRUslD2yLnXtnRzG035J/mZXQ==} '@cacheable/memory@2.0.8': resolution: {integrity: sha512-FvEb29x5wVwu/Kf93IWwsOOEuhHh6dYCJF3vcKLzXc0KXIW181AOzv6ceT4ZpBHDvAfG60eqb+ekmrnLHIy+jw==} @@ -4247,12 +4228,6 @@ packages: cpu: [x64] os: [win32] - '@eslint-community/eslint-utils@4.10.1': - resolution: {integrity: sha512-cuadcxVFE8sDK6iWJbs8Sn0av2Nrh2QSGQhVlBW9AaAHqHwjWsZHT8LJ4hFGPh7ASBV2deFdM7H/DPjulmh8rg==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - peerDependencies: - eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 - '@eslint-community/eslint-utils@4.9.1': resolution: {integrity: sha512-phrYmNiYppR7znFEdqgfWHXR6NCkZEK7hwWDHZUjit/2/U0r6XvkDl0SYnoM51Hq7FhCGdLDT6zxCCOY1hexsQ==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} @@ -5170,61 +5145,31 @@ packages: cpu: [arm64] os: [darwin] - '@msgpackr-extract/msgpackr-extract-darwin-arm64@3.0.4': - resolution: {integrity: sha512-LCkGo6JDfaBhgST7UpPWgNgLINpcpabaHfyz5OBx75nUYxBsaEPxjnyNjWpeb/xBup/682QnBfRBy2/LvPutZQ==} - cpu: [arm64] - os: [darwin] - '@msgpackr-extract/msgpackr-extract-darwin-x64@3.0.3': resolution: {integrity: sha512-mdzd3AVzYKuUmiWOQ8GNhl64/IoFGol569zNRdkLReh6LRLHOXxU4U8eq0JwaD8iFHdVGqSy4IjFL4reoWCDFw==} cpu: [x64] os: [darwin] - '@msgpackr-extract/msgpackr-extract-darwin-x64@3.0.4': - resolution: {integrity: sha512-zExlW9zUJKZH/tOtVMttwjKa4Xm/3KcNjnE3dPN92uCktwavMxpgCA3MoJK/DOnTWsQgo224OaST27/mPNAf+w==} - cpu: [x64] - os: [darwin] - '@msgpackr-extract/msgpackr-extract-linux-arm64@3.0.3': resolution: {integrity: sha512-YxQL+ax0XqBJDZiKimS2XQaf+2wDGVa1enVRGzEvLLVFeqa5kx2bWbtcSXgsxjQB7nRqqIGFIcLteF/sHeVtQg==} cpu: [arm64] os: [linux] - '@msgpackr-extract/msgpackr-extract-linux-arm64@3.0.4': - resolution: {integrity: sha512-dgX0P/9wGPJeHFBG+ZmhgE6bmtMt7NP5CRBGyyktpopdk/mW4POnrpQsSLtKI1dwpc+pPLuXHDh6vvskyQE/sw==} - cpu: [arm64] - os: [linux] - '@msgpackr-extract/msgpackr-extract-linux-arm@3.0.3': resolution: {integrity: sha512-fg0uy/dG/nZEXfYilKoRe7yALaNmHoYeIoJuJ7KJ+YyU2bvY8vPv27f7UKhGRpY6euFYqEVhxCFZgAUNQBM3nw==} cpu: [arm] os: [linux] - '@msgpackr-extract/msgpackr-extract-linux-arm@3.0.4': - resolution: {integrity: sha512-Tg3yX65f5GbtXLkrYEHE5oibZG9epyYWas7FogTTEJeDEF9JlXJzKgXaNhT3UXlTOeA+AfZpYZYZ0uPj7Cfquw==} - cpu: [arm] - os: [linux] - '@msgpackr-extract/msgpackr-extract-linux-x64@3.0.3': resolution: {integrity: sha512-cvwNfbP07pKUfq1uH+S6KJ7dT9K8WOE4ZiAcsrSes+UY55E/0jLYc+vq+DO7jlmqRb5zAggExKm0H7O/CBaesg==} cpu: [x64] os: [linux] - '@msgpackr-extract/msgpackr-extract-linux-x64@3.0.4': - resolution: {integrity: sha512-8TNXMEjJc3QEy7R/x1INhgiU+XakDAFUzBhaz7+Rbrs8NH5UQeHQxxmzsSBJGyV6I1jW79undiQm8tOI+D+8FQ==} - cpu: [x64] - os: [linux] - '@msgpackr-extract/msgpackr-extract-win32-x64@3.0.3': resolution: {integrity: sha512-x0fWaQtYp4E6sktbsdAqnehxDgEc/VwM7uLsRCYWaiGu0ykYdZPiS8zCWdnjHwyiumousxfBm4SO31eXqwEZhQ==} cpu: [x64] os: [win32] - '@msgpackr-extract/msgpackr-extract-win32-x64@3.0.4': - resolution: {integrity: sha512-CmCXPQrkbwExx3j946/PtHWHbYJiCRBRDl4BlkRQcJB/YOwQxJRTpoo7aTsortjgoJ1x7opzTSxn7C+ASSLVjQ==} - cpu: [x64] - os: [win32] - '@napi-rs/nice-android-arm-eabi@1.1.1': resolution: {integrity: sha512-kjirL3N6TnRPv5iuHw36wnucNqXAO46dzK9oPb0wj076R5Xm8PfUVA9nAFB5ZNMmfJQJVKACAPd/Z2KYMppthw==} engines: {node: '>= 10'} @@ -5808,48 +5753,24 @@ packages: cpu: [arm64] os: [android] - '@parcel/watcher-android-arm64@2.6.0': - resolution: {integrity: sha512-trgpLSCKRC/huFjXX/Smh+0sWe4+YtKfktIToiMl59ghz7z+qkH6kMvNnUbLyRs9N11t8l4svSCs1+5B3rOAhA==} - engines: {node: '>= 10.0.0'} - cpu: [arm64] - os: [android] - '@parcel/watcher-darwin-arm64@2.5.6': resolution: {integrity: sha512-Z2ZdrnwyXvvvdtRHLmM4knydIdU9adO3D4n/0cVipF3rRiwP+3/sfzpAwA/qKFL6i1ModaabkU7IbpeMBgiVEA==} engines: {node: '>= 10.0.0'} cpu: [arm64] os: [darwin] - '@parcel/watcher-darwin-arm64@2.6.0': - resolution: {integrity: sha512-Y3QV0gl7Q1zbfueunkWIERICbEojQFCgpyG7YqOGNFLsckXyI1xu9mAIUpKY9QBYzBtSkN8dBPwd3yiAO9ovMw==} - engines: {node: '>= 10.0.0'} - cpu: [arm64] - os: [darwin] - '@parcel/watcher-darwin-x64@2.5.6': resolution: {integrity: sha512-HgvOf3W9dhithcwOWX9uDZyn1lW9R+7tPZ4sug+NGrGIo4Rk1hAXLEbcH1TQSqxts0NYXXlOWqVpvS1SFS4fRg==} engines: {node: '>= 10.0.0'} cpu: [x64] os: [darwin] - '@parcel/watcher-darwin-x64@2.6.0': - resolution: {integrity: sha512-Ohv6OpzhUfKYD7Beb8kDvG0jbIxORCYY1JRdZnaBtnjjkJxgD7ZVL0nw2sCYd0yTMKTvz3nnTnOF3cDifK+kvw==} - engines: {node: '>= 10.0.0'} - cpu: [x64] - os: [darwin] - '@parcel/watcher-freebsd-x64@2.5.6': resolution: {integrity: sha512-vJVi8yd/qzJxEKHkeemh7w3YAn6RJCtYlE4HPMoVnCpIXEzSrxErBW5SJBgKLbXU3WdIpkjBTeUNtyBVn8TRng==} engines: {node: '>= 10.0.0'} cpu: [x64] os: [freebsd] - '@parcel/watcher-freebsd-x64@2.6.0': - resolution: {integrity: sha512-5HmXvDgs8VK+74jF9y9/2FE3/OnlcKmc56tjmSrEuZjpSZOGL+fvAu+HKJBdPs9uwoP2hE6TlSUpXZ/C5jUFmQ==} - engines: {node: '>= 10.0.0'} - cpu: [x64] - os: [freebsd] - '@parcel/watcher-linux-arm-glibc@2.5.6': resolution: {integrity: sha512-9JiYfB6h6BgV50CCfasfLf/uvOcJskMSwcdH1PHH9rvS1IrNy8zad6IUVPVUfmXr+u+Km9IxcfMLzgdOudz9EQ==} engines: {node: '>= 10.0.0'} @@ -5857,13 +5778,6 @@ packages: os: [linux] libc: [glibc] - '@parcel/watcher-linux-arm-glibc@2.6.0': - resolution: {integrity: sha512-Ps/hui3A+vMbjdqlqAowK2ZL8+BO8dBjxeWXj6npTBs3jx4wWmbPpaLuqwrQrSqIVMCnpWo238bJ1U37GhQOYg==} - engines: {node: '>= 10.0.0'} - cpu: [arm] - os: [linux] - libc: [glibc] - '@parcel/watcher-linux-arm-musl@2.5.6': resolution: {integrity: sha512-Ve3gUCG57nuUUSyjBq/MAM0CzArtuIOxsBdQ+ftz6ho8n7s1i9E1Nmk/xmP323r2YL0SONs1EuwqBp2u1k5fxg==} engines: {node: '>= 10.0.0'} @@ -5871,13 +5785,6 @@ packages: os: [linux] libc: [musl] - '@parcel/watcher-linux-arm-musl@2.6.0': - resolution: {integrity: sha512-9c6AUHgHoG+IY88MRIHupztQiQnrbqHYQjkM2btA+Bf/wQnQMuiD0Wfk1EVv3TlNT3x41uU71rn6E4xh/+zvkw==} - engines: {node: '>= 10.0.0'} - cpu: [arm] - os: [linux] - libc: [musl] - '@parcel/watcher-linux-arm64-glibc@2.5.6': resolution: {integrity: sha512-f2g/DT3NhGPdBmMWYoxixqYr3v/UXcmLOYy16Bx0TM20Tchduwr4EaCbmxh1321TABqPGDpS8D/ggOTaljijOA==} engines: {node: '>= 10.0.0'} @@ -5885,13 +5792,6 @@ packages: os: [linux] libc: [glibc] - '@parcel/watcher-linux-arm64-glibc@2.6.0': - resolution: {integrity: sha512-yHRqS2owEXe6Hic9z6Mh1ECsCd+ODVOGvZDyciqRd21+v+o+DnXMOrw50DSpIG2sb8GPEaPPmfeCAWKPJdq46g==} - engines: {node: '>= 10.0.0'} - cpu: [arm64] - os: [linux] - libc: [glibc] - '@parcel/watcher-linux-arm64-musl@2.5.6': resolution: {integrity: sha512-qb6naMDGlbCwdhLj6hgoVKJl2odL34z2sqkC7Z6kzir8b5W65WYDpLB6R06KabvZdgoHI/zxke4b3zR0wAbDTA==} engines: {node: '>= 10.0.0'} @@ -5899,13 +5799,6 @@ packages: os: [linux] libc: [musl] - '@parcel/watcher-linux-arm64-musl@2.6.0': - resolution: {integrity: sha512-WhB2e/V7rqdHHWZusBSPuy5Ei8S6lSz6FE5TKKQz5h3a0O+C+mhY7vxU9b/stqvMb8beLnPY82ZrFTLKs+SrKA==} - engines: {node: '>= 10.0.0'} - cpu: [arm64] - os: [linux] - libc: [musl] - '@parcel/watcher-linux-x64-glibc@2.5.6': resolution: {integrity: sha512-kbT5wvNQlx7NaGjzPFu8nVIW1rWqV780O7ZtkjuWaPUgpv2NMFpjYERVi0UYj1msZNyCzGlaCWEtzc+exjMGbQ==} engines: {node: '>= 10.0.0'} @@ -5913,13 +5806,6 @@ packages: os: [linux] libc: [glibc] - '@parcel/watcher-linux-x64-glibc@2.6.0': - resolution: {integrity: sha512-ulGE6x6Oz6iAwg75T8YQSoguBWasniIbX+QWpaYPcCnDOpdWX3k+4xbEYPZVLxOuoJI+svJJPD3sEj8G7lrQ3A==} - engines: {node: '>= 10.0.0'} - cpu: [x64] - os: [linux] - libc: [glibc] - '@parcel/watcher-linux-x64-musl@2.5.6': resolution: {integrity: sha512-1JRFeC+h7RdXwldHzTsmdtYR/Ku8SylLgTU/reMuqdVD7CtLwf0VR1FqeprZ0eHQkO0vqsbvFLXUmYm/uNKJBg==} engines: {node: '>= 10.0.0'} @@ -5927,25 +5813,12 @@ packages: os: [linux] libc: [musl] - '@parcel/watcher-linux-x64-musl@2.6.0': - resolution: {integrity: sha512-tkBYKt7YQrjIJWYDnto2YgO8MRkjlMTSNoRHzsXinBqbLdeOM3L32wPZJvIZxqaLMfSlS/4sUjH/6STVP/XDLw==} - engines: {node: '>= 10.0.0'} - cpu: [x64] - os: [linux] - libc: [musl] - '@parcel/watcher-win32-arm64@2.5.6': resolution: {integrity: sha512-3ukyebjc6eGlw9yRt678DxVF7rjXatWiHvTXqphZLvo7aC5NdEgFufVwjFfY51ijYEWpXbqF5jtrK275z52D4Q==} engines: {node: '>= 10.0.0'} cpu: [arm64] os: [win32] - '@parcel/watcher-win32-arm64@2.6.0': - resolution: {integrity: sha512-gIZAP23jaHjGWasY/TY6yL7NHFClf0Ga7FN+iINvk+KN94rhm94lYZhFsbYFNcA04/onvGD9kKmiJLJB2HbNwQ==} - engines: {node: '>= 10.0.0'} - cpu: [arm64] - os: [win32] - '@parcel/watcher-win32-ia32@2.5.6': resolution: {integrity: sha512-k35yLp1ZMwwee3Ez/pxBi5cf4AoBKYXj00CZ80jUz5h8prpiaQsiRPKQMxoLstNuqe2vR4RNPEAEcjEFzhEz/g==} engines: {node: '>= 10.0.0'} @@ -5958,20 +5831,10 @@ packages: cpu: [x64] os: [win32] - '@parcel/watcher-win32-x64@2.6.0': - resolution: {integrity: sha512-cA+/pXV2YkfxlIcXOQ5fSWqAzzPyD78/x5qbK/I0vUkrlYHA8TIz+MXjAbGouguKVSI4bOmkTSJ1/poVSsgt+A==} - engines: {node: '>= 10.0.0'} - cpu: [x64] - os: [win32] - '@parcel/watcher@2.5.6': resolution: {integrity: sha512-tmmZ3lQxAe/k/+rNnXQRawJ4NjxO2hqiOLTHvWchtGZULp4RyFeh6aU4XdOYBFe2KE1oShQTv4AblOs2iOrNnQ==} engines: {node: '>= 10.0.0'} - '@parcel/watcher@2.6.0': - resolution: {integrity: sha512-7FNeNl8NCE7aINx7WXiKQrPYZWC/hvrTsmk6zmxbI7LTXE7hVek/n8AfVgpe2y82zl3w0HvCHN0bVKMBoJcC0w==} - engines: {node: '>= 10.0.0'} - '@parcel/workers@2.16.4': resolution: {integrity: sha512-dkBEWqnHXDZnRbTZouNt4uEGIslJT+V0c8OH1MPOfjISp1ucD6/u9ET8k9d/PxS9h1hL53og0SpBuuSEPLDl6A==} engines: {node: '>= 16.0.0'} @@ -6223,15 +6086,6 @@ packages: rollup: optional: true - '@rollup/pluginutils@5.4.0': - resolution: {integrity: sha512-MfPp06CjRLfXQ3wY0R8vJDYBy/MvVcc9OulEfR0B8Iv9ko+GCNaRZ+EpJYFl27LhKsZK0o420sYCRHCjfCgeUg==} - engines: {node: '>=14.0.0'} - peerDependencies: - rollup: ^4.59.0 - peerDependenciesMeta: - rollup: - optional: true - '@rollup/rollup-android-arm-eabi@4.59.0': resolution: {integrity: sha512-upnNBkA6ZH2VKGcBj9Fyl9IGNPULcjXRlg0LLeaioQWueH30p6IXtJEbKAgvyv+mJaMxSm1l6xwDXYjpEMiLMg==} cpu: [arm] @@ -6513,11 +6367,6 @@ packages: engines: {node: '>=18.0.0', npm: '>=8.0.0'} hasBin: true - '@rollup/wasm-node@4.62.3': - resolution: {integrity: sha512-sEOQWamme1YgXeVcE1JkB1k44RwtPWcpYpGUW1Lso7bOj+Ay9lN2Pak/CcfNeC4xqIPNhYSabQNaWYkJJR7m8Q==} - engines: {node: '>=18.0.0', npm: '>=8.0.0'} - hasBin: true - '@rtsao/scc@1.1.0': resolution: {integrity: sha512-zt6OdqaDoOnJ1ZYsCYGt9YmWzDXl4vQdKTyJev62gFhRGKdx7mcT54V9KIjg+d2wi9EXsPvAPKe7i7WjfVWB8g==} @@ -6557,11 +6406,11 @@ packages: resolution: {integrity: sha512-qv7+G3J2cc6wwFj3yKvXOamzqhMwSk1ogPGmhpS8iXllcPrJaIIBA+4HbttlHVu1pqWTdmaCH/WE7UOC51kdoA==} engines: {node: ^20.17.0 || >=22.9.0} - '@sinclair/typebox@0.27.12': - resolution: {integrity: sha512-hhyNJ+nbR6ZR7pToHvllEFun9TL0sbL+tk/ON75lo+Xas054uez98qRbsuNt7MBCyZKK4+8Yli/OAGZhmfBZ/g==} + '@sinclair/typebox@0.27.10': + resolution: {integrity: sha512-MTBk/3jGLNB2tVxv6uLlFh1iu64iYOQ2PbdOSK3NW8JZsmlaOh2q6sdtKowBhfw8QFLmYNzTW4/oK4uATIi6ZA==} - '@sinclair/typebox@0.34.52': - resolution: {integrity: sha512-XiMQh7qqVlxZzcVD+kkGMNGMzcTrDMLWI7S4x7z1MkCkbDPrekpZXEUK0eZqZFMuHQg2a2DZOcDIh9o5v3Gonw==} + '@sinclair/typebox@0.34.49': + resolution: {integrity: sha512-brySQQs7Jtn0joV8Xh9ZV/hZb9Ozb0pmazDIASBkYKCjXrXU3mpcFahmK/z4YDhGkQvP9mWJbVyahdtU5wQA+A==} '@sinonjs/commons@3.0.1': resolution: {integrity: sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ==} @@ -6802,8 +6651,8 @@ packages: '@swc/helpers@0.5.21': resolution: {integrity: sha512-jI/VAmtdjB/RnI8GTnokyX7Ug8c+g+ffD6QRLa6XQewtnGyukKkKSk3wLTM3b5cjt1jNh9x0jfVlagdN2gDKQg==} - '@swc/types@0.1.27': - resolution: {integrity: sha512-K6h3iUlqeM946U4sXFYeahefR1YBbXJvko+hv8WS8/0BNJ4OHiHRywMnQUJCqkR7Y9+hqQ1TvEpiKqUhz7NEFg==} + '@swc/types@0.1.26': + resolution: {integrity: sha512-lyMwd7WGgG79RS7EERZV3T8wMdmPq3xwyg+1nmAM64kIhx5yl+juO2PYIHb7vTiPgPCj8LYjsNV2T5wiQHUEaw==} '@testcafe-community/axe@3.5.0': resolution: {integrity: sha512-JFYW8IYtvVZ2788y6d0kb3LGZAQZWgS82SrsFcd/4zJU7b9j2oPruLxpmPKqbM4HwQLk8RhyzkOmECRxRbrLhA==} @@ -6936,9 +6785,6 @@ packages: '@types/estree@1.0.8': resolution: {integrity: sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==} - '@types/estree@1.0.9': - resolution: {integrity: sha512-GhdPgy1el4/ImP05X05Uw4cw2/M93BCUmnEvWZNStlCzEKME4Fkk+YpoA5OiHNQmoS7Cafb8Xa3Pya8m1Qrzeg==} - '@types/express-serve-static-core@4.19.8': resolution: {integrity: sha512-02S5fmqeoKzVZCHPZid4b8JH2eM5HzQLZWN2FohQEy/0eXTq8VXZfSN6Pcr3F6N9R/vNrj7cpgbhjie6m/1tCA==} @@ -7047,8 +6893,8 @@ packages: '@types/node@20.19.37': resolution: {integrity: sha512-8kzdPJ3FsNsVIurqBs7oodNnCEVbni9yUEkaHbgptDACOPW04jimGagZ51E6+lXUwJjgnBw+hyko/lkFWCldqw==} - '@types/node@26.1.1': - resolution: {integrity: sha512-nxAkRSVkN1Y0JC1W8ky/fTfkGsMmcrRsbx+3XoZE+rMOX71kLYTV7fLXpqud1GpbpP5TuffXFqfX7fH2GgZREw==} + '@types/node@25.9.3': + resolution: {integrity: sha512-603BddQMv3pUcr4U2dhujk83N2tTDVr/34wII2B6bJy6g+8WD6yUb11jszNs0gdi4PesVWl7ABt8nYMVpnLUcg==} '@types/normalize-package-data@2.4.4': resolution: {integrity: sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==} @@ -7424,9 +7270,6 @@ packages: '@ungap/structured-clone@1.3.1': resolution: {integrity: sha512-mUFwbeTqrVgDQxFveS+df2yfap6iuP20NAKAsBt5jDEoOTDew+zwLAOilHCeQJOVSvmgCX4ogqIrA0mnyr08yQ==} - '@ungap/structured-clone@1.3.3': - resolution: {integrity: sha512-60YRaenCQcVjYEKOcG824+DRGGIQ3VKErcBoAEDJZz5bKIs2ZG+X/H9Nk+Q6EVkwJk5QNApxbrc5QtBSwtrXAg==} - '@unrs/resolver-binding-android-arm-eabi@1.12.2': resolution: {integrity: sha512-g5T90pqg1bo/7mytQx6F4iBNC0Wsh9cu+z9veDbFjc7HjpesJFWD7QMS0NGStXM075+7dJPPVvBbpZlnrdpi/w==} cpu: [arm] @@ -8230,12 +8073,8 @@ packages: resolution: {integrity: sha512-zBQouZixDTbo3jMGqHKyePxYxr1e5W8UdTmBQ7sNtaA9M2bE32daxxPLS/jojhKOHxQ7LWwPjfiwf/fhaJWzlg==} engines: {node: '>=4'} - axe-core@4.12.1: - resolution: {integrity: sha512-s7iGf5GaVMxEG0ENN9x+xTr7GFZCb1ZP/1uATUpCEK2X78nDB3RwbtFCo9pGAf9ru+VwoQ464DkaLEeRM08wJA==} - engines: {node: '>=4'} - - axios@1.18.1: - resolution: {integrity: sha512-3nTvFlvpn9Zu/RkHUqtc7/+al4UpRW5az71ap5zccp6e8RAYEzhMTecX8Dz1wWDYrPpUoB1HAQEGEAEvUr7S9g==} + axios@1.19.0: + resolution: {integrity: sha512-ht/iuYZXEjFxLH/Hkezgd7m6JKlHHXEUSneaDz8uZe1Gj5QZtCnpyDsckvAiEnT89OEbCLmnte4R4sn7P0EKFw==} axobject-query@4.1.0: resolution: {integrity: sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==} @@ -8516,8 +8355,8 @@ packages: resolution: {integrity: sha512-lGe34o6EHj9y3Kts9R4ZYs/Gr+6N7MCaMlIFA3F1R2O5/m7K06AxfSeO5530PEERE6/WyEg3lsuyw4GHlPZHog==} engines: {node: ^4.5.0 || >= 5.9} - baseline-browser-mapping@2.11.4: - resolution: {integrity: sha512-s4+sLr9mZ/CyqeRritFeYV/Zx73OAtmaHn6kkBS1XRoJn1hrg3xIDUcpicAEX68tkcIN0iBCgti31C8zxtkhsQ==} + baseline-browser-mapping@2.10.20: + resolution: {integrity: sha512-1AaXxEPfXT+GvTBJFuy4yXVHWJBXa4OdbIebGN/wX5DlsIkU0+wzGnd2lOzokSk51d5LUmqjgBLRLlypLUqInQ==} engines: {node: '>=6.0.0'} hasBin: true @@ -8631,11 +8470,6 @@ packages: engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} hasBin: true - browserslist@4.28.7: - resolution: {integrity: sha512-JxV13hNrFxqjOc8alRbq9dK1MM79NEXYpma2B2J4wAtpWS5zIEIKqWPGCl7N4o7Uc7B7itylh7SuDujATRyyTw==} - engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} - hasBin: true - bs-logger@0.2.6: resolution: {integrity: sha512-pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog==} engines: {node: '>= 6'} @@ -8735,8 +8569,8 @@ packages: resolution: {integrity: sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==} engines: {node: '>=10'} - caniuse-lite@1.0.30001806: - resolution: {integrity: sha512-72Cuvd95zbSYPKq6Fhg8eDJRlzgWDf7/mtoZv6Qe/DYNCEBdNxoA3+rZAU2ZhGCpZlns3EssFavaZomckT5Uuw==} + caniuse-lite@1.0.30001788: + resolution: {integrity: sha512-6q8HFp+lOQtcf7wBK+uEenxymVWkGKkjFpCvw5W25cmMwEDU45p1xQFBQv8JDlMMry7eNxyBaR+qxgmTUZkIRQ==} canvg@3.0.11: resolution: {integrity: sha512-5ON+q7jCTgMp9cjpu4Jo6XbvfYwSB2Ow3kzHKfIyJfaCAOHLbdKPQqGKgfED/R5B+3TFFfe8pegYA+b423SRyA==} @@ -9836,8 +9670,8 @@ packages: engines: {node: '>=0.12.18'} hasBin: true - electron-to-chromium@1.5.396: - resolution: {integrity: sha512-yHiw2Y3C3H9U6TMbOfoWK/BPreiOPXRfTWPBwQBoZG6/8TB6eOPnsy5oaRYuatR7Fw2SJ4kKforgufeo7fq0EQ==} + electron-to-chromium@1.5.340: + resolution: {integrity: sha512-908qahOGocRMinT2nM3ajCEM99H4iPdv84eagPP3FfZy/1ZGeOy2CZYzjhms81ckOPCXPlW7LkY4XpxD8r1DrA==} elegant-spinner@1.0.1: resolution: {integrity: sha512-B+ZM+RXvRqQaAmkMlO/oSe5nMUOaUnyfGYCEHoR8wrXsZR2mA0XVibsxV1bvTwxdRWah1PkQqso2EzhILGHtEQ==} @@ -9903,10 +9737,6 @@ packages: resolution: {integrity: sha512-Qohcme7V1inbAfvjItgw0EaxVX5q2rdVEZHRBrEQdRZTssLDGsL8Lwrznl8oQ/6kuTJONLaDcGjkNP247XEhcA==} engines: {node: '>=10.13.0'} - enhanced-resolve@5.24.3: - resolution: {integrity: sha512-PwKooW9JUzh5chmYfHM3IQl5OkK2u2Nm011MgeZrss3JmFraUx/fqrf78kk8GUMYoibx/14MdwTl/1WKkG7TpQ==} - engines: {node: '>=10.13.0'} - enquirer@2.3.6: resolution: {integrity: sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==} engines: {node: '>=8.6'} @@ -9993,9 +9823,6 @@ packages: es-module-lexer@2.0.0: resolution: {integrity: sha512-5POEcUuZybH7IdmGsD8wlf0AI55wMecM9rVBTI/qEAy2c1kTOm3DjFYjrBdI2K3BaJjJYfYFeRtM0t9ssnRuxw==} - es-module-lexer@2.3.1: - resolution: {integrity: sha512-shc1dbU90Yl/xq1QrC7QRtfcwURZuVRfPhZbDoldJ1cn1gzDvBaBWlv0eFolj5+0znnPJz5TXLxsN77X/12KTA==} - es-object-atoms@1.1.1: resolution: {integrity: sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==} engines: {node: '>= 0.4'} @@ -10638,8 +10465,8 @@ packages: resolution: {integrity: sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==} hasBin: true - flatted@3.4.3: - resolution: {integrity: sha512-/zipXxyO6rGvuNGDiULY9MvEGSkb2gaG4GGH4ygMi0ZZzyMHdUZBmntJmx5x1G2VuPytCwGN4xsJP6cw+sK+vQ==} + flatted@3.4.2: + resolution: {integrity: sha512-PjDse7RzhcPkIJwy5t7KPWQSZ9cAbzQXcafsetQoD7sOJRQlGikNbx7yZp2OotDnJyrDcbyRq3Ttb18iYOqkxA==} fn.name@1.1.0: resolution: {integrity: sha512-GRnmB5gPyJpAhTQdSZTSp9uaPSvl09KoYcMQtsB9rQoOmzs9dH6ffeccH+Z+cv6P68Hu5bC6JjRh4Ah/mHSNRw==} @@ -11477,8 +11304,8 @@ packages: resolution: {integrity: sha512-s6tfsaQaQi3JNciBH6shVqEDvhGut0SUXr31ag8Pd8BBbVVlcGfWhpPmEOoM6RJ5TFhbypvf5yyRw/VXW1IiWg==} hasBin: true - is-core-module@2.16.2: - resolution: {integrity: sha512-evOr8xfXKxE6qSR0hSXL2r3sd7ALj8+7jQEUvPYcm5sgZFdJ+AYzT6yNmJenvIYQBgIGwfwz08sL8zoL7yq2BA==} + is-core-module@2.16.1: + resolution: {integrity: sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==} engines: {node: '>= 0.4'} is-data-view@1.0.2: @@ -12414,11 +12241,6 @@ packages: engines: {node: '>=18'} hasBin: true - less@4.8.0: - resolution: {integrity: sha512-7Y7DJBMbsW29UGjOG6NGvxQEx71AaDcrryBwYCMaFwn0kj8FkSueKN9r9WexVOetKEhXh38kL++WJncfkEpS+g==} - engines: {node: '>=18'} - hasBin: true - leven@3.1.0: resolution: {integrity: sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==} engines: {node: '>=6'} @@ -12568,10 +12390,6 @@ packages: resolution: {integrity: sha512-IWqP2SCPhyVFTBtRcgMHdzlf9ul25NwaFx4wCEH/KjAXuuHY4yNjvPXsBokp8jCB936PyWRaPKUNh8NvylLp2Q==} engines: {node: '>=6.11.5'} - loader-runner@4.3.2: - resolution: {integrity: sha512-DFEqQ3ihfS9blba08cLfYf1NRAIEm+dDjic073DRDc3/JspI/8wYmtDsHwd3+4hwvdxSK7PGaElfTmm0awWJ4w==} - engines: {node: '>=6.11.5'} - loader-utils@1.4.2: resolution: {integrity: sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==} engines: {node: '>=4.0.0'} @@ -13136,16 +12954,9 @@ packages: resolution: {integrity: sha512-P0efT1C9jIdVRefqjzOQ9Xml57zpOXnIuS+csaB4MdZbTdmGDLo8XhzBG1N7aO11gKDDkJvBLULeFTo46wwreA==} hasBin: true - msgpackr-extract@3.0.4: - resolution: {integrity: sha512-4kmO/MdyUIkLIvTPr8VHLil4AtoKIoniWPIEk5+CDy0xnWC84azhSFmuJ7PxZdsYtiP5kEeQsORAVIeMgxT+Hw==} - hasBin: true - msgpackr@1.11.10: resolution: {integrity: sha512-iCZNq+HszvF+fC3anCm4nBmWEnbeIAfpDs6IStAEKhQ2YSgkjzVG2FF9XJqwwQh5bH3N9OUTUt4QwVN6MLMLtA==} - msgpackr@1.12.1: - resolution: {integrity: sha512-4EUH9tQHnMmEgzW/MdAP0KIfa1T9AF+htl0ffe2n5vb2EKn9y2co8ccpgWko6S52Jy1PQZKwRnx5/KkYjtd9MQ==} - muggle-string@0.4.1: resolution: {integrity: sha512-VNTrAak/KhO2i8dqqnqnAHOa3cYBwXEZe9h+D5h/1ZqFSTEFHdM65lR7RoIqq3tBBYavsOXV84NoHXZ0AkPyqQ==} @@ -13174,6 +12985,11 @@ packages: resolution: {integrity: sha512-BzQguy9W9NJgoVn2mRWzbFrFWWztGCcng2QI9+41frfk+Athwgx3qhqhvStz7ExeUUu7Kzw427sNzHpEZNINog==} engines: {node: '>=16.0.0'} + nanoid@3.3.12: + resolution: {integrity: sha512-ZB9RH/39qpq5Vu6Y+NmUaFhQR6pp+M2Xt76XBnEwDaGcVAqhlvxrl3B2bKS5D3NH3QR76v3aSrKaF/Kiy7lEtQ==} + engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} + hasBin: true + nanoid@3.3.16: resolution: {integrity: sha512-bzlKTyNJ7+LdGIIwy8ijFpIqEQIvafahV7eYykJ8Cvh42EdJeODoJ6gUJXpQJvej1BddH8OqTXZNE/KfbWAu8Q==} engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} @@ -13195,11 +13011,6 @@ packages: resolution: {integrity: sha512-p2cfF+B3XXacQdswUYWZ0w6Vld0832A/tuqjLBu3H1sfUcby4N2oVbGhyuCkZv+t3iY3aiFEj7gZGqax9Q2c1w==} engines: {node: '>= 0.4.0'} - needle@2.9.1: - resolution: {integrity: sha512-6R9fqJ5Zcmf+uYaFgdIHmLwNldn5HbK8L5ybn7Uz+ylX/rnOsSp1AHcvQSrCaFN+qNM1wpymHqD7mVasEOlHGQ==} - engines: {node: '>= 4.4.x'} - hasBin: true - needle@3.5.0: resolution: {integrity: sha512-jaQyPKKk2YokHrEg+vFDYxXIHTCBgiZwSHOoVx/8V3GIBS8/VN6NdVRmg8q1ERtPkMvmOvebsgga4sAj5hls/w==} engines: {node: '>= 4.4.x'} @@ -13304,9 +13115,8 @@ packages: node-notifier@9.0.1: resolution: {integrity: sha512-fPNFIp2hF/Dq7qLDzSg4vZ0J4e9v60gJR+Qx7RbjbWqzPDdEqeVpEx5CFeDAELIl+A/woaaNn1fQ5nEVerMxJg==} - node-releases@2.0.51: - resolution: {integrity: sha512-wRNIrw4DmVLKQlbgOMdkMx27Wrpzes2hh5Jtbi2bjPd+4wJstWIqP5A+lscnqbm0xxmT5Bpg8Lec5ItEBwx6BQ==} - engines: {node: '>=18'} + node-releases@2.0.37: + resolution: {integrity: sha512-1h5gKZCF+pO/o3Iqt5Jp7wc9rH3eJJ0+nh/CIoiRwjRxde/hAHyLPXYN4V3CqKAbiZPSeJFSWHmJsbkicta0Eg==} node-source-walk@6.0.2: resolution: {integrity: sha512-jn9vOIK/nfqoFCcpK89/VCVaLg1IHE6UVfDOzvqmANaJ/rWCTEdH8RZ1V278nv2jr36BJdyQXIAavBLXpzdlag==} @@ -13396,8 +13206,8 @@ packages: nullthrows@1.1.1: resolution: {integrity: sha512-2vPPEi+Z7WqML2jZYddDIfy5Dqb0r2fze2zTxNNknZaFpVHU3mFB3R+DWeJWGVx0ecvttSGlJTI+WG+8Z4cDWw==} - nwsapi@2.2.24: - resolution: {integrity: sha512-7YRhZ3jS45LwmSCT4b2sVFHt/WuovaktDU07QrtOBY2PXskss5a9jfmR9jptyumwXST+rFjrmppMY1KT/yn35A==} + nwsapi@2.2.23: + resolution: {integrity: sha512-7wfH4sLbt4M0gCDzGE6vzQBo0bfTKjU7Sfpqy/7gs1qBfYz2vEJH6vXcBKpO3+6Yu1telwd0t9HpyOoLEQQbIQ==} nx@23.0.1: resolution: {integrity: sha512-HnK0Ke8FcPeVQffYm1oyzkLNn7khrI8SeDeC3iyLhw/UEMCB24hjI5JSs6Amlyeb0/GaeiuQuts8NkQKd/NpGA==} @@ -13774,10 +13584,6 @@ packages: resolution: {integrity: sha512-QP88BAKvMam/3NxH6vj2o21R6MjxZUAd6nlwAS/pnGvN9IVLocLHxGYIzFhg6fUQ+5th6P4dv4eW9jX3DSIj7A==} engines: {node: '>=12'} - picomatch@4.0.5: - resolution: {integrity: sha512-RvwwcruNjI1ncT5xRakeyS9Lf8lcItv34KD+aif+VH9kduAyfYBipGh12274xtenIPZ119/R9BdTBa8gAwSh0A==} - engines: {node: '>=12'} - pidtree@0.5.0: resolution: {integrity: sha512-9nxspIM7OpZuhBxPg73Zvyq7j1QMPMPsGKTqRc2XOaFQauDvoNz9fM1Wdkjmeo7l9GXOZiRs97sPkuayl39wjA==} engines: {node: '>=0.10'} @@ -13824,10 +13630,6 @@ packages: resolution: {integrity: sha512-DszUCKeVN/5G5QKo6jAVHL8fmKnkJvQ0ACiVgY7YGCq3TUB2oznAOayvZPIAdEThvhczkXR+qm3IHsNXpFCYfA==} engines: {node: '>=20.x'} - piscina@5.3.0: - resolution: {integrity: sha512-9D3tPBayfoal6l9l4Y8NrMn1jkV718qJoYrla6P51+hh9h0Q+9/1c8KgEnoBQqhguyfgjay4biADI8HJG3pkoA==} - engines: {node: '>=20.x'} - pkce-challenge@5.0.1: resolution: {integrity: sha512-wQ0b/W4Fr01qtpHlqSqspcj3EhBvimsdh0KlHhH8HRZnMsEa0ea2fTULOXOS9ccQr3om+GcGRk4e+isrZWV8qQ==} engines: {node: '>=16.20.0'} @@ -13971,8 +13773,8 @@ packages: peerDependencies: postcss: ^8.5.23 - postcss@8.5.23: - resolution: {integrity: sha512-g50586zr4bZmwFiTlflMu8E0bDTb5I5gertgwAKmsdUlTQIhZtunzUlD1WSzwcVWPoAVpsrA6vlfCD7oXvRwgg==} + postcss@8.5.25: + resolution: {integrity: sha512-DTPx3RWSSnWyzLxQnlH0rJP+EW5ekl16ZU4/psbIhA0e53kJfdgaN5vKM+xP7yJtXVu+nfdVFmlgFDEKAe4Pyw==} engines: {node: ^10 || ^12 || >=14} powershell-utils@0.1.0: @@ -14033,9 +13835,6 @@ packages: resolution: {integrity: sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg==} engines: {node: '>= 0.6'} - probe-image-size@7.3.0: - resolution: {integrity: sha512-7CaDeBwiAbh6ohXsvLbAZhO7wzsZAmaevfxe39qvCwRh8LyaZfDlBGGLU1CCTgrTLtCOdwBBhjOrIHaIIimHfQ==} - proc-log@5.0.0: resolution: {integrity: sha512-Azwzvl90HaF0aCz1JrDdXQykFakSSNPaPoiZ9fm5qJIMHioDZEi7OAdRwSm6rSoPtY3Qutnm3L7ogmg3dc+wbQ==} engines: {node: ^18.17.0 || >=20.5.0} @@ -14125,6 +13924,7 @@ packages: engines: {node: '>=0.6.0', teleport: '>=0.2.0'} deprecated: |- You or someone you depend on is using Q, the JavaScript Promise library that gave JavaScript developers strong feelings about promises. They can almost certainly migrate to the native JavaScript promise now. Thank you literally everyone for joining me in this bet against the odds. Be excellent to each other. + (For a CapTP with native promises, see @endo/eventual-send and @endo/captp) qified@0.9.1: @@ -14143,10 +13943,6 @@ packages: resolution: {integrity: sha512-Rzq0KEyX/w/tEybncDgdkZrJgVUsUMk3xjh3t5bv3S1HTAtg+uOYt72+ZfwiQwKdysThkTBdL/rTi6HDmX9Ddw==} engines: {node: '>=0.6'} - qs@6.15.3: - resolution: {integrity: sha512-O9gl3zCl5h5blw1KGUzQKhA5oUXSl8rwUIM5o0S3nCXMliSvy5Dzx7/DJcI+SwgICv+IneSZwhBh1oSyEHA71A==} - engines: {node: '>=0.6'} - querystring-es3@0.2.1: resolution: {integrity: sha512-773xhDQnZBMFobEiztv8LIl70ch5MSF/jUQVlhwFyBILqq96anmoctVIYz+ZRp0qbCKATTn6ev02M3r7Ga5vqA==} engines: {node: '>=0.4.x'} @@ -14190,10 +13986,6 @@ packages: resolution: {integrity: sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==} engines: {node: '>= 0.6'} - range-parser@1.3.0: - resolution: {integrity: sha512-hek2mFQpPuI4E1BBKrSto+BU3e3x4xuarsbiwr3+lf7p44juvFMV0XFWQAP3xUyqXA4RrXLIoaSUGbSt056ZMw==} - engines: {node: '>= 0.6'} - raw-body@2.5.3: resolution: {integrity: sha512-s4VSOf6yN0rvbRZGxs8Om5CWj6seneMwK3oDb4lWDH0UPhWcxwOWw5+qk24bxq87szX1ydrwylIOp2uG1ojUpA==} engines: {node: '>= 0.8'} @@ -14821,8 +14613,8 @@ packages: engines: {node: '>=14.0.0'} hasBin: true - sax@1.6.1: - resolution: {integrity: sha512-42tBVwLWnaQvW5zc4HbZrTuWccECCZfBi92FDuwtqxasH+JbPB3/FOKb1m222K42R4WxuxzzMsTswfzgtSu64Q==} + sax@1.6.0: + resolution: {integrity: sha512-6R3J5M4AcbtLUdZmRv2SygeVaM7IhrLXu9BmnOGmmACak8fiUtOsYNWUS4uK7upbmHIBbLBeFeI//477BKLBzA==} engines: {node: '>=11.0.0'} saxes@5.0.1: @@ -14998,10 +14790,6 @@ packages: resolution: {integrity: sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==} engines: {node: '>= 0.4'} - side-channel@1.1.1: - resolution: {integrity: sha512-6x6dK6zJdpTzF4sQeNYxwtvBzf6Eg4GtlesS94HOvTudUeyK2WXAaIfmDgsyslYrRBeFIlsi54AYsFGUuhmvrQ==} - engines: {node: '>= 0.4'} - signal-exit@3.0.7: resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==} @@ -15057,11 +14845,11 @@ packages: resolution: {integrity: sha512-dWUG8F5sIIARXih1DTaQAX4SsiTXhInKf1buxdY9DIg4ZYPZK5nGM1VRIYmEbDbsHt7USo99xSLFu5Q1IqTmsg==} engines: {node: '>= 18'} - socket.io-adapter@2.5.8: - resolution: {integrity: sha512-6Oy52pbg+kvdCVvjcN+FnY7BvxZ7cIHNScbvztT/It5d0vbwoJoVZmF2gjJmnV0/4WlXRfG15zc45ySk9Ah8bw==} + socket.io-adapter@2.5.6: + resolution: {integrity: sha512-DkkO/dz7MGln0dHn5bmN3pPy+JmywNICWrJqVWiVOyvXjWQFIv9c2h24JrQLLFJ2aQVQf/Cvl1vblnd4r2apLQ==} - socket.io-parser@4.2.7: - resolution: {integrity: sha512-IH/iSeO9T6gz1KkFleGDWkG9N3dl4jXVYUtMhIqH10Md0ttMer8nUNWiP1DKuNrybD2xBrixLJdCC9J6ECoYkg==} + socket.io-parser@4.2.6: + resolution: {integrity: sha512-asJqbVBDsBCJx0pTqw3WfesSY0iRX+2xzWEWzrpcH7L6fLzrhyF8WPI8UaeM4YCuDfpwA/cgsdugMsmtz8EJeg==} engines: {node: '>=10.0.0'} socket.io@4.8.3: @@ -15215,9 +15003,6 @@ packages: stream-http@3.2.0: resolution: {integrity: sha512-Oq1bLqisTyK3TSCXpPbT4sdeYNdmyZJv1LxpEm2vu1ZhK89kSE5YXwZc3cWk0MagGaKriBh9mCFbVGtO+vY29A==} - stream-parser@0.3.1: - resolution: {integrity: sha512-bJ/HgKq41nlKvlhccD5kaCr/P+Hu0wPNKPJOH7en+YrJu/9EgqUF+88w5Jb6KNcjOFMhfX4B2asfeAtIGuHObQ==} - stream-splicer@2.0.1: resolution: {integrity: sha512-Xizh4/NPuYSyAXyT7g8IvdJ9HJpxIGL9PjyhtywCZvvP0OPIdqyrr4dMikeuvY8xahpdKEBlBTySe583totajg==} @@ -15502,18 +15287,9 @@ packages: systemjs-builder@0.16.15: resolution: {integrity: sha512-C18G//KWWwQpstAVBUDt0YbbqvSFVVtr0MFqtf2zB4U/cePOA00Btcja++mzlFLMnepVpDv0GdtfE/6A8lrxeA==} - systemjs-plugin-babel@0.0.25: - resolution: {integrity: sha512-RMKSizWWlw4+IpDB385ugxn7Owd9W+HEtjYDQ6yO1FpsnER/vk6FbXRweUF+mvRi6EHgk8vDdUdtui7ReDwX3w==} - - systemjs-plugin-css@0.1.37: - resolution: {integrity: sha512-wCGG62zYXuOlNji5FlBjeMFAnLeAO/HQmFg+8UBX/mlHoAKLHlGFYRstlhGKibRU2oxk/BH9DaihOuhhNLi7Kg==} - systemjs-plugin-json@0.3.0: resolution: {integrity: sha512-GPHZgc6bGIDIQsoNAkhthddApy4ErFhy30rMBrEepkoDidhs0JeSk821htUOSrtqJjnUPBf2gge325B5GfsW0w==} - systemjs-plugin-text@0.0.11: - resolution: {integrity: sha512-buWE27P6iM3WZYXcsiy6+fiulQ/x+Puux4ni5ejTlcUgqUg3/sUvoAUZ4GGPACC0acjxmnaCt3kHb0+uNs1ekw==} - systemjs@0.19.41: resolution: {integrity: sha512-8E9CmZ01dIr52po2LNhc3QuKyeSTyvQfshHMi3lekSbEOdR9OAUOX2X+wPKunZX3CpudM6w3r8eTCjGQrK79Wg==} @@ -15528,10 +15304,6 @@ packages: resolution: {integrity: sha512-1MOpMXuhGzGL5TTCZFItxCc0AARf1EZFQkGqMm7ERKj8+Hgr5oLvJOVFcC+lRmR8hCe2S3jC4T5D7Vg/d7/fhA==} engines: {node: '>=6'} - tapable@2.3.3: - resolution: {integrity: sha512-uxc/zpqFg6x7C8vOE7lh6Lbda8eEL9zmVm/PLeTPBRhh1xCgdWaQ+J1CUieGpIfm2HdtsUpRv+HshiasBMcc6A==} - engines: {node: '>=6'} - tar-fs@3.1.2: resolution: {integrity: sha512-QGxxTxxyleAdyM3kpFs14ymbYmNFrfY+pHj7Z8FgtbZ7w2//VAgLMac7sT6nRpIHjppXO2AwwEOg0bPFVRcmXw==} @@ -15542,8 +15314,8 @@ packages: tar-stream@3.1.8: resolution: {integrity: sha512-U6QpVRyCGHva435KoNWy9PRoi2IFYCgtEhq9nmrPPpbRacPs9IH4aJ3gbrFC8dPcXvdSZ4XXfXT5Fshbp2MtlQ==} - tar@7.5.21: - resolution: {integrity: sha512-XdhtCvlMywwxpCW8YEq3lOXBJpUPTR2OHHcwLPO3HwsJqOHa2Ok/oJ7ruGzp+JrKoRPVCzJwAdEjqLW/vNRPHA==} + tar@7.5.22: + resolution: {integrity: sha512-MFO/QzvtAOmJbkhOaCTvbGcFN9L9b+JunIsDwaKljSOdcLMea3NJ1k9Usz/rjdfSXTq4dfzfeS7W4p4YOAAHeA==} engines: {node: '>=18'} teex@1.0.1: @@ -15584,8 +15356,8 @@ packages: engines: {node: '>=10'} hasBin: true - terser@5.49.0: - resolution: {integrity: sha512-SNiDnXyHSrxVcIOtVbULzcTmniUiwcV7Nwdyj1twVubeTmbjoa8p69KKDpfkdoOavuM4/GRm1+ykI8qqnavHoA==} + terser@5.47.1: + resolution: {integrity: sha512-tPbLXTI6ohPASb/1YViL428oEHu6/qv1OxqYnfaonVCFHqx4+wCd95pHrQWsL5X4pl90CTyW9piSAsS2L0VoMw==} engines: {node: '>=10'} hasBin: true @@ -15940,6 +15712,10 @@ packages: resolution: {integrity: sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==} engines: {node: '>= 0.6'} + type-is@2.0.1: + resolution: {integrity: sha512-OZs6gsjF4vMp32qrCbiVSkrFmXtG/AZhY3t0iAMrMBiAZyV9oALtXO8hsrHbMXF9x6L3grlFuwW2oAz7cav+Gw==} + engines: {node: '>= 0.6'} + type-is@2.1.0: resolution: {integrity: sha512-faYHw0anBbc/kWF3zFTEnxSFOAGUX9GFbOBthvDdLsIlEoWOFOtS0zgCiQYwIskL9iGXZL3kAXD8OoZ4GmMATA==} engines: {node: '>= 18'} @@ -16014,11 +15790,11 @@ packages: undici-types@6.21.0: resolution: {integrity: sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==} - undici-types@8.3.0: - resolution: {integrity: sha512-j375ScV60dom+YkPFIfTLcOiPxkN/buHz5GobjLhixFuANaNs3C9l4GmrWqejgXWJ7BbJcFYpTEUkS1Ge8bpZQ==} + undici-types@7.24.6: + resolution: {integrity: sha512-WRNW+sJgj5OBN4/0JpHFqtqzhpbnV0GuB+OozA9gCL7a993SmU+1JBZCzLNxYsbMfIeDL+lTsphD5jN5N+n0zg==} - undici@7.29.0: - resolution: {integrity: sha512-IDxfleLmmbSskfWSUATiN1nfn2rDuvnMOqb5CWR92iIfojA0Ud+ulOAAEQ57LPr9rWmsreUyf5lwyao+7GNNVw==} + undici@7.28.0: + resolution: {integrity: sha512-cRZYrTDwWznlnRiPjggAGxZXanty6M8RV1ff8Wm4LWXBp7/IG8v5DnOm74DtUBp9OONpK75YlPnIjQqX0dBDtA==} engines: {node: '>=20.18.1'} unicode-canonical-property-names-ecmascript@2.0.1: @@ -16250,46 +16026,6 @@ packages: yaml: optional: true - vite@7.3.6: - resolution: {integrity: sha512-4XP60spRGjSZFf1qYH+dJIkK2znL3zQfl9KkOV9MkkRR/3Dls0dxaBsQPTloEc5BLXWPL9vsOxopxyKoMmDueg==} - engines: {node: ^20.19.0 || >=22.12.0} - hasBin: true - peerDependencies: - '@types/node': ^20.19.0 || >=22.12.0 - jiti: '>=1.21.0' - less: ^4.0.0 - lightningcss: ^1.21.0 - sass: ^1.70.0 - sass-embedded: ^1.70.0 - stylus: '>=0.54.8' - sugarss: ^5.0.0 - terser: ^5.16.0 - tsx: ^4.8.1 - yaml: ^2.8.3 - peerDependenciesMeta: - '@types/node': - optional: true - jiti: - optional: true - less: - optional: true - lightningcss: - optional: true - sass: - optional: true - sass-embedded: - optional: true - stylus: - optional: true - sugarss: - optional: true - terser: - optional: true - tsx: - optional: true - yaml: - optional: true - vite@8.0.16: resolution: {integrity: sha512-h9bXPmJichP5fLmVQo3PyaGSDE2n3aPuomeAlVRm0JLmt4rY6zmPKd59HYI4LNW8oTK7tlTsuC7l/m7awx9Jcw==} engines: {node: ^20.19.0 || >=22.12.0} @@ -16414,10 +16150,6 @@ packages: resolution: {integrity: sha512-Zn5uXdcFNIA1+1Ei5McRd+iRzfhENPCe7LeABkJtNulSxjma+l7ltNx55BWZkRlwRnpOgHqxnjyaDgJnNXnqzg==} engines: {node: '>=10.13.0'} - watchpack@2.5.2: - resolution: {integrity: sha512-6i/00NBjP4yGPs+caKSyRfpTF/8Torsu0MOW3mMzIbhgISFder8i7xbqgHlLMwJrdiN8ndBV3UA1/AfzPSr+jg==} - engines: {node: '>=10.13.0'} - wbuf@1.7.3: resolution: {integrity: sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA==} @@ -16548,10 +16280,6 @@ packages: resolution: {integrity: sha512-7tP1PdV4vF+lYPnkMR0jMY5/la2ub5Fc/8VQrrU+lXkiM6C4TjVfGw7iKfyhnTQOsD+6Q/iKw0eFciziRgD58Q==} engines: {node: '>=10.13.0'} - webpack-sources@3.5.1: - resolution: {integrity: sha512-jyuiGJdtvY434z5bUZrjz67v76/ePNvFZTp9Mdz29IlH4+GPsgyGjiv0fKI+M7BdkU6ADjulUcKAd3tUK3WlEw==} - engines: {node: '>=10.13.0'} - webpack-stream@7.0.0: resolution: {integrity: sha512-XoAQTHyCaYMo6TS7Atv1HYhtmBgKiVLONJbzLBl2V3eibXQ2IT/MCRM841RW/r3vToKD5ivrTJFWgd/ghoxoRg==} engines: {node: '>= 10.0.0'} @@ -16752,18 +16480,6 @@ packages: utf-8-validate: optional: true - ws@8.21.1: - resolution: {integrity: sha512-+0NTnW77fFN/DjQi6k/Sq/Yvk4Sgajw7urW8V+asjXnRgDs9gyGkdb7EzgfhA4goXsRIZKE28fzIXBHEzhuiWw==} - engines: {node: '>=10.0.0'} - peerDependencies: - bufferutil: ^4.0.1 - utf-8-validate: '>=5.0.2' - peerDependenciesMeta: - bufferutil: - optional: true - utf-8-validate: - optional: true - wsl-utils@0.1.0: resolution: {integrity: sha512-h3Fbisa2nKGPxCpm89Hk33lBLsnaGBvctQopaBSOW/uIs6FTe1ATyAnKFJrzVs9vpGdsTe73WF3V4lIsk4Gacw==} engines: {node: '>=18'} @@ -16835,10 +16551,6 @@ packages: resolution: {integrity: sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==} engines: {node: '>=10'} - yargs@16.2.2: - resolution: {integrity: sha512-Nt9ZJjXTv5R8MHbqby/wXQ6Gi0Bb3TcYZkR1bzuL4yB2OxWPkXknz513gEF0GoA6tn00UpbPvERW8rzCuWCA6w==} - engines: {node: '>=10'} - yargs@17.7.2: resolution: {integrity: sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==} engines: {node: '>=12'} @@ -17081,13 +16793,13 @@ snapshots: '@jridgewell/gen-mapping': 0.3.13 '@jridgewell/trace-mapping': 0.3.31 - '@analogjs/vite-plugin-angular@1.22.5(@angular-devkit/build-angular@20.3.24(0cd51b99b5dfb814a8dbe8f5e89d9086))(@angular/build@20.3.24(0a555739555ef0e9d469b245b0a858c0))': + '@analogjs/vite-plugin-angular@1.22.5(@angular-devkit/build-angular@20.3.24(af5c29b672a0472d9db264df7fa63c43))(@angular/build@20.3.24(189a507a67cbb35869a1d74e23dc2880))': dependencies: ts-morph: 21.0.1 vfile: 6.0.3 optionalDependencies: - '@angular-devkit/build-angular': 20.3.24(0cd51b99b5dfb814a8dbe8f5e89d9086) - '@angular/build': 20.3.24(0a555739555ef0e9d469b245b0a858c0) + '@angular-devkit/build-angular': 20.3.24(af5c29b672a0472d9db264df7fa63c43) + '@angular/build': 20.3.24(189a507a67cbb35869a1d74e23dc2880) '@angular-devkit/architect@0.2003.24(chokidar@4.0.3)': dependencies: @@ -17103,13 +16815,13 @@ snapshots: transitivePeerDependencies: - chokidar - '@angular-devkit/build-angular@20.3.24(0cd51b99b5dfb814a8dbe8f5e89d9086)': + '@angular-devkit/build-angular@20.3.24(431b9a173f4030f6c919fbeca6cf3425)': dependencies: '@ampproject/remapping': 2.3.0 '@angular-devkit/architect': 0.2003.24(chokidar@4.0.3) '@angular-devkit/build-webpack': 0.2003.24(chokidar@4.0.3)(webpack-dev-server@5.2.6(tslib@2.8.1)(webpack@5.105.0(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1)))(webpack@5.105.0(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1)) '@angular-devkit/core': 20.3.24(chokidar@4.0.3) - '@angular/build': 20.3.24(b561e6a4c75392bf8d46a125a87a1515) + '@angular/build': 20.3.24(f23bc824dbb94ec7003bc8147115e668) '@angular/compiler-cli': 20.3.25(@angular/compiler@20.3.25)(typescript@5.8.3) '@babel/core': 7.29.7 '@babel/generator': 7.28.3 @@ -17123,9 +16835,9 @@ snapshots: '@discoveryjs/json-ext': 0.6.3 '@ngtools/webpack': 20.3.24(@angular/compiler-cli@20.3.25(@angular/compiler@20.3.25)(typescript@5.8.3))(typescript@5.8.3)(webpack@5.105.0(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1)) ansi-colors: 4.1.3 - autoprefixer: 10.4.21(postcss@8.5.23) + autoprefixer: 10.4.21(postcss@8.5.25) babel-loader: 10.0.0(@babel/core@7.29.7)(webpack@5.105.0(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1)) - browserslist: 4.28.7 + browserslist: 4.28.2 copy-webpack-plugin: 14.0.0(webpack@5.105.0(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1)) css-loader: 7.1.2(webpack@5.105.0(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1)) esbuild-wasm: 0.28.0 @@ -17142,9 +16854,9 @@ snapshots: open: 10.2.0 ora: 8.2.0 picomatch: 4.0.4 - piscina: 5.3.0 - postcss: 8.5.23 - postcss-loader: 8.1.1(postcss@8.5.23)(typescript@5.8.3)(webpack@5.105.0(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1)) + piscina: 5.2.0 + postcss: 8.5.25 + postcss-loader: 8.1.1(postcss@8.5.25)(typescript@5.8.3)(webpack@5.105.0(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1)) resolve-url-loader: 5.0.0 rxjs: 7.8.2 sass: 1.90.0 @@ -17160,13 +16872,13 @@ snapshots: webpack-dev-middleware: 7.4.2(tslib@2.8.1)(webpack@5.105.0(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1)) webpack-dev-server: 5.2.6(tslib@2.8.1)(webpack@5.105.0(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1)) webpack-merge: 6.0.1 - webpack-subresource-integrity: 5.1.0(html-webpack-plugin@5.6.7(webpack@5.106.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1)))(webpack@5.105.0(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1)) + webpack-subresource-integrity: 5.1.0(html-webpack-plugin@5.6.7(webpack@5.105.0(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1)))(webpack@5.105.0(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1)) optionalDependencies: '@angular/core': 20.3.25(@angular/compiler@20.3.25)(rxjs@7.8.2)(zone.js@0.15.1) '@angular/platform-browser': 20.3.25(@angular/common@20.3.25(@angular/core@20.3.25(@angular/compiler@20.3.25)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@20.3.25(@angular/compiler@20.3.25)(rxjs@7.8.2)(zone.js@0.15.1)) '@angular/platform-server': 20.3.25(@angular/common@20.3.25(@angular/core@20.3.25(@angular/compiler@20.3.25)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/compiler@20.3.25)(@angular/core@20.3.25(@angular/compiler@20.3.25)(rxjs@7.8.2)(zone.js@0.15.1))(@angular/platform-browser@20.3.25(@angular/common@20.3.25(@angular/core@20.3.25(@angular/compiler@20.3.25)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@20.3.25(@angular/compiler@20.3.25)(rxjs@7.8.2)(zone.js@0.15.1)))(rxjs@7.8.2) esbuild: 0.28.1 - jest: 30.2.0(@types/node@26.1.1)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(typescript@5.9.3)) + jest: 30.2.0(@types/node@20.11.17)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.11.17)(typescript@5.8.3)) jest-environment-jsdom: 29.7.0 karma: 6.4.4 ng-packagr: 20.3.2(@angular/compiler-cli@20.3.25(@angular/compiler@20.3.25)(typescript@5.8.3))(tslib@2.8.1)(typescript@5.8.3) @@ -17192,13 +16904,13 @@ snapshots: - webpack-cli - yaml - '@angular-devkit/build-angular@20.3.24(431b9a173f4030f6c919fbeca6cf3425)': + '@angular-devkit/build-angular@20.3.24(af5c29b672a0472d9db264df7fa63c43)': dependencies: '@ampproject/remapping': 2.3.0 '@angular-devkit/architect': 0.2003.24(chokidar@4.0.3) '@angular-devkit/build-webpack': 0.2003.24(chokidar@4.0.3)(webpack-dev-server@5.2.6(tslib@2.8.1)(webpack@5.105.0(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1)))(webpack@5.105.0(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1)) '@angular-devkit/core': 20.3.24(chokidar@4.0.3) - '@angular/build': 20.3.24(f99ed7544232c0330ff23639559ebe5d) + '@angular/build': 20.3.24(d61f035f5876888e3dfbb3b876512fd7) '@angular/compiler-cli': 20.3.25(@angular/compiler@20.3.25)(typescript@5.8.3) '@babel/core': 7.29.7 '@babel/generator': 7.28.3 @@ -17212,9 +16924,9 @@ snapshots: '@discoveryjs/json-ext': 0.6.3 '@ngtools/webpack': 20.3.24(@angular/compiler-cli@20.3.25(@angular/compiler@20.3.25)(typescript@5.8.3))(typescript@5.8.3)(webpack@5.105.0(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1)) ansi-colors: 4.1.3 - autoprefixer: 10.4.21(postcss@8.5.23) + autoprefixer: 10.4.21(postcss@8.5.25) babel-loader: 10.0.0(@babel/core@7.29.7)(webpack@5.105.0(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1)) - browserslist: 4.28.7 + browserslist: 4.28.2 copy-webpack-plugin: 14.0.0(webpack@5.105.0(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1)) css-loader: 7.1.2(webpack@5.105.0(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1)) esbuild-wasm: 0.28.0 @@ -17231,9 +16943,9 @@ snapshots: open: 10.2.0 ora: 8.2.0 picomatch: 4.0.4 - piscina: 5.3.0 - postcss: 8.5.23 - postcss-loader: 8.1.1(postcss@8.5.23)(typescript@5.8.3)(webpack@5.105.0(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1)) + piscina: 5.2.0 + postcss: 8.5.25 + postcss-loader: 8.1.1(postcss@8.5.25)(typescript@5.8.3)(webpack@5.105.0(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1)) resolve-url-loader: 5.0.0 rxjs: 7.8.2 sass: 1.90.0 @@ -17249,13 +16961,13 @@ snapshots: webpack-dev-middleware: 7.4.2(tslib@2.8.1)(webpack@5.105.0(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1)) webpack-dev-server: 5.2.6(tslib@2.8.1)(webpack@5.105.0(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1)) webpack-merge: 6.0.1 - webpack-subresource-integrity: 5.1.0(html-webpack-plugin@5.6.7(webpack@5.105.0(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1)))(webpack@5.105.0(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1)) + webpack-subresource-integrity: 5.1.0(html-webpack-plugin@5.6.7(webpack@5.106.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1)))(webpack@5.105.0(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1)) optionalDependencies: '@angular/core': 20.3.25(@angular/compiler@20.3.25)(rxjs@7.8.2)(zone.js@0.15.1) '@angular/platform-browser': 20.3.25(@angular/common@20.3.25(@angular/core@20.3.25(@angular/compiler@20.3.25)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@20.3.25(@angular/compiler@20.3.25)(rxjs@7.8.2)(zone.js@0.15.1)) '@angular/platform-server': 20.3.25(@angular/common@20.3.25(@angular/core@20.3.25(@angular/compiler@20.3.25)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/compiler@20.3.25)(@angular/core@20.3.25(@angular/compiler@20.3.25)(rxjs@7.8.2)(zone.js@0.15.1))(@angular/platform-browser@20.3.25(@angular/common@20.3.25(@angular/core@20.3.25(@angular/compiler@20.3.25)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@20.3.25(@angular/compiler@20.3.25)(rxjs@7.8.2)(zone.js@0.15.1)))(rxjs@7.8.2) esbuild: 0.28.1 - jest: 30.2.0(@types/node@20.11.17)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.11.17)(typescript@5.8.3)) + jest: 30.2.0(@types/node@25.9.3)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(typescript@5.9.3)) jest-environment-jsdom: 29.7.0 karma: 6.4.4 ng-packagr: 20.3.2(@angular/compiler-cli@20.3.25(@angular/compiler@20.3.25)(typescript@5.8.3))(tslib@2.8.1)(typescript@5.8.3) @@ -17281,13 +16993,13 @@ snapshots: - webpack-cli - yaml - '@angular-devkit/build-angular@22.0.4(99184f0856de60c7c2bc5a20bfdb9d92)': + '@angular-devkit/build-angular@22.0.4(3a8a7e7d68263645d367c565db3ab89d)': dependencies: '@ampproject/remapping': 2.3.0 '@angular-devkit/architect': 0.2200.4(chokidar@5.0.0) '@angular-devkit/build-webpack': 0.2200.4(chokidar@5.0.0)(webpack-dev-server@5.2.6(tslib@2.8.1)(webpack@5.106.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1)))(webpack@5.106.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1)) '@angular-devkit/core': 22.0.4(chokidar@5.0.0) - '@angular/build': 22.0.4(2ab9ea28cdd8e2b42224c463192f1d91) + '@angular/build': 22.0.4(b8134ab8cbe0a564082dc8daeb739065) '@angular/compiler-cli': 22.0.2(@angular/compiler@22.0.2)(typescript@6.0.3) '@babel/core': 7.29.7 '@babel/generator': 7.29.1 @@ -17301,7 +17013,7 @@ snapshots: '@discoveryjs/json-ext': 1.1.0 '@ngtools/webpack': 22.0.4(@angular/compiler-cli@22.0.2(@angular/compiler@22.0.2)(typescript@6.0.3))(typescript@6.0.3)(webpack@5.106.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1)) ansi-colors: 4.1.3 - autoprefixer: 10.5.0(postcss@8.5.23) + autoprefixer: 10.5.0(postcss@8.5.25) babel-loader: 10.1.1(@babel/core@7.29.7)(webpack@5.106.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1)) browserslist: 4.28.2 copy-webpack-plugin: 14.0.0(webpack@5.106.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1)) @@ -17320,8 +17032,8 @@ snapshots: ora: 9.4.0 picomatch: 4.0.4 piscina: 5.2.0 - postcss: 8.5.23 - postcss-loader: 8.2.1(postcss@8.5.23)(typescript@6.0.3)(webpack@5.106.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1)) + postcss: 8.5.25 + postcss-loader: 8.2.1(postcss@8.5.25)(typescript@6.0.3)(webpack@5.106.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1)) resolve-url-loader: 5.0.0 rxjs: 7.8.2 sass: 1.99.0 @@ -17452,7 +17164,7 @@ snapshots: '@angular/core': 22.0.2(@angular/compiler@22.0.2)(rxjs@7.8.2)(zone.js@0.16.2) tslib: 2.8.1 - '@angular/build@20.3.24(0a555739555ef0e9d469b245b0a858c0)': + '@angular/build@20.3.24(189a507a67cbb35869a1d74e23dc2880)': dependencies: '@ampproject/remapping': 2.3.0 '@angular-devkit/architect': 0.2003.24(chokidar@4.0.3) @@ -17461,10 +17173,10 @@ snapshots: '@babel/core': 7.29.7 '@babel/helper-annotate-as-pure': 7.27.3 '@babel/helper-split-export-declaration': 7.24.7 - '@inquirer/confirm': 5.1.14(@types/node@26.1.1) - '@vitejs/plugin-basic-ssl': 2.1.0(vite@7.3.6(@types/node@26.1.1)(jiti@2.6.1)(less@4.8.0)(lightningcss@1.32.0)(sass-embedded@1.93.3)(sass@1.90.0)(terser@5.49.0)(yaml@2.9.0)) + '@inquirer/confirm': 5.1.14(@types/node@25.9.3) + '@vitejs/plugin-basic-ssl': 2.1.0(vite@7.3.5(@types/node@25.9.3)(jiti@2.6.1)(less@4.6.6)(lightningcss@1.32.0)(sass-embedded@1.93.3)(sass@1.90.0)(terser@5.47.1)(yaml@2.9.0)) beasties: 0.3.5 - browserslist: 4.28.7 + browserslist: 4.28.2 esbuild: 0.28.1 https-proxy-agent: 7.0.6 istanbul-lib-instrument: 6.0.3 @@ -17474,7 +17186,7 @@ snapshots: mrmime: 2.0.1 parse5-html-rewriting-stream: 8.0.0 picomatch: 4.0.4 - piscina: 5.3.0 + piscina: 5.2.0 rollup: 4.59.0 sass: 1.90.0 semver: 7.7.2 @@ -17482,17 +17194,17 @@ snapshots: tinyglobby: 0.2.14 tslib: 2.8.1 typescript: 5.8.3 - vite: 7.3.6(@types/node@26.1.1)(jiti@2.6.1)(less@4.8.0)(lightningcss@1.32.0)(sass-embedded@1.93.3)(sass@1.90.0)(terser@5.49.0)(yaml@2.9.0) + vite: 7.3.5(@types/node@25.9.3)(jiti@2.6.1)(less@4.6.6)(lightningcss@1.32.0)(sass-embedded@1.93.3)(sass@1.90.0)(terser@5.47.1)(yaml@2.9.0) watchpack: 2.4.4 optionalDependencies: '@angular/core': 20.3.25(@angular/compiler@20.3.25)(rxjs@7.8.2)(zone.js@0.15.1) '@angular/platform-browser': 20.3.25(@angular/common@20.3.25(@angular/core@20.3.25(@angular/compiler@20.3.25)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@20.3.25(@angular/compiler@20.3.25)(rxjs@7.8.2)(zone.js@0.15.1)) '@angular/platform-server': 20.3.25(@angular/common@20.3.25(@angular/core@20.3.25(@angular/compiler@20.3.25)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/compiler@20.3.25)(@angular/core@20.3.25(@angular/compiler@20.3.25)(rxjs@7.8.2)(zone.js@0.15.1))(@angular/platform-browser@20.3.25(@angular/common@20.3.25(@angular/core@20.3.25(@angular/compiler@20.3.25)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@20.3.25(@angular/compiler@20.3.25)(rxjs@7.8.2)(zone.js@0.15.1)))(rxjs@7.8.2) karma: 6.4.4 - less: 4.8.0 + less: 4.6.6 lmdb: 3.4.2 ng-packagr: 20.3.2(@angular/compiler-cli@20.3.25(@angular/compiler@20.3.25)(typescript@5.8.3))(tslib@2.8.1)(typescript@5.8.3) - postcss: 8.5.23 + postcss: 8.5.25 transitivePeerDependencies: - '@types/node' - chokidar @@ -17507,7 +17219,7 @@ snapshots: - yaml optional: true - '@angular/build@20.3.24(b561e6a4c75392bf8d46a125a87a1515)': + '@angular/build@20.3.24(d61f035f5876888e3dfbb3b876512fd7)': dependencies: '@ampproject/remapping': 2.3.0 '@angular-devkit/architect': 0.2003.24(chokidar@4.0.3) @@ -17516,10 +17228,10 @@ snapshots: '@babel/core': 7.29.7 '@babel/helper-annotate-as-pure': 7.27.3 '@babel/helper-split-export-declaration': 7.24.7 - '@inquirer/confirm': 5.1.14(@types/node@26.1.1) - '@vitejs/plugin-basic-ssl': 2.1.0(vite@7.3.6(@types/node@26.1.1)(jiti@2.6.1)(less@4.4.0)(lightningcss@1.32.0)(sass-embedded@1.93.3)(sass@1.90.0)(terser@5.43.1)(yaml@2.9.0)) + '@inquirer/confirm': 5.1.14(@types/node@25.9.3) + '@vitejs/plugin-basic-ssl': 2.1.0(vite@7.3.5(@types/node@25.9.3)(jiti@2.6.1)(less@4.4.0)(lightningcss@1.32.0)(sass-embedded@1.93.3)(sass@1.90.0)(terser@5.43.1)(yaml@2.9.0)) beasties: 0.3.5 - browserslist: 4.28.7 + browserslist: 4.28.2 esbuild: 0.28.1 https-proxy-agent: 7.0.6 istanbul-lib-instrument: 6.0.3 @@ -17529,7 +17241,7 @@ snapshots: mrmime: 2.0.1 parse5-html-rewriting-stream: 8.0.0 picomatch: 4.0.4 - piscina: 5.3.0 + piscina: 5.2.0 rollup: 4.59.0 sass: 1.90.0 semver: 7.7.2 @@ -17537,7 +17249,7 @@ snapshots: tinyglobby: 0.2.14 tslib: 2.8.1 typescript: 5.8.3 - vite: 7.3.6(@types/node@26.1.1)(jiti@2.6.1)(less@4.4.0)(lightningcss@1.32.0)(sass-embedded@1.93.3)(sass@1.90.0)(terser@5.43.1)(yaml@2.9.0) + vite: 7.3.5(@types/node@25.9.3)(jiti@2.6.1)(less@4.4.0)(lightningcss@1.32.0)(sass-embedded@1.93.3)(sass@1.90.0)(terser@5.43.1)(yaml@2.9.0) watchpack: 2.4.4 optionalDependencies: '@angular/core': 20.3.25(@angular/compiler@20.3.25)(rxjs@7.8.2)(zone.js@0.15.1) @@ -17547,7 +17259,7 @@ snapshots: less: 4.4.0 lmdb: 3.4.2 ng-packagr: 20.3.2(@angular/compiler-cli@20.3.25(@angular/compiler@20.3.25)(typescript@5.8.3))(tslib@2.8.1)(typescript@5.8.3) - postcss: 8.5.23 + postcss: 8.5.25 transitivePeerDependencies: - '@types/node' - chokidar @@ -17561,7 +17273,7 @@ snapshots: - tsx - yaml - '@angular/build@20.3.24(f99ed7544232c0330ff23639559ebe5d)': + '@angular/build@20.3.24(f23bc824dbb94ec7003bc8147115e668)': dependencies: '@ampproject/remapping': 2.3.0 '@angular-devkit/architect': 0.2003.24(chokidar@4.0.3) @@ -17571,9 +17283,9 @@ snapshots: '@babel/helper-annotate-as-pure': 7.27.3 '@babel/helper-split-export-declaration': 7.24.7 '@inquirer/confirm': 5.1.14(@types/node@20.11.17) - '@vitejs/plugin-basic-ssl': 2.1.0(vite@7.3.6(@types/node@20.11.17)(jiti@2.6.1)(less@4.4.0)(lightningcss@1.32.0)(sass-embedded@1.93.3)(sass@1.90.0)(terser@5.43.1)(yaml@2.9.0)) + '@vitejs/plugin-basic-ssl': 2.1.0(vite@7.3.5(@types/node@20.11.17)(jiti@2.6.1)(less@4.4.0)(lightningcss@1.32.0)(sass-embedded@1.93.3)(sass@1.90.0)(terser@5.43.1)(yaml@2.9.0)) beasties: 0.3.5 - browserslist: 4.28.7 + browserslist: 4.28.2 esbuild: 0.28.1 https-proxy-agent: 7.0.6 istanbul-lib-instrument: 6.0.3 @@ -17583,7 +17295,7 @@ snapshots: mrmime: 2.0.1 parse5-html-rewriting-stream: 8.0.0 picomatch: 4.0.4 - piscina: 5.3.0 + piscina: 5.2.0 rollup: 4.59.0 sass: 1.90.0 semver: 7.7.2 @@ -17591,7 +17303,7 @@ snapshots: tinyglobby: 0.2.14 tslib: 2.8.1 typescript: 5.8.3 - vite: 7.3.6(@types/node@20.11.17)(jiti@2.6.1)(less@4.4.0)(lightningcss@1.32.0)(sass-embedded@1.93.3)(sass@1.90.0)(terser@5.43.1)(yaml@2.9.0) + vite: 7.3.5(@types/node@20.11.17)(jiti@2.6.1)(less@4.4.0)(lightningcss@1.32.0)(sass-embedded@1.93.3)(sass@1.90.0)(terser@5.43.1)(yaml@2.9.0) watchpack: 2.4.4 optionalDependencies: '@angular/core': 20.3.25(@angular/compiler@20.3.25)(rxjs@7.8.2)(zone.js@0.15.1) @@ -17601,7 +17313,7 @@ snapshots: less: 4.4.0 lmdb: 3.4.2 ng-packagr: 20.3.2(@angular/compiler-cli@20.3.25(@angular/compiler@20.3.25)(typescript@5.8.3))(tslib@2.8.1)(typescript@5.8.3) - postcss: 8.5.23 + postcss: 8.5.25 transitivePeerDependencies: - '@types/node' - chokidar @@ -17615,7 +17327,7 @@ snapshots: - tsx - yaml - '@angular/build@22.0.4(2ab9ea28cdd8e2b42224c463192f1d91)': + '@angular/build@22.0.4(b8134ab8cbe0a564082dc8daeb739065)': dependencies: '@ampproject/remapping': 2.3.0 '@angular-devkit/architect': 0.2200.4(chokidar@5.0.0) @@ -17627,9 +17339,9 @@ snapshots: '@inquirer/confirm': 6.0.12(@types/node@20.19.37) '@vitejs/plugin-basic-ssl': 2.3.0(vite@7.3.5(@types/node@20.19.37)(jiti@2.6.1)(less@4.6.4)(lightningcss@1.32.0)(sass-embedded@1.93.3)(sass@1.99.0)(terser@5.46.2)(yaml@2.9.0)) beasties: 0.4.2 - browserslist: 4.28.7 + browserslist: 4.28.2 esbuild: 0.28.1 - https-proxy-agent: 9.0.0(supports-color@7.2.0) + https-proxy-agent: 9.0.0 jsonc-parser: 3.3.1 listr2: 10.2.1 magic-string: 0.30.21 @@ -17654,7 +17366,7 @@ snapshots: karma: 6.4.4 less: 4.6.4 lmdb: 3.5.4 - postcss: 8.5.23 + postcss: 8.5.25 transitivePeerDependencies: - '@types/node' - chokidar @@ -17668,14 +17380,14 @@ snapshots: - tsx - yaml - '@angular/cli@20.3.24(@types/node@20.11.17)(chokidar@4.0.3)(supports-color@7.2.0)': + '@angular/cli@20.3.24(@types/node@20.11.17)(chokidar@4.0.3)': dependencies: '@angular-devkit/architect': 0.2003.24(chokidar@4.0.3) '@angular-devkit/core': 20.3.24(chokidar@4.0.3) '@angular-devkit/schematics': 20.3.24(chokidar@4.0.3) '@inquirer/prompts': 7.8.2(@types/node@20.11.17) '@listr2/prompt-adapter-inquirer': 3.0.1(@inquirer/prompts@7.8.2(@types/node@20.11.17))(@types/node@20.11.17)(listr2@9.0.1) - '@modelcontextprotocol/sdk': 1.26.0(supports-color@7.2.0)(zod@4.1.13) + '@modelcontextprotocol/sdk': 1.26.0(zod@4.1.13) '@schematics/angular': 20.3.24(chokidar@4.0.3) '@yarnpkg/lockfile': 1.1.0 algoliasearch: 5.35.0 @@ -17683,7 +17395,7 @@ snapshots: jsonc-parser: 3.3.1 listr2: 9.0.1 npm-package-arg: 13.0.0 - pacote: 21.0.4(supports-color@7.2.0) + pacote: 21.0.4 resolve: 1.22.10 semver: 7.7.2 yargs: 18.0.0 @@ -17701,7 +17413,7 @@ snapshots: '@angular-devkit/schematics': 20.3.24(chokidar@4.0.3) '@inquirer/prompts': 7.8.2(@types/node@20.19.37) '@listr2/prompt-adapter-inquirer': 3.0.1(@inquirer/prompts@7.8.2(@types/node@20.19.37))(@types/node@20.19.37)(listr2@9.0.1) - '@modelcontextprotocol/sdk': 1.26.0(supports-color@7.2.0)(zod@4.1.13) + '@modelcontextprotocol/sdk': 1.26.0(zod@4.1.13) '@schematics/angular': 20.3.24(chokidar@4.0.3) '@yarnpkg/lockfile': 1.1.0 algoliasearch: 5.35.0 @@ -17709,7 +17421,7 @@ snapshots: jsonc-parser: 3.3.1 listr2: 9.0.1 npm-package-arg: 13.0.0 - pacote: 21.0.4(supports-color@7.2.0) + pacote: 21.0.4 resolve: 1.22.10 semver: 7.7.2 yargs: 18.0.0 @@ -17720,14 +17432,14 @@ snapshots: - chokidar - supports-color - '@angular/cli@20.3.24(@types/node@26.1.1)(chokidar@4.0.3)': + '@angular/cli@20.3.24(@types/node@25.9.3)(chokidar@4.0.3)': dependencies: '@angular-devkit/architect': 0.2003.24(chokidar@4.0.3) '@angular-devkit/core': 20.3.24(chokidar@4.0.3) '@angular-devkit/schematics': 20.3.24(chokidar@4.0.3) - '@inquirer/prompts': 7.8.2(@types/node@26.1.1) - '@listr2/prompt-adapter-inquirer': 3.0.1(@inquirer/prompts@7.8.2(@types/node@26.1.1))(@types/node@26.1.1)(listr2@9.0.1) - '@modelcontextprotocol/sdk': 1.26.0(supports-color@7.2.0)(zod@4.1.13) + '@inquirer/prompts': 7.8.2(@types/node@25.9.3) + '@listr2/prompt-adapter-inquirer': 3.0.1(@inquirer/prompts@7.8.2(@types/node@25.9.3))(@types/node@25.9.3)(listr2@9.0.1) + '@modelcontextprotocol/sdk': 1.26.0(zod@4.1.13) '@schematics/angular': 20.3.24(chokidar@4.0.3) '@yarnpkg/lockfile': 1.1.0 algoliasearch: 5.35.0 @@ -17735,7 +17447,7 @@ snapshots: jsonc-parser: 3.3.1 listr2: 9.0.1 npm-package-arg: 13.0.0 - pacote: 21.0.4(supports-color@7.2.0) + pacote: 21.0.4 resolve: 1.22.10 semver: 7.7.2 yargs: 18.0.0 @@ -17792,7 +17504,7 @@ snapshots: chokidar: 4.0.3 convert-source-map: 1.9.0 reflect-metadata: 0.2.2 - semver: 7.8.5 + semver: 7.8.4 tslib: 2.8.1 yargs: 18.0.0 optionalDependencies: @@ -17964,14 +17676,6 @@ snapshots: transitivePeerDependencies: - supports-color - '@babel/eslint-parser@7.29.7(@babel/core@7.29.7)(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))': - dependencies: - '@babel/core': 7.29.7 - '@nicolo-ribaudo/eslint-scope-5-internals': 5.1.1-v1 - eslint: 9.39.4(jiti@2.6.1)(supports-color@7.2.0) - eslint-visitor-keys: 2.1.0 - semver: 6.3.1 - '@babel/eslint-parser@7.29.7(@babel/core@7.29.7)(eslint@9.39.4(jiti@2.6.1))': dependencies: '@babel/core': 7.29.7 @@ -18016,7 +17720,7 @@ snapshots: dependencies: '@babel/compat-data': 7.29.0 '@babel/helper-validator-option': 7.27.1 - browserslist: 4.28.7 + browserslist: 4.28.2 lru-cache: 5.1.1 semver: 6.3.1 @@ -18024,7 +17728,7 @@ snapshots: dependencies: '@babel/compat-data': 7.29.7 '@babel/helper-validator-option': 7.29.7 - browserslist: 4.28.7 + browserslist: 4.28.2 lru-cache: 5.1.1 semver: 6.3.1 @@ -18068,7 +17772,7 @@ snapshots: regexpu-core: 6.4.0 semver: 6.3.1 - '@babel/helper-define-polyfill-provider@0.4.4(@babel/core@7.29.7)(supports-color@7.2.0)': + '@babel/helper-define-polyfill-provider@0.4.4(@babel/core@7.29.7)': dependencies: '@babel/core': 7.29.7 '@babel/helper-compilation-targets': 7.29.7 @@ -18079,7 +17783,7 @@ snapshots: transitivePeerDependencies: - supports-color - '@babel/helper-define-polyfill-provider@0.5.0(@babel/core@7.29.7)(supports-color@7.2.0)': + '@babel/helper-define-polyfill-provider@0.5.0(@babel/core@7.29.7)': dependencies: '@babel/core': 7.29.7 '@babel/helper-compilation-targets': 7.29.7 @@ -19065,14 +18769,14 @@ snapshots: '@babel/core': 7.29.7 '@babel/helper-plugin-utils': 7.29.7 - '@babel/plugin-transform-runtime@7.23.3(@babel/core@7.29.7)(supports-color@7.2.0)': + '@babel/plugin-transform-runtime@7.23.3(@babel/core@7.29.7)': dependencies: '@babel/core': 7.29.7 '@babel/helper-module-imports': 7.29.7 '@babel/helper-plugin-utils': 7.29.7 babel-plugin-polyfill-corejs2: 0.4.17(@babel/core@7.29.7) - babel-plugin-polyfill-corejs3: 0.8.7(@babel/core@7.29.7)(supports-color@7.2.0) - babel-plugin-polyfill-regenerator: 0.5.5(@babel/core@7.29.7)(supports-color@7.2.0) + babel-plugin-polyfill-corejs3: 0.8.7(@babel/core@7.29.7) + babel-plugin-polyfill-regenerator: 0.5.5(@babel/core@7.29.7) semver: 6.3.1 transitivePeerDependencies: - supports-color @@ -19573,8 +19277,6 @@ snapshots: '@babel/runtime@7.29.2': {} - '@babel/runtime@7.29.7': {} - '@babel/template@7.29.7': dependencies: '@babel/code-frame': 7.29.7 @@ -19617,7 +19319,7 @@ snapshots: '@bcoe/v8-coverage@0.2.3': {} - '@bufbuild/protobuf@2.13.0': {} + '@bufbuild/protobuf@2.11.0': {} '@cacheable/memory@2.0.8': dependencies: @@ -19819,16 +19521,6 @@ snapshots: '@esbuild/win32-x64@0.28.1': optional: true - '@eslint-community/eslint-utils@4.10.1(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))': - dependencies: - eslint: 9.39.4(jiti@2.6.1)(supports-color@7.2.0) - eslint-visitor-keys: 3.4.3 - - '@eslint-community/eslint-utils@4.10.1(eslint@9.39.4(jiti@2.6.1))': - dependencies: - eslint: 9.39.4(jiti@2.6.1) - eslint-visitor-keys: 3.4.3 - '@eslint-community/eslint-utils@4.9.1(eslint@9.39.4(jiti@2.6.1))': dependencies: eslint: 9.39.4(jiti@2.6.1) @@ -19838,13 +19530,13 @@ snapshots: '@eslint-stylistic/metadata@2.13.0': {} - '@eslint/compat@1.4.1(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))': + '@eslint/compat@1.4.1(eslint@9.39.4(jiti@2.6.1))': dependencies: '@eslint/core': 0.17.0 optionalDependencies: - eslint: 9.39.4(jiti@2.6.1)(supports-color@7.2.0) + eslint: 9.39.4(jiti@2.6.1) - '@eslint/config-array@0.21.2(supports-color@7.2.0)': + '@eslint/config-array@0.21.2': dependencies: '@eslint/object-schema': 2.1.7 debug: 4.4.3(supports-color@7.2.0) @@ -19957,15 +19649,15 @@ snapshots: optionalDependencies: '@types/node': 20.19.37 - '@inquirer/checkbox@4.3.2(@types/node@26.1.1)': + '@inquirer/checkbox@4.3.2(@types/node@25.9.3)': dependencies: '@inquirer/ansi': 1.0.2 - '@inquirer/core': 10.3.2(@types/node@26.1.1) + '@inquirer/core': 10.3.2(@types/node@25.9.3) '@inquirer/figures': 1.0.15 - '@inquirer/type': 3.0.10(@types/node@26.1.1) + '@inquirer/type': 3.0.10(@types/node@25.9.3) yoctocolors-cjs: 2.1.3 optionalDependencies: - '@types/node': 26.1.1 + '@types/node': 25.9.3 '@inquirer/checkbox@5.2.1(@types/node@20.19.37)': dependencies: @@ -19983,12 +19675,12 @@ snapshots: optionalDependencies: '@types/node': 20.11.17 - '@inquirer/confirm@5.1.14(@types/node@26.1.1)': + '@inquirer/confirm@5.1.14(@types/node@25.9.3)': dependencies: - '@inquirer/core': 10.3.2(@types/node@26.1.1) - '@inquirer/type': 3.0.10(@types/node@26.1.1) + '@inquirer/core': 10.3.2(@types/node@25.9.3) + '@inquirer/type': 3.0.10(@types/node@25.9.3) optionalDependencies: - '@types/node': 26.1.1 + '@types/node': 25.9.3 '@inquirer/confirm@5.1.21(@types/node@20.11.17)': dependencies: @@ -20004,12 +19696,12 @@ snapshots: optionalDependencies: '@types/node': 20.19.37 - '@inquirer/confirm@5.1.21(@types/node@26.1.1)': + '@inquirer/confirm@5.1.21(@types/node@25.9.3)': dependencies: - '@inquirer/core': 10.3.2(@types/node@26.1.1) - '@inquirer/type': 3.0.10(@types/node@26.1.1) + '@inquirer/core': 10.3.2(@types/node@25.9.3) + '@inquirer/type': 3.0.10(@types/node@25.9.3) optionalDependencies: - '@types/node': 26.1.1 + '@types/node': 25.9.3 '@inquirer/confirm@6.0.12(@types/node@20.19.37)': dependencies: @@ -20051,18 +19743,18 @@ snapshots: optionalDependencies: '@types/node': 20.19.37 - '@inquirer/core@10.3.2(@types/node@26.1.1)': + '@inquirer/core@10.3.2(@types/node@25.9.3)': dependencies: '@inquirer/ansi': 1.0.2 '@inquirer/figures': 1.0.15 - '@inquirer/type': 3.0.10(@types/node@26.1.1) + '@inquirer/type': 3.0.10(@types/node@25.9.3) 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.1.1 + '@types/node': 25.9.3 '@inquirer/core@11.2.1(@types/node@20.19.37)': dependencies: @@ -20092,13 +19784,13 @@ snapshots: optionalDependencies: '@types/node': 20.19.37 - '@inquirer/editor@4.2.23(@types/node@26.1.1)': + '@inquirer/editor@4.2.23(@types/node@25.9.3)': dependencies: - '@inquirer/core': 10.3.2(@types/node@26.1.1) - '@inquirer/external-editor': 1.0.3(@types/node@26.1.1) - '@inquirer/type': 3.0.10(@types/node@26.1.1) + '@inquirer/core': 10.3.2(@types/node@25.9.3) + '@inquirer/external-editor': 1.0.3(@types/node@25.9.3) + '@inquirer/type': 3.0.10(@types/node@25.9.3) optionalDependencies: - '@types/node': 26.1.1 + '@types/node': 25.9.3 '@inquirer/editor@5.2.2(@types/node@20.19.37)': dependencies: @@ -20124,13 +19816,13 @@ snapshots: optionalDependencies: '@types/node': 20.19.37 - '@inquirer/expand@4.0.23(@types/node@26.1.1)': + '@inquirer/expand@4.0.23(@types/node@25.9.3)': dependencies: - '@inquirer/core': 10.3.2(@types/node@26.1.1) - '@inquirer/type': 3.0.10(@types/node@26.1.1) + '@inquirer/core': 10.3.2(@types/node@25.9.3) + '@inquirer/type': 3.0.10(@types/node@25.9.3) yoctocolors-cjs: 2.1.3 optionalDependencies: - '@types/node': 26.1.1 + '@types/node': 25.9.3 '@inquirer/expand@5.1.1(@types/node@20.19.37)': dependencies: @@ -20153,12 +19845,12 @@ snapshots: optionalDependencies: '@types/node': 20.19.37 - '@inquirer/external-editor@1.0.3(@types/node@26.1.1)': + '@inquirer/external-editor@1.0.3(@types/node@25.9.3)': dependencies: chardet: 2.1.1 iconv-lite: 0.7.2 optionalDependencies: - '@types/node': 26.1.1 + '@types/node': 25.9.3 '@inquirer/external-editor@3.0.3(@types/node@20.19.37)': dependencies: @@ -20185,12 +19877,12 @@ snapshots: optionalDependencies: '@types/node': 20.19.37 - '@inquirer/input@4.3.1(@types/node@26.1.1)': + '@inquirer/input@4.3.1(@types/node@25.9.3)': dependencies: - '@inquirer/core': 10.3.2(@types/node@26.1.1) - '@inquirer/type': 3.0.10(@types/node@26.1.1) + '@inquirer/core': 10.3.2(@types/node@25.9.3) + '@inquirer/type': 3.0.10(@types/node@25.9.3) optionalDependencies: - '@types/node': 26.1.1 + '@types/node': 25.9.3 '@inquirer/input@5.1.2(@types/node@20.19.37)': dependencies: @@ -20213,12 +19905,12 @@ snapshots: optionalDependencies: '@types/node': 20.19.37 - '@inquirer/number@3.0.23(@types/node@26.1.1)': + '@inquirer/number@3.0.23(@types/node@25.9.3)': dependencies: - '@inquirer/core': 10.3.2(@types/node@26.1.1) - '@inquirer/type': 3.0.10(@types/node@26.1.1) + '@inquirer/core': 10.3.2(@types/node@25.9.3) + '@inquirer/type': 3.0.10(@types/node@25.9.3) optionalDependencies: - '@types/node': 26.1.1 + '@types/node': 25.9.3 '@inquirer/number@4.1.1(@types/node@20.19.37)': dependencies: @@ -20243,13 +19935,13 @@ snapshots: optionalDependencies: '@types/node': 20.19.37 - '@inquirer/password@4.0.23(@types/node@26.1.1)': + '@inquirer/password@4.0.23(@types/node@25.9.3)': dependencies: '@inquirer/ansi': 1.0.2 - '@inquirer/core': 10.3.2(@types/node@26.1.1) - '@inquirer/type': 3.0.10(@types/node@26.1.1) + '@inquirer/core': 10.3.2(@types/node@25.9.3) + '@inquirer/type': 3.0.10(@types/node@25.9.3) optionalDependencies: - '@types/node': 26.1.1 + '@types/node': 25.9.3 '@inquirer/password@5.1.1(@types/node@20.19.37)': dependencies: @@ -20289,20 +19981,20 @@ snapshots: optionalDependencies: '@types/node': 20.19.37 - '@inquirer/prompts@7.8.2(@types/node@26.1.1)': + '@inquirer/prompts@7.8.2(@types/node@25.9.3)': dependencies: - '@inquirer/checkbox': 4.3.2(@types/node@26.1.1) - '@inquirer/confirm': 5.1.21(@types/node@26.1.1) - '@inquirer/editor': 4.2.23(@types/node@26.1.1) - '@inquirer/expand': 4.0.23(@types/node@26.1.1) - '@inquirer/input': 4.3.1(@types/node@26.1.1) - '@inquirer/number': 3.0.23(@types/node@26.1.1) - '@inquirer/password': 4.0.23(@types/node@26.1.1) - '@inquirer/rawlist': 4.1.11(@types/node@26.1.1) - '@inquirer/search': 3.2.2(@types/node@26.1.1) - '@inquirer/select': 4.4.2(@types/node@26.1.1) + '@inquirer/checkbox': 4.3.2(@types/node@25.9.3) + '@inquirer/confirm': 5.1.21(@types/node@25.9.3) + '@inquirer/editor': 4.2.23(@types/node@25.9.3) + '@inquirer/expand': 4.0.23(@types/node@25.9.3) + '@inquirer/input': 4.3.1(@types/node@25.9.3) + '@inquirer/number': 3.0.23(@types/node@25.9.3) + '@inquirer/password': 4.0.23(@types/node@25.9.3) + '@inquirer/rawlist': 4.1.11(@types/node@25.9.3) + '@inquirer/search': 3.2.2(@types/node@25.9.3) + '@inquirer/select': 4.4.2(@types/node@25.9.3) optionalDependencies: - '@types/node': 26.1.1 + '@types/node': 25.9.3 '@inquirer/prompts@8.4.2(@types/node@20.19.37)': dependencies: @@ -20335,13 +20027,13 @@ snapshots: optionalDependencies: '@types/node': 20.19.37 - '@inquirer/rawlist@4.1.11(@types/node@26.1.1)': + '@inquirer/rawlist@4.1.11(@types/node@25.9.3)': dependencies: - '@inquirer/core': 10.3.2(@types/node@26.1.1) - '@inquirer/type': 3.0.10(@types/node@26.1.1) + '@inquirer/core': 10.3.2(@types/node@25.9.3) + '@inquirer/type': 3.0.10(@types/node@25.9.3) yoctocolors-cjs: 2.1.3 optionalDependencies: - '@types/node': 26.1.1 + '@types/node': 25.9.3 '@inquirer/rawlist@5.3.1(@types/node@20.19.37)': dependencies: @@ -20368,14 +20060,14 @@ snapshots: optionalDependencies: '@types/node': 20.19.37 - '@inquirer/search@3.2.2(@types/node@26.1.1)': + '@inquirer/search@3.2.2(@types/node@25.9.3)': dependencies: - '@inquirer/core': 10.3.2(@types/node@26.1.1) + '@inquirer/core': 10.3.2(@types/node@25.9.3) '@inquirer/figures': 1.0.15 - '@inquirer/type': 3.0.10(@types/node@26.1.1) + '@inquirer/type': 3.0.10(@types/node@25.9.3) yoctocolors-cjs: 2.1.3 optionalDependencies: - '@types/node': 26.1.1 + '@types/node': 25.9.3 '@inquirer/search@4.2.1(@types/node@20.19.37)': dependencies: @@ -20405,15 +20097,15 @@ snapshots: optionalDependencies: '@types/node': 20.19.37 - '@inquirer/select@4.4.2(@types/node@26.1.1)': + '@inquirer/select@4.4.2(@types/node@25.9.3)': dependencies: '@inquirer/ansi': 1.0.2 - '@inquirer/core': 10.3.2(@types/node@26.1.1) + '@inquirer/core': 10.3.2(@types/node@25.9.3) '@inquirer/figures': 1.0.15 - '@inquirer/type': 3.0.10(@types/node@26.1.1) + '@inquirer/type': 3.0.10(@types/node@25.9.3) yoctocolors-cjs: 2.1.3 optionalDependencies: - '@types/node': 26.1.1 + '@types/node': 25.9.3 '@inquirer/select@5.2.1(@types/node@20.19.37)': dependencies: @@ -20432,9 +20124,9 @@ snapshots: optionalDependencies: '@types/node': 20.19.37 - '@inquirer/type@3.0.10(@types/node@26.1.1)': + '@inquirer/type@3.0.10(@types/node@25.9.3)': optionalDependencies: - '@types/node': 26.1.1 + '@types/node': 25.9.3 '@inquirer/type@4.0.7(@types/node@20.19.37)': optionalDependencies: @@ -20757,7 +20449,7 @@ snapshots: - supports-color - ts-node - '@jest/core@30.2.0(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@26.1.1)(typescript@4.9.5))': + '@jest/core@30.2.0(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@25.9.3)(typescript@4.9.5))': dependencies: '@jest/console': 30.2.0 '@jest/pattern': 30.0.1 @@ -20772,7 +20464,7 @@ snapshots: exit-x: 0.2.2 graceful-fs: 4.2.11 jest-changed-files: 30.2.0 - jest-config: 30.2.0(@types/node@20.19.37)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@26.1.1)(typescript@4.9.5)) + jest-config: 30.2.0(@types/node@20.19.37)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@25.9.3)(typescript@4.9.5)) jest-haste-map: 30.2.0 jest-message-util: 30.2.0 jest-regex-util: 30.0.1 @@ -20795,7 +20487,7 @@ snapshots: - supports-color - ts-node - '@jest/core@30.2.0(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@26.1.1)(typescript@6.0.3))': + '@jest/core@30.2.0(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@25.9.3)(typescript@6.0.3))': dependencies: '@jest/console': 30.2.0 '@jest/pattern': 30.0.1 @@ -20810,7 +20502,7 @@ snapshots: exit-x: 0.2.2 graceful-fs: 4.2.11 jest-changed-files: 30.2.0 - jest-config: 30.2.0(@types/node@20.19.37)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@26.1.1)(typescript@6.0.3)) + jest-config: 30.2.0(@types/node@20.19.37)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@25.9.3)(typescript@6.0.3)) jest-haste-map: 30.2.0 jest-message-util: 30.2.0 jest-regex-util: 30.0.1 @@ -21000,7 +20692,7 @@ snapshots: istanbul-lib-coverage: 3.2.2 istanbul-lib-instrument: 6.0.3 istanbul-lib-report: 3.0.1 - istanbul-lib-source-maps: 5.0.6(supports-color@7.2.0) + istanbul-lib-source-maps: 5.0.6 istanbul-reports: 3.2.0 jest-message-util: 30.2.0 jest-util: 30.2.0 @@ -21013,7 +20705,7 @@ snapshots: transitivePeerDependencies: - supports-color - '@jest/reporters@30.3.0(node-notifier@9.0.1)(supports-color@7.2.0)': + '@jest/reporters@30.3.0(node-notifier@9.0.1)': dependencies: '@bcoe/v8-coverage': 0.2.3 '@jest/console': 30.3.0 @@ -21030,7 +20722,7 @@ snapshots: istanbul-lib-coverage: 3.2.2 istanbul-lib-instrument: 6.0.3 istanbul-lib-report: 3.0.1 - istanbul-lib-source-maps: 5.0.6(supports-color@7.2.0) + istanbul-lib-source-maps: 5.0.6 istanbul-reports: 3.2.0 jest-message-util: 30.3.0 jest-util: 30.3.0 @@ -21045,11 +20737,11 @@ snapshots: '@jest/schemas@29.6.3': dependencies: - '@sinclair/typebox': 0.27.12 + '@sinclair/typebox': 0.27.10 '@jest/schemas@30.0.5': dependencies: - '@sinclair/typebox': 0.34.52 + '@sinclair/typebox': 0.34.49 '@jest/snapshot-utils@30.2.0': dependencies: @@ -21395,10 +21087,10 @@ snapshots: transitivePeerDependencies: - '@types/node' - '@listr2/prompt-adapter-inquirer@3.0.1(@inquirer/prompts@7.8.2(@types/node@26.1.1))(@types/node@26.1.1)(listr2@9.0.1)': + '@listr2/prompt-adapter-inquirer@3.0.1(@inquirer/prompts@7.8.2(@types/node@25.9.3))(@types/node@25.9.3)(listr2@9.0.1)': dependencies: - '@inquirer/prompts': 7.8.2(@types/node@26.1.1) - '@inquirer/type': 3.0.10(@types/node@26.1.1) + '@inquirer/prompts': 7.8.2(@types/node@25.9.3) + '@inquirer/type': 3.0.10(@types/node@25.9.3) listr2: 9.0.1 transitivePeerDependencies: - '@types/node' @@ -21483,7 +21175,7 @@ snapshots: '@lezer/lr': 1.4.10 json5: 2.2.3 - '@modelcontextprotocol/sdk@1.26.0(supports-color@7.2.0)(zod@4.1.13)': + '@modelcontextprotocol/sdk@1.26.0(zod@4.1.13)': dependencies: '@hono/node-server': 2.0.12(hono@4.12.32) ajv: 8.20.0 @@ -21493,7 +21185,7 @@ snapshots: cross-spawn: 7.0.6 eventsource: 3.0.7 eventsource-parser: 3.0.8 - express: 5.2.1(supports-color@7.2.0) + express: 5.2.1 express-rate-limit: 8.3.2(express@5.2.1) hono: 4.12.32 jose: 6.2.2 @@ -21515,7 +21207,7 @@ snapshots: cross-spawn: 7.0.6 eventsource: 3.0.7 eventsource-parser: 3.0.8 - express: 5.2.1(supports-color@7.2.0) + express: 5.2.1 express-rate-limit: 8.3.2(express@5.2.1) hono: 4.12.32 jose: 6.2.2 @@ -21530,39 +21222,21 @@ snapshots: '@msgpackr-extract/msgpackr-extract-darwin-arm64@3.0.3': optional: true - '@msgpackr-extract/msgpackr-extract-darwin-arm64@3.0.4': - optional: true - '@msgpackr-extract/msgpackr-extract-darwin-x64@3.0.3': optional: true - '@msgpackr-extract/msgpackr-extract-darwin-x64@3.0.4': - optional: true - '@msgpackr-extract/msgpackr-extract-linux-arm64@3.0.3': optional: true - '@msgpackr-extract/msgpackr-extract-linux-arm64@3.0.4': - optional: true - '@msgpackr-extract/msgpackr-extract-linux-arm@3.0.3': optional: true - '@msgpackr-extract/msgpackr-extract-linux-arm@3.0.4': - optional: true - '@msgpackr-extract/msgpackr-extract-linux-x64@3.0.3': optional: true - '@msgpackr-extract/msgpackr-extract-linux-x64@3.0.4': - optional: true - '@msgpackr-extract/msgpackr-extract-win32-x64@3.0.3': optional: true - '@msgpackr-extract/msgpackr-extract-win32-x64@3.0.4': - optional: true - '@napi-rs/nice-android-arm-eabi@1.1.1': optional: true @@ -21696,7 +21370,7 @@ snapshots: '@npmcli/fs@5.0.0': dependencies: - semver: 7.8.5 + semver: 7.8.4 '@npmcli/git@7.0.2': dependencies: @@ -21706,7 +21380,7 @@ snapshots: lru-cache: 11.3.5 npm-pick-manifest: 11.0.3 proc-log: 6.1.0 - semver: 7.8.5 + semver: 7.8.4 which: 6.0.1 '@npmcli/installed-package-contents@4.0.0': @@ -21723,7 +21397,7 @@ snapshots: hosted-git-info: 9.0.2 json-parse-even-better-errors: 5.0.0 proc-log: 6.1.0 - semver: 7.8.5 + semver: 7.8.4 spdx-expression-parse: 4.0.0 '@npmcli/promise-spawn@9.0.1': @@ -21742,23 +21416,23 @@ snapshots: transitivePeerDependencies: - supports-color - '@nx/devkit@23.0.1(nx@23.0.1(@swc/core@1.15.30(@swc/helpers@0.5.21)))': + '@nx/devkit@23.0.1(nx@23.0.1(@swc/core@1.15.30(@swc/helpers@0.5.21))(debug@4.4.3))': dependencies: '@zkochan/js-yaml': 0.0.7 ejs: 5.0.1 enquirer: 2.3.6 minimatch: 10.2.5 - nx: 23.0.1(@swc/core@1.15.30(@swc/helpers@0.5.21)) + nx: 23.0.1(@swc/core@1.15.30(@swc/helpers@0.5.21))(debug@4.4.3) semver: 7.8.4 tslib: 2.8.1 yargs-parser: 21.1.1 - '@nx/jest@23.0.1(@babel/traverse@7.29.7)(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(babel-plugin-macros@3.1.0)(jest@29.7.0(@types/node@20.19.37)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(typescript@5.9.3)))(node-notifier@9.0.1)(nx@23.0.1(@swc/core@1.15.30(@swc/helpers@0.5.21)))(supports-color@7.2.0)(ts-jest@29.1.3(@babel/core@7.29.7)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.29.7))(jest@29.7.0(@types/node@20.19.37)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(typescript@5.9.3)))(typescript@5.9.3))(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(typescript@5.9.3))(typescript@5.9.3)': + '@nx/jest@23.0.1(@babel/traverse@7.29.7)(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(babel-plugin-macros@3.1.0)(jest@29.7.0(@types/node@20.19.37)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(typescript@5.9.3)))(node-notifier@9.0.1)(nx@23.0.1(@swc/core@1.15.30(@swc/helpers@0.5.21))(debug@4.4.3))(ts-jest@29.1.3(@babel/core@7.29.7)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.29.7))(jest@29.7.0(@types/node@20.19.37)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(typescript@5.9.3)))(typescript@5.9.3))(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(typescript@5.9.3))(typescript@5.9.3)': dependencies: - '@jest/reporters': 30.3.0(node-notifier@9.0.1)(supports-color@7.2.0) + '@jest/reporters': 30.3.0(node-notifier@9.0.1) '@jest/test-result': 30.3.0 - '@nx/devkit': 23.0.1(nx@23.0.1(@swc/core@1.15.30(@swc/helpers@0.5.21))) - '@nx/js': 23.0.1(@babel/traverse@7.29.7)(@swc/core@1.15.30(@swc/helpers@0.5.21))(nx@23.0.1(@swc/core@1.15.30(@swc/helpers@0.5.21))) + '@nx/devkit': 23.0.1(nx@23.0.1(@swc/core@1.15.30(@swc/helpers@0.5.21))(debug@4.4.3)) + '@nx/js': 23.0.1(@babel/traverse@7.29.7)(@swc/core@1.15.30(@swc/helpers@0.5.21))(nx@23.0.1(@swc/core@1.15.30(@swc/helpers@0.5.21))(debug@4.4.3)) '@phenomnomnominal/tsquery': 6.2.0(typescript@5.9.3) identity-obj-proxy: 3.0.0 jest-config: 30.3.0(@types/node@20.19.37)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(typescript@5.9.3)) @@ -21789,7 +21463,7 @@ snapshots: - typescript - verdaccio - '@nx/js@23.0.1(@babel/traverse@7.29.7)(@swc/core@1.15.30(@swc/helpers@0.5.21))(nx@23.0.1(@swc/core@1.15.30(@swc/helpers@0.5.21)))': + '@nx/js@23.0.1(@babel/traverse@7.29.7)(@swc/core@1.15.30(@swc/helpers@0.5.21))(nx@23.0.1(@swc/core@1.15.30(@swc/helpers@0.5.21))(debug@4.4.3))': dependencies: '@babel/core': 7.29.7 '@babel/plugin-proposal-decorators': 7.29.7(@babel/core@7.29.7) @@ -21798,7 +21472,7 @@ snapshots: '@babel/preset-env': 7.29.7(@babel/core@7.29.7) '@babel/preset-typescript': 7.29.7(@babel/core@7.29.7) '@babel/runtime': 7.29.2 - '@nx/devkit': 23.0.1(nx@23.0.1(@swc/core@1.15.30(@swc/helpers@0.5.21))) + '@nx/devkit': 23.0.1(nx@23.0.1(@swc/core@1.15.30(@swc/helpers@0.5.21))(debug@4.4.3)) '@nx/workspace': 23.0.1(@swc/core@1.15.30(@swc/helpers@0.5.21)) '@zkochan/js-yaml': 0.0.7 babel-plugin-const-enum: 1.2.0(@babel/core@7.29.7) @@ -21857,13 +21531,13 @@ snapshots: '@nx/workspace@23.0.1(@swc/core@1.15.30(@swc/helpers@0.5.21))': dependencies: - '@nx/devkit': 23.0.1(nx@23.0.1(@swc/core@1.15.30(@swc/helpers@0.5.21))) + '@nx/devkit': 23.0.1(nx@23.0.1(@swc/core@1.15.30(@swc/helpers@0.5.21))(debug@4.4.3)) '@zkochan/js-yaml': 0.0.7 chalk: 4.1.2 enquirer: 2.3.6 - nx: 23.0.1(@swc/core@1.15.30(@swc/helpers@0.5.21)) + nx: 23.0.1(@swc/core@1.15.30(@swc/helpers@0.5.21))(debug@4.4.3) picomatch: 4.0.4 - semver: 7.8.5 + semver: 7.8.4 tslib: 2.8.1 yargs-parser: 21.1.1 transitivePeerDependencies: @@ -21966,14 +21640,14 @@ snapshots: '@parcel/utils': 2.16.4 '@parcel/workers': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.21)) base-x: 3.0.11 - browserslist: 4.28.7 + browserslist: 4.28.2 clone: 2.1.2 dotenv: 16.6.1 dotenv-expand: 11.0.7 json5: 2.2.3 msgpackr: 1.11.10 nullthrows: 1.1.1 - semver: 7.8.5 + semver: 7.8.4 transitivePeerDependencies: - '@swc/helpers' - napi-wasm @@ -22032,7 +21706,7 @@ snapshots: '@parcel/rust': 2.16.4 '@parcel/utils': 2.16.4 nullthrows: 1.1.1 - semver: 7.8.5 + semver: 7.8.4 transitivePeerDependencies: - '@parcel/core' - napi-wasm @@ -22043,7 +21717,7 @@ snapshots: '@parcel/plugin': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.21)) '@parcel/source-map': 2.1.1 '@parcel/utils': 2.16.4 - browserslist: 4.28.7 + browserslist: 4.28.2 lightningcss: 1.32.0 nullthrows: 1.1.1 transitivePeerDependencies: @@ -22103,7 +21777,7 @@ snapshots: '@parcel/utils': 2.16.4 '@parcel/workers': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.21)) '@swc/core': 1.15.30(@swc/helpers@0.5.21) - semver: 7.8.5 + semver: 7.8.4 transitivePeerDependencies: - '@swc/helpers' - napi-wasm @@ -22303,10 +21977,10 @@ snapshots: '@parcel/plugin': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.21)) '@parcel/source-map': 2.1.1 '@parcel/utils': 2.16.4 - browserslist: 4.28.7 + browserslist: 4.28.2 json5: 2.2.3 nullthrows: 1.1.1 - semver: 7.8.5 + semver: 7.8.4 transitivePeerDependencies: - '@parcel/core' - napi-wasm @@ -22317,7 +21991,7 @@ snapshots: '@parcel/plugin': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.21)) '@parcel/source-map': 2.1.1 '@parcel/utils': 2.16.4 - browserslist: 4.28.7 + browserslist: 4.28.2 lightningcss: 1.32.0 nullthrows: 1.1.1 transitivePeerDependencies: @@ -22353,10 +22027,10 @@ snapshots: '@parcel/utils': 2.16.4 '@parcel/workers': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.21)) '@swc/helpers': 0.5.21 - browserslist: 4.28.7 + browserslist: 4.28.2 nullthrows: 1.1.1 regenerator-runtime: 0.14.1 - semver: 7.8.5 + semver: 7.8.4 transitivePeerDependencies: - napi-wasm @@ -22384,7 +22058,7 @@ snapshots: clone: 2.1.2 nullthrows: 1.1.1 postcss-value-parser: 4.2.0 - semver: 7.8.5 + semver: 7.8.4 transitivePeerDependencies: - '@parcel/core' - napi-wasm @@ -22454,78 +22128,42 @@ snapshots: '@parcel/watcher-android-arm64@2.5.6': optional: true - '@parcel/watcher-android-arm64@2.6.0': - optional: true - '@parcel/watcher-darwin-arm64@2.5.6': optional: true - '@parcel/watcher-darwin-arm64@2.6.0': - optional: true - '@parcel/watcher-darwin-x64@2.5.6': optional: true - '@parcel/watcher-darwin-x64@2.6.0': - optional: true - '@parcel/watcher-freebsd-x64@2.5.6': optional: true - '@parcel/watcher-freebsd-x64@2.6.0': - optional: true - '@parcel/watcher-linux-arm-glibc@2.5.6': optional: true - '@parcel/watcher-linux-arm-glibc@2.6.0': - optional: true - '@parcel/watcher-linux-arm-musl@2.5.6': optional: true - '@parcel/watcher-linux-arm-musl@2.6.0': - optional: true - '@parcel/watcher-linux-arm64-glibc@2.5.6': optional: true - '@parcel/watcher-linux-arm64-glibc@2.6.0': - optional: true - '@parcel/watcher-linux-arm64-musl@2.5.6': optional: true - '@parcel/watcher-linux-arm64-musl@2.6.0': - optional: true - '@parcel/watcher-linux-x64-glibc@2.5.6': optional: true - '@parcel/watcher-linux-x64-glibc@2.6.0': - optional: true - '@parcel/watcher-linux-x64-musl@2.5.6': optional: true - '@parcel/watcher-linux-x64-musl@2.6.0': - optional: true - '@parcel/watcher-win32-arm64@2.5.6': optional: true - '@parcel/watcher-win32-arm64@2.6.0': - optional: true - '@parcel/watcher-win32-ia32@2.5.6': optional: true '@parcel/watcher-win32-x64@2.5.6': optional: true - '@parcel/watcher-win32-x64@2.6.0': - optional: true - '@parcel/watcher@2.5.6': dependencies: detect-libc: 2.1.2 @@ -22547,27 +22185,6 @@ snapshots: '@parcel/watcher-win32-ia32': 2.5.6 '@parcel/watcher-win32-x64': 2.5.6 - '@parcel/watcher@2.6.0': - dependencies: - detect-libc: 2.1.2 - is-glob: 4.0.3 - node-addon-api: 7.1.1 - picomatch: 4.0.5 - optionalDependencies: - '@parcel/watcher-android-arm64': 2.6.0 - '@parcel/watcher-darwin-arm64': 2.6.0 - '@parcel/watcher-darwin-x64': 2.6.0 - '@parcel/watcher-freebsd-x64': 2.6.0 - '@parcel/watcher-linux-arm-glibc': 2.6.0 - '@parcel/watcher-linux-arm-musl': 2.6.0 - '@parcel/watcher-linux-arm64-glibc': 2.6.0 - '@parcel/watcher-linux-arm64-musl': 2.6.0 - '@parcel/watcher-linux-x64-glibc': 2.6.0 - '@parcel/watcher-linux-x64-musl': 2.6.0 - '@parcel/watcher-win32-arm64': 2.6.0 - '@parcel/watcher-win32-x64': 2.6.0 - optional: true - '@parcel/workers@2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.21))': dependencies: '@parcel/core': 2.16.4(@swc/helpers@0.5.21) @@ -22781,7 +22398,7 @@ snapshots: '@rollup/plugin-json@6.1.0(rollup@4.59.0)': dependencies: - '@rollup/pluginutils': 5.4.0(rollup@4.59.0) + '@rollup/pluginutils': 5.3.0(rollup@4.59.0) optionalDependencies: rollup: 4.59.0 @@ -22821,15 +22438,7 @@ snapshots: '@rollup/pluginutils@5.3.0(rollup@4.59.0)': dependencies: - '@types/estree': 1.0.9 - estree-walker: 2.0.2 - picomatch: 4.0.4 - optionalDependencies: - rollup: 4.59.0 - - '@rollup/pluginutils@5.4.0(rollup@4.59.0)': - dependencies: - '@types/estree': 1.0.9 + '@types/estree': 1.0.8 estree-walker: 2.0.2 picomatch: 4.0.4 optionalDependencies: @@ -22991,12 +22600,6 @@ snapshots: optionalDependencies: fsevents: 2.3.3 - '@rollup/wasm-node@4.62.3': - dependencies: - '@types/estree': 1.0.9 - optionalDependencies: - fsevents: 2.3.3 - '@rtsao/scc@1.1.0': {} '@schematics/angular@19.2.27(chokidar@4.0.3)': @@ -23043,10 +22646,10 @@ snapshots: transitivePeerDependencies: - supports-color - '@sigstore/tuf@4.0.2(supports-color@7.2.0)': + '@sigstore/tuf@4.0.2': dependencies: '@sigstore/protobuf-specs': 0.5.1 - tuf-js: 4.1.0(supports-color@7.2.0) + tuf-js: 4.1.0 transitivePeerDependencies: - supports-color @@ -23056,9 +22659,9 @@ snapshots: '@sigstore/core': 3.2.1 '@sigstore/protobuf-specs': 0.5.1 - '@sinclair/typebox@0.27.12': {} + '@sinclair/typebox@0.27.10': {} - '@sinclair/typebox@0.34.52': {} + '@sinclair/typebox@0.34.49': {} '@sinonjs/commons@3.0.1': dependencies: @@ -23094,10 +22697,10 @@ snapshots: '@standard-schema/spec@1.1.0': {} - '@storybook/addon-docs@10.2.10(@types/react@18.3.28)(esbuild@0.28.1)(rollup@4.59.0)(storybook@10.2.10(@testing-library/dom@10.4.1)(prettier@3.8.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(vite@7.3.6(@types/node@26.1.1)(jiti@2.6.1)(less@4.8.0)(lightningcss@1.32.0)(sass-embedded@1.93.3)(sass@1.99.0)(terser@5.49.0)(yaml@2.9.0))(webpack@5.106.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1))': + '@storybook/addon-docs@10.2.10(@types/react@18.3.28)(esbuild@0.28.1)(rollup@4.59.0)(storybook@10.2.10(@testing-library/dom@10.4.1)(prettier@3.8.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(vite@7.3.5(@types/node@25.9.3)(jiti@2.6.1)(less@4.6.6)(lightningcss@1.32.0)(sass-embedded@1.93.3)(sass@1.99.0)(terser@5.47.1)(yaml@2.9.0))(webpack@5.106.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1))': dependencies: '@mdx-js/react': 3.1.1(@types/react@18.3.28)(react@18.3.1) - '@storybook/csf-plugin': 10.2.10(esbuild@0.28.1)(rollup@4.59.0)(storybook@10.2.10(@testing-library/dom@10.4.1)(prettier@3.8.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(vite@7.3.6(@types/node@26.1.1)(jiti@2.6.1)(less@4.8.0)(lightningcss@1.32.0)(sass-embedded@1.93.3)(sass@1.99.0)(terser@5.49.0)(yaml@2.9.0))(webpack@5.106.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1)) + '@storybook/csf-plugin': 10.2.10(esbuild@0.28.1)(rollup@4.59.0)(storybook@10.2.10(@testing-library/dom@10.4.1)(prettier@3.8.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(vite@7.3.5(@types/node@25.9.3)(jiti@2.6.1)(less@4.6.6)(lightningcss@1.32.0)(sass-embedded@1.93.3)(sass@1.99.0)(terser@5.47.1)(yaml@2.9.0))(webpack@5.106.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1)) '@storybook/icons': 2.0.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@storybook/react-dom-shim': 10.2.10(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@10.2.10(@testing-library/dom@10.4.1)(prettier@3.8.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)) react: 18.3.1 @@ -23159,14 +22762,14 @@ snapshots: storybook: 10.2.10(@testing-library/dom@10.4.1)(prettier@3.8.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) ts-dedent: 2.2.0 - '@storybook/csf-plugin@10.2.10(esbuild@0.28.1)(rollup@4.59.0)(storybook@10.2.10(@testing-library/dom@10.4.1)(prettier@3.8.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(vite@7.3.6(@types/node@26.1.1)(jiti@2.6.1)(less@4.8.0)(lightningcss@1.32.0)(sass-embedded@1.93.3)(sass@1.99.0)(terser@5.49.0)(yaml@2.9.0))(webpack@5.106.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1))': + '@storybook/csf-plugin@10.2.10(esbuild@0.28.1)(rollup@4.59.0)(storybook@10.2.10(@testing-library/dom@10.4.1)(prettier@3.8.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(vite@7.3.5(@types/node@25.9.3)(jiti@2.6.1)(less@4.6.6)(lightningcss@1.32.0)(sass-embedded@1.93.3)(sass@1.99.0)(terser@5.47.1)(yaml@2.9.0))(webpack@5.106.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1))': dependencies: storybook: 10.2.10(@testing-library/dom@10.4.1)(prettier@3.8.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) unplugin: 2.3.11 optionalDependencies: esbuild: 0.28.1 rollup: 4.59.0 - vite: 7.3.6(@types/node@26.1.1)(jiti@2.6.1)(less@4.8.0)(lightningcss@1.32.0)(sass-embedded@1.93.3)(sass@1.99.0)(terser@5.49.0)(yaml@2.9.0) + vite: 7.3.5(@types/node@25.9.3)(jiti@2.6.1)(less@4.6.6)(lightningcss@1.32.0)(sass-embedded@1.93.3)(sass@1.99.0)(terser@5.47.1)(yaml@2.9.0) webpack: 5.106.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1) '@storybook/global@5.0.0': {} @@ -23176,17 +22779,17 @@ snapshots: react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@storybook/preset-react-webpack@10.2.10(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@10.2.10(@testing-library/dom@10.4.1)(prettier@3.8.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(supports-color@7.2.0)(typescript@5.9.3)': + '@storybook/preset-react-webpack@10.2.10(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@10.2.10(@testing-library/dom@10.4.1)(prettier@3.8.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(typescript@5.9.3)': dependencies: '@storybook/core-webpack': 10.2.10(storybook@10.2.10(@testing-library/dom@10.4.1)(prettier@3.8.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)) - '@storybook/react-docgen-typescript-plugin': 1.0.6--canary.9.0c3f3b7.0(supports-color@7.2.0)(typescript@5.9.3)(webpack@5.105.4(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1)) + '@storybook/react-docgen-typescript-plugin': 1.0.6--canary.9.0c3f3b7.0(typescript@5.9.3)(webpack@5.105.4(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1)) '@types/semver': 7.7.1 magic-string: 0.30.21 react: 18.3.1 react-docgen: 7.1.1 react-dom: 18.3.1(react@18.3.1) resolve: 1.22.12 - semver: 7.8.5 + semver: 7.8.4 storybook: 10.2.10(@testing-library/dom@10.4.1)(prettier@3.8.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) tsconfig-paths: 4.2.0 webpack: 5.105.4(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1) @@ -23199,7 +22802,7 @@ snapshots: - uglify-js - webpack-cli - '@storybook/react-docgen-typescript-plugin@1.0.6--canary.9.0c3f3b7.0(supports-color@7.2.0)(typescript@5.9.3)(webpack@5.105.4(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1))': + '@storybook/react-docgen-typescript-plugin@1.0.6--canary.9.0c3f3b7.0(typescript@5.9.3)(webpack@5.105.4(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1))': dependencies: debug: 4.4.3(supports-color@7.2.0) endent: 2.1.0 @@ -23219,10 +22822,10 @@ snapshots: react-dom: 18.3.1(react@18.3.1) storybook: 10.2.10(@testing-library/dom@10.4.1)(prettier@3.8.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@storybook/react-webpack5@10.2.10(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@10.2.10(@testing-library/dom@10.4.1)(prettier@3.8.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(supports-color@7.2.0)(typescript@5.9.3)': + '@storybook/react-webpack5@10.2.10(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@10.2.10(@testing-library/dom@10.4.1)(prettier@3.8.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(typescript@5.9.3)': dependencies: '@storybook/builder-webpack5': 10.2.10(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1)(storybook@10.2.10(@testing-library/dom@10.4.1)(prettier@3.8.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(typescript@5.9.3) - '@storybook/preset-react-webpack': 10.2.10(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@10.2.10(@testing-library/dom@10.4.1)(prettier@3.8.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(supports-color@7.2.0)(typescript@5.9.3) + '@storybook/preset-react-webpack': 10.2.10(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@10.2.10(@testing-library/dom@10.4.1)(prettier@3.8.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(typescript@5.9.3) '@storybook/react': 10.2.10(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@10.2.10(@testing-library/dom@10.4.1)(prettier@3.8.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(typescript@5.9.3) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) @@ -23250,19 +22853,9 @@ snapshots: transitivePeerDependencies: - supports-color - '@stylistic/eslint-plugin@5.10.0(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))': - dependencies: - '@eslint-community/eslint-utils': 4.10.1(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0)) - '@typescript-eslint/types': 8.62.0 - eslint: 9.39.4(jiti@2.6.1)(supports-color@7.2.0) - eslint-visitor-keys: 4.2.1 - espree: 10.4.0 - estraverse: 5.3.0 - picomatch: 4.0.4 - '@stylistic/eslint-plugin@5.10.0(eslint@9.39.4(jiti@2.6.1))': dependencies: - '@eslint-community/eslint-utils': 4.10.1(eslint@9.39.4(jiti@2.6.1)) + '@eslint-community/eslint-utils': 4.9.1(eslint@9.39.4(jiti@2.6.1)) '@typescript-eslint/types': 8.62.0 eslint: 9.39.4(jiti@2.6.1) eslint-visitor-keys: 4.2.1 @@ -23276,7 +22869,7 @@ snapshots: '@csstools/css-tokenizer': 3.0.4 '@csstools/media-query-list-parser': 3.0.1(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4) is-plain-object: 5.0.0 - postcss: 8.5.23 + postcss: 8.5.25 postcss-selector-parser: 6.1.2 postcss-value-parser: 4.2.0 style-search: 0.1.0 @@ -23321,7 +22914,7 @@ snapshots: '@swc/core@1.15.30(@swc/helpers@0.5.21)': dependencies: '@swc/counter': 0.1.3 - '@swc/types': 0.1.27 + '@swc/types': 0.1.26 optionalDependencies: '@swc/core-darwin-arm64': 1.15.30 '@swc/core-darwin-x64': 1.15.30 @@ -23343,7 +22936,7 @@ snapshots: dependencies: tslib: 2.8.1 - '@swc/types@0.1.27': + '@swc/types@0.1.26': dependencies: '@swc/counter': 0.1.3 @@ -23351,12 +22944,12 @@ snapshots: dependencies: axe-core: 4.11.3 chalk: 2.4.2 - testcafe: 3.7.5(supports-color@7.2.0) + testcafe: 3.7.5 '@testing-library/dom@10.4.1': dependencies: '@babel/code-frame': 7.29.7 - '@babel/runtime': 7.29.7 + '@babel/runtime': 7.29.2 '@types/aria-query': 5.0.4 aria-query: 5.3.0 dom-accessibility-api: 0.5.16 @@ -23367,7 +22960,7 @@ snapshots: '@testing-library/dom@9.3.4': dependencies: '@babel/code-frame': 7.29.7 - '@babel/runtime': 7.29.7 + '@babel/runtime': 7.29.2 '@types/aria-query': 5.0.4 aria-query: 5.1.3 chalk: 4.1.2 @@ -23499,7 +23092,7 @@ snapshots: '@types/eslint-scope@3.7.7': dependencies: '@types/eslint': 8.56.12 - '@types/estree': 1.0.9 + '@types/estree': 1.0.8 '@types/eslint@8.56.12': dependencies: @@ -23508,7 +23101,7 @@ snapshots: '@types/esquery@1.5.4': dependencies: - '@types/estree': 1.0.9 + '@types/estree': 1.0.8 '@types/estree@0.0.39': {} @@ -23516,8 +23109,6 @@ snapshots: '@types/estree@1.0.8': {} - '@types/estree@1.0.9': {} - '@types/express-serve-static-core@4.19.8': dependencies: '@types/node': 20.19.37 @@ -23641,9 +23232,9 @@ snapshots: dependencies: undici-types: 6.21.0 - '@types/node@26.1.1': + '@types/node@25.9.3': dependencies: - undici-types: 8.3.0 + undici-types: 7.24.6 optional: true '@types/normalize-package-data@2.4.4': {} @@ -23765,42 +23356,26 @@ snapshots: dependencies: '@types/yargs-parser': 21.0.3 - '@typescript-eslint/eslint-plugin@6.21.0(@typescript-eslint/parser@6.21.0(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0)(typescript@6.0.3))(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0)(typescript@6.0.3)': + '@typescript-eslint/eslint-plugin@6.21.0(@typescript-eslint/parser@6.21.0(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3))(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3)': dependencies: '@eslint-community/regexpp': 4.12.2 - '@typescript-eslint/parser': 6.21.0(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0)(typescript@6.0.3) + '@typescript-eslint/parser': 6.21.0(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3) '@typescript-eslint/scope-manager': 6.21.0 - '@typescript-eslint/type-utils': 6.21.0(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0)(typescript@6.0.3) - '@typescript-eslint/utils': 6.21.0(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(typescript@6.0.3) + '@typescript-eslint/type-utils': 6.21.0(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3) + '@typescript-eslint/utils': 6.21.0(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3) '@typescript-eslint/visitor-keys': 6.21.0 debug: 4.4.3(supports-color@7.2.0) - eslint: 9.39.4(jiti@2.6.1)(supports-color@7.2.0) + eslint: 9.39.4(jiti@2.6.1) graphemer: 1.4.0 ignore: 5.3.2 natural-compare: 1.4.0 - semver: 7.8.5 + semver: 7.8.4 ts-api-utils: 1.4.3(typescript@6.0.3) optionalDependencies: typescript: 6.0.3 transitivePeerDependencies: - supports-color - '@typescript-eslint/eslint-plugin@8.52.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0)(typescript@6.0.3))(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0)(typescript@6.0.3)': - dependencies: - '@eslint-community/regexpp': 4.12.2 - '@typescript-eslint/parser': 8.52.0(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0)(typescript@6.0.3) - '@typescript-eslint/scope-manager': 8.52.0 - '@typescript-eslint/type-utils': 8.52.0(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0)(typescript@6.0.3) - '@typescript-eslint/utils': 8.52.0(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(typescript@6.0.3) - '@typescript-eslint/visitor-keys': 8.52.0 - eslint: 9.39.4(jiti@2.6.1)(supports-color@7.2.0) - ignore: 7.0.5 - natural-compare: 1.4.0 - ts-api-utils: 2.5.0(typescript@6.0.3) - typescript: 6.0.3 - transitivePeerDependencies: - - supports-color - '@typescript-eslint/eslint-plugin@8.52.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@4.9.5))(eslint@9.39.4(jiti@2.6.1))(typescript@4.9.5)': dependencies: '@eslint-community/regexpp': 4.12.2 @@ -23865,39 +23440,43 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/experimental-utils@5.62.0(eslint@9.39.4(jiti@2.6.1))(supports-color@7.2.0)(typescript@4.9.5)': + '@typescript-eslint/eslint-plugin@8.52.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3))(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3)': + dependencies: + '@eslint-community/regexpp': 4.12.2 + '@typescript-eslint/parser': 8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3) + '@typescript-eslint/scope-manager': 8.52.0 + '@typescript-eslint/type-utils': 8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3) + '@typescript-eslint/utils': 8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3) + '@typescript-eslint/visitor-keys': 8.52.0 + eslint: 9.39.4(jiti@2.6.1) + ignore: 7.0.5 + natural-compare: 1.4.0 + ts-api-utils: 2.5.0(typescript@6.0.3) + typescript: 6.0.3 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/experimental-utils@5.62.0(eslint@9.39.4(jiti@2.6.1))(typescript@4.9.5)': dependencies: - '@typescript-eslint/utils': 5.62.0(eslint@9.39.4(jiti@2.6.1))(supports-color@7.2.0)(typescript@4.9.5) + '@typescript-eslint/utils': 5.62.0(eslint@9.39.4(jiti@2.6.1))(typescript@4.9.5) eslint: 9.39.4(jiti@2.6.1) transitivePeerDependencies: - supports-color - typescript - '@typescript-eslint/parser@6.21.0(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0)(typescript@6.0.3)': + '@typescript-eslint/parser@6.21.0(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3)': dependencies: '@typescript-eslint/scope-manager': 6.21.0 '@typescript-eslint/types': 6.21.0 '@typescript-eslint/typescript-estree': 6.21.0(typescript@6.0.3) '@typescript-eslint/visitor-keys': 6.21.0 debug: 4.4.3(supports-color@7.2.0) - eslint: 9.39.4(jiti@2.6.1)(supports-color@7.2.0) + eslint: 9.39.4(jiti@2.6.1) optionalDependencies: typescript: 6.0.3 transitivePeerDependencies: - supports-color - '@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0)(typescript@6.0.3)': - dependencies: - '@typescript-eslint/scope-manager': 8.52.0 - '@typescript-eslint/types': 8.52.0 - '@typescript-eslint/typescript-estree': 8.52.0(typescript@6.0.3) - '@typescript-eslint/visitor-keys': 8.52.0 - debug: 4.4.3(supports-color@7.2.0) - eslint: 9.39.4(jiti@2.6.1)(supports-color@7.2.0) - typescript: 6.0.3 - transitivePeerDependencies: - - supports-color - '@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@4.9.5)': dependencies: '@typescript-eslint/scope-manager': 8.52.0 @@ -23934,6 +23513,18 @@ snapshots: transitivePeerDependencies: - supports-color + '@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3)': + dependencies: + '@typescript-eslint/scope-manager': 8.52.0 + '@typescript-eslint/types': 8.52.0 + '@typescript-eslint/typescript-estree': 8.52.0(typescript@6.0.3) + '@typescript-eslint/visitor-keys': 8.52.0 + debug: 4.4.3(supports-color@7.2.0) + eslint: 9.39.4(jiti@2.6.1) + typescript: 6.0.3 + transitivePeerDependencies: + - supports-color + '@typescript-eslint/project-service@8.52.0(typescript@4.9.5)': dependencies: '@typescript-eslint/tsconfig-utils': 8.62.0(typescript@4.9.5) @@ -23970,15 +23561,6 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/project-service@8.58.2(supports-color@7.2.0)(typescript@6.0.3)': - dependencies: - '@typescript-eslint/tsconfig-utils': 8.62.0(typescript@6.0.3) - '@typescript-eslint/types': 8.62.0 - debug: 4.4.3(supports-color@7.2.0) - typescript: 6.0.3 - transitivePeerDependencies: - - supports-color - '@typescript-eslint/project-service@8.58.2(typescript@4.9.5)': dependencies: '@typescript-eslint/tsconfig-utils': 8.62.0(typescript@4.9.5) @@ -23997,7 +23579,16 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/project-service@8.62.0(supports-color@7.2.0)(typescript@4.9.5)': + '@typescript-eslint/project-service@8.58.2(typescript@6.0.3)': + dependencies: + '@typescript-eslint/tsconfig-utils': 8.62.0(typescript@6.0.3) + '@typescript-eslint/types': 8.62.0 + debug: 4.4.3(supports-color@7.2.0) + typescript: 6.0.3 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/project-service@8.62.0(typescript@4.9.5)': dependencies: '@typescript-eslint/tsconfig-utils': 8.62.0(typescript@4.9.5) '@typescript-eslint/types': 8.62.0 @@ -24080,30 +23671,18 @@ snapshots: dependencies: typescript: 6.0.3 - '@typescript-eslint/type-utils@6.21.0(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0)(typescript@6.0.3)': + '@typescript-eslint/type-utils@6.21.0(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3)': dependencies: '@typescript-eslint/typescript-estree': 6.21.0(typescript@6.0.3) - '@typescript-eslint/utils': 6.21.0(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(typescript@6.0.3) + '@typescript-eslint/utils': 6.21.0(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3) debug: 4.4.3(supports-color@7.2.0) - eslint: 9.39.4(jiti@2.6.1)(supports-color@7.2.0) + eslint: 9.39.4(jiti@2.6.1) ts-api-utils: 1.4.3(typescript@6.0.3) optionalDependencies: typescript: 6.0.3 transitivePeerDependencies: - supports-color - '@typescript-eslint/type-utils@8.52.0(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0)(typescript@6.0.3)': - dependencies: - '@typescript-eslint/types': 8.52.0 - '@typescript-eslint/typescript-estree': 8.52.0(typescript@6.0.3) - '@typescript-eslint/utils': 8.52.0(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(typescript@6.0.3) - debug: 4.4.3(supports-color@7.2.0) - eslint: 9.39.4(jiti@2.6.1)(supports-color@7.2.0) - ts-api-utils: 2.5.0(typescript@6.0.3) - typescript: 6.0.3 - transitivePeerDependencies: - - supports-color - '@typescript-eslint/type-utils@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@4.9.5)': dependencies: '@typescript-eslint/types': 8.52.0 @@ -24164,14 +23743,14 @@ snapshots: '@typescript-eslint/types@8.62.0': {} - '@typescript-eslint/typescript-estree@5.62.0(supports-color@7.2.0)(typescript@4.9.5)': + '@typescript-eslint/typescript-estree@5.62.0(typescript@4.9.5)': dependencies: '@typescript-eslint/types': 5.62.0 '@typescript-eslint/visitor-keys': 5.62.0 debug: 4.4.3(supports-color@7.2.0) globby: 11.1.0 is-glob: 4.0.3 - semver: 7.8.5 + semver: 7.8.4 tsutils: 3.21.0(typescript@4.9.5) optionalDependencies: typescript: 4.9.5 @@ -24185,7 +23764,7 @@ snapshots: debug: 4.4.3(supports-color@7.2.0) globby: 11.1.0 is-glob: 4.0.3 - semver: 7.8.5 + semver: 7.8.4 tsutils: 3.21.0(typescript@5.9.3) optionalDependencies: typescript: 5.9.3 @@ -24200,14 +23779,14 @@ snapshots: globby: 11.1.0 is-glob: 4.0.3 minimatch: 9.0.9 - semver: 7.8.5 + semver: 7.8.4 ts-api-utils: 1.4.3(typescript@6.0.3) optionalDependencies: typescript: 6.0.3 transitivePeerDependencies: - supports-color - '@typescript-eslint/typescript-estree@7.18.0(supports-color@7.2.0)(typescript@6.0.3)': + '@typescript-eslint/typescript-estree@7.18.0(typescript@6.0.3)': dependencies: '@typescript-eslint/types': 7.18.0 '@typescript-eslint/visitor-keys': 7.18.0 @@ -24215,7 +23794,7 @@ snapshots: globby: 11.1.0 is-glob: 4.0.3 minimatch: 9.0.9 - semver: 7.8.5 + semver: 7.8.4 ts-api-utils: 1.4.3(typescript@6.0.3) optionalDependencies: typescript: 6.0.3 @@ -24230,7 +23809,7 @@ snapshots: '@typescript-eslint/visitor-keys': 8.52.0 debug: 4.4.3(supports-color@7.2.0) minimatch: 9.0.9 - semver: 7.8.5 + semver: 7.8.4 tinyglobby: 0.2.17 ts-api-utils: 2.5.0(typescript@4.9.5) typescript: 4.9.5 @@ -24245,7 +23824,7 @@ snapshots: '@typescript-eslint/visitor-keys': 8.52.0 debug: 4.4.3(supports-color@7.2.0) minimatch: 9.0.9 - semver: 7.8.5 + semver: 7.8.4 tinyglobby: 0.2.17 ts-api-utils: 2.5.0(typescript@5.8.3) typescript: 5.8.3 @@ -24260,7 +23839,7 @@ snapshots: '@typescript-eslint/visitor-keys': 8.52.0 debug: 4.4.3(supports-color@7.2.0) minimatch: 9.0.9 - semver: 7.8.5 + semver: 7.8.4 tinyglobby: 0.2.17 ts-api-utils: 2.5.0(typescript@5.9.3) typescript: 5.9.3 @@ -24275,22 +23854,7 @@ snapshots: '@typescript-eslint/visitor-keys': 8.52.0 debug: 4.4.3(supports-color@7.2.0) minimatch: 9.0.9 - semver: 7.8.5 - tinyglobby: 0.2.17 - ts-api-utils: 2.5.0(typescript@6.0.3) - typescript: 6.0.3 - transitivePeerDependencies: - - supports-color - - '@typescript-eslint/typescript-estree@8.58.2(supports-color@7.2.0)(typescript@6.0.3)': - dependencies: - '@typescript-eslint/project-service': 8.58.2(supports-color@7.2.0)(typescript@6.0.3) - '@typescript-eslint/tsconfig-utils': 8.58.2(typescript@6.0.3) - '@typescript-eslint/types': 8.58.2 - '@typescript-eslint/visitor-keys': 8.58.2 - debug: 4.4.3(supports-color@7.2.0) - minimatch: 10.2.4 - semver: 7.8.5 + semver: 7.8.4 tinyglobby: 0.2.17 ts-api-utils: 2.5.0(typescript@6.0.3) typescript: 6.0.3 @@ -24305,7 +23869,7 @@ snapshots: '@typescript-eslint/visitor-keys': 8.58.2 debug: 4.4.3(supports-color@7.2.0) minimatch: 10.2.4 - semver: 7.8.5 + semver: 7.8.4 tinyglobby: 0.2.17 ts-api-utils: 2.5.0(typescript@4.9.5) typescript: 4.9.5 @@ -24320,82 +23884,86 @@ snapshots: '@typescript-eslint/visitor-keys': 8.58.2 debug: 4.4.3(supports-color@7.2.0) minimatch: 10.2.4 - semver: 7.8.5 + semver: 7.8.4 tinyglobby: 0.2.17 ts-api-utils: 2.5.0(typescript@5.8.3) typescript: 5.8.3 transitivePeerDependencies: - supports-color - '@typescript-eslint/typescript-estree@8.62.0(supports-color@7.2.0)(typescript@4.9.5)': + '@typescript-eslint/typescript-estree@8.58.2(typescript@6.0.3)': dependencies: - '@typescript-eslint/project-service': 8.62.0(supports-color@7.2.0)(typescript@4.9.5) + '@typescript-eslint/project-service': 8.58.2(typescript@6.0.3) + '@typescript-eslint/tsconfig-utils': 8.58.2(typescript@6.0.3) + '@typescript-eslint/types': 8.58.2 + '@typescript-eslint/visitor-keys': 8.58.2 + debug: 4.4.3(supports-color@7.2.0) + minimatch: 10.2.4 + semver: 7.8.4 + tinyglobby: 0.2.17 + ts-api-utils: 2.5.0(typescript@6.0.3) + typescript: 6.0.3 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/typescript-estree@8.62.0(typescript@4.9.5)': + dependencies: + '@typescript-eslint/project-service': 8.62.0(typescript@4.9.5) '@typescript-eslint/tsconfig-utils': 8.62.0(typescript@4.9.5) '@typescript-eslint/types': 8.62.0 '@typescript-eslint/visitor-keys': 8.62.0 debug: 4.4.3(supports-color@7.2.0) minimatch: 10.2.4 - semver: 7.8.5 + semver: 7.8.4 tinyglobby: 0.2.17 ts-api-utils: 2.5.0(typescript@4.9.5) typescript: 4.9.5 transitivePeerDependencies: - supports-color - '@typescript-eslint/utils@5.62.0(eslint@9.39.4(jiti@2.6.1))(supports-color@7.2.0)(typescript@4.9.5)': + '@typescript-eslint/utils@5.62.0(eslint@9.39.4(jiti@2.6.1))(typescript@4.9.5)': dependencies: - '@eslint-community/eslint-utils': 4.10.1(eslint@9.39.4(jiti@2.6.1)) + '@eslint-community/eslint-utils': 4.9.1(eslint@9.39.4(jiti@2.6.1)) '@types/json-schema': 7.0.15 '@types/semver': 7.7.1 '@typescript-eslint/scope-manager': 5.62.0 '@typescript-eslint/types': 5.62.0 - '@typescript-eslint/typescript-estree': 5.62.0(supports-color@7.2.0)(typescript@4.9.5) + '@typescript-eslint/typescript-estree': 5.62.0(typescript@4.9.5) eslint: 9.39.4(jiti@2.6.1) eslint-scope: 5.1.1 - semver: 7.8.5 + semver: 7.8.4 transitivePeerDependencies: - supports-color - typescript - '@typescript-eslint/utils@6.21.0(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(typescript@6.0.3)': + '@typescript-eslint/utils@6.21.0(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3)': dependencies: - '@eslint-community/eslint-utils': 4.10.1(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0)) + '@eslint-community/eslint-utils': 4.9.1(eslint@9.39.4(jiti@2.6.1)) '@types/json-schema': 7.0.15 '@types/semver': 7.7.1 '@typescript-eslint/scope-manager': 6.21.0 '@typescript-eslint/types': 6.21.0 '@typescript-eslint/typescript-estree': 6.21.0(typescript@6.0.3) - eslint: 9.39.4(jiti@2.6.1)(supports-color@7.2.0) - semver: 7.8.5 + eslint: 9.39.4(jiti@2.6.1) + semver: 7.8.4 transitivePeerDependencies: - supports-color - typescript - '@typescript-eslint/utils@7.18.0(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0)(typescript@6.0.3)': + '@typescript-eslint/utils@7.18.0(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3)': dependencies: - '@eslint-community/eslint-utils': 4.10.1(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0)) + '@eslint-community/eslint-utils': 4.9.1(eslint@9.39.4(jiti@2.6.1)) '@typescript-eslint/scope-manager': 7.18.0 '@typescript-eslint/types': 7.18.0 - '@typescript-eslint/typescript-estree': 7.18.0(supports-color@7.2.0)(typescript@6.0.3) - eslint: 9.39.4(jiti@2.6.1)(supports-color@7.2.0) + '@typescript-eslint/typescript-estree': 7.18.0(typescript@6.0.3) + eslint: 9.39.4(jiti@2.6.1) transitivePeerDependencies: - supports-color - typescript - '@typescript-eslint/utils@8.52.0(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(typescript@6.0.3)': - dependencies: - '@eslint-community/eslint-utils': 4.10.1(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0)) - '@typescript-eslint/scope-manager': 8.52.0 - '@typescript-eslint/types': 8.52.0 - '@typescript-eslint/typescript-estree': 8.52.0(typescript@6.0.3) - eslint: 9.39.4(jiti@2.6.1)(supports-color@7.2.0) - typescript: 6.0.3 - transitivePeerDependencies: - - supports-color - '@typescript-eslint/utils@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@4.9.5)': dependencies: - '@eslint-community/eslint-utils': 4.10.1(eslint@9.39.4(jiti@2.6.1)) + '@eslint-community/eslint-utils': 4.9.1(eslint@9.39.4(jiti@2.6.1)) '@typescript-eslint/scope-manager': 8.52.0 '@typescript-eslint/types': 8.52.0 '@typescript-eslint/typescript-estree': 8.52.0(typescript@4.9.5) @@ -24406,7 +23974,7 @@ snapshots: '@typescript-eslint/utils@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.8.3)': dependencies: - '@eslint-community/eslint-utils': 4.10.1(eslint@9.39.4(jiti@2.6.1)) + '@eslint-community/eslint-utils': 4.9.1(eslint@9.39.4(jiti@2.6.1)) '@typescript-eslint/scope-manager': 8.52.0 '@typescript-eslint/types': 8.52.0 '@typescript-eslint/typescript-estree': 8.52.0(typescript@5.8.3) @@ -24417,7 +23985,7 @@ snapshots: '@typescript-eslint/utils@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3)': dependencies: - '@eslint-community/eslint-utils': 4.10.1(eslint@9.39.4(jiti@2.6.1)) + '@eslint-community/eslint-utils': 4.9.1(eslint@9.39.4(jiti@2.6.1)) '@typescript-eslint/scope-manager': 8.52.0 '@typescript-eslint/types': 8.52.0 '@typescript-eslint/typescript-estree': 8.52.0(typescript@5.9.3) @@ -24428,7 +23996,7 @@ snapshots: '@typescript-eslint/utils@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3)': dependencies: - '@eslint-community/eslint-utils': 4.10.1(eslint@9.39.4(jiti@2.6.1)) + '@eslint-community/eslint-utils': 4.9.1(eslint@9.39.4(jiti@2.6.1)) '@typescript-eslint/scope-manager': 8.52.0 '@typescript-eslint/types': 8.52.0 '@typescript-eslint/typescript-estree': 8.52.0(typescript@6.0.3) @@ -24437,20 +24005,9 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/utils@8.58.2(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0)(typescript@6.0.3)': - dependencies: - '@eslint-community/eslint-utils': 4.10.1(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0)) - '@typescript-eslint/scope-manager': 8.58.2 - '@typescript-eslint/types': 8.58.2 - '@typescript-eslint/typescript-estree': 8.58.2(supports-color@7.2.0)(typescript@6.0.3) - eslint: 9.39.4(jiti@2.6.1)(supports-color@7.2.0) - typescript: 6.0.3 - transitivePeerDependencies: - - supports-color - '@typescript-eslint/utils@8.58.2(eslint@9.39.4(jiti@2.6.1))(typescript@4.9.5)': dependencies: - '@eslint-community/eslint-utils': 4.10.1(eslint@9.39.4(jiti@2.6.1)) + '@eslint-community/eslint-utils': 4.9.1(eslint@9.39.4(jiti@2.6.1)) '@typescript-eslint/scope-manager': 8.58.2 '@typescript-eslint/types': 8.58.2 '@typescript-eslint/typescript-estree': 8.58.2(typescript@4.9.5) @@ -24461,7 +24018,7 @@ snapshots: '@typescript-eslint/utils@8.58.2(eslint@9.39.4(jiti@2.6.1))(typescript@5.8.3)': dependencies: - '@eslint-community/eslint-utils': 4.10.1(eslint@9.39.4(jiti@2.6.1)) + '@eslint-community/eslint-utils': 4.9.1(eslint@9.39.4(jiti@2.6.1)) '@typescript-eslint/scope-manager': 8.58.2 '@typescript-eslint/types': 8.58.2 '@typescript-eslint/typescript-estree': 8.58.2(typescript@5.8.3) @@ -24472,21 +24029,21 @@ snapshots: '@typescript-eslint/utils@8.58.2(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3)': dependencies: - '@eslint-community/eslint-utils': 4.10.1(eslint@9.39.4(jiti@2.6.1)) + '@eslint-community/eslint-utils': 4.9.1(eslint@9.39.4(jiti@2.6.1)) '@typescript-eslint/scope-manager': 8.58.2 '@typescript-eslint/types': 8.58.2 - '@typescript-eslint/typescript-estree': 8.58.2(supports-color@7.2.0)(typescript@6.0.3) + '@typescript-eslint/typescript-estree': 8.58.2(typescript@6.0.3) eslint: 9.39.4(jiti@2.6.1) typescript: 6.0.3 transitivePeerDependencies: - supports-color - '@typescript-eslint/utils@8.62.0(eslint@9.39.4(jiti@2.6.1))(supports-color@7.2.0)(typescript@4.9.5)': + '@typescript-eslint/utils@8.62.0(eslint@9.39.4(jiti@2.6.1))(typescript@4.9.5)': dependencies: - '@eslint-community/eslint-utils': 4.10.1(eslint@9.39.4(jiti@2.6.1)) + '@eslint-community/eslint-utils': 4.9.1(eslint@9.39.4(jiti@2.6.1)) '@typescript-eslint/scope-manager': 8.62.0 '@typescript-eslint/types': 8.62.0 - '@typescript-eslint/typescript-estree': 8.62.0(supports-color@7.2.0)(typescript@4.9.5) + '@typescript-eslint/typescript-estree': 8.62.0(typescript@4.9.5) eslint: 9.39.4(jiti@2.6.1) typescript: 4.9.5 transitivePeerDependencies: @@ -24524,8 +24081,6 @@ snapshots: '@ungap/structured-clone@1.3.1': {} - '@ungap/structured-clone@1.3.3': {} - '@unrs/resolver-binding-android-arm-eabi@1.12.2': optional: true @@ -24596,24 +24151,24 @@ snapshots: '@unrs/resolver-binding-win32-x64-msvc@1.12.2': optional: true - '@vitejs/plugin-basic-ssl@2.1.0(vite@7.3.6(@types/node@20.11.17)(jiti@2.6.1)(less@4.4.0)(lightningcss@1.32.0)(sass-embedded@1.93.3)(sass@1.90.0)(terser@5.43.1)(yaml@2.9.0))': + '@vitejs/plugin-basic-ssl@2.1.0(vite@7.3.5(@types/node@20.11.17)(jiti@2.6.1)(less@4.4.0)(lightningcss@1.32.0)(sass-embedded@1.93.3)(sass@1.90.0)(terser@5.43.1)(yaml@2.9.0))': dependencies: - vite: 7.3.6(@types/node@20.11.17)(jiti@2.6.1)(less@4.4.0)(lightningcss@1.32.0)(sass-embedded@1.93.3)(sass@1.90.0)(terser@5.43.1)(yaml@2.9.0) + vite: 7.3.5(@types/node@20.11.17)(jiti@2.6.1)(less@4.4.0)(lightningcss@1.32.0)(sass-embedded@1.93.3)(sass@1.90.0)(terser@5.43.1)(yaml@2.9.0) - '@vitejs/plugin-basic-ssl@2.1.0(vite@7.3.6(@types/node@26.1.1)(jiti@2.6.1)(less@4.4.0)(lightningcss@1.32.0)(sass-embedded@1.93.3)(sass@1.90.0)(terser@5.43.1)(yaml@2.9.0))': + '@vitejs/plugin-basic-ssl@2.1.0(vite@7.3.5(@types/node@25.9.3)(jiti@2.6.1)(less@4.4.0)(lightningcss@1.32.0)(sass-embedded@1.93.3)(sass@1.90.0)(terser@5.43.1)(yaml@2.9.0))': dependencies: - vite: 7.3.6(@types/node@26.1.1)(jiti@2.6.1)(less@4.4.0)(lightningcss@1.32.0)(sass-embedded@1.93.3)(sass@1.90.0)(terser@5.43.1)(yaml@2.9.0) + vite: 7.3.5(@types/node@25.9.3)(jiti@2.6.1)(less@4.4.0)(lightningcss@1.32.0)(sass-embedded@1.93.3)(sass@1.90.0)(terser@5.43.1)(yaml@2.9.0) - '@vitejs/plugin-basic-ssl@2.1.0(vite@7.3.6(@types/node@26.1.1)(jiti@2.6.1)(less@4.8.0)(lightningcss@1.32.0)(sass-embedded@1.93.3)(sass@1.90.0)(terser@5.49.0)(yaml@2.9.0))': + '@vitejs/plugin-basic-ssl@2.1.0(vite@7.3.5(@types/node@25.9.3)(jiti@2.6.1)(less@4.6.6)(lightningcss@1.32.0)(sass-embedded@1.93.3)(sass@1.90.0)(terser@5.47.1)(yaml@2.9.0))': dependencies: - vite: 7.3.6(@types/node@26.1.1)(jiti@2.6.1)(less@4.8.0)(lightningcss@1.32.0)(sass-embedded@1.93.3)(sass@1.90.0)(terser@5.49.0)(yaml@2.9.0) + vite: 7.3.5(@types/node@25.9.3)(jiti@2.6.1)(less@4.6.6)(lightningcss@1.32.0)(sass-embedded@1.93.3)(sass@1.90.0)(terser@5.47.1)(yaml@2.9.0) optional: true '@vitejs/plugin-basic-ssl@2.3.0(vite@7.3.5(@types/node@20.19.37)(jiti@2.6.1)(less@4.6.4)(lightningcss@1.32.0)(sass-embedded@1.93.3)(sass@1.99.0)(terser@5.46.2)(yaml@2.9.0))': dependencies: vite: 7.3.5(@types/node@20.19.37)(jiti@2.6.1)(less@4.6.4)(lightningcss@1.32.0)(sass-embedded@1.93.3)(sass@1.99.0)(terser@5.46.2)(yaml@2.9.0) - '@vitejs/plugin-react@4.7.0(vite@8.0.16(@types/node@26.1.1)(esbuild@0.28.1)(jiti@2.6.1)(less@4.8.0)(sass-embedded@1.93.3)(sass@1.99.0)(terser@5.49.0)(yaml@2.8.3))': + '@vitejs/plugin-react@4.7.0(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(jiti@2.6.1)(less@4.6.6)(sass-embedded@1.93.3)(sass@1.99.0)(terser@5.47.1)(yaml@2.8.3))': dependencies: '@babel/core': 7.29.7 '@babel/plugin-transform-react-jsx-self': 7.27.1(@babel/core@7.29.7) @@ -24621,13 +24176,13 @@ snapshots: '@rolldown/pluginutils': 1.0.0-beta.27 '@types/babel__core': 7.20.5 react-refresh: 0.17.0 - vite: 8.0.16(@types/node@26.1.1)(esbuild@0.28.1)(jiti@2.6.1)(less@4.8.0)(sass-embedded@1.93.3)(sass@1.99.0)(terser@5.49.0)(yaml@2.8.3) + vite: 8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(jiti@2.6.1)(less@4.6.6)(sass-embedded@1.93.3)(sass@1.99.0)(terser@5.47.1)(yaml@2.8.3) transitivePeerDependencies: - supports-color - '@vitejs/plugin-vue@5.2.4(vite@8.0.16(@types/node@26.1.1)(esbuild@0.28.1)(jiti@2.6.1)(less@4.8.0)(sass-embedded@1.93.3)(sass@1.99.0)(terser@5.49.0)(yaml@2.8.3))(vue@3.5.32(typescript@5.8.3))': + '@vitejs/plugin-vue@5.2.4(vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(jiti@2.6.1)(less@4.6.6)(sass-embedded@1.93.3)(sass@1.99.0)(terser@5.47.1)(yaml@2.8.3))(vue@3.5.32(typescript@5.8.3))': dependencies: - vite: 8.0.16(@types/node@26.1.1)(esbuild@0.28.1)(jiti@2.6.1)(less@4.8.0)(sass-embedded@1.93.3)(sass@1.99.0)(terser@5.49.0)(yaml@2.8.3) + vite: 8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(jiti@2.6.1)(less@4.6.6)(sass-embedded@1.93.3)(sass@1.99.0)(terser@5.47.1)(yaml@2.8.3) vue: 3.5.32(typescript@5.8.3) '@vitest/expect@3.2.4': @@ -24724,7 +24279,7 @@ snapshots: '@vue/shared': 3.2.47 estree-walker: 2.0.2 magic-string: 0.25.9 - postcss: 8.5.23 + postcss: 8.5.25 source-map: 0.6.1 '@vue/compiler-sfc@3.3.4': @@ -24737,7 +24292,7 @@ snapshots: '@vue/shared': 3.3.4 estree-walker: 2.0.2 magic-string: 0.30.21 - postcss: 8.5.23 + postcss: 8.5.25 source-map-js: 1.2.1 '@vue/compiler-sfc@3.4.27': @@ -24749,7 +24304,7 @@ snapshots: '@vue/shared': 3.4.27 estree-walker: 2.0.2 magic-string: 0.30.21 - postcss: 8.5.23 + postcss: 8.5.25 source-map-js: 1.2.1 '@vue/compiler-sfc@3.5.32': @@ -24761,7 +24316,7 @@ snapshots: '@vue/shared': 3.5.32 estree-walker: 2.0.2 magic-string: 0.30.21 - postcss: 8.5.23 + postcss: 8.5.25 source-map-js: 1.2.1 '@vue/compiler-ssr@3.2.47': @@ -24791,13 +24346,13 @@ snapshots: '@vue/devtools-api@6.6.4': {} - '@vue/eslint-config-typescript@12.0.0(eslint-plugin-vue@10.4.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0)(typescript@6.0.3))(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(vue-eslint-parser@10.0.0(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0)))(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0)(typescript@6.0.3)': + '@vue/eslint-config-typescript@12.0.0(eslint-plugin-vue@10.4.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3))(eslint@9.39.4(jiti@2.6.1))(vue-eslint-parser@10.0.0(eslint@9.39.4(jiti@2.6.1))))(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3)': dependencies: - '@typescript-eslint/eslint-plugin': 6.21.0(@typescript-eslint/parser@6.21.0(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0)(typescript@6.0.3))(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0)(typescript@6.0.3) - '@typescript-eslint/parser': 6.21.0(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0)(typescript@6.0.3) - eslint: 9.39.4(jiti@2.6.1)(supports-color@7.2.0) - eslint-plugin-vue: 10.4.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0)(typescript@6.0.3))(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(vue-eslint-parser@10.0.0(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0)) - vue-eslint-parser: 9.4.3(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0) + '@typescript-eslint/eslint-plugin': 6.21.0(@typescript-eslint/parser@6.21.0(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3))(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3) + '@typescript-eslint/parser': 6.21.0(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3) + eslint: 9.39.4(jiti@2.6.1) + eslint-plugin-vue: 10.4.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3))(eslint@9.39.4(jiti@2.6.1))(vue-eslint-parser@10.0.0(eslint@9.39.4(jiti@2.6.1))) + vue-eslint-parser: 9.4.3(eslint@9.39.4(jiti@2.6.1)) optionalDependencies: typescript: 6.0.3 transitivePeerDependencies: @@ -25416,23 +24971,23 @@ snapshots: asynckit@0.4.0: {} - autoprefixer@10.4.21(postcss@8.5.23): + autoprefixer@10.4.21(postcss@8.5.25): dependencies: - browserslist: 4.28.7 - caniuse-lite: 1.0.30001806 + browserslist: 4.28.2 + caniuse-lite: 1.0.30001788 fraction.js: 4.3.7 normalize-range: 0.1.2 picocolors: 1.1.1 - postcss: 8.5.23 + postcss: 8.5.25 postcss-value-parser: 4.2.0 - autoprefixer@10.5.0(postcss@8.5.23): + autoprefixer@10.5.0(postcss@8.5.25): dependencies: - browserslist: 4.28.7 - caniuse-lite: 1.0.30001806 + browserslist: 4.28.2 + caniuse-lite: 1.0.30001788 fraction.js: 5.3.4 picocolors: 1.1.1 - postcss: 8.5.23 + postcss: 8.5.25 postcss-value-parser: 4.2.0 available-typed-arrays@1.0.7: @@ -25441,9 +24996,7 @@ snapshots: axe-core@4.11.3: {} - axe-core@4.12.1: {} - - axios@1.18.1(supports-color@7.2.0): + axios@1.19.0(supports-color@7.2.0): dependencies: follow-redirects: 1.16.0(debug@4.4.3) form-data: 4.0.6 @@ -25621,7 +25174,7 @@ snapshots: babel-plugin-macros@3.1.0: dependencies: - '@babel/runtime': 7.29.7 + '@babel/runtime': 7.29.2 cosmiconfig: 7.1.0 resolve: 1.22.12 @@ -25658,18 +25211,18 @@ snapshots: transitivePeerDependencies: - supports-color - babel-plugin-polyfill-corejs3@0.8.7(@babel/core@7.29.7)(supports-color@7.2.0): + babel-plugin-polyfill-corejs3@0.8.7(@babel/core@7.29.7): dependencies: '@babel/core': 7.29.7 - '@babel/helper-define-polyfill-provider': 0.4.4(@babel/core@7.29.7)(supports-color@7.2.0) + '@babel/helper-define-polyfill-provider': 0.4.4(@babel/core@7.29.7) core-js-compat: 3.49.0 transitivePeerDependencies: - supports-color - babel-plugin-polyfill-regenerator@0.5.5(@babel/core@7.29.7)(supports-color@7.2.0): + babel-plugin-polyfill-regenerator@0.5.5(@babel/core@7.29.7): dependencies: '@babel/core': 7.29.7 - '@babel/helper-define-polyfill-provider': 0.5.0(@babel/core@7.29.7)(supports-color@7.2.0) + '@babel/helper-define-polyfill-provider': 0.5.0(@babel/core@7.29.7) transitivePeerDependencies: - supports-color @@ -25845,7 +25398,7 @@ snapshots: base64id@2.0.0: {} - baseline-browser-mapping@2.11.4: {} + baseline-browser-mapping@2.10.20: {} basic-auth@2.0.1: dependencies: @@ -25861,7 +25414,7 @@ snapshots: domhandler: 5.0.3 htmlparser2: 10.1.0 picocolors: 1.1.1 - postcss: 8.5.23 + postcss: 8.5.25 postcss-media-query-parser: 0.2.3 beasties@0.4.2: @@ -25872,9 +25425,9 @@ snapshots: domhandler: 5.0.3 htmlparser2: 10.1.0 picocolors: 1.1.1 - postcss: 8.5.23 + postcss: 8.5.25 postcss-media-query-parser: 0.2.3 - postcss-safe-parser: 7.0.1(postcss@8.5.23) + postcss-safe-parser: 7.0.1(postcss@8.5.25) big.js@5.2.2: {} @@ -25902,14 +25455,14 @@ snapshots: http-errors: 2.0.1 iconv-lite: 0.4.24 on-finished: 2.4.1 - qs: 6.15.3 + qs: 6.15.2 raw-body: 2.5.3 type-is: 1.6.18 unpipe: 1.0.0 transitivePeerDependencies: - supports-color - body-parser@2.3.0(supports-color@7.2.0): + body-parser@2.3.0: dependencies: bytes: 3.1.2 content-type: 2.0.0 @@ -25917,7 +25470,7 @@ snapshots: http-errors: 2.0.1 iconv-lite: 0.7.2 on-finished: 2.4.1 - qs: 6.15.3 + qs: 6.15.2 raw-body: 3.0.2 type-is: 2.1.0 transitivePeerDependencies: @@ -26062,20 +25615,12 @@ snapshots: browserslist@4.28.2: dependencies: - baseline-browser-mapping: 2.11.4 - caniuse-lite: 1.0.30001806 - electron-to-chromium: 1.5.396 - node-releases: 2.0.51 + baseline-browser-mapping: 2.10.20 + caniuse-lite: 1.0.30001788 + electron-to-chromium: 1.5.340 + node-releases: 2.0.37 update-browserslist-db: 1.2.3(browserslist@4.28.2) - browserslist@4.28.7: - dependencies: - baseline-browser-mapping: 2.11.4 - caniuse-lite: 1.0.30001806 - electron-to-chromium: 1.5.396 - node-releases: 2.0.51 - update-browserslist-db: 1.2.3(browserslist@4.28.7) - bs-logger@0.2.6: dependencies: fast-json-stable-stringify: 2.1.0 @@ -26183,11 +25728,11 @@ snapshots: camelcase@6.3.0: {} - caniuse-lite@1.0.30001806: {} + caniuse-lite@1.0.30001788: {} canvg@3.0.11: dependencies: - '@babel/runtime': 7.29.7 + '@babel/runtime': 7.29.2 '@types/raf': 3.4.3 core-js: 3.49.0 raf: 3.4.1 @@ -26288,7 +25833,7 @@ snapshots: parse5: 7.3.0 parse5-htmlparser2-tree-adapter: 7.1.0 parse5-parser-stream: 7.1.2 - undici: 7.29.0 + undici: 7.28.0 whatwg-mimetype: 4.0.0 optional: true @@ -26352,7 +25897,7 @@ snapshots: cldr-data-downloader@1.1.0: dependencies: - axios: 1.18.1(supports-color@7.2.0) + axios: 1.19.0(supports-color@7.2.0) mkdirp: 1.0.4 nopt: 3.0.6 q: 1.0.1 @@ -26801,13 +26346,13 @@ snapshots: - supports-color - ts-node - create-jest@29.7.0(@types/node@26.1.1)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(typescript@6.0.3)): + create-jest@29.7.0(@types/node@25.9.3)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(typescript@6.0.3)): dependencies: '@jest/types': 29.6.3 chalk: 4.1.2 exit: 0.1.2 graceful-fs: 4.2.11 - jest-config: 29.7.0(@types/node@26.1.1)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(typescript@6.0.3)) + jest-config: 29.7.0(@types/node@25.9.3)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(typescript@6.0.3)) jest-util: 29.7.0 prompts: 2.4.2 transitivePeerDependencies: @@ -26854,12 +26399,12 @@ snapshots: css-loader@6.11.0(webpack@5.105.4(@swc/core@1.15.30(@swc/helpers@0.5.21))): dependencies: - icss-utils: 5.1.0(postcss@8.5.23) - postcss: 8.5.23 - postcss-modules-extract-imports: 3.1.0(postcss@8.5.23) - postcss-modules-local-by-default: 4.2.0(postcss@8.5.23) - postcss-modules-scope: 3.2.1(postcss@8.5.23) - postcss-modules-values: 4.0.0(postcss@8.5.23) + icss-utils: 5.1.0(postcss@8.5.25) + postcss: 8.5.25 + postcss-modules-extract-imports: 3.1.0(postcss@8.5.25) + postcss-modules-local-by-default: 4.2.0(postcss@8.5.25) + postcss-modules-scope: 3.2.1(postcss@8.5.25) + postcss-modules-values: 4.0.0(postcss@8.5.25) postcss-value-parser: 4.2.0 semver: 7.7.4 optionalDependencies: @@ -26867,12 +26412,12 @@ snapshots: css-loader@6.11.0(webpack@5.105.4): dependencies: - icss-utils: 5.1.0(postcss@8.5.23) - postcss: 8.5.23 - postcss-modules-extract-imports: 3.1.0(postcss@8.5.23) - postcss-modules-local-by-default: 4.2.0(postcss@8.5.23) - postcss-modules-scope: 3.2.1(postcss@8.5.23) - postcss-modules-values: 4.0.0(postcss@8.5.23) + icss-utils: 5.1.0(postcss@8.5.25) + postcss: 8.5.25 + postcss-modules-extract-imports: 3.1.0(postcss@8.5.25) + postcss-modules-local-by-default: 4.2.0(postcss@8.5.25) + postcss-modules-scope: 3.2.1(postcss@8.5.25) + postcss-modules-values: 4.0.0(postcss@8.5.25) postcss-value-parser: 4.2.0 semver: 7.7.4 optionalDependencies: @@ -26880,40 +26425,40 @@ snapshots: css-loader@7.1.2(webpack@5.105.0(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1)): dependencies: - icss-utils: 5.1.0(postcss@8.5.23) - postcss: 8.5.23 - postcss-modules-extract-imports: 3.1.0(postcss@8.5.23) - postcss-modules-local-by-default: 4.2.0(postcss@8.5.23) - postcss-modules-scope: 3.2.1(postcss@8.5.23) - postcss-modules-values: 4.0.0(postcss@8.5.23) + icss-utils: 5.1.0(postcss@8.5.25) + postcss: 8.5.25 + postcss-modules-extract-imports: 3.1.0(postcss@8.5.25) + postcss-modules-local-by-default: 4.2.0(postcss@8.5.25) + postcss-modules-scope: 3.2.1(postcss@8.5.25) + postcss-modules-values: 4.0.0(postcss@8.5.25) postcss-value-parser: 4.2.0 - semver: 7.8.5 + semver: 7.8.4 optionalDependencies: webpack: 5.105.0(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1) css-loader@7.1.4(webpack@5.105.4(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1)): dependencies: - icss-utils: 5.1.0(postcss@8.5.23) - postcss: 8.5.23 - postcss-modules-extract-imports: 3.1.0(postcss@8.5.23) - postcss-modules-local-by-default: 4.2.0(postcss@8.5.23) - postcss-modules-scope: 3.2.1(postcss@8.5.23) - postcss-modules-values: 4.0.0(postcss@8.5.23) + icss-utils: 5.1.0(postcss@8.5.25) + postcss: 8.5.25 + postcss-modules-extract-imports: 3.1.0(postcss@8.5.25) + postcss-modules-local-by-default: 4.2.0(postcss@8.5.25) + postcss-modules-scope: 3.2.1(postcss@8.5.25) + postcss-modules-values: 4.0.0(postcss@8.5.25) postcss-value-parser: 4.2.0 - semver: 7.8.5 + semver: 7.8.4 optionalDependencies: webpack: 5.105.4(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1) css-loader@7.1.4(webpack@5.106.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1)): dependencies: - icss-utils: 5.1.0(postcss@8.5.23) - postcss: 8.5.23 - postcss-modules-extract-imports: 3.1.0(postcss@8.5.23) - postcss-modules-local-by-default: 4.2.0(postcss@8.5.23) - postcss-modules-scope: 3.2.1(postcss@8.5.23) - postcss-modules-values: 4.0.0(postcss@8.5.23) + icss-utils: 5.1.0(postcss@8.5.25) + postcss: 8.5.25 + postcss-modules-extract-imports: 3.1.0(postcss@8.5.25) + postcss-modules-local-by-default: 4.2.0(postcss@8.5.25) + postcss-modules-scope: 3.2.1(postcss@8.5.25) + postcss-modules-values: 4.0.0(postcss@8.5.25) postcss-value-parser: 4.2.0 - semver: 7.8.5 + semver: 7.8.4 optionalDependencies: webpack: 5.106.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1) @@ -27201,8 +26746,8 @@ snapshots: detective-postcss@6.1.3: dependencies: is-url: 1.2.4 - postcss: 8.5.23 - postcss-values-parser: 6.0.2(postcss@8.5.23) + postcss: 8.5.25 + postcss-values-parser: 6.0.2(postcss@8.5.25) detective-sass@5.0.3: dependencies: @@ -27291,7 +26836,7 @@ snapshots: '@angular-devkit/schematics': 19.2.27(chokidar@4.0.3) '@schematics/angular': 19.2.27(chokidar@4.0.3) parse5: 7.3.0 - picomatch: 4.0.5 + picomatch: 4.0.4 semver: 7.8.5 transitivePeerDependencies: - chokidar @@ -27301,7 +26846,7 @@ snapshots: color-diff: 1.3.0 looks-same: 7.3.0 pngjs: 6.0.0 - testcafe: 3.7.5(supports-color@7.2.0) + testcafe: 3.7.5 tslib: 2.8.1 device-specs@1.0.1: {} @@ -27440,13 +26985,13 @@ snapshots: '@one-ini/wasm': 0.1.1 commander: 10.0.1 minimatch: 9.0.9 - semver: 7.8.5 + semver: 7.8.4 ee-first@1.1.1: {} ejs@5.0.1: {} - electron-to-chromium@1.5.396: {} + electron-to-chromium@1.5.340: {} elegant-spinner@1.0.1: {} @@ -27509,7 +27054,7 @@ snapshots: cors: 2.8.6 debug: 4.4.3(supports-color@7.2.0) engine.io-parser: 5.2.3 - ws: 8.21.1 + ws: 8.21.0 transitivePeerDependencies: - bufferutil - supports-color @@ -27520,11 +27065,6 @@ snapshots: graceful-fs: 4.2.11 tapable: 2.3.2 - enhanced-resolve@5.24.3: - dependencies: - graceful-fs: 4.2.11 - tapable: 2.3.3 - enquirer@2.3.6: dependencies: ansi-colors: 4.1.3 @@ -27670,8 +27210,6 @@ snapshots: es-module-lexer@2.0.0: {} - es-module-lexer@2.3.1: {} - es-object-atoms@1.1.1: dependencies: es-errors: 1.3.0 @@ -27782,35 +27320,26 @@ snapshots: eslint-compat-utils@0.5.1(eslint@9.39.4(jiti@2.6.1)): dependencies: eslint: 9.39.4(jiti@2.6.1) - semver: 7.8.5 + semver: 7.8.4 - eslint-config-airbnb-base@15.0.0(eslint-plugin-import@2.32.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0)(typescript@6.0.3))(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0)))(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0)): + eslint-config-airbnb-base@15.0.0(eslint-plugin-import@2.32.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@4.9.5))(eslint@9.39.4(jiti@2.6.1)))(eslint@9.39.4(jiti@2.6.1)): dependencies: confusing-browser-globals: 1.0.11 - eslint: 9.39.4(jiti@2.6.1)(supports-color@7.2.0) - eslint-plugin-import: 2.32.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0)(typescript@6.0.3))(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0)) + eslint: 9.39.4(jiti@2.6.1) + eslint-plugin-import: 2.32.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@4.9.5))(eslint@9.39.4(jiti@2.6.1)) object.assign: 4.1.7 object.entries: 1.1.9 semver: 6.3.1 - eslint-config-airbnb-base@15.0.0(eslint-plugin-import@2.32.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@4.9.5))(eslint@9.39.4(jiti@2.6.1)))(eslint@9.39.4(jiti@2.6.1)): + eslint-config-airbnb-base@15.0.0(eslint-plugin-import@2.32.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3))(eslint@9.39.4(jiti@2.6.1)))(eslint@9.39.4(jiti@2.6.1)): dependencies: confusing-browser-globals: 1.0.11 eslint: 9.39.4(jiti@2.6.1) - eslint-plugin-import: 2.32.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@4.9.5))(eslint@9.39.4(jiti@2.6.1)) + eslint-plugin-import: 2.32.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3))(eslint@9.39.4(jiti@2.6.1)) object.assign: 4.1.7 object.entries: 1.1.9 semver: 6.3.1 - eslint-config-airbnb-typescript@18.0.0(@typescript-eslint/eslint-plugin@8.52.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0)(typescript@6.0.3))(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0)(typescript@6.0.3))(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0)(typescript@6.0.3))(eslint-plugin-import@2.32.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0)(typescript@6.0.3))(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0)))(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0)): - dependencies: - '@typescript-eslint/eslint-plugin': 8.52.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0)(typescript@6.0.3))(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0)(typescript@6.0.3) - '@typescript-eslint/parser': 8.52.0(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0)(typescript@6.0.3) - eslint: 9.39.4(jiti@2.6.1)(supports-color@7.2.0) - eslint-config-airbnb-base: 15.0.0(eslint-plugin-import@2.32.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0)(typescript@6.0.3))(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0)))(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0)) - transitivePeerDependencies: - - eslint-plugin-import - eslint-config-airbnb-typescript@18.0.0(@typescript-eslint/eslint-plugin@8.52.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@4.9.5))(eslint@9.39.4(jiti@2.6.1))(typescript@4.9.5))(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@4.9.5))(eslint-plugin-import@2.32.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@4.9.5))(eslint@9.39.4(jiti@2.6.1)))(eslint@9.39.4(jiti@2.6.1)): dependencies: '@typescript-eslint/eslint-plugin': 8.52.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@4.9.5))(eslint@9.39.4(jiti@2.6.1))(typescript@4.9.5) @@ -27820,6 +27349,15 @@ snapshots: transitivePeerDependencies: - eslint-plugin-import + eslint-config-airbnb-typescript@18.0.0(@typescript-eslint/eslint-plugin@8.52.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3))(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3))(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3))(eslint-plugin-import@2.32.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3))(eslint@9.39.4(jiti@2.6.1)))(eslint@9.39.4(jiti@2.6.1)): + dependencies: + '@typescript-eslint/eslint-plugin': 8.52.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3))(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3) + '@typescript-eslint/parser': 8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3) + eslint: 9.39.4(jiti@2.6.1) + eslint-config-airbnb-base: 15.0.0(eslint-plugin-import@2.32.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3))(eslint@9.39.4(jiti@2.6.1)))(eslint@9.39.4(jiti@2.6.1)) + transitivePeerDependencies: + - eslint-plugin-import + eslint-config-devextreme@1.1.11(036b0b25bc375413172c4d0cf61bea25): dependencies: '@stylistic/eslint-plugin': 5.10.0(eslint@9.39.4(jiti@2.6.1)) @@ -27839,6 +27377,25 @@ snapshots: stylelint: 15.11.0(typescript@5.8.3) stylelint-config-standard: 38.0.0(stylelint@15.11.0(typescript@5.8.3)) + eslint-config-devextreme@1.1.11(183133270bd4e0fadb4e7343580111ff): + dependencies: + '@stylistic/eslint-plugin': 5.10.0(eslint@9.39.4(jiti@2.6.1)) + '@typescript-eslint/eslint-plugin': 8.52.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3))(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3) + '@typescript-eslint/parser': 8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3) + eslint: 9.39.4(jiti@2.6.1) + eslint-plugin-import: 2.32.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3))(eslint@9.39.4(jiti@2.6.1)) + eslint-plugin-jest: 29.15.2(@typescript-eslint/eslint-plugin@8.52.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3))(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3))(eslint@9.39.4(jiti@2.6.1))(jest@29.7.0(@types/node@25.9.3)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(typescript@6.0.3)))(typescript@6.0.3) + eslint-plugin-jsx-a11y: 6.10.2(eslint@9.39.4(jiti@2.6.1)) + eslint-plugin-no-only-tests: 3.3.0 + eslint-plugin-qunit: 8.2.6(eslint@9.39.4(jiti@2.6.1)) + eslint-plugin-react: 7.37.5(eslint@9.39.4(jiti@2.6.1)) + eslint-plugin-react-perf: 3.3.3(eslint@9.39.4(jiti@2.6.1)) + eslint-plugin-rulesdir: 0.2.2 + eslint-plugin-spellcheck: 0.0.20(eslint@9.39.4(jiti@2.6.1)) + eslint-plugin-vue: 10.4.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3))(eslint@9.39.4(jiti@2.6.1))(vue-eslint-parser@10.0.0(eslint@9.39.4(jiti@2.6.1))) + stylelint: 16.22.0(typescript@6.0.3) + stylelint-config-standard: 38.0.0(stylelint@16.22.0(typescript@6.0.3)) + eslint-config-devextreme@1.1.11(21373fd47cc2a7a56720766fc64e98ca): dependencies: '@stylistic/eslint-plugin': 5.10.0(eslint@9.39.4(jiti@2.6.1)) @@ -27858,14 +27415,14 @@ snapshots: stylelint: 15.11.0(typescript@4.9.5) stylelint-config-standard: 38.0.0(stylelint@15.11.0(typescript@4.9.5)) - eslint-config-devextreme@1.1.11(2159c8bdfeeb538cd9a87b0f06dfe45f): + eslint-config-devextreme@1.1.11(4051f50fa4cef3752123c12096732564): dependencies: '@stylistic/eslint-plugin': 5.10.0(eslint@9.39.4(jiti@2.6.1)) '@typescript-eslint/eslint-plugin': 8.52.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@4.9.5))(eslint@9.39.4(jiti@2.6.1))(typescript@4.9.5) '@typescript-eslint/parser': 8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@4.9.5) eslint: 9.39.4(jiti@2.6.1) eslint-plugin-import: 2.32.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@4.9.5))(eslint@9.39.4(jiti@2.6.1)) - eslint-plugin-jest: 29.15.2(@typescript-eslint/eslint-plugin@8.52.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@4.9.5))(eslint@9.39.4(jiti@2.6.1))(typescript@4.9.5))(eslint@9.39.4(jiti@2.6.1))(jest@30.2.0(@types/node@26.1.1)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@26.1.1)(typescript@4.9.5)))(typescript@4.9.5) + eslint-plugin-jest: 29.15.2(@typescript-eslint/eslint-plugin@8.52.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@4.9.5))(eslint@9.39.4(jiti@2.6.1))(typescript@4.9.5))(eslint@9.39.4(jiti@2.6.1))(jest@30.2.0(@types/node@25.9.3)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@25.9.3)(typescript@4.9.5)))(typescript@4.9.5) eslint-plugin-jsx-a11y: 6.10.2(eslint@9.39.4(jiti@2.6.1)) eslint-plugin-no-only-tests: 3.3.0 eslint-plugin-qunit: 8.2.6(eslint@9.39.4(jiti@2.6.1)) @@ -27877,14 +27434,14 @@ snapshots: stylelint: 15.11.0(typescript@4.9.5) stylelint-config-standard: 38.0.0(stylelint@15.11.0(typescript@4.9.5)) - eslint-config-devextreme@1.1.11(3323971c1e531ea4fcc264c8af1d91e5): + eslint-config-devextreme@1.1.11(50f3c3285bd7eabd5ea20f1cb31b03f8): dependencies: '@stylistic/eslint-plugin': 5.10.0(eslint@9.39.4(jiti@2.6.1)) '@typescript-eslint/eslint-plugin': 8.52.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3) '@typescript-eslint/parser': 8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3) eslint: 9.39.4(jiti@2.6.1) eslint-plugin-import: 2.32.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.4(jiti@2.6.1)) - eslint-plugin-jest: 29.15.2(@typescript-eslint/eslint-plugin@8.52.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.4(jiti@2.6.1))(jest@30.2.0(@types/node@26.1.1)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(typescript@5.9.3)))(typescript@6.0.3) + eslint-plugin-jest: 29.15.2(@typescript-eslint/eslint-plugin@8.52.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.4(jiti@2.6.1))(jest@30.2.0(@types/node@25.9.3)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(typescript@5.9.3)))(typescript@6.0.3) eslint-plugin-jsx-a11y: 6.10.2(eslint@9.39.4(jiti@2.6.1)) eslint-plugin-no-only-tests: 3.3.0 eslint-plugin-qunit: 8.2.6(eslint@9.39.4(jiti@2.6.1)) @@ -27915,33 +27472,14 @@ snapshots: stylelint: 15.11.0(typescript@4.9.5) stylelint-config-standard: 38.0.0(stylelint@15.11.0(typescript@4.9.5)) - eslint-config-devextreme@1.1.11(8a02c8ea109c9cf26ed5b6a911da64a7): - dependencies: - '@stylistic/eslint-plugin': 5.10.0(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0)) - '@typescript-eslint/eslint-plugin': 8.52.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0)(typescript@6.0.3))(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0)(typescript@6.0.3) - '@typescript-eslint/parser': 8.52.0(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0)(typescript@6.0.3) - eslint: 9.39.4(jiti@2.6.1)(supports-color@7.2.0) - eslint-plugin-import: 2.32.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0)(typescript@6.0.3))(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0)) - eslint-plugin-jest: 29.15.2(@typescript-eslint/eslint-plugin@8.52.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0)(typescript@6.0.3))(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0)(typescript@6.0.3))(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(jest@29.7.0(@types/node@26.1.1)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(typescript@6.0.3)))(supports-color@7.2.0)(typescript@6.0.3) - eslint-plugin-jsx-a11y: 6.10.2(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0)) - eslint-plugin-no-only-tests: 3.3.0 - eslint-plugin-qunit: 8.2.6(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0)) - eslint-plugin-react: 7.37.5(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0)) - eslint-plugin-react-perf: 3.3.3(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0)) - eslint-plugin-rulesdir: 0.2.2 - eslint-plugin-spellcheck: 0.0.20(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0)) - eslint-plugin-vue: 10.4.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0)(typescript@6.0.3))(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(vue-eslint-parser@10.0.0(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0)) - stylelint: 16.22.0(typescript@6.0.3) - stylelint-config-standard: 38.0.0(stylelint@16.22.0(typescript@6.0.3)) - - eslint-config-devextreme@1.1.11(df15cfffce683e1bcb7bfdacad1a6df8): + eslint-config-devextreme@1.1.11(ec017a369c67ed38b63ff5745f4d5a7b): dependencies: '@stylistic/eslint-plugin': 5.10.0(eslint@9.39.4(jiti@2.6.1)) '@typescript-eslint/eslint-plugin': 8.52.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3) '@typescript-eslint/parser': 8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3) eslint: 9.39.4(jiti@2.6.1) eslint-plugin-import: 2.32.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.4(jiti@2.6.1)) - eslint-plugin-jest: 29.15.2(@typescript-eslint/eslint-plugin@8.52.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3))(eslint@9.39.4(jiti@2.6.1))(jest@30.2.0(@types/node@26.1.1)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(typescript@5.9.3)))(typescript@6.0.3) + eslint-plugin-jest: 29.15.2(@typescript-eslint/eslint-plugin@8.52.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3))(eslint@9.39.4(jiti@2.6.1))(jest@30.2.0(@types/node@25.9.3)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(typescript@5.9.3)))(typescript@6.0.3) eslint-plugin-jsx-a11y: 6.10.2(eslint@9.39.4(jiti@2.6.1)) eslint-plugin-no-only-tests: 3.3.0 eslint-plugin-qunit: 8.2.6(eslint@9.39.4(jiti@2.6.1)) @@ -27956,55 +27494,55 @@ snapshots: eslint-import-resolver-node@0.3.10: dependencies: debug: 3.2.7 - is-core-module: 2.16.2 + is-core-module: 2.16.1 resolve: 2.0.0-next.6 transitivePeerDependencies: - supports-color - eslint-module-utils@2.12.1(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0)(typescript@6.0.3))(eslint-import-resolver-node@0.3.10)(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0)): + eslint-module-utils@2.12.1(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@4.9.5))(eslint-import-resolver-node@0.3.10)(eslint@9.39.4(jiti@2.6.1)): dependencies: debug: 3.2.7 optionalDependencies: - '@typescript-eslint/parser': 8.52.0(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0)(typescript@6.0.3) - eslint: 9.39.4(jiti@2.6.1)(supports-color@7.2.0) + '@typescript-eslint/parser': 8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@4.9.5) + eslint: 9.39.4(jiti@2.6.1) eslint-import-resolver-node: 0.3.10 transitivePeerDependencies: - supports-color - eslint-module-utils@2.12.1(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@4.9.5))(eslint-import-resolver-node@0.3.10)(eslint@9.39.4(jiti@2.6.1)): + eslint-module-utils@2.12.1(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.8.3))(eslint-import-resolver-node@0.3.10)(eslint@9.39.4(jiti@2.6.1)): dependencies: debug: 3.2.7 optionalDependencies: - '@typescript-eslint/parser': 8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@4.9.5) + '@typescript-eslint/parser': 8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.8.3) eslint: 9.39.4(jiti@2.6.1) eslint-import-resolver-node: 0.3.10 transitivePeerDependencies: - supports-color - eslint-module-utils@2.12.1(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.8.3))(eslint-import-resolver-node@0.3.10)(eslint@9.39.4(jiti@2.6.1)): + eslint-module-utils@2.12.1(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3))(eslint-import-resolver-node@0.3.10)(eslint@9.39.4(jiti@2.6.1)): dependencies: debug: 3.2.7 optionalDependencies: - '@typescript-eslint/parser': 8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.8.3) + '@typescript-eslint/parser': 8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3) eslint: 9.39.4(jiti@2.6.1) eslint-import-resolver-node: 0.3.10 transitivePeerDependencies: - supports-color - eslint-module-utils@2.12.1(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3))(eslint-import-resolver-node@0.3.10)(eslint@9.39.4(jiti@2.6.1)): + eslint-module-utils@2.12.1(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3))(eslint-import-resolver-node@0.3.10)(eslint@9.39.4(jiti@2.6.1)): dependencies: debug: 3.2.7 optionalDependencies: - '@typescript-eslint/parser': 8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3) + '@typescript-eslint/parser': 8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3) eslint: 9.39.4(jiti@2.6.1) eslint-import-resolver-node: 0.3.10 transitivePeerDependencies: - supports-color - eslint-plugin-deprecation@3.0.0(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0)(typescript@6.0.3): + eslint-plugin-deprecation@3.0.0(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3): dependencies: - '@typescript-eslint/utils': 7.18.0(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0)(typescript@6.0.3) - eslint: 9.39.4(jiti@2.6.1)(supports-color@7.2.0) + '@typescript-eslint/utils': 7.18.0(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3) + eslint: 9.39.4(jiti@2.6.1) ts-api-utils: 1.4.3(typescript@6.0.3) tslib: 2.8.1 typescript: 6.0.3 @@ -28013,14 +27551,14 @@ snapshots: eslint-plugin-es-x@7.8.0(eslint@9.39.4(jiti@2.6.1)): dependencies: - '@eslint-community/eslint-utils': 4.10.1(eslint@9.39.4(jiti@2.6.1)) + '@eslint-community/eslint-utils': 4.9.1(eslint@9.39.4(jiti@2.6.1)) '@eslint-community/regexpp': 4.12.2 eslint: 9.39.4(jiti@2.6.1) eslint-compat-utils: 0.5.1(eslint@9.39.4(jiti@2.6.1)) eslint-plugin-i18n@2.4.0: {} - eslint-plugin-import@2.32.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0)(typescript@6.0.3))(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0)): + eslint-plugin-import@2.32.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@4.9.5))(eslint@9.39.4(jiti@2.6.1)): dependencies: '@rtsao/scc': 1.1.0 array-includes: 3.1.9 @@ -28029,11 +27567,11 @@ snapshots: array.prototype.flatmap: 1.3.3 debug: 3.2.7 doctrine: 2.1.0 - eslint: 9.39.4(jiti@2.6.1)(supports-color@7.2.0) + eslint: 9.39.4(jiti@2.6.1) eslint-import-resolver-node: 0.3.10 - eslint-module-utils: 2.12.1(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0)(typescript@6.0.3))(eslint-import-resolver-node@0.3.10)(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0)) + eslint-module-utils: 2.12.1(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@4.9.5))(eslint-import-resolver-node@0.3.10)(eslint@9.39.4(jiti@2.6.1)) hasown: 2.0.4 - is-core-module: 2.16.2 + is-core-module: 2.16.1 is-glob: 4.0.3 minimatch: 3.1.5 object.fromentries: 2.0.8 @@ -28043,13 +27581,13 @@ snapshots: string.prototype.trimend: 1.0.9 tsconfig-paths: 3.15.0 optionalDependencies: - '@typescript-eslint/parser': 8.52.0(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0)(typescript@6.0.3) + '@typescript-eslint/parser': 8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@4.9.5) transitivePeerDependencies: - eslint-import-resolver-typescript - eslint-import-resolver-webpack - supports-color - eslint-plugin-import@2.32.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@4.9.5))(eslint@9.39.4(jiti@2.6.1)): + eslint-plugin-import@2.32.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.8.3))(eslint@9.39.4(jiti@2.6.1)): dependencies: '@rtsao/scc': 1.1.0 array-includes: 3.1.9 @@ -28060,9 +27598,9 @@ snapshots: doctrine: 2.1.0 eslint: 9.39.4(jiti@2.6.1) eslint-import-resolver-node: 0.3.10 - eslint-module-utils: 2.12.1(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@4.9.5))(eslint-import-resolver-node@0.3.10)(eslint@9.39.4(jiti@2.6.1)) + eslint-module-utils: 2.12.1(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.8.3))(eslint-import-resolver-node@0.3.10)(eslint@9.39.4(jiti@2.6.1)) hasown: 2.0.4 - is-core-module: 2.16.2 + is-core-module: 2.16.1 is-glob: 4.0.3 minimatch: 3.1.5 object.fromentries: 2.0.8 @@ -28072,13 +27610,13 @@ snapshots: string.prototype.trimend: 1.0.9 tsconfig-paths: 3.15.0 optionalDependencies: - '@typescript-eslint/parser': 8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@4.9.5) + '@typescript-eslint/parser': 8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.8.3) transitivePeerDependencies: - eslint-import-resolver-typescript - eslint-import-resolver-webpack - supports-color - eslint-plugin-import@2.32.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.8.3))(eslint@9.39.4(jiti@2.6.1)): + eslint-plugin-import@2.32.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.4(jiti@2.6.1)): dependencies: '@rtsao/scc': 1.1.0 array-includes: 3.1.9 @@ -28089,9 +27627,9 @@ snapshots: doctrine: 2.1.0 eslint: 9.39.4(jiti@2.6.1) eslint-import-resolver-node: 0.3.10 - eslint-module-utils: 2.12.1(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.8.3))(eslint-import-resolver-node@0.3.10)(eslint@9.39.4(jiti@2.6.1)) + eslint-module-utils: 2.12.1(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3))(eslint-import-resolver-node@0.3.10)(eslint@9.39.4(jiti@2.6.1)) hasown: 2.0.4 - is-core-module: 2.16.2 + is-core-module: 2.16.1 is-glob: 4.0.3 minimatch: 3.1.5 object.fromentries: 2.0.8 @@ -28101,13 +27639,13 @@ snapshots: string.prototype.trimend: 1.0.9 tsconfig-paths: 3.15.0 optionalDependencies: - '@typescript-eslint/parser': 8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.8.3) + '@typescript-eslint/parser': 8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3) transitivePeerDependencies: - eslint-import-resolver-typescript - eslint-import-resolver-webpack - supports-color - eslint-plugin-import@2.32.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.4(jiti@2.6.1)): + eslint-plugin-import@2.32.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3))(eslint@9.39.4(jiti@2.6.1)): dependencies: '@rtsao/scc': 1.1.0 array-includes: 3.1.9 @@ -28118,9 +27656,9 @@ snapshots: doctrine: 2.1.0 eslint: 9.39.4(jiti@2.6.1) eslint-import-resolver-node: 0.3.10 - eslint-module-utils: 2.12.1(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3))(eslint-import-resolver-node@0.3.10)(eslint@9.39.4(jiti@2.6.1)) + eslint-module-utils: 2.12.1(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3))(eslint-import-resolver-node@0.3.10)(eslint@9.39.4(jiti@2.6.1)) hasown: 2.0.4 - is-core-module: 2.16.2 + is-core-module: 2.16.1 is-glob: 4.0.3 minimatch: 3.1.5 object.fromentries: 2.0.8 @@ -28130,7 +27668,7 @@ snapshots: string.prototype.trimend: 1.0.9 tsconfig-paths: 3.15.0 optionalDependencies: - '@typescript-eslint/parser': 8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3) + '@typescript-eslint/parser': 8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3) transitivePeerDependencies: - eslint-import-resolver-typescript - eslint-import-resolver-webpack @@ -28140,17 +27678,6 @@ snapshots: dependencies: eslint: 9.39.4(jiti@2.6.1) - eslint-plugin-jest@29.15.2(@typescript-eslint/eslint-plugin@8.52.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0)(typescript@6.0.3))(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0)(typescript@6.0.3))(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(jest@29.7.0(@types/node@26.1.1)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(typescript@6.0.3)))(supports-color@7.2.0)(typescript@6.0.3): - dependencies: - '@typescript-eslint/utils': 8.58.2(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0)(typescript@6.0.3) - eslint: 9.39.4(jiti@2.6.1)(supports-color@7.2.0) - optionalDependencies: - '@typescript-eslint/eslint-plugin': 8.52.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0)(typescript@6.0.3))(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0)(typescript@6.0.3) - jest: 29.7.0(@types/node@26.1.1)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(typescript@6.0.3)) - typescript: 6.0.3 - transitivePeerDependencies: - - supports-color - eslint-plugin-jest@29.15.2(@typescript-eslint/eslint-plugin@8.52.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@4.9.5))(eslint@9.39.4(jiti@2.6.1))(typescript@4.9.5))(eslint@9.39.4(jiti@2.6.1))(jest@30.2.0(@types/node@20.11.17)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.11.17)(typescript@4.9.5)))(typescript@4.9.5): dependencies: '@typescript-eslint/utils': 8.58.2(eslint@9.39.4(jiti@2.6.1))(typescript@4.9.5) @@ -28173,13 +27700,13 @@ snapshots: transitivePeerDependencies: - supports-color - eslint-plugin-jest@29.15.2(@typescript-eslint/eslint-plugin@8.52.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@4.9.5))(eslint@9.39.4(jiti@2.6.1))(typescript@4.9.5))(eslint@9.39.4(jiti@2.6.1))(jest@30.2.0(@types/node@26.1.1)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@26.1.1)(typescript@4.9.5)))(typescript@4.9.5): + eslint-plugin-jest@29.15.2(@typescript-eslint/eslint-plugin@8.52.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@4.9.5))(eslint@9.39.4(jiti@2.6.1))(typescript@4.9.5))(eslint@9.39.4(jiti@2.6.1))(jest@30.2.0(@types/node@25.9.3)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@25.9.3)(typescript@4.9.5)))(typescript@4.9.5): dependencies: '@typescript-eslint/utils': 8.58.2(eslint@9.39.4(jiti@2.6.1))(typescript@4.9.5) eslint: 9.39.4(jiti@2.6.1) optionalDependencies: '@typescript-eslint/eslint-plugin': 8.52.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@4.9.5))(eslint@9.39.4(jiti@2.6.1))(typescript@4.9.5) - jest: 30.2.0(@types/node@26.1.1)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@26.1.1)(typescript@4.9.5)) + jest: 30.2.0(@types/node@25.9.3)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@25.9.3)(typescript@4.9.5)) typescript: 4.9.5 transitivePeerDependencies: - supports-color @@ -28195,46 +27722,38 @@ snapshots: transitivePeerDependencies: - supports-color - eslint-plugin-jest@29.15.2(@typescript-eslint/eslint-plugin@8.52.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.4(jiti@2.6.1))(jest@30.2.0(@types/node@26.1.1)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(typescript@5.9.3)))(typescript@6.0.3): + eslint-plugin-jest@29.15.2(@typescript-eslint/eslint-plugin@8.52.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.4(jiti@2.6.1))(jest@30.2.0(@types/node@25.9.3)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(typescript@5.9.3)))(typescript@6.0.3): dependencies: '@typescript-eslint/utils': 8.58.2(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3) eslint: 9.39.4(jiti@2.6.1) optionalDependencies: '@typescript-eslint/eslint-plugin': 8.52.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3) - jest: 30.2.0(@types/node@26.1.1)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(typescript@5.9.3)) + jest: 30.2.0(@types/node@25.9.3)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(typescript@5.9.3)) typescript: 6.0.3 transitivePeerDependencies: - supports-color - eslint-plugin-jest@29.15.2(@typescript-eslint/eslint-plugin@8.52.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3))(eslint@9.39.4(jiti@2.6.1))(jest@30.2.0(@types/node@26.1.1)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(typescript@5.9.3)))(typescript@6.0.3): + eslint-plugin-jest@29.15.2(@typescript-eslint/eslint-plugin@8.52.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3))(eslint@9.39.4(jiti@2.6.1))(jest@30.2.0(@types/node@25.9.3)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(typescript@5.9.3)))(typescript@6.0.3): dependencies: '@typescript-eslint/utils': 8.58.2(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3) eslint: 9.39.4(jiti@2.6.1) optionalDependencies: '@typescript-eslint/eslint-plugin': 8.52.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3) - jest: 30.2.0(@types/node@26.1.1)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(typescript@5.9.3)) + jest: 30.2.0(@types/node@25.9.3)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(typescript@5.9.3)) typescript: 6.0.3 transitivePeerDependencies: - supports-color - eslint-plugin-jsx-a11y@6.10.2(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0)): + eslint-plugin-jest@29.15.2(@typescript-eslint/eslint-plugin@8.52.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3))(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3))(eslint@9.39.4(jiti@2.6.1))(jest@29.7.0(@types/node@25.9.3)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(typescript@6.0.3)))(typescript@6.0.3): dependencies: - aria-query: 5.3.2 - array-includes: 3.1.9 - array.prototype.flatmap: 1.3.3 - ast-types-flow: 0.0.8 - axe-core: 4.12.1 - axobject-query: 4.1.0 - damerau-levenshtein: 1.0.8 - emoji-regex: 9.2.2 - eslint: 9.39.4(jiti@2.6.1)(supports-color@7.2.0) - hasown: 2.0.4 - jsx-ast-utils: 3.3.5 - language-tags: 1.0.9 - minimatch: 3.1.5 - object.fromentries: 2.0.8 - safe-regex-test: 1.1.0 - string.prototype.includes: 2.0.1 + '@typescript-eslint/utils': 8.58.2(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3) + eslint: 9.39.4(jiti@2.6.1) + optionalDependencies: + '@typescript-eslint/eslint-plugin': 8.52.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3))(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3) + jest: 29.7.0(@types/node@25.9.3)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(typescript@6.0.3)) + typescript: 6.0.3 + transitivePeerDependencies: + - supports-color eslint-plugin-jsx-a11y@6.10.2(eslint@9.39.4(jiti@2.6.1)): dependencies: @@ -28242,7 +27761,7 @@ snapshots: array-includes: 3.1.9 array.prototype.flatmap: 1.3.3 ast-types-flow: 0.0.8 - axe-core: 4.12.1 + axe-core: 4.11.3 axobject-query: 4.1.0 damerau-levenshtein: 1.0.8 emoji-regex: 9.2.2 @@ -28272,30 +27791,24 @@ snapshots: eslint-plugin-no-only-tests@3.3.0: {} - eslint-plugin-perfectionist@5.9.1(eslint@9.39.4(jiti@2.6.1))(supports-color@7.2.0)(typescript@4.9.5): + eslint-plugin-perfectionist@5.9.1(eslint@9.39.4(jiti@2.6.1))(typescript@4.9.5): dependencies: - '@typescript-eslint/utils': 8.62.0(eslint@9.39.4(jiti@2.6.1))(supports-color@7.2.0)(typescript@4.9.5) + '@typescript-eslint/utils': 8.62.0(eslint@9.39.4(jiti@2.6.1))(typescript@4.9.5) eslint: 9.39.4(jiti@2.6.1) natural-orderby: 5.0.0 transitivePeerDependencies: - supports-color - typescript - eslint-plugin-qunit@8.2.6(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0)): - dependencies: - '@eslint-community/eslint-utils': 4.10.1(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0)) - eslint: 9.39.4(jiti@2.6.1)(supports-color@7.2.0) - requireindex: 1.2.0 - eslint-plugin-qunit@8.2.6(eslint@9.39.4(jiti@2.6.1)): dependencies: - '@eslint-community/eslint-utils': 4.10.1(eslint@9.39.4(jiti@2.6.1)) + '@eslint-community/eslint-utils': 4.9.1(eslint@9.39.4(jiti@2.6.1)) eslint: 9.39.4(jiti@2.6.1) requireindex: 1.2.0 - eslint-plugin-react-hooks@5.2.0(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0)): + eslint-plugin-react-hooks@5.2.0(eslint@9.39.4(jiti@2.6.1)): dependencies: - eslint: 9.39.4(jiti@2.6.1)(supports-color@7.2.0) + eslint: 9.39.4(jiti@2.6.1) eslint-plugin-react-hooks@7.0.1(eslint@9.39.4(jiti@2.6.1)): dependencies: @@ -28308,10 +27821,6 @@ snapshots: transitivePeerDependencies: - supports-color - eslint-plugin-react-perf@3.3.3(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0)): - dependencies: - eslint: 9.39.4(jiti@2.6.1)(supports-color@7.2.0) - eslint-plugin-react-perf@3.3.3(eslint@9.39.4(jiti@2.6.1)): dependencies: eslint: 9.39.4(jiti@2.6.1) @@ -28320,28 +27829,6 @@ snapshots: dependencies: eslint: 9.39.4(jiti@2.6.1) - eslint-plugin-react@7.37.5(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0)): - dependencies: - array-includes: 3.1.9 - array.prototype.findlast: 1.2.5 - array.prototype.flatmap: 1.3.3 - array.prototype.tosorted: 1.1.4 - doctrine: 2.1.0 - es-iterator-helpers: 1.3.2 - eslint: 9.39.4(jiti@2.6.1)(supports-color@7.2.0) - estraverse: 5.3.0 - hasown: 2.0.3 - jsx-ast-utils: 3.3.5 - minimatch: 3.1.5 - object.entries: 1.1.9 - object.fromentries: 2.0.8 - object.values: 1.2.1 - prop-types: 15.8.1 - resolve: 2.0.0-next.6 - semver: 6.3.1 - string.prototype.matchall: 4.0.12 - string.prototype.repeat: 1.0.0 - eslint-plugin-react@7.37.5(eslint@9.39.4(jiti@2.6.1)): dependencies: array-includes: 3.1.9 @@ -28370,13 +27857,6 @@ snapshots: dependencies: eslint: 9.39.4(jiti@2.6.1) - eslint-plugin-spellcheck@0.0.20(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0)): - dependencies: - eslint: 9.39.4(jiti@2.6.1)(supports-color@7.2.0) - globals: 13.24.0 - hunspell-spellchecker: 1.0.2 - lodash: 4.18.1 - eslint-plugin-spellcheck@0.0.20(eslint@9.39.4(jiti@2.6.1)): dependencies: eslint: 9.39.4(jiti@2.6.1) @@ -28408,57 +27888,57 @@ snapshots: semver: 7.7.4 strip-indent: 4.1.1 - eslint-plugin-vue@10.4.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0)(typescript@6.0.3))(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(vue-eslint-parser@10.0.0(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0)): + eslint-plugin-vue@10.4.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@4.9.5))(eslint@9.39.4(jiti@2.6.1))(vue-eslint-parser@10.0.0(eslint@9.39.4(jiti@2.6.1))): dependencies: - '@eslint-community/eslint-utils': 4.10.1(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0)) - eslint: 9.39.4(jiti@2.6.1)(supports-color@7.2.0) + '@eslint-community/eslint-utils': 4.9.1(eslint@9.39.4(jiti@2.6.1)) + eslint: 9.39.4(jiti@2.6.1) natural-compare: 1.4.0 nth-check: 2.1.1 postcss-selector-parser: 6.1.2 - semver: 7.8.5 - vue-eslint-parser: 10.0.0(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0) + semver: 7.8.4 + vue-eslint-parser: 10.0.0(eslint@9.39.4(jiti@2.6.1)) xml-name-validator: 4.0.0 optionalDependencies: - '@typescript-eslint/parser': 8.52.0(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0)(typescript@6.0.3) + '@typescript-eslint/parser': 8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@4.9.5) - eslint-plugin-vue@10.4.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@4.9.5))(eslint@9.39.4(jiti@2.6.1))(vue-eslint-parser@10.0.0(eslint@9.39.4(jiti@2.6.1))): + eslint-plugin-vue@10.4.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.8.3))(eslint@9.39.4(jiti@2.6.1))(vue-eslint-parser@10.0.0(eslint@9.39.4(jiti@2.6.1))): dependencies: - '@eslint-community/eslint-utils': 4.10.1(eslint@9.39.4(jiti@2.6.1)) + '@eslint-community/eslint-utils': 4.9.1(eslint@9.39.4(jiti@2.6.1)) eslint: 9.39.4(jiti@2.6.1) natural-compare: 1.4.0 nth-check: 2.1.1 postcss-selector-parser: 6.1.2 - semver: 7.8.5 + semver: 7.8.4 vue-eslint-parser: 10.0.0(eslint@9.39.4(jiti@2.6.1)) xml-name-validator: 4.0.0 optionalDependencies: - '@typescript-eslint/parser': 8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@4.9.5) + '@typescript-eslint/parser': 8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.8.3) - eslint-plugin-vue@10.4.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.8.3))(eslint@9.39.4(jiti@2.6.1))(vue-eslint-parser@10.0.0(eslint@9.39.4(jiti@2.6.1))): + eslint-plugin-vue@10.4.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.4(jiti@2.6.1))(vue-eslint-parser@10.0.0(eslint@9.39.4(jiti@2.6.1))): dependencies: - '@eslint-community/eslint-utils': 4.10.1(eslint@9.39.4(jiti@2.6.1)) + '@eslint-community/eslint-utils': 4.9.1(eslint@9.39.4(jiti@2.6.1)) eslint: 9.39.4(jiti@2.6.1) natural-compare: 1.4.0 nth-check: 2.1.1 postcss-selector-parser: 6.1.2 - semver: 7.8.5 + semver: 7.8.4 vue-eslint-parser: 10.0.0(eslint@9.39.4(jiti@2.6.1)) xml-name-validator: 4.0.0 optionalDependencies: - '@typescript-eslint/parser': 8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.8.3) + '@typescript-eslint/parser': 8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3) - eslint-plugin-vue@10.4.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.4(jiti@2.6.1))(vue-eslint-parser@10.0.0(eslint@9.39.4(jiti@2.6.1))): + eslint-plugin-vue@10.4.0(@typescript-eslint/parser@8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3))(eslint@9.39.4(jiti@2.6.1))(vue-eslint-parser@10.0.0(eslint@9.39.4(jiti@2.6.1))): dependencies: - '@eslint-community/eslint-utils': 4.10.1(eslint@9.39.4(jiti@2.6.1)) + '@eslint-community/eslint-utils': 4.9.1(eslint@9.39.4(jiti@2.6.1)) eslint: 9.39.4(jiti@2.6.1) natural-compare: 1.4.0 nth-check: 2.1.1 postcss-selector-parser: 6.1.2 - semver: 7.8.5 + semver: 7.8.4 vue-eslint-parser: 10.0.0(eslint@9.39.4(jiti@2.6.1)) xml-name-validator: 4.0.0 optionalDependencies: - '@typescript-eslint/parser': 8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3) + '@typescript-eslint/parser': 8.52.0(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3) eslint-scope@5.1.1: dependencies: @@ -28485,50 +27965,9 @@ snapshots: eslint@9.39.4(jiti@2.6.1): dependencies: - '@eslint-community/eslint-utils': 4.10.1(eslint@9.39.4(jiti@2.6.1)) - '@eslint-community/regexpp': 4.12.2 - '@eslint/config-array': 0.21.2(supports-color@7.2.0) - '@eslint/config-helpers': 0.4.2 - '@eslint/core': 0.17.0 - '@eslint/eslintrc': 3.3.5 - '@eslint/js': 9.39.4 - '@eslint/plugin-kit': 0.4.1 - '@humanfs/node': 0.16.8 - '@humanwhocodes/module-importer': 1.0.1 - '@humanwhocodes/retry': 0.4.3 - '@types/estree': 1.0.9 - ajv: 6.14.0 - chalk: 4.1.2 - cross-spawn: 7.0.6 - debug: 4.4.3(supports-color@7.2.0) - escape-string-regexp: 4.0.0 - eslint-scope: 8.4.0 - eslint-visitor-keys: 4.2.1 - espree: 10.4.0 - esquery: 1.7.0 - esutils: 2.0.3 - fast-deep-equal: 3.1.3 - file-entry-cache: 8.0.0 - find-up: 5.0.0 - glob-parent: 6.0.2 - ignore: 5.3.2 - imurmurhash: 0.1.4 - is-glob: 4.0.3 - json-stable-stringify-without-jsonify: 1.0.1 - lodash.merge: 4.6.2 - minimatch: 3.1.5 - natural-compare: 1.4.0 - optionator: 0.9.4 - optionalDependencies: - jiti: 2.6.1 - transitivePeerDependencies: - - supports-color - - eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0): - dependencies: - '@eslint-community/eslint-utils': 4.10.1(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0)) + '@eslint-community/eslint-utils': 4.9.1(eslint@9.39.4(jiti@2.6.1)) '@eslint-community/regexpp': 4.12.2 - '@eslint/config-array': 0.21.2(supports-color@7.2.0) + '@eslint/config-array': 0.21.2 '@eslint/config-helpers': 0.4.2 '@eslint/core': 0.17.0 '@eslint/eslintrc': 3.3.5 @@ -28537,7 +27976,7 @@ snapshots: '@humanfs/node': 0.16.8 '@humanwhocodes/module-importer': 1.0.1 '@humanwhocodes/retry': 0.4.3 - '@types/estree': 1.0.9 + '@types/estree': 1.0.8 ajv: 6.14.0 chalk: 4.1.2 cross-spawn: 7.0.6 @@ -28733,7 +28172,7 @@ snapshots: express-rate-limit@8.3.2(express@5.2.1): dependencies: - express: 5.2.1(supports-color@7.2.0) + express: 5.2.1 ip-address: 10.2.0 express@4.22.1: @@ -28772,10 +28211,10 @@ snapshots: transitivePeerDependencies: - supports-color - express@5.2.1(supports-color@7.2.0): + express@5.2.1: dependencies: accepts: 2.0.0 - body-parser: 2.3.0(supports-color@7.2.0) + body-parser: 2.3.0 content-disposition: 1.1.0 content-type: 1.0.5 cookie: 0.7.2 @@ -28785,7 +28224,7 @@ snapshots: encodeurl: 2.0.0 escape-html: 1.0.3 etag: 1.8.1 - finalhandler: 2.1.1(supports-color@7.2.0) + finalhandler: 2.1.1 fresh: 2.0.0 http-errors: 2.0.1 merge-descriptors: 2.0.0 @@ -28794,13 +28233,13 @@ snapshots: once: 1.4.0 parseurl: 1.3.3 proxy-addr: 2.0.7 - qs: 6.15.3 - range-parser: 1.3.0 - router: 2.2.0(supports-color@7.2.0) - send: 1.2.1(supports-color@7.2.0) + qs: 6.15.2 + range-parser: 1.2.1 + router: 2.2.0 + send: 1.2.1 serve-static: 2.2.1 statuses: 2.0.2 - type-is: 2.1.0 + type-is: 2.0.1 vary: 1.1.2 transitivePeerDependencies: - supports-color @@ -28890,10 +28329,6 @@ snapshots: optionalDependencies: picomatch: 4.0.4 - fdir@6.5.0(picomatch@4.0.5): - optionalDependencies: - picomatch: 4.0.5 - fecha@4.2.3: {} fflate@0.8.2: {} @@ -28961,7 +28396,7 @@ snapshots: transitivePeerDependencies: - supports-color - finalhandler@2.1.1(supports-color@7.2.0): + finalhandler@2.1.1: dependencies: debug: 4.4.3(supports-color@7.2.0) encodeurl: 2.0.0 @@ -29005,24 +28440,24 @@ snapshots: flat-cache@3.2.0: dependencies: - flatted: 3.4.3 + flatted: 3.4.2 keyv: 4.5.4 rimraf: 3.0.2 flat-cache@4.0.1: dependencies: - flatted: 3.4.3 + flatted: 3.4.2 keyv: 4.5.4 flat-cache@6.1.22: dependencies: cacheable: 2.3.4 - flatted: 3.4.3 + flatted: 3.4.2 hookified: 1.15.1 flat@5.0.2: {} - flatted@3.4.3: {} + flatted@3.4.2: {} fn.name@1.1.0: {} @@ -29051,7 +28486,7 @@ snapshots: minimatch: 3.1.5 node-abort-controller: 3.1.1 schema-utils: 3.3.0 - semver: 7.8.5 + semver: 7.8.4 tapable: 2.3.2 typescript: 5.9.3 webpack: 5.105.4(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1) @@ -29624,7 +29059,7 @@ snapshots: html-minifier-terser: 6.1.0 lodash: 4.18.1 pretty-error: 4.0.0 - tapable: 2.3.3 + tapable: 2.3.2 optionalDependencies: webpack: 5.105.0(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1) optional: true @@ -29635,7 +29070,7 @@ snapshots: html-minifier-terser: 6.1.0 lodash: 4.18.1 pretty-error: 4.0.0 - tapable: 2.3.3 + tapable: 2.3.2 optionalDependencies: webpack: 5.105.4(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1) @@ -29645,7 +29080,7 @@ snapshots: html-minifier-terser: 6.1.0 lodash: 4.18.1 pretty-error: 4.0.0 - tapable: 2.3.3 + tapable: 2.3.2 optionalDependencies: webpack: 5.106.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1) optional: true @@ -29742,7 +29177,7 @@ snapshots: transitivePeerDependencies: - debug - http-server@14.1.1(supports-color@7.2.0): + http-server@14.1.1: dependencies: basic-auth: 2.0.1 chalk: 4.1.2 @@ -29753,7 +29188,7 @@ snapshots: mime: 1.6.0 minimist: 1.2.8 opener: 1.5.2 - portfinder: 1.0.38(supports-color@7.2.0) + portfinder: 1.0.38 secure-compare: 3.0.1 union: 0.5.0 url-join: 4.0.1 @@ -29779,7 +29214,7 @@ snapshots: transitivePeerDependencies: - supports-color - https-proxy-agent@9.0.0(supports-color@7.2.0): + https-proxy-agent@9.0.0: dependencies: agent-base: 9.0.0 debug: 4.4.3(supports-color@7.2.0) @@ -29820,9 +29255,9 @@ snapshots: dependencies: safer-buffer: 2.1.2 - icss-utils@5.1.0(postcss@8.5.23): + icss-utils@5.1.0(postcss@8.5.25): dependencies: - postcss: 8.5.23 + postcss: 8.5.25 identity-obj-proxy@3.0.0: dependencies: @@ -30007,7 +29442,7 @@ snapshots: dependencies: ci-info: 1.6.0 - is-core-module@2.16.2: + is-core-module@2.16.1: dependencies: hasown: 2.0.4 @@ -30127,7 +29562,7 @@ snapshots: is-reference@1.2.1: dependencies: - '@types/estree': 1.0.9 + '@types/estree': 1.0.8 is-regex@1.2.1: dependencies: @@ -30230,7 +29665,7 @@ snapshots: '@babel/parser': 7.29.7 '@istanbuljs/schema': 0.1.6 istanbul-lib-coverage: 3.2.2 - semver: 7.8.5 + semver: 7.8.4 transitivePeerDependencies: - supports-color @@ -30248,7 +29683,7 @@ snapshots: transitivePeerDependencies: - supports-color - istanbul-lib-source-maps@5.0.6(supports-color@7.2.0): + istanbul-lib-source-maps@5.0.6: dependencies: '@jridgewell/trace-mapping': 0.3.31 debug: 4.4.3(supports-color@7.2.0) @@ -30402,16 +29837,16 @@ snapshots: - supports-color - ts-node - jest-cli@29.7.0(@types/node@26.1.1)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(typescript@6.0.3)): + jest-cli@29.7.0(@types/node@25.9.3)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(typescript@6.0.3)): dependencies: '@jest/core': 29.7.0(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(typescript@6.0.3)) '@jest/test-result': 29.7.0 '@jest/types': 29.6.3 chalk: 4.1.2 - create-jest: 29.7.0(@types/node@26.1.1)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(typescript@6.0.3)) + create-jest: 29.7.0(@types/node@25.9.3)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(typescript@6.0.3)) exit: 0.1.2 import-local: 3.2.0 - jest-config: 29.7.0(@types/node@26.1.1)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(typescript@6.0.3)) + jest-config: 29.7.0(@types/node@25.9.3)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(typescript@6.0.3)) jest-util: 29.7.0 jest-validate: 29.7.0 yargs: 17.7.2 @@ -30529,7 +29964,7 @@ snapshots: - supports-color - ts-node - jest-cli@30.2.0(@types/node@26.1.1)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(typescript@5.9.3)): + jest-cli@30.2.0(@types/node@25.9.3)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(typescript@5.9.3)): dependencies: '@jest/core': 30.2.0(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(typescript@5.9.3)) '@jest/test-result': 30.2.0 @@ -30537,7 +29972,7 @@ snapshots: chalk: 4.1.2 exit-x: 0.2.2 import-local: 3.2.0 - jest-config: 30.2.0(@types/node@26.1.1)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(typescript@5.9.3)) + jest-config: 30.2.0(@types/node@25.9.3)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(typescript@5.9.3)) jest-util: 30.2.0 jest-validate: 30.2.0 yargs: 17.7.2 @@ -30551,15 +29986,15 @@ snapshots: - ts-node optional: true - jest-cli@30.2.0(@types/node@26.1.1)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@26.1.1)(typescript@4.9.5)): + jest-cli@30.2.0(@types/node@25.9.3)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@25.9.3)(typescript@4.9.5)): dependencies: - '@jest/core': 30.2.0(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@26.1.1)(typescript@4.9.5)) + '@jest/core': 30.2.0(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@25.9.3)(typescript@4.9.5)) '@jest/test-result': 30.2.0 '@jest/types': 30.2.0 chalk: 4.1.2 exit-x: 0.2.2 import-local: 3.2.0 - jest-config: 30.2.0(@types/node@26.1.1)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@26.1.1)(typescript@4.9.5)) + jest-config: 30.2.0(@types/node@25.9.3)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@25.9.3)(typescript@4.9.5)) jest-util: 30.2.0 jest-validate: 30.2.0 yargs: 17.7.2 @@ -30572,15 +30007,15 @@ snapshots: - supports-color - ts-node - jest-cli@30.2.0(@types/node@26.1.1)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@26.1.1)(typescript@6.0.3)): + jest-cli@30.2.0(@types/node@25.9.3)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@25.9.3)(typescript@6.0.3)): dependencies: - '@jest/core': 30.2.0(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@26.1.1)(typescript@6.0.3)) + '@jest/core': 30.2.0(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@25.9.3)(typescript@6.0.3)) '@jest/test-result': 30.2.0 '@jest/types': 30.2.0 chalk: 4.1.2 exit-x: 0.2.2 import-local: 3.2.0 - jest-config: 30.2.0(@types/node@26.1.1)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@26.1.1)(typescript@6.0.3)) + jest-config: 30.2.0(@types/node@25.9.3)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@25.9.3)(typescript@6.0.3)) jest-util: 30.2.0 jest-validate: 30.2.0 yargs: 17.7.2 @@ -30655,7 +30090,7 @@ snapshots: - babel-plugin-macros - supports-color - jest-config@29.7.0(@types/node@26.1.1)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(typescript@6.0.3)): + jest-config@29.7.0(@types/node@25.9.3)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(typescript@6.0.3)): dependencies: '@babel/core': 7.29.7 '@jest/test-sequencer': 29.7.0 @@ -30680,7 +30115,7 @@ snapshots: slash: 3.0.0 strip-json-comments: 3.1.1 optionalDependencies: - '@types/node': 26.1.1 + '@types/node': 25.9.3 ts-node: 10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(typescript@6.0.3) transitivePeerDependencies: - babel-plugin-macros @@ -30952,7 +30387,7 @@ snapshots: - babel-plugin-macros - supports-color - jest-config@30.2.0(@types/node@20.19.37)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@26.1.1)(typescript@4.9.5)): + jest-config@30.2.0(@types/node@20.19.37)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@25.9.3)(typescript@4.9.5)): dependencies: '@babel/core': 7.29.7 '@jest/get-type': 30.1.0 @@ -30980,12 +30415,12 @@ snapshots: strip-json-comments: 3.1.1 optionalDependencies: '@types/node': 20.19.37 - ts-node: 10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@26.1.1)(typescript@4.9.5) + ts-node: 10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@25.9.3)(typescript@4.9.5) transitivePeerDependencies: - babel-plugin-macros - supports-color - jest-config@30.2.0(@types/node@20.19.37)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@26.1.1)(typescript@6.0.3)): + jest-config@30.2.0(@types/node@20.19.37)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@25.9.3)(typescript@6.0.3)): dependencies: '@babel/core': 7.29.7 '@jest/get-type': 30.1.0 @@ -31013,12 +30448,12 @@ snapshots: strip-json-comments: 3.1.1 optionalDependencies: '@types/node': 20.19.37 - ts-node: 10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@26.1.1)(typescript@6.0.3) + ts-node: 10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@25.9.3)(typescript@6.0.3) transitivePeerDependencies: - babel-plugin-macros - supports-color - jest-config@30.2.0(@types/node@26.1.1)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(typescript@5.9.3)): + jest-config@30.2.0(@types/node@25.9.3)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(typescript@5.9.3)): dependencies: '@babel/core': 7.29.7 '@jest/get-type': 30.1.0 @@ -31045,14 +30480,14 @@ snapshots: slash: 3.0.0 strip-json-comments: 3.1.1 optionalDependencies: - '@types/node': 26.1.1 + '@types/node': 25.9.3 ts-node: 10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(typescript@5.9.3) transitivePeerDependencies: - babel-plugin-macros - supports-color optional: true - jest-config@30.2.0(@types/node@26.1.1)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@26.1.1)(typescript@4.9.5)): + jest-config@30.2.0(@types/node@25.9.3)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@25.9.3)(typescript@4.9.5)): dependencies: '@babel/core': 7.29.7 '@jest/get-type': 30.1.0 @@ -31079,13 +30514,13 @@ snapshots: slash: 3.0.0 strip-json-comments: 3.1.1 optionalDependencies: - '@types/node': 26.1.1 - ts-node: 10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@26.1.1)(typescript@4.9.5) + '@types/node': 25.9.3 + ts-node: 10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@25.9.3)(typescript@4.9.5) transitivePeerDependencies: - babel-plugin-macros - supports-color - jest-config@30.2.0(@types/node@26.1.1)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@26.1.1)(typescript@6.0.3)): + jest-config@30.2.0(@types/node@25.9.3)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@25.9.3)(typescript@6.0.3)): dependencies: '@babel/core': 7.29.7 '@jest/get-type': 30.1.0 @@ -31112,8 +30547,8 @@ snapshots: slash: 3.0.0 strip-json-comments: 3.1.1 optionalDependencies: - '@types/node': 26.1.1 - ts-node: 10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@26.1.1)(typescript@6.0.3) + '@types/node': 25.9.3 + ts-node: 10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@25.9.3)(typescript@6.0.3) transitivePeerDependencies: - babel-plugin-macros - supports-color @@ -31631,7 +31066,7 @@ snapshots: jest-util: 29.7.0 natural-compare: 1.4.0 pretty-format: 29.7.0 - semver: 7.8.5 + semver: 7.8.4 transitivePeerDependencies: - supports-color @@ -31656,7 +31091,7 @@ snapshots: jest-message-util: 30.2.0 jest-util: 30.2.0 pretty-format: 30.2.0 - semver: 7.8.5 + semver: 7.8.4 synckit: 0.11.13 transitivePeerDependencies: - supports-color @@ -31682,7 +31117,7 @@ snapshots: jest-message-util: 30.3.0 jest-util: 30.3.0 pretty-format: 30.3.0 - semver: 7.8.5 + semver: 7.8.4 synckit: 0.11.13 transitivePeerDependencies: - supports-color @@ -31790,7 +31225,7 @@ snapshots: jest-worker@30.2.0: dependencies: '@types/node': 20.19.37 - '@ungap/structured-clone': 1.3.3 + '@ungap/structured-clone': 1.3.1 jest-util: 30.2.0 merge-stream: 2.0.0 supports-color: 8.1.1 @@ -31817,12 +31252,12 @@ snapshots: - supports-color - ts-node - jest@29.7.0(@types/node@26.1.1)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(typescript@6.0.3)): + jest@29.7.0(@types/node@25.9.3)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(typescript@6.0.3)): dependencies: '@jest/core': 29.7.0(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(typescript@6.0.3)) '@jest/types': 29.6.3 import-local: 3.2.0 - jest-cli: 29.7.0(@types/node@26.1.1)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(typescript@6.0.3)) + jest-cli: 29.7.0(@types/node@25.9.3)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(typescript@6.0.3)) optionalDependencies: node-notifier: 9.0.1 transitivePeerDependencies: @@ -31907,12 +31342,12 @@ snapshots: - supports-color - ts-node - jest@30.2.0(@types/node@26.1.1)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(typescript@5.9.3)): + jest@30.2.0(@types/node@25.9.3)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(typescript@5.9.3)): dependencies: '@jest/core': 30.2.0(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(typescript@5.9.3)) '@jest/types': 30.2.0 import-local: 3.2.0 - jest-cli: 30.2.0(@types/node@26.1.1)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(typescript@5.9.3)) + jest-cli: 30.2.0(@types/node@25.9.3)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@20.19.37)(typescript@5.9.3)) optionalDependencies: node-notifier: 9.0.1 transitivePeerDependencies: @@ -31923,12 +31358,12 @@ snapshots: - ts-node optional: true - jest@30.2.0(@types/node@26.1.1)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@26.1.1)(typescript@4.9.5)): + jest@30.2.0(@types/node@25.9.3)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@25.9.3)(typescript@4.9.5)): dependencies: - '@jest/core': 30.2.0(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@26.1.1)(typescript@4.9.5)) + '@jest/core': 30.2.0(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@25.9.3)(typescript@4.9.5)) '@jest/types': 30.2.0 import-local: 3.2.0 - jest-cli: 30.2.0(@types/node@26.1.1)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@26.1.1)(typescript@4.9.5)) + jest-cli: 30.2.0(@types/node@25.9.3)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@25.9.3)(typescript@4.9.5)) optionalDependencies: node-notifier: 9.0.1 transitivePeerDependencies: @@ -31938,12 +31373,12 @@ snapshots: - supports-color - ts-node - jest@30.2.0(@types/node@26.1.1)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@26.1.1)(typescript@6.0.3)): + jest@30.2.0(@types/node@25.9.3)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@25.9.3)(typescript@6.0.3)): dependencies: - '@jest/core': 30.2.0(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@26.1.1)(typescript@6.0.3)) + '@jest/core': 30.2.0(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@25.9.3)(typescript@6.0.3)) '@jest/types': 30.2.0 import-local: 3.2.0 - jest-cli: 30.2.0(@types/node@26.1.1)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@26.1.1)(typescript@6.0.3)) + jest-cli: 30.2.0(@types/node@25.9.3)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@25.9.3)(typescript@6.0.3)) optionalDependencies: node-notifier: 9.0.1 transitivePeerDependencies: @@ -32001,7 +31436,7 @@ snapshots: http-proxy-agent: 5.0.0 https-proxy-agent: 5.0.1(supports-color@7.2.0) is-potential-custom-element-name: 1.0.1 - nwsapi: 2.2.24 + nwsapi: 2.2.23 parse5: 7.3.0 saxes: 6.0.0 symbol-tree: 3.2.4 @@ -32011,7 +31446,7 @@ snapshots: whatwg-encoding: 2.0.0 whatwg-mimetype: 3.0.0 whatwg-url: 11.0.0 - ws: 8.21.1 + ws: 8.21.0 xml-name-validator: 4.0.0 transitivePeerDependencies: - bufferutil @@ -32155,13 +31590,13 @@ snapshots: minimatch: 3.1.5 mkdirp: 0.5.6 qjobs: 1.2.0 - range-parser: 1.3.0 + range-parser: 1.2.1 rimraf: 3.0.2 socket.io: 4.8.3 source-map: 0.6.1 tmp: 0.2.7 ua-parser-js: 0.7.41 - yargs: 16.2.2 + yargs: 16.2.0 transitivePeerDependencies: - bufferutil - debug @@ -32264,21 +31699,6 @@ snapshots: needle: 3.5.0 source-map: 0.6.1 - less@4.8.0: - dependencies: - copy-anything: 3.0.5 - parse-node-version: 1.0.1 - optionalDependencies: - errno: 0.1.8 - graceful-fs: 4.2.11 - make-dir: 5.1.0 - mime: 1.6.0 - needle: 3.5.0 - probe-image-size: 7.3.0 - source-map: 0.6.1 - transitivePeerDependencies: - - supports-color - leven@3.1.0: {} levn@0.4.1: @@ -32288,13 +31708,13 @@ snapshots: license-webpack-plugin@4.0.2(webpack@5.105.0(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1)): dependencies: - webpack-sources: 3.5.1 + webpack-sources: 3.3.4 optionalDependencies: webpack: 5.105.0(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1) license-webpack-plugin@4.0.2(webpack@5.106.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1)): dependencies: - webpack-sources: 3.5.1 + webpack-sources: 3.3.4 optionalDependencies: webpack: 5.106.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1) @@ -32409,7 +31829,7 @@ snapshots: lmdb@2.8.5: dependencies: - msgpackr: 1.12.1 + msgpackr: 1.11.10 node-addon-api: 6.1.0 node-gyp-build-optional-packages: 5.1.1 ordered-binary: 1.6.1 @@ -32424,7 +31844,7 @@ snapshots: lmdb@3.4.2: dependencies: - msgpackr: 1.12.1 + msgpackr: 1.11.10 node-addon-api: 6.1.0 node-gyp-build-optional-packages: 5.2.2 ordered-binary: 1.6.1 @@ -32459,8 +31879,6 @@ snapshots: loader-runner@4.3.1: {} - loader-runner@4.3.2: {} - loader-utils@1.4.2: dependencies: big.js: 5.2.2 @@ -32564,7 +31982,7 @@ snapshots: dependencies: date-format: 4.0.14 debug: 4.4.3(supports-color@7.2.0) - flatted: 3.4.3 + flatted: 3.4.2 rfdc: 1.4.1 streamroller: 3.1.5 transitivePeerDependencies: @@ -32649,7 +32067,7 @@ snapshots: make-dir@4.0.0: dependencies: - semver: 7.8.5 + semver: 7.8.4 make-dir@5.1.0: optional: true @@ -32703,13 +32121,13 @@ snapshots: '@types/unist': 2.0.11 unist-util-visit: 4.1.2 - mdast-util-from-markdown@1.3.1(supports-color@7.2.0): + mdast-util-from-markdown@1.3.1: dependencies: '@types/mdast': 3.0.15 '@types/unist': 2.0.11 decode-named-character-reference: 1.3.0 mdast-util-to-string: 3.2.0 - micromark: 3.2.0(supports-color@7.2.0) + micromark: 3.2.0 micromark-util-decode-numeric-character-reference: 1.1.0 micromark-util-decode-string: 1.1.0 micromark-util-normalize-identifier: 1.1.0 @@ -32931,7 +32349,7 @@ snapshots: micromark-util-types@1.1.0: {} - micromark@3.2.0(supports-color@7.2.0): + micromark@3.2.0: dependencies: '@types/debug': 4.1.13 debug: 4.4.3(supports-color@7.2.0) @@ -33000,7 +32418,7 @@ snapshots: mini-css-extract-plugin@2.9.4(webpack@5.105.0(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1)): dependencies: schema-utils: 4.3.3 - tapable: 2.3.3 + tapable: 2.3.2 webpack: 5.105.0(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1) minimalistic-assert@1.0.1: {} @@ -33141,26 +32559,10 @@ snapshots: '@msgpackr-extract/msgpackr-extract-win32-x64': 3.0.3 optional: true - msgpackr-extract@3.0.4: - dependencies: - node-gyp-build-optional-packages: 5.2.2 - optionalDependencies: - '@msgpackr-extract/msgpackr-extract-darwin-arm64': 3.0.4 - '@msgpackr-extract/msgpackr-extract-darwin-x64': 3.0.4 - '@msgpackr-extract/msgpackr-extract-linux-arm': 3.0.4 - '@msgpackr-extract/msgpackr-extract-linux-arm64': 3.0.4 - '@msgpackr-extract/msgpackr-extract-linux-x64': 3.0.4 - '@msgpackr-extract/msgpackr-extract-win32-x64': 3.0.4 - optional: true - msgpackr@1.11.10: optionalDependencies: msgpackr-extract: 3.0.3 - msgpackr@1.12.1: - optionalDependencies: - msgpackr-extract: 3.0.4 - muggle-string@0.4.1: {} multicast-dns@7.2.5: @@ -33178,6 +32580,8 @@ snapshots: mylas@2.1.14: {} + nanoid@3.3.12: {} + nanoid@3.3.16: {} napi-postinstall@0.3.4: {} @@ -33193,19 +32597,10 @@ snapshots: secure-keys: 1.0.0 yargs: 16.2.0 - needle@2.9.1: - dependencies: - debug: 3.2.7 - iconv-lite: 0.4.24 - sax: 1.6.1 - transitivePeerDependencies: - - supports-color - optional: true - needle@3.5.0: dependencies: iconv-lite: 0.6.3 - sax: 1.6.1 + sax: 1.6.0 optional: true negotiator@0.6.3: {} @@ -33225,10 +32620,10 @@ snapshots: '@ampproject/remapping': 2.3.0 '@angular/compiler-cli': 20.3.25(@angular/compiler@20.3.25)(typescript@5.8.3) '@rollup/plugin-json': 6.1.0(rollup@4.59.0) - '@rollup/wasm-node': 4.62.3 + '@rollup/wasm-node': 4.60.2 ajv: 8.20.0 ansi-colors: 4.1.3 - browserslist: 4.28.7 + browserslist: 4.28.2 chokidar: 4.0.3 commander: 14.0.3 dependency-graph: 1.0.0 @@ -33236,10 +32631,10 @@ snapshots: find-cache-directory: 6.0.0 injection-js: 2.6.1 jsonc-parser: 3.3.1 - less: 4.8.0 + less: 4.6.6 ora: 8.2.0 - piscina: 5.3.0 - postcss: 8.5.23 + piscina: 5.2.0 + postcss: 8.5.25 rollup-plugin-dts: 6.4.1(rollup@4.59.0)(typescript@5.8.3) rxjs: 7.8.2 sass: 1.99.0 @@ -33248,8 +32643,6 @@ snapshots: typescript: 5.8.3 optionalDependencies: rollup: 4.59.0 - transitivePeerDependencies: - - supports-color ng-packagr@21.2.3(@angular/compiler-cli@22.0.2(@angular/compiler@22.0.2)(typescript@4.9.5))(tslib@2.8.1)(typescript@4.9.5): dependencies: @@ -33270,7 +32663,7 @@ snapshots: less: 4.6.6 ora: 9.3.0 piscina: 5.2.0 - postcss: 8.5.23 + postcss: 8.5.25 rollup-plugin-dts: 6.4.1(rollup@4.59.0)(typescript@4.9.5) rxjs: 7.8.2 sass: 1.99.0 @@ -33328,8 +32721,8 @@ snapshots: make-fetch-happen: 15.0.5 nopt: 9.0.0 proc-log: 6.1.0 - semver: 7.8.5 - tar: 7.5.21 + semver: 7.8.4 + tar: 7.5.22 tinyglobby: 0.2.17 which: 6.0.1 transitivePeerDependencies: @@ -33341,13 +32734,13 @@ snapshots: dependencies: growly: 1.3.0 is-wsl: 2.2.0 - semver: 7.8.5 + semver: 7.8.4 shellwords: 0.1.1 uuid: 14.0.0 which: 2.0.2 optional: true - node-releases@2.0.51: {} + node-releases@2.0.37: {} node-source-walk@6.0.2: dependencies: @@ -33377,8 +32770,8 @@ snapshots: normalize-package-data@3.0.3: dependencies: hosted-git-info: 4.1.0 - is-core-module: 2.16.2 - semver: 7.8.5 + is-core-module: 2.16.1 + semver: 7.8.4 validate-npm-package-license: 3.0.4 normalize-path@3.0.0: {} @@ -33391,7 +32784,7 @@ snapshots: npm-install-checks@8.0.0: dependencies: - semver: 7.8.5 + semver: 7.8.4 npm-normalize-package-bin@5.0.0: {} @@ -33399,14 +32792,14 @@ snapshots: dependencies: hosted-git-info: 9.0.2 proc-log: 5.0.0 - semver: 7.8.5 + semver: 7.8.4 validate-npm-package-name: 6.0.2 npm-package-arg@13.0.2: dependencies: hosted-git-info: 9.0.2 proc-log: 6.1.0 - semver: 7.8.5 + semver: 7.8.4 validate-npm-package-name: 7.0.2 npm-packlist@10.0.4: @@ -33419,7 +32812,7 @@ snapshots: npm-install-checks: 8.0.0 npm-normalize-package-bin: 5.0.0 npm-package-arg: 13.0.2 - semver: 7.8.5 + semver: 7.8.4 npm-registry-fetch@19.1.1: dependencies: @@ -33458,9 +32851,9 @@ snapshots: nullthrows@1.1.1: {} - nwsapi@2.2.24: {} + nwsapi@2.2.23: {} - nx@23.0.1(@swc/core@1.15.30(@swc/helpers@0.5.21)): + nx@23.0.1(@swc/core@1.15.30(@swc/helpers@0.5.21))(debug@4.4.3): dependencies: '@emnapi/core': 1.4.5 '@emnapi/runtime': 1.4.5 @@ -33475,7 +32868,7 @@ snapshots: ansi-styles: 4.3.0 argparse: 2.0.1 asynckit: 0.4.0 - axios: 1.18.1(supports-color@7.2.0) + axios: 1.19.0(supports-color@7.2.0) balanced-match: 4.0.3 base64-js: 1.5.1 bl: 4.1.0 @@ -33829,7 +33222,7 @@ snapshots: package-json-from-dist@1.0.1: {} - pacote@21.0.4(supports-color@7.2.0): + pacote@21.0.4: dependencies: '@npmcli/git': 7.0.2 '@npmcli/installed-package-contents': 4.0.0 @@ -33845,9 +33238,9 @@ snapshots: npm-registry-fetch: 19.1.1 proc-log: 6.1.0 promise-retry: 2.0.1 - sigstore: 4.1.1(supports-color@7.2.0) + sigstore: 4.1.1 ssri: 13.0.1 - tar: 7.5.21 + tar: 7.5.22 transitivePeerDependencies: - supports-color @@ -33867,9 +33260,9 @@ snapshots: npm-pick-manifest: 11.0.3 npm-registry-fetch: 19.1.1 proc-log: 6.1.0 - sigstore: 4.1.1(supports-color@7.2.0) + sigstore: 4.1.1 ssri: 13.0.1 - tar: 7.5.21 + tar: 7.5.22 transitivePeerDependencies: - supports-color @@ -34039,8 +33432,6 @@ snapshots: picomatch@4.0.4: {} - picomatch@4.0.5: {} - pidtree@0.5.0: {} pidtree@0.6.0: {} @@ -34070,10 +33461,6 @@ snapshots: optionalDependencies: '@napi-rs/nice': 1.1.1 - piscina@5.3.0: - optionalDependencies: - '@napi-rs/nice': 1.1.1 - pkce-challenge@5.0.1: {} pkg-dir@4.2.0: @@ -34114,7 +33501,7 @@ snapshots: pngjs@6.0.0: {} - portfinder@1.0.38(supports-color@7.2.0): + portfinder@1.0.38: dependencies: async: 3.2.6 debug: 4.4.3(supports-color@7.2.0) @@ -34127,26 +33514,26 @@ snapshots: dependencies: htmlparser2: 8.0.2 js-tokens: 9.0.1 - postcss: 8.5.23 - postcss-safe-parser: 6.0.0(postcss@8.5.23) + postcss: 8.5.25 + postcss-safe-parser: 6.0.0(postcss@8.5.25) - postcss-loader@8.1.1(postcss@8.5.23)(typescript@5.8.3)(webpack@5.105.0(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1)): + postcss-loader@8.1.1(postcss@8.5.25)(typescript@5.8.3)(webpack@5.105.0(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1)): dependencies: cosmiconfig: 9.0.1(typescript@5.8.3) jiti: 1.21.7 - postcss: 8.5.23 - semver: 7.8.5 + postcss: 8.5.25 + semver: 7.8.4 optionalDependencies: webpack: 5.105.0(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1) transitivePeerDependencies: - typescript - postcss-loader@8.2.1(postcss@8.5.23)(typescript@6.0.3)(webpack@5.106.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1)): + postcss-loader@8.2.1(postcss@8.5.25)(typescript@6.0.3)(webpack@5.106.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1)): dependencies: cosmiconfig: 9.0.1(typescript@6.0.3) jiti: 2.6.1 - postcss: 8.5.23 - semver: 7.8.5 + postcss: 8.5.25 + semver: 7.8.4 optionalDependencies: webpack: 5.106.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1) transitivePeerDependencies: @@ -34154,40 +33541,40 @@ snapshots: postcss-media-query-parser@0.2.3: {} - postcss-modules-extract-imports@3.1.0(postcss@8.5.23): + postcss-modules-extract-imports@3.1.0(postcss@8.5.25): dependencies: - postcss: 8.5.23 + postcss: 8.5.25 - postcss-modules-local-by-default@4.2.0(postcss@8.5.23): + postcss-modules-local-by-default@4.2.0(postcss@8.5.25): dependencies: - icss-utils: 5.1.0(postcss@8.5.23) - postcss: 8.5.23 + icss-utils: 5.1.0(postcss@8.5.25) + postcss: 8.5.25 postcss-selector-parser: 7.1.1 postcss-value-parser: 4.2.0 - postcss-modules-scope@3.2.1(postcss@8.5.23): + postcss-modules-scope@3.2.1(postcss@8.5.25): dependencies: - postcss: 8.5.23 + postcss: 8.5.25 postcss-selector-parser: 7.1.1 - postcss-modules-values@4.0.0(postcss@8.5.23): + postcss-modules-values@4.0.0(postcss@8.5.25): dependencies: - icss-utils: 5.1.0(postcss@8.5.23) - postcss: 8.5.23 + icss-utils: 5.1.0(postcss@8.5.25) + postcss: 8.5.25 postcss-resolve-nested-selector@0.1.6: {} - postcss-safe-parser@6.0.0(postcss@8.5.23): + postcss-safe-parser@6.0.0(postcss@8.5.25): dependencies: - postcss: 8.5.23 + postcss: 8.5.25 - postcss-safe-parser@7.0.1(postcss@8.5.23): + postcss-safe-parser@7.0.1(postcss@8.5.25): dependencies: - postcss: 8.5.23 + postcss: 8.5.25 - postcss-scss@4.0.9(postcss@8.5.23): + postcss-scss@4.0.9(postcss@8.5.25): dependencies: - postcss: 8.5.23 + postcss: 8.5.25 postcss-selector-parser@6.1.2: dependencies: @@ -34201,14 +33588,14 @@ snapshots: postcss-value-parser@4.2.0: {} - postcss-values-parser@6.0.2(postcss@8.5.23): + postcss-values-parser@6.0.2(postcss@8.5.25): dependencies: color-name: 1.1.4 is-url-superb: 4.0.0 - postcss: 8.5.23 + postcss: 8.5.25 quote-unquote: 1.0.0 - postcss@8.5.23: + postcss@8.5.25: dependencies: nanoid: 3.3.16 picocolors: 1.1.1 @@ -34276,15 +33663,6 @@ snapshots: private@0.1.8: {} - probe-image-size@7.3.0: - dependencies: - lodash.merge: 4.6.2 - needle: 2.9.1 - stream-parser: 0.3.1 - transitivePeerDependencies: - - supports-color - optional: true - proc-log@5.0.0: {} proc-log@6.1.0: {} @@ -34398,11 +33776,6 @@ snapshots: dependencies: side-channel: 1.1.0 - qs@6.15.3: - dependencies: - es-define-property: 1.0.1 - side-channel: 1.1.1 - querystring-es3@0.2.1: {} querystringify@2.2.0: {} @@ -34442,8 +33815,6 @@ snapshots: range-parser@1.2.1: {} - range-parser@1.3.0: {} - raw-body@2.5.3: dependencies: bytes: 3.1.2 @@ -34727,10 +34098,10 @@ snapshots: relateurl@0.2.7: {} - remark-parse@10.0.2(supports-color@7.2.0): + remark-parse@10.0.2: dependencies: '@types/mdast': 3.0.15 - mdast-util-from-markdown: 1.3.1(supports-color@7.2.0) + mdast-util-from-markdown: 1.3.1 unified: 10.1.2 transitivePeerDependencies: - supports-color @@ -34808,28 +34179,28 @@ snapshots: adjust-sourcemap-loader: 4.0.0 convert-source-map: 1.9.0 loader-utils: 2.0.4 - postcss: 8.5.23 + postcss: 8.5.25 source-map: 0.6.1 resolve.exports@2.0.3: {} resolve@1.22.10: dependencies: - is-core-module: 2.16.2 + is-core-module: 2.16.1 path-parse: 1.0.7 supports-preserve-symlinks-flag: 1.0.0 resolve@1.22.12: dependencies: es-errors: 1.3.0 - is-core-module: 2.16.2 + is-core-module: 2.16.1 path-parse: 1.0.7 supports-preserve-symlinks-flag: 1.0.0 resolve@2.0.0-next.6: dependencies: es-errors: 1.3.0 - is-core-module: 2.16.2 + is-core-module: 2.16.1 node-exports-info: 1.6.0 object-keys: 1.1.1 path-parse: 1.0.7 @@ -34978,7 +34349,7 @@ snapshots: '@rollup/rollup-win32-x64-msvc': 4.60.2 fsevents: 2.3.3 - router@2.2.0(supports-color@7.2.0): + router@2.2.0: dependencies: debug: 4.4.3(supports-color@7.2.0) depd: 2.0.0 @@ -35109,7 +34480,7 @@ snapshots: sass-embedded@1.93.3: dependencies: - '@bufbuild/protobuf': 2.13.0 + '@bufbuild/protobuf': 2.11.0 buffer-builder: 0.2.0 colorjs.io: 0.5.2 immutable: 5.1.9 @@ -35163,7 +34534,7 @@ snapshots: immutable: 5.1.9 source-map-js: 1.2.1 optionalDependencies: - '@parcel/watcher': 2.6.0 + '@parcel/watcher': 2.5.6 sass@1.93.3: dependencies: @@ -35171,7 +34542,7 @@ snapshots: immutable: 5.1.9 source-map-js: 1.2.1 optionalDependencies: - '@parcel/watcher': 2.6.0 + '@parcel/watcher': 2.5.6 optional: true sass@1.99.0: @@ -35180,9 +34551,9 @@ snapshots: immutable: 5.1.9 source-map-js: 1.2.1 optionalDependencies: - '@parcel/watcher': 2.6.0 + '@parcel/watcher': 2.5.6 - sax@1.6.1: + sax@1.6.0: optional: true saxes@5.0.1: @@ -35268,7 +34639,7 @@ snapshots: transitivePeerDependencies: - supports-color - send@1.2.1(supports-color@7.2.0): + send@1.2.1: dependencies: debug: 4.4.3(supports-color@7.2.0) encodeurl: 2.0.0 @@ -35279,7 +34650,7 @@ snapshots: mime-types: 3.0.2 ms: 2.1.3 on-finished: 2.4.1 - range-parser: 1.3.0 + range-parser: 1.2.1 statuses: 2.0.2 transitivePeerDependencies: - supports-color @@ -35312,7 +34683,7 @@ snapshots: encodeurl: 2.0.0 escape-html: 1.0.3 parseurl: 1.3.3 - send: 1.2.1(supports-color@7.2.0) + send: 1.2.1 transitivePeerDependencies: - supports-color @@ -35408,14 +34779,6 @@ snapshots: side-channel-map: 1.0.1 side-channel-weakmap: 1.0.2 - side-channel@1.1.1: - dependencies: - es-errors: 1.3.0 - object-inspect: 1.13.4 - side-channel-list: 1.0.1 - side-channel-map: 1.0.1 - side-channel-weakmap: 1.0.2 - signal-exit@3.0.7: {} signal-exit@4.1.0: {} @@ -35424,13 +34787,13 @@ snapshots: dependencies: jquery: 4.0.0 - sigstore@4.1.1(supports-color@7.2.0): + sigstore@4.1.1: dependencies: '@sigstore/bundle': 4.0.0 '@sigstore/core': 3.2.1 '@sigstore/protobuf-specs': 0.5.1 '@sigstore/sign': 4.1.1 - '@sigstore/tuf': 4.0.2(supports-color@7.2.0) + '@sigstore/tuf': 4.0.2 '@sigstore/verify': 3.1.1 transitivePeerDependencies: - supports-color @@ -35477,16 +34840,16 @@ snapshots: smol-toml@1.6.1: {} - socket.io-adapter@2.5.8: + socket.io-adapter@2.5.6: dependencies: debug: 4.4.3(supports-color@7.2.0) - ws: 8.21.1 + ws: 8.21.0 transitivePeerDependencies: - bufferutil - supports-color - utf-8-validate - socket.io-parser@4.2.7: + socket.io-parser@4.2.6: dependencies: '@socket.io/component-emitter': 3.1.2 debug: 4.4.3(supports-color@7.2.0) @@ -35500,8 +34863,8 @@ snapshots: cors: 2.8.6 debug: 4.4.3(supports-color@7.2.0) engine.io: 6.6.9 - socket.io-adapter: 2.5.8 - socket.io-parser: 4.2.7 + socket.io-adapter: 2.5.6 + socket.io-parser: 4.2.6 transitivePeerDependencies: - bufferutil - supports-color @@ -35692,13 +35055,6 @@ snapshots: readable-stream: 3.6.2 xtend: 4.0.2 - stream-parser@0.3.1: - dependencies: - debug: 2.6.9 - transitivePeerDependencies: - - supports-color - optional: true - stream-splicer@2.0.1: dependencies: inherits: 2.0.4 @@ -35889,14 +35245,14 @@ snapshots: postcss-html: 1.8.1 stylelint: 16.22.0(typescript@6.0.3) - stylelint-config-recommended-scss@14.1.0(postcss@8.5.23)(stylelint@16.22.0(typescript@6.0.3)): + stylelint-config-recommended-scss@14.1.0(postcss@8.5.25)(stylelint@16.22.0(typescript@6.0.3)): dependencies: - postcss-scss: 4.0.9(postcss@8.5.23) + postcss-scss: 4.0.9(postcss@8.5.25) stylelint: 16.22.0(typescript@6.0.3) stylelint-config-recommended: 14.0.1(stylelint@16.22.0(typescript@6.0.3)) stylelint-scss: 6.10.0(stylelint@16.22.0(typescript@6.0.3)) optionalDependencies: - postcss: 8.5.23 + postcss: 8.5.25 stylelint-config-recommended-vue@1.6.1(postcss-html@1.8.1)(stylelint@16.22.0(typescript@6.0.3)): dependencies: @@ -35926,13 +35282,13 @@ snapshots: dependencies: stylelint: 16.22.0(typescript@6.0.3) - stylelint-config-standard-scss@14.0.0(postcss@8.5.23)(stylelint@16.22.0(typescript@6.0.3)): + stylelint-config-standard-scss@14.0.0(postcss@8.5.25)(stylelint@16.22.0(typescript@6.0.3)): dependencies: stylelint: 16.22.0(typescript@6.0.3) - stylelint-config-recommended-scss: 14.1.0(postcss@8.5.23)(stylelint@16.22.0(typescript@6.0.3)) + stylelint-config-recommended-scss: 14.1.0(postcss@8.5.25)(stylelint@16.22.0(typescript@6.0.3)) stylelint-config-standard: 36.0.1(stylelint@16.22.0(typescript@6.0.3)) optionalDependencies: - postcss: 8.5.23 + postcss: 8.5.25 stylelint-config-standard@36.0.1(stylelint@16.22.0(typescript@6.0.3)): dependencies: @@ -36000,9 +35356,9 @@ snapshots: micromatch: 4.0.8 normalize-path: 3.0.0 picocolors: 1.1.1 - postcss: 8.5.23 + postcss: 8.5.25 postcss-resolve-nested-selector: 0.1.6 - postcss-safe-parser: 6.0.0(postcss@8.5.23) + postcss-safe-parser: 6.0.0(postcss@8.5.25) postcss-selector-parser: 6.1.2 postcss-value-parser: 4.2.0 resolve-from: 5.0.0 @@ -36046,9 +35402,9 @@ snapshots: micromatch: 4.0.8 normalize-path: 3.0.0 picocolors: 1.1.1 - postcss: 8.5.23 + postcss: 8.5.25 postcss-resolve-nested-selector: 0.1.6 - postcss-safe-parser: 6.0.0(postcss@8.5.23) + postcss-safe-parser: 6.0.0(postcss@8.5.25) postcss-selector-parser: 6.1.2 postcss-value-parser: 4.2.0 resolve-from: 5.0.0 @@ -36092,9 +35448,9 @@ snapshots: micromatch: 4.0.8 normalize-path: 3.0.0 picocolors: 1.1.1 - postcss: 8.5.23 + postcss: 8.5.25 postcss-resolve-nested-selector: 0.1.6 - postcss-safe-parser: 6.0.0(postcss@8.5.23) + postcss-safe-parser: 6.0.0(postcss@8.5.25) postcss-selector-parser: 6.1.2 postcss-value-parser: 4.2.0 resolve-from: 5.0.0 @@ -36109,7 +35465,7 @@ snapshots: - supports-color - typescript - stylelint@16.22.0(supports-color@7.2.0)(typescript@5.9.3): + stylelint@16.22.0(typescript@5.9.3): dependencies: '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4) '@csstools/css-tokenizer': 3.0.4 @@ -36138,9 +35494,9 @@ snapshots: micromatch: 4.0.8 normalize-path: 3.0.0 picocolors: 1.1.1 - postcss: 8.5.23 + postcss: 8.5.25 postcss-resolve-nested-selector: 0.1.6 - postcss-safe-parser: 7.0.1(postcss@8.5.23) + postcss-safe-parser: 7.0.1(postcss@8.5.25) postcss-selector-parser: 7.1.1 postcss-value-parser: 4.2.0 resolve-from: 5.0.0 @@ -36182,9 +35538,9 @@ snapshots: micromatch: 4.0.8 normalize-path: 3.0.0 picocolors: 1.1.1 - postcss: 8.5.23 + postcss: 8.5.25 postcss-resolve-nested-selector: 0.1.6 - postcss-safe-parser: 7.0.1(postcss@8.5.23) + postcss-safe-parser: 7.0.1(postcss@8.5.25) postcss-selector-parser: 7.1.1 postcss-value-parser: 4.2.0 resolve-from: 5.0.0 @@ -36274,14 +35630,8 @@ snapshots: transitivePeerDependencies: - supports-color - systemjs-plugin-babel@0.0.25: {} - - systemjs-plugin-css@0.1.37: {} - systemjs-plugin-json@0.3.0: {} - systemjs-plugin-text@0.0.11: {} - systemjs@0.19.41: dependencies: when: 3.7.8 @@ -36300,8 +35650,6 @@ snapshots: tapable@2.3.2: {} - tapable@2.3.3: {} - tar-fs@3.1.2: dependencies: pump: 3.0.4 @@ -36333,7 +35681,7 @@ snapshots: - bare-buffer - react-native-b4a - tar@7.5.21: + tar@7.5.22: dependencies: '@isaacs/fs-minipass': 4.0.1 chownr: 3.0.0 @@ -36435,7 +35783,7 @@ snapshots: commander: 2.20.3 source-map-support: 0.5.21 - terser@5.49.0: + terser@5.47.1: dependencies: '@jridgewell/source-map': 0.3.11 acorn: 8.17.0 @@ -36449,7 +35797,7 @@ snapshots: glob: 7.2.3 minimatch: 3.1.5 - testcafe-browser-tools@2.0.26(supports-color@7.2.0): + testcafe-browser-tools@2.0.26: dependencies: array-find: 1.0.0 debug: 4.4.3(supports-color@7.2.0) @@ -36462,7 +35810,7 @@ snapshots: lodash: 4.18.1 mkdirp: 0.5.6 mustache: 2.3.2 - nanoid: 3.3.16 + nanoid: 3.3.12 os-family: 1.1.0 pify: 2.3.0 pinkie: 2.0.4 @@ -36489,7 +35837,7 @@ snapshots: merge-stream: 1.0.1 mime: 1.4.1 mustache: 2.3.2 - nanoid: 3.3.16 + nanoid: 3.3.12 os-family: 1.1.0 parse5: 7.3.0 pinkie: 2.0.4 @@ -36537,7 +35885,7 @@ snapshots: testcafe-selector-generator@0.1.0: {} - testcafe@3.7.5(supports-color@7.2.0): + testcafe@3.7.5: dependencies: '@babel/core': 7.29.7 '@babel/plugin-proposal-decorators': 7.29.7(@babel/core@7.29.7) @@ -36551,11 +35899,11 @@ snapshots: '@babel/plugin-transform-for-of': 7.29.7(@babel/core@7.29.7) '@babel/plugin-transform-object-rest-spread': 7.29.7(@babel/core@7.29.7) '@babel/plugin-transform-private-methods': 7.29.7(@babel/core@7.29.7) - '@babel/plugin-transform-runtime': 7.23.3(@babel/core@7.29.7)(supports-color@7.2.0) + '@babel/plugin-transform-runtime': 7.23.3(@babel/core@7.29.7) '@babel/preset-env': 7.29.7(@babel/core@7.29.7) '@babel/preset-flow': 7.27.1(@babel/core@7.29.7) '@babel/preset-react': 7.29.7(@babel/core@7.29.7) - '@babel/runtime': 7.29.7 + '@babel/runtime': 7.29.2 '@devexpress/bin-v8-flags-filter': 1.3.0 '@devexpress/callsite-record': 4.1.7 '@types/node': 20.14.5 @@ -36602,7 +35950,7 @@ snapshots: moment: 2.30.1 moment-duration-format-commonjs: 1.0.1 mustache: 2.3.2 - nanoid: 3.3.16 + nanoid: 3.3.12 os-family: 1.1.0 parse5: 1.5.1 pify: 2.3.0 @@ -36616,11 +35964,11 @@ snapshots: resolve-cwd: 1.0.0 resolve-from: 4.0.0 sanitize-filename: 1.6.4 - semver: 7.8.5 + semver: 7.8.4 set-cookie-parser: 2.7.2 source-map-support: 0.5.21 strip-bom: 2.0.0 - testcafe-browser-tools: 2.0.26(supports-color@7.2.0) + testcafe-browser-tools: 2.0.26 testcafe-hammerhead: 31.7.8(patch_hash=8655c07786177d3b611a05abf6b0ea87d32796eb2601f92a800ef041095f264c) testcafe-legacy-api: 5.1.8 testcafe-reporter-json: 2.2.0 @@ -36690,13 +36038,13 @@ snapshots: tinyglobby@0.2.16: dependencies: - fdir: 6.5.0(picomatch@4.0.5) - picomatch: 4.0.5 + fdir: 6.5.0(picomatch@4.0.4) + picomatch: 4.0.4 tinyglobby@0.2.17: dependencies: - fdir: 6.5.0(picomatch@4.0.5) - picomatch: 4.0.5 + fdir: 6.5.0(picomatch@4.0.4) + picomatch: 4.0.4 tinyrainbow@2.0.0: {} @@ -36832,11 +36180,11 @@ snapshots: '@jest/types': 29.6.3 babel-jest: 29.7.0(@babel/core@7.29.7) - ts-jest@29.1.2(@babel/core@7.29.7)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.29.7))(jest@30.2.0(@types/node@26.1.1)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@26.1.1)(typescript@6.0.3)))(typescript@5.9.3): + ts-jest@29.1.2(@babel/core@7.29.7)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.29.7))(jest@30.2.0(@types/node@25.9.3)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@25.9.3)(typescript@6.0.3)))(typescript@5.9.3): dependencies: bs-logger: 0.2.6 fast-json-stable-stringify: 2.1.0 - jest: 30.2.0(@types/node@26.1.1)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@26.1.1)(typescript@6.0.3)) + jest: 30.2.0(@types/node@25.9.3)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@25.9.3)(typescript@6.0.3)) jest-util: 29.7.0 json5: 2.2.3 lodash.memoize: 4.1.2 @@ -36858,7 +36206,7 @@ snapshots: json5: 2.2.3 lodash.memoize: 4.1.2 make-error: 1.3.6 - semver: 7.8.5 + semver: 7.8.4 typescript: 5.9.3 yargs-parser: 21.1.1 optionalDependencies: @@ -36877,7 +36225,7 @@ snapshots: json5: 2.2.3 lodash.memoize: 4.1.2 make-error: 1.3.6 - semver: 7.8.5 + semver: 7.8.4 typescript: 4.9.5 yargs-parser: 21.1.1 optionalDependencies: @@ -36895,7 +36243,7 @@ snapshots: json5: 2.2.3 lodash.memoize: 4.1.2 make-error: 1.3.6 - semver: 7.8.5 + semver: 7.8.4 typescript: 5.9.3 yargs-parser: 21.1.1 optionalDependencies: @@ -36904,16 +36252,16 @@ snapshots: '@jest/types': 29.6.3 babel-jest: 29.7.0(@babel/core@7.29.7) - ts-jest@29.1.3(@babel/core@7.29.7)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.29.7))(jest@30.2.0(@types/node@26.1.1)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@26.1.1)(typescript@4.9.5)))(typescript@4.9.5): + ts-jest@29.1.3(@babel/core@7.29.7)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.29.7))(jest@30.2.0(@types/node@25.9.3)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@25.9.3)(typescript@4.9.5)))(typescript@4.9.5): dependencies: bs-logger: 0.2.6 fast-json-stable-stringify: 2.1.0 - jest: 30.2.0(@types/node@26.1.1)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@26.1.1)(typescript@4.9.5)) + jest: 30.2.0(@types/node@25.9.3)(babel-plugin-macros@3.1.0)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@25.9.3)(typescript@4.9.5)) jest-util: 29.7.0 json5: 2.2.3 lodash.memoize: 4.1.2 make-error: 1.3.6 - semver: 7.8.5 + semver: 7.8.4 typescript: 4.9.5 yargs-parser: 21.1.1 optionalDependencies: @@ -37068,14 +36416,14 @@ snapshots: optionalDependencies: '@swc/core': 1.15.30(@swc/helpers@0.5.21) - ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@26.1.1)(typescript@4.9.5): + ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@25.9.3)(typescript@4.9.5): dependencies: '@cspotcode/source-map-support': 0.8.1 '@tsconfig/node10': 1.0.12 '@tsconfig/node12': 1.0.11 '@tsconfig/node14': 1.0.3 '@tsconfig/node16': 1.0.4 - '@types/node': 26.1.1 + '@types/node': 25.9.3 acorn: 8.17.0 acorn-walk: 8.3.5 arg: 4.1.3 @@ -37089,14 +36437,14 @@ snapshots: '@swc/core': 1.15.30(@swc/helpers@0.5.21) optional: true - ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@26.1.1)(typescript@6.0.3): + ts-node@10.9.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(@types/node@25.9.3)(typescript@6.0.3): dependencies: '@cspotcode/source-map-support': 0.8.1 '@tsconfig/node10': 1.0.12 '@tsconfig/node12': 1.0.11 '@tsconfig/node14': 1.0.3 '@tsconfig/node16': 1.0.4 - '@types/node': 26.1.1 + '@types/node': 25.9.3 acorn: 8.17.0 acorn-walk: 8.3.5 arg: 4.1.3 @@ -37161,7 +36509,7 @@ snapshots: tty-browserify@0.0.1: {} - tuf-js@4.1.0(supports-color@7.2.0): + tuf-js@4.1.0: dependencies: '@tufjs/models': 4.1.0 debug: 4.4.3(supports-color@7.2.0) @@ -37194,6 +36542,12 @@ snapshots: media-typer: 0.3.0 mime-types: 2.1.35 + type-is@2.0.1: + dependencies: + content-type: 1.0.5 + media-typer: 1.1.0 + mime-types: 3.0.2 + type-is@2.1.0: dependencies: content-type: 2.0.0 @@ -37272,10 +36626,10 @@ snapshots: undici-types@6.21.0: {} - undici-types@8.3.0: + undici-types@7.24.6: optional: true - undici@7.29.0: + undici@7.28.0: optional: true unicode-canonical-property-names-ecmascript@2.0.1: {} @@ -37395,12 +36749,6 @@ snapshots: escalade: 3.2.0 picocolors: 1.1.1 - update-browserslist-db@1.2.3(browserslist@4.28.7): - dependencies: - browserslist: 4.28.7 - escalade: 3.2.0 - picocolors: 1.1.1 - uri-js@4.4.1: dependencies: punycode: 2.3.1 @@ -37523,54 +36871,54 @@ snapshots: remove-trailing-separator: 1.1.0 replace-ext: 1.0.1 - vite@7.3.5(@types/node@20.19.37)(jiti@2.6.1)(less@4.6.4)(lightningcss@1.32.0)(sass-embedded@1.93.3)(sass@1.99.0)(terser@5.46.2)(yaml@2.9.0): + vite@7.3.5(@types/node@20.11.17)(jiti@2.6.1)(less@4.4.0)(lightningcss@1.32.0)(sass-embedded@1.93.3)(sass@1.90.0)(terser@5.43.1)(yaml@2.9.0): dependencies: esbuild: 0.28.1 fdir: 6.5.0(picomatch@4.0.4) picomatch: 4.0.4 - postcss: 8.5.23 + postcss: 8.5.25 rollup: 4.59.0 tinyglobby: 0.2.17 optionalDependencies: - '@types/node': 20.19.37 + '@types/node': 20.11.17 fsevents: 2.3.3 jiti: 2.6.1 - less: 4.6.4 + less: 4.4.0 lightningcss: 1.32.0 - sass: 1.99.0 + sass: 1.90.0 sass-embedded: 1.93.3 - terser: 5.46.2 + terser: 5.43.1 yaml: 2.9.0 - vite@7.3.6(@types/node@20.11.17)(jiti@2.6.1)(less@4.4.0)(lightningcss@1.32.0)(sass-embedded@1.93.3)(sass@1.90.0)(terser@5.43.1)(yaml@2.9.0): + vite@7.3.5(@types/node@20.19.37)(jiti@2.6.1)(less@4.6.4)(lightningcss@1.32.0)(sass-embedded@1.93.3)(sass@1.99.0)(terser@5.46.2)(yaml@2.9.0): dependencies: esbuild: 0.28.1 fdir: 6.5.0(picomatch@4.0.4) picomatch: 4.0.4 - postcss: 8.5.23 + postcss: 8.5.25 rollup: 4.59.0 tinyglobby: 0.2.17 optionalDependencies: - '@types/node': 20.11.17 + '@types/node': 20.19.37 fsevents: 2.3.3 jiti: 2.6.1 - less: 4.4.0 + less: 4.6.4 lightningcss: 1.32.0 - sass: 1.90.0 + sass: 1.99.0 sass-embedded: 1.93.3 - terser: 5.43.1 + terser: 5.46.2 yaml: 2.9.0 - vite@7.3.6(@types/node@26.1.1)(jiti@2.6.1)(less@4.4.0)(lightningcss@1.32.0)(sass-embedded@1.93.3)(sass@1.90.0)(terser@5.43.1)(yaml@2.9.0): + vite@7.3.5(@types/node@25.9.3)(jiti@2.6.1)(less@4.4.0)(lightningcss@1.32.0)(sass-embedded@1.93.3)(sass@1.90.0)(terser@5.43.1)(yaml@2.9.0): dependencies: esbuild: 0.28.1 fdir: 6.5.0(picomatch@4.0.4) picomatch: 4.0.4 - postcss: 8.5.23 + postcss: 8.5.25 rollup: 4.59.0 tinyglobby: 0.2.17 optionalDependencies: - '@types/node': 26.1.1 + '@types/node': 25.9.3 fsevents: 2.3.3 jiti: 2.6.1 less: 4.4.0 @@ -37580,51 +36928,51 @@ snapshots: terser: 5.43.1 yaml: 2.9.0 - vite@7.3.6(@types/node@26.1.1)(jiti@2.6.1)(less@4.8.0)(lightningcss@1.32.0)(sass-embedded@1.93.3)(sass@1.90.0)(terser@5.49.0)(yaml@2.9.0): + vite@7.3.5(@types/node@25.9.3)(jiti@2.6.1)(less@4.6.6)(lightningcss@1.32.0)(sass-embedded@1.93.3)(sass@1.90.0)(terser@5.47.1)(yaml@2.9.0): dependencies: esbuild: 0.28.1 fdir: 6.5.0(picomatch@4.0.4) picomatch: 4.0.4 - postcss: 8.5.23 + postcss: 8.5.25 rollup: 4.59.0 tinyglobby: 0.2.17 optionalDependencies: - '@types/node': 26.1.1 + '@types/node': 25.9.3 fsevents: 2.3.3 jiti: 2.6.1 - less: 4.8.0 + less: 4.6.6 lightningcss: 1.32.0 sass: 1.90.0 sass-embedded: 1.93.3 - terser: 5.49.0 + terser: 5.47.1 yaml: 2.9.0 optional: true - vite@7.3.6(@types/node@26.1.1)(jiti@2.6.1)(less@4.8.0)(lightningcss@1.32.0)(sass-embedded@1.93.3)(sass@1.99.0)(terser@5.49.0)(yaml@2.9.0): + vite@7.3.5(@types/node@25.9.3)(jiti@2.6.1)(less@4.6.6)(lightningcss@1.32.0)(sass-embedded@1.93.3)(sass@1.99.0)(terser@5.47.1)(yaml@2.9.0): dependencies: esbuild: 0.28.1 fdir: 6.5.0(picomatch@4.0.4) picomatch: 4.0.4 - postcss: 8.5.23 + postcss: 8.5.25 rollup: 4.59.0 tinyglobby: 0.2.17 optionalDependencies: - '@types/node': 26.1.1 + '@types/node': 25.9.3 fsevents: 2.3.3 jiti: 2.6.1 - less: 4.8.0 + less: 4.6.6 lightningcss: 1.32.0 sass: 1.99.0 sass-embedded: 1.93.3 - terser: 5.49.0 + terser: 5.47.1 yaml: 2.9.0 optional: true - vite@8.0.16(@types/node@20.19.37)(esbuild@0.28.1)(jiti@2.6.1)(less@4.8.0)(sass-embedded@1.93.3)(sass@1.99.0)(terser@5.49.0)(yaml@2.8.3): + vite@8.0.16(@types/node@20.19.37)(esbuild@0.28.1)(jiti@2.6.1)(less@4.6.6)(sass-embedded@1.93.3)(sass@1.99.0)(terser@5.47.1)(yaml@2.8.3): dependencies: lightningcss: 1.32.0 picomatch: 4.0.4 - postcss: 8.5.23 + postcss: 8.5.25 rolldown: 1.0.3 tinyglobby: 0.2.17 optionalDependencies: @@ -37632,28 +36980,28 @@ snapshots: esbuild: 0.28.1 fsevents: 2.3.3 jiti: 2.6.1 - less: 4.8.0 + less: 4.6.6 sass: 1.99.0 sass-embedded: 1.93.3 - terser: 5.49.0 + terser: 5.47.1 yaml: 2.8.3 - vite@8.0.16(@types/node@26.1.1)(esbuild@0.28.1)(jiti@2.6.1)(less@4.8.0)(sass-embedded@1.93.3)(sass@1.99.0)(terser@5.49.0)(yaml@2.8.3): + vite@8.0.16(@types/node@25.9.3)(esbuild@0.28.1)(jiti@2.6.1)(less@4.6.6)(sass-embedded@1.93.3)(sass@1.99.0)(terser@5.47.1)(yaml@2.8.3): dependencies: lightningcss: 1.32.0 picomatch: 4.0.4 - postcss: 8.5.23 + postcss: 8.5.25 rolldown: 1.0.3 tinyglobby: 0.2.17 optionalDependencies: - '@types/node': 26.1.1 + '@types/node': 25.9.3 esbuild: 0.28.1 fsevents: 2.3.3 jiti: 2.6.1 - less: 4.8.0 + less: 4.6.6 sass: 1.99.0 sass-embedded: 1.93.3 - terser: 5.49.0 + terser: 5.47.1 yaml: 2.8.3 vm-browserify@1.1.2: {} @@ -37662,19 +37010,6 @@ snapshots: vscode-uri@3.1.0: {} - vue-eslint-parser@10.0.0(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0): - dependencies: - debug: 4.4.3(supports-color@7.2.0) - eslint: 9.39.4(jiti@2.6.1)(supports-color@7.2.0) - eslint-scope: 8.4.0 - eslint-visitor-keys: 4.2.1 - espree: 10.4.0 - esquery: 1.7.0 - lodash: 4.18.1 - semver: 7.8.5 - transitivePeerDependencies: - - supports-color - vue-eslint-parser@10.0.0(eslint@9.39.4(jiti@2.6.1)): dependencies: debug: 4.4.3(supports-color@7.2.0) @@ -37684,20 +37019,20 @@ snapshots: espree: 10.4.0 esquery: 1.7.0 lodash: 4.18.1 - semver: 7.8.5 + semver: 7.8.4 transitivePeerDependencies: - supports-color - vue-eslint-parser@9.4.3(eslint@9.39.4(jiti@2.6.1)(supports-color@7.2.0))(supports-color@7.2.0): + vue-eslint-parser@9.4.3(eslint@9.39.4(jiti@2.6.1)): dependencies: debug: 4.4.3(supports-color@7.2.0) - eslint: 9.39.4(jiti@2.6.1)(supports-color@7.2.0) + eslint: 9.39.4(jiti@2.6.1) eslint-scope: 7.2.2 eslint-visitor-keys: 3.4.3 espree: 9.6.1 esquery: 1.7.0 lodash: 4.18.1 - semver: 7.8.5 + semver: 7.8.4 transitivePeerDependencies: - supports-color @@ -37777,10 +37112,6 @@ snapshots: glob-to-regexp: 0.4.1 graceful-fs: 4.2.11 - watchpack@2.5.2: - dependencies: - graceful-fs: 4.2.11 - wbuf@1.7.3: dependencies: minimalistic-assert: 1.0.1 @@ -37852,7 +37183,7 @@ snapshots: memfs: 4.57.2(tslib@2.8.1) mime-types: 2.1.35 on-finished: 2.4.1 - range-parser: 1.3.0 + range-parser: 1.2.1 schema-utils: 4.3.3 optionalDependencies: webpack: 5.105.0(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1) @@ -37865,7 +37196,7 @@ snapshots: memfs: 4.57.2(tslib@2.8.1) mime-types: 3.0.2 on-finished: 2.4.1 - range-parser: 1.3.0 + range-parser: 1.2.1 schema-utils: 4.3.3 optionalDependencies: webpack: 5.105.0(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1) @@ -37878,7 +37209,7 @@ snapshots: memfs: 4.57.2(tslib@2.8.1) mime-types: 3.0.2 on-finished: 2.4.1 - range-parser: 1.3.0 + range-parser: 1.2.1 schema-utils: 4.3.3 optionalDependencies: webpack: 5.105.4(@swc/core@1.15.30(@swc/helpers@0.5.21))(webpack-cli@5.1.4) @@ -37891,7 +37222,7 @@ snapshots: memfs: 4.57.2(tslib@2.8.1) mime-types: 3.0.2 on-finished: 2.4.1 - range-parser: 1.3.0 + range-parser: 1.2.1 schema-utils: 4.3.3 optionalDependencies: webpack: 5.106.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1) @@ -37939,7 +37270,7 @@ snapshots: sockjs: 0.3.24 spdy: 4.0.2 webpack-dev-middleware: 7.4.5(tslib@2.8.1)(webpack@5.105.4) - ws: 8.21.1 + ws: 8.21.0 optionalDependencies: webpack: 5.105.4(@swc/core@1.15.30(@swc/helpers@0.5.21))(webpack-cli@5.1.4) webpack-cli: 5.1.4(webpack-dev-server@5.2.6)(webpack@5.105.4) @@ -37978,7 +37309,7 @@ snapshots: sockjs: 0.3.24 spdy: 4.0.2 webpack-dev-middleware: 7.4.5(tslib@2.8.1)(webpack@5.105.0(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1)) - ws: 8.21.1 + ws: 8.21.0 optionalDependencies: webpack: 5.105.0(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1) transitivePeerDependencies: @@ -38016,7 +37347,7 @@ snapshots: sockjs: 0.3.24 spdy: 4.0.2 webpack-dev-middleware: 7.4.5(tslib@2.8.1)(webpack@5.106.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1)) - ws: 8.21.1 + ws: 8.21.0 optionalDependencies: webpack: 5.106.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1) transitivePeerDependencies: @@ -38049,8 +37380,6 @@ snapshots: webpack-sources@3.3.4: {} - webpack-sources@3.5.1: {} - webpack-stream@7.0.0(webpack@5.105.4(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1)): dependencies: fancy-log: 1.3.3 @@ -38089,30 +37418,30 @@ snapshots: webpack@5.105.0(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1): dependencies: '@types/eslint-scope': 3.7.7 - '@types/estree': 1.0.9 + '@types/estree': 1.0.8 '@types/json-schema': 7.0.15 '@webassemblyjs/ast': 1.14.1 '@webassemblyjs/wasm-edit': 1.14.1 '@webassemblyjs/wasm-parser': 1.14.1 acorn: 8.17.0 acorn-import-phases: 1.0.4(acorn@8.17.0) - browserslist: 4.28.7 + browserslist: 4.28.2 chrome-trace-event: 1.0.4 - enhanced-resolve: 5.24.3 - es-module-lexer: 2.3.1 + enhanced-resolve: 5.20.1 + es-module-lexer: 2.0.0 eslint-scope: 5.1.1 events: 3.3.0 glob-to-regexp: 0.4.1 graceful-fs: 4.2.11 json-parse-even-better-errors: 2.3.1 - loader-runner: 4.3.2 + loader-runner: 4.3.1 mime-types: 2.1.35 neo-async: 2.6.2 schema-utils: 4.3.3 - tapable: 2.3.3 + tapable: 2.3.2 terser-webpack-plugin: 5.3.17(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1)(webpack@5.105.0(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1)) - watchpack: 2.5.2 - webpack-sources: 3.5.1 + watchpack: 2.5.1 + webpack-sources: 3.3.4 transitivePeerDependencies: - '@swc/core' - esbuild @@ -38253,29 +37582,29 @@ snapshots: webpack@5.106.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1): dependencies: '@types/eslint-scope': 3.7.7 - '@types/estree': 1.0.9 + '@types/estree': 1.0.8 '@types/json-schema': 7.0.15 '@webassemblyjs/ast': 1.14.1 '@webassemblyjs/wasm-edit': 1.14.1 '@webassemblyjs/wasm-parser': 1.14.1 acorn: 8.17.0 acorn-import-phases: 1.0.4(acorn@8.17.0) - browserslist: 4.28.7 + browserslist: 4.28.2 chrome-trace-event: 1.0.4 - enhanced-resolve: 5.24.3 - es-module-lexer: 2.3.1 + enhanced-resolve: 5.20.1 + es-module-lexer: 2.0.0 eslint-scope: 5.1.1 events: 3.3.0 glob-to-regexp: 0.4.1 graceful-fs: 4.2.11 - loader-runner: 4.3.2 + loader-runner: 4.3.1 mime-db: 1.54.0 neo-async: 2.6.2 schema-utils: 4.3.3 - tapable: 2.3.3 + tapable: 2.3.2 terser-webpack-plugin: 5.3.17(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1)(webpack@5.106.2(@swc/core@1.15.30(@swc/helpers@0.5.21))(esbuild@0.28.1)) - watchpack: 2.5.2 - webpack-sources: 3.5.1 + watchpack: 2.5.1 + webpack-sources: 3.3.4 transitivePeerDependencies: - '@swc/core' - esbuild @@ -38454,8 +37783,6 @@ snapshots: ws@8.21.0: {} - ws@8.21.1: {} - wsl-utils@0.1.0: dependencies: is-wsl: 3.1.1 @@ -38505,16 +37832,6 @@ snapshots: y18n: 5.0.8 yargs-parser: 20.2.9 - yargs@16.2.2: - dependencies: - cliui: 7.0.4 - escalade: 3.2.0 - get-caller-file: 2.0.5 - require-directory: 2.1.1 - string-width: 4.2.3 - y18n: 5.0.8 - yargs-parser: 20.2.9 - yargs@17.7.2: dependencies: cliui: 8.0.1