From efcb422054b61bf44f921f3e4a1caa6a1bd0d814 Mon Sep 17 00:00:00 2001 From: "Ronald A. Richardson" Date: Wed, 20 Dec 2023 16:24:18 +0800 Subject: [PATCH] critical patches and fixes for universe service, fetch service, and utilities --- .eslintrc.js | 2 +- addon/adapters/application.js | 24 + addon/services/fetch.js | 10 +- addon/services/universe.js | 133 +++- .../utils/get-mounted-engine-route-prefix.js | 8 + .../get-resource-name-from-transition.js | 12 + addon/utils/is-nested-route-transition.js | 11 + addon/utils/is-object.js | 2 +- addon/utils/map-engines.js | 17 +- addon/utils/set-component-arg.js | 9 + app/utils/get-mounted-engine-route-prefix.js | 1 + .../get-resource-name-from-transition.js | 1 + app/utils/is-nested-route-transition.js | 1 + app/utils/set-component-arg.js | 1 + index.js | 10 + package.json | 3 +- pnpm-lock.yaml | 719 +++++++++++++----- .../get-mounted-engine-route-prefix-test.js | 10 + .../get-resource-name-from-transition-test.js | 10 + .../utils/is-nested-route-transition-test.js | 10 + tests/unit/utils/set-component-arg-test.js | 10 + 21 files changed, 786 insertions(+), 218 deletions(-) create mode 100644 addon/utils/get-mounted-engine-route-prefix.js create mode 100644 addon/utils/get-resource-name-from-transition.js create mode 100644 addon/utils/is-nested-route-transition.js create mode 100644 addon/utils/set-component-arg.js create mode 100644 app/utils/get-mounted-engine-route-prefix.js create mode 100644 app/utils/get-resource-name-from-transition.js create mode 100644 app/utils/is-nested-route-transition.js create mode 100644 app/utils/set-component-arg.js create mode 100644 tests/unit/utils/get-mounted-engine-route-prefix-test.js create mode 100644 tests/unit/utils/get-resource-name-from-transition-test.js create mode 100644 tests/unit/utils/is-nested-route-transition-test.js create mode 100644 tests/unit/utils/set-component-arg-test.js diff --git a/.eslintrc.js b/.eslintrc.js index 31dbf5e..7ffba41 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -34,7 +34,7 @@ module.exports = { 'ember/no-incorrect-calls-with-inline-anonymous-functions': 'off', 'ember/no-private-routing-service': 'off', 'no-useless-escape': 'off', - 'node/no-unpublished-require': [ + 'n/no-unpublished-require': [ 'error', { allowModules: ['resolve', 'broccoli-funnel', 'broccoli-merge-trees'], diff --git a/addon/adapters/application.js b/addon/adapters/application.js index babf01b..80cc93f 100644 --- a/addon/adapters/application.js +++ b/addon/adapters/application.js @@ -1,4 +1,5 @@ import RESTAdapter from '@ember-data/adapter/rest'; +import AdapterError from '@ember-data/adapter/error'; import { tracked } from '@glimmer/tracking'; import { inject as service } from '@ember/service'; import { storageFor } from 'ember-local-storage'; @@ -145,4 +146,27 @@ export default class ApplicationAdapter extends RESTAdapter { pathForType(type) { return dasherize(pluralize(type)); } + + /** + * Handles the response from an AJAX request in an Ember application. + * + * @param {number} status - The HTTP status code of the response. + * @param {object} headers - The headers of the response. + * @param {object} payload - The payload of the response. + * @return {Object | AdapterError} response - Returns a new `AdapterError` instance with detailed error information if the response is invalid; otherwise, it returns the result of the superclass's `handleResponse` method. + * + * This method first normalizes the error response and generates a detailed message. + * It then checks if the response is invalid based on the status code. If invalid, it constructs an `AdapterError` with the normalized errors and detailed message. + * For valid responses, it delegates the handling to the superclass's `handleResponse` method. + */ + handleResponse(status, headers, payload) { + let errors = this.normalizeErrorResponse(status, headers, payload); + let detailedMessage = this.generatedDetailedMessage(...arguments); + + if (this.isInvalid(status, headers, payload)) { + return new AdapterError(errors, detailedMessage); + } + + return super.handleResponse(...arguments); + } } diff --git a/addon/services/fetch.js b/addon/services/fetch.js index 25de0ce..e9798db 100644 --- a/addon/services/fetch.js +++ b/addon/services/fetch.js @@ -524,6 +524,12 @@ export default class FetchService extends Service { const { queue } = file; const headers = this.getHeaders(); + // make sure this task runs once for this file in correct state + // this can occur when the task is called twice when upload button exists inside upload dropzone + if (['queued', 'failed', 'timed_out', 'aborted'].indexOf(file.state) === -1) { + return; + } + // remove Content-Type header delete headers['Content-Type']; @@ -539,7 +545,7 @@ export default class FetchService extends Service { }) .then((response) => response.json()) .catch((error) => { - this.notifications.serverError(error, `Upload failed.`); + this.notifications.serverError(error, 'File upload failed.'); }); const model = this.store.push(this.store.normalize('file', upload.file)); @@ -552,7 +558,7 @@ export default class FetchService extends Service { return model; } catch (error) { queue.remove(file); - this.notifications.serverError(error, `Upload failed.`); + this.notifications.serverError(error, 'File upload failed.'); if (typeof errorCallback === 'function') { errorCallback(error); diff --git a/addon/services/universe.js b/addon/services/universe.js index 5a1a78b..8552bf5 100644 --- a/addon/services/universe.js +++ b/addon/services/universe.js @@ -104,14 +104,90 @@ export default class UniverseService extends Service.extend(Evented) { if (engineInstance) { const config = engineInstance.resolveRegistration('config:environment'); - if (config && typeof config.mountedEngineRoutePrefix === 'string') { - return this.router.transitionTo(`${config.mountedEngineRoutePrefix}${route}`, ...args); + if (config) { + let mountedEngineRoutePrefix = config.mountedEngineRoutePrefix; + + if (!mountedEngineRoutePrefix) { + mountedEngineRoutePrefix = this._mountPathFromEngineName(engineName); + } + + if (!mountedEngineRoutePrefix.endsWith('.')) { + mountedEngineRoutePrefix = mountedEngineRoutePrefix + '.'; + } + + return this.router.transitionTo(`${mountedEngineRoutePrefix}${route}`, ...args); } } return this.router.transitionTo(route, ...args); } + /** + * Retrieves the mount point of a specified engine by its name. + + * @param {string} engineName - The name of the engine for which to get the mount point. + * @returns {string|null} The mount point of the engine or null if not found. + */ + getEngineMountPoint(engineName) { + const engineInstance = this.getEngineInstance(engineName); + return this._getMountPointFromEngineInstance(engineInstance); + } + + /** + * Determines the mount point from an engine instance by reading its configuration. + + * @param {object} engineInstance - The instance of the engine. + * @returns {string|null} The resolved mount point or null if the instance is undefined or the configuration is not set. + * @private + */ + _getMountPointFromEngineInstance(engineInstance) { + if (engineInstance) { + const config = engineInstance.resolveRegistration('config:environment'); + + if (config) { + let engineName = config.modulePrefix; + let mountedEngineRoutePrefix = config.mountedEngineRoutePrefix; + + if (!mountedEngineRoutePrefix) { + mountedEngineRoutePrefix = this._mountPathFromEngineName(engineName); + } + + if (!mountedEngineRoutePrefix.endsWith('.')) { + mountedEngineRoutePrefix = mountedEngineRoutePrefix + '.'; + } + + return mountedEngineRoutePrefix; + } + } + + return null; + } + + /** + * Extracts and formats the mount path from a given engine name. + * + * This function takes an engine name in the format '@scope/engine-name', + * extracts the 'engine-name' part, removes the '-engine' suffix if present, + * and formats it into a string that represents a console path. + * + * @param {string} engineName - The full name of the engine, typically in the format '@scope/engine-name'. + * @returns {string} A string representing the console path derived from the engine name. + * @example + * // returns 'console.some' + * _mountPathFromEngineName('@fleetbase/some-engine'); + */ + _mountPathFromEngineName(engineName) { + let engineNameSegments = engineName.split('/'); + let mountName = engineNameSegments[1]; + + if (typeof mountName !== 'string') { + mountName = engineNameSegments[0]; + } + + const mountPath = mountName.replace('-engine', ''); + return `console.${mountPath}`; + } + /** * Refreshes the current route. * @@ -804,7 +880,7 @@ export default class UniverseService extends Service.extend(Evented) { loadEngine(name) { const router = getOwner(this).lookup('router:main'); const instanceId = 'manual'; // Arbitrary instance id, should be unique per engine - const mountPoint = null; // No mount point for manually loaded engines + const mountPoint = this._mountPathFromEngineName(name); // No mount point for manually loaded engines if (!router._enginePromises[name]) { router._enginePromises[name] = Object.create(null); @@ -853,7 +929,6 @@ export default class UniverseService extends Service.extend(Evented) { assert("You attempted to load the engine '" + name + "', but the engine cannot be found.", owner.hasRegistration(`engine:${name}`)); let engineInstances = owner.lookup('router:main')._engineInstances; - if (!engineInstances[name]) { engineInstances[name] = Object.create(null); } @@ -863,6 +938,18 @@ export default class UniverseService extends Service.extend(Evented) { mountPoint, }); + // correct mountPoint using engine instance + let _mountPoint = this._getMountPointFromEngineInstance(engineInstance); + if (_mountPoint) { + engineInstance.mountPoint = _mountPoint; + } + + // make sure to set dependencies from base instance + if (engineInstance.base) { + engineInstance.dependencies = this._setupEngineParentDependenciesBeforeBoot(engineInstance.base.dependencies); + } + + // store loaded instance to engineInstances for booting engineInstances[name][instanceId] = engineInstance; return engineInstance.boot().then(() => { @@ -870,6 +957,44 @@ export default class UniverseService extends Service.extend(Evented) { }); } + _setupEngineParentDependenciesBeforeBoot(baseDependencies = {}) { + const dependencies = { ...baseDependencies }; + + // fix services + const servicesObject = {}; + if (isArray(dependencies.services)) { + for (let i = 0; i < dependencies.services.length; i++) { + const service = dependencies.services.objectAt(i); + + if (typeof service === 'object') { + Object.assign(servicesObject, service); + continue; + } + + servicesObject[service] = service; + } + } + + // fix external routes + const externalRoutesObject = {}; + if (isArray(dependencies.externalRoutes)) { + for (let i = 0; i < dependencies.externalRoutes.length; i++) { + const externalRoute = dependencies.externalRoutes.objectAt(i); + + if (typeof externalRoute === 'object') { + Object.assign(externalRoutesObject, externalRoute); + continue; + } + + externalRoutesObject[externalRoute] = externalRoute; + } + } + + dependencies.externalRoutes = externalRoutesObject; + dependencies.services = servicesObject; + return dependencies; + } + /** * Retrieve an existing engine instance by its name and instanceId. * diff --git a/addon/utils/get-mounted-engine-route-prefix.js b/addon/utils/get-mounted-engine-route-prefix.js new file mode 100644 index 0000000..6dbe743 --- /dev/null +++ b/addon/utils/get-mounted-engine-route-prefix.js @@ -0,0 +1,8 @@ +export default function getMountedEngineRoutePrefix(defaultName, fleetbase = {}) { + let mountedEngineRoutePrefix = defaultName; + if (fleetbase && typeof fleetbase.route === 'string') { + mountedEngineRoutePrefix = fleetbase.route; + } + + return `console.${mountedEngineRoutePrefix}.`; +} diff --git a/addon/utils/get-resource-name-from-transition.js b/addon/utils/get-resource-name-from-transition.js new file mode 100644 index 0000000..a8a7037 --- /dev/null +++ b/addon/utils/get-resource-name-from-transition.js @@ -0,0 +1,12 @@ +export default function getResourceNameFromTransition(transition) { + const { to } = transition; + + if (typeof to.name === 'string') { + let routePathSegments = to.name.split('.'); + let resourceName = routePathSegments[3]; + + return resourceName; + } + + return null; +} diff --git a/addon/utils/is-nested-route-transition.js b/addon/utils/is-nested-route-transition.js new file mode 100644 index 0000000..dd41d49 --- /dev/null +++ b/addon/utils/is-nested-route-transition.js @@ -0,0 +1,11 @@ +import { get } from '@ember/object'; + +export default function isNestedRouteTransition(transition) { + const toRoute = get(transition, 'to.name'); + const fromRouteParent = get(transition, 'from.parent.name'); + const toRouteParent = get(transition, 'to.parent.name'); + const isNested = toRoute.startsWith(fromRouteParent); + const isMatchingParents = fromRouteParent && toRouteParent && fromRouteParent === toRouteParent; + + return isNested || isMatchingParents; +} diff --git a/addon/utils/is-object.js b/addon/utils/is-object.js index fc79a5a..f9feacb 100644 --- a/addon/utils/is-object.js +++ b/addon/utils/is-object.js @@ -1,3 +1,3 @@ export default function isObject(obj) { - return typeof obj === 'object'; + return obj && typeof obj === 'object' && Object.prototype.toString.call(obj) === '[object Object]'; } diff --git a/addon/utils/map-engines.js b/addon/utils/map-engines.js index 9eae61f..50d8d93 100644 --- a/addon/utils/map-engines.js +++ b/addon/utils/map-engines.js @@ -1,9 +1,19 @@ import { dasherize } from '@ember/string'; import hostServices from '../exports/host-services'; -function routeNameFromExtension(extension) { - const mountName = extension.name.split('/')[1]; - const mountPath = mountName.replace('-engine', ''); +export function getExtensionMountPath(extensionName) { + let extensionNameSegments = extensionName.split('/'); + let mountName = extensionNameSegments[1]; + + if (typeof mountName !== 'string') { + mountName = extensionNameSegments[0]; + } + + return mountName.replace('-engine', ''); +} + +export function routeNameFromExtension(extension) { + const mountPath = getExtensionMountPath(extension.name); let route = mountPath; if (extension.fleetbase && extension.fleetbase.route) { @@ -18,6 +28,7 @@ export default function mapEngines(extensions, withServices = []) { const externalRoutes = { console: 'console.home', extensions: 'console.extensions', + notifications: 'console.notifications', }; for (let i = 0; i < extensions.length; i++) { diff --git a/addon/utils/set-component-arg.js b/addon/utils/set-component-arg.js new file mode 100644 index 0000000..dd8b3fb --- /dev/null +++ b/addon/utils/set-component-arg.js @@ -0,0 +1,9 @@ +import { set } from '@ember/object'; + +export default function setComponentArg(component, property, value) { + if (value !== undefined) { + set(component, property, value); + } + + return component; +} diff --git a/app/utils/get-mounted-engine-route-prefix.js b/app/utils/get-mounted-engine-route-prefix.js new file mode 100644 index 0000000..727a620 --- /dev/null +++ b/app/utils/get-mounted-engine-route-prefix.js @@ -0,0 +1 @@ +export { default } from '@fleetbase/ember-core/utils/get-mounted-engine-route-prefix'; diff --git a/app/utils/get-resource-name-from-transition.js b/app/utils/get-resource-name-from-transition.js new file mode 100644 index 0000000..fba9987 --- /dev/null +++ b/app/utils/get-resource-name-from-transition.js @@ -0,0 +1 @@ +export { default } from '@fleetbase/ember-core/utils/get-resource-name-from-transition'; diff --git a/app/utils/is-nested-route-transition.js b/app/utils/is-nested-route-transition.js new file mode 100644 index 0000000..9c27280 --- /dev/null +++ b/app/utils/is-nested-route-transition.js @@ -0,0 +1 @@ +export { default } from '@fleetbase/ember-core/utils/is-nested-route-transition'; diff --git a/app/utils/set-component-arg.js b/app/utils/set-component-arg.js new file mode 100644 index 0000000..a9c53cd --- /dev/null +++ b/app/utils/set-component-arg.js @@ -0,0 +1 @@ +export { default } from '@fleetbase/ember-core/utils/set-component-arg'; diff --git a/index.js b/index.js index f0fa742..a801899 100644 --- a/index.js +++ b/index.js @@ -21,6 +21,16 @@ module.exports = { useSessionSetupMethod: true, }; } + + if (app.options['ember-cli-notifications'] !== undefined) { + app.options['ember-cli-notifications'].autoClear = true; + app.options['ember-cli-notifications'].clearDuration = 1000 * 5; + } else { + app.options['ember-cli-notifications'] = { + autoClear: true, + clearDuration: 1000 * 5, + }; + } }, treeForPublic: function () { diff --git a/package.json b/package.json index d7faa01..6d08c24 100644 --- a/package.json +++ b/package.json @@ -55,8 +55,6 @@ "devDependencies": { "@babel/eslint-parser": "^7.22.15", "@babel/plugin-proposal-decorators": "^7.23.2", - "@ember-data/serializer": "^5.3.0", - "@ember-data/store": "^5.3.0", "@ember/optional-features": "^2.0.0", "@ember/test-helpers": "^3.2.0", "@embroider/test-setup": "^3.0.2", @@ -79,6 +77,7 @@ "ember-qunit": "^8.0.1", "ember-resolver": "^11.0.1", "ember-source": "~5.4.0", + "ember-data": "^4.12.5", "ember-source-channel-url": "^3.0.0", "ember-template-lint": "^5.11.2", "ember-try": "^3.0.0", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index bafbdc5..e7eb0f8 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -60,12 +60,6 @@ devDependencies: '@babel/plugin-proposal-decorators': specifier: ^7.23.2 version: 7.23.2(@babel/core@7.23.2) - '@ember-data/serializer': - specifier: ^5.3.0 - version: 5.3.0(@babel/core@7.23.2)(@ember/string@3.1.1)(ember-inflector@4.0.2) - '@ember-data/store': - specifier: ^5.3.0 - version: 5.3.0(@babel/core@7.23.2)(@ember-data/tracking@5.3.0)(@ember/string@3.1.1)(@glimmer/tracking@1.1.2)(ember-source@5.4.0) '@ember/optional-features': specifier: ^2.0.0 version: 2.0.0 @@ -114,6 +108,9 @@ devDependencies: ember-cli-terser: specifier: ^4.0.2 version: 4.0.2 + ember-data: + specifier: ^4.12.5 + version: 4.12.5(@babel/core@7.23.2)(@ember/string@3.1.1)(@glimmer/tracking@1.1.2)(ember-source@5.4.0)(webpack@5.89.0) ember-file-upload: specifier: 8.4.0 version: 8.4.0(@ember/test-helpers@3.2.0)(@glimmer/component@1.1.2)(@glimmer/tracking@1.1.2)(ember-modifier@4.1.0)(tracked-built-ins@3.3.0)(webpack@5.89.0) @@ -218,14 +215,14 @@ packages: dependencies: '@ampproject/remapping': 2.2.1 '@babel/code-frame': 7.23.5 - '@babel/generator': 7.23.5 - '@babel/helper-compilation-targets': 7.22.15 + '@babel/generator': 7.23.6 + '@babel/helper-compilation-targets': 7.23.6 '@babel/helper-module-transforms': 7.23.3(@babel/core@7.23.2) - '@babel/helpers': 7.23.5 - '@babel/parser': 7.23.5 + '@babel/helpers': 7.23.6 + '@babel/parser': 7.23.6 '@babel/template': 7.22.15 - '@babel/traverse': 7.23.5 - '@babel/types': 7.23.5 + '@babel/traverse': 7.23.6 + '@babel/types': 7.23.6 convert-source-map: 2.0.0 debug: 4.3.4 gensync: 1.0.0-beta.2 @@ -248,11 +245,11 @@ packages: semver: 6.3.1 dev: true - /@babel/generator@7.23.5: - resolution: {integrity: sha512-BPssCHrBD+0YrxviOa3QzpqwhNIXKEtOa2jQrm4FlmkC2apYgRnQcmPWiGZDlGxiNtltnUFolMe8497Esry+jA==} + /@babel/generator@7.23.6: + resolution: {integrity: sha512-qrSfCYxYQB5owCmGLbl8XRpX1ytXlpueOb0N0UmQwA073KZxejgQTzAmJezxvpwQD9uGtK2shHdi55QT+MbjIw==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.23.5 + '@babel/types': 7.23.6 '@jridgewell/gen-mapping': 0.3.3 '@jridgewell/trace-mapping': 0.3.20 jsesc: 2.5.2 @@ -261,16 +258,16 @@ packages: resolution: {integrity: sha512-LvBTxu8bQSQkcyKOU+a1btnNFQ1dMAd0R6PyW3arXes06F6QLWLIrd681bxRPIXlrMGR3XYnW9JyML7dP3qgxg==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.23.5 + '@babel/types': 7.23.6 /@babel/helper-builder-binary-assignment-operator-visitor@7.22.15: resolution: {integrity: sha512-QkBXwGgaoC2GtGZRoma6kv7Szfv06khvhFav67ZExau2RaXzy8MpHSMO2PNoP2XtmQphJQRHFfg77Bq731Yizw==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.23.5 + '@babel/types': 7.23.6 - /@babel/helper-compilation-targets@7.22.15: - resolution: {integrity: sha512-y6EEzULok0Qvz8yyLkCvVX+02ic+By2UdOhylwUOvOn9dvYc9mKICJuuU1n1XBI02YWsNsnrY1kc6DVbjcXbtw==} + /@babel/helper-compilation-targets@7.23.6: + resolution: {integrity: sha512-9JB548GZoQVmzrFgp8o7KxdgkTGm6xs9DW0o/Pim72UDjzr5ObUQ6ZzYPqA+g9OTS2bBQoctLJrky0RDCAWRgQ==} engines: {node: '>=6.9.0'} dependencies: '@babel/compat-data': 7.23.5 @@ -279,8 +276,8 @@ packages: lru-cache: 5.1.1 semver: 6.3.1 - /@babel/helper-create-class-features-plugin@7.23.5(@babel/core@7.23.2): - resolution: {integrity: sha512-QELlRWxSpgdwdJzSJn4WAhKC+hvw/AtHbbrIoncKHkhKKR/luAlKkgBDcri1EzWAo8f8VvYVryEHN4tax/V67A==} + /@babel/helper-create-class-features-plugin@7.23.6(@babel/core@7.23.2): + resolution: {integrity: sha512-cBXU1vZni/CpGF29iTu4YRbOZt3Wat6zCoMDxRF1MayiEc4URxOj31tT65HUM0CRpMowA3HCJaAOVOUnMf96cw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 @@ -307,13 +304,13 @@ packages: regexpu-core: 5.3.2 semver: 6.3.1 - /@babel/helper-define-polyfill-provider@0.4.3(@babel/core@7.23.2): - resolution: {integrity: sha512-WBrLmuPP47n7PNwsZ57pqam6G/RGo1vw/87b0Blc53tZNGZ4x7YvZ6HgQe2vo1W/FR20OgjeZuGXzudPiXHFug==} + /@babel/helper-define-polyfill-provider@0.4.4(@babel/core@7.23.2): + resolution: {integrity: sha512-QcJMILQCu2jm5TFPGA3lCpJJTeEP+mqeXooG/NZbg/h5FTFi6V0+99ahlRsW8/kRLyb24LZVCCiclDedhLKcBA==} peerDependencies: '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 dependencies: '@babel/core': 7.23.2 - '@babel/helper-compilation-targets': 7.22.15 + '@babel/helper-compilation-targets': 7.23.6 '@babel/helper-plugin-utils': 7.22.5 debug: 4.3.4 lodash.debounce: 4.0.8 @@ -330,25 +327,25 @@ packages: engines: {node: '>=6.9.0'} dependencies: '@babel/template': 7.22.15 - '@babel/types': 7.23.5 + '@babel/types': 7.23.6 /@babel/helper-hoist-variables@7.22.5: resolution: {integrity: sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.23.5 + '@babel/types': 7.23.6 /@babel/helper-member-expression-to-functions@7.23.0: resolution: {integrity: sha512-6gfrPwh7OuT6gZyJZvd6WbTfrqAo7vm4xCzAXOusKqq/vWdKXphTpj5klHKNmRUU6/QRGlBsyU9mAIPaWHlqJA==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.23.5 + '@babel/types': 7.23.6 /@babel/helper-module-imports@7.22.15: resolution: {integrity: sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.23.5 + '@babel/types': 7.23.6 /@babel/helper-module-transforms@7.23.3(@babel/core@7.23.2): resolution: {integrity: sha512-7bBs4ED9OmswdfDzpz4MpWgSrV7FXlc3zIagvLFjS5H+Mk7Snr21vQ6QwrsoCGMfNC4e4LQPdoULEt4ykz0SRQ==} @@ -367,7 +364,7 @@ packages: resolution: {integrity: sha512-HBwaojN0xFRx4yIvpwGqxiV2tUfl7401jlok564NgB9EHS1y6QT17FmKWm4ztqjeVdXLuC4fSvHc5ePpQjoTbw==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.23.5 + '@babel/types': 7.23.6 /@babel/helper-plugin-utils@7.22.5: resolution: {integrity: sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg==} @@ -399,19 +396,19 @@ packages: resolution: {integrity: sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.23.5 + '@babel/types': 7.23.6 /@babel/helper-skip-transparent-expression-wrappers@7.22.5: resolution: {integrity: sha512-tK14r66JZKiC43p8Ki33yLBVJKlQDFoA8GYN67lWCDCqoL6EMMSuM9b+Iff2jHaM/RRFYl7K+iiru7hbRqNx8Q==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.23.5 + '@babel/types': 7.23.6 /@babel/helper-split-export-declaration@7.22.6: resolution: {integrity: sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.23.5 + '@babel/types': 7.23.6 /@babel/helper-string-parser@7.23.4: resolution: {integrity: sha512-803gmbQdqwdf4olxrX4AJyFBV/RTr3rSmOj0rKwesmzlfhYNDEs+/iOcznzpNWlJlIlTJC2QfPFcHB6DlzdVLQ==} @@ -431,15 +428,15 @@ packages: dependencies: '@babel/helper-function-name': 7.23.0 '@babel/template': 7.22.15 - '@babel/types': 7.23.5 + '@babel/types': 7.23.6 - /@babel/helpers@7.23.5: - resolution: {integrity: sha512-oO7us8FzTEsG3U6ag9MfdF1iA/7Z6dz+MtFhifZk8C8o453rGJFFWUP1t+ULM9TUIAzC9uxXEiXjOiVMyd7QPg==} + /@babel/helpers@7.23.6: + resolution: {integrity: sha512-wCfsbN4nBidDRhpDhvcKlzHWCTlgJYUUdSJfzXb2NuBssDSIjc3xcb+znA7l+zYsFljAcGM0aFkN40cR3lXiGA==} engines: {node: '>=6.9.0'} dependencies: '@babel/template': 7.22.15 - '@babel/traverse': 7.23.5 - '@babel/types': 7.23.5 + '@babel/traverse': 7.23.6 + '@babel/types': 7.23.6 transitivePeerDependencies: - supports-color @@ -451,12 +448,12 @@ packages: chalk: 2.4.2 js-tokens: 4.0.0 - /@babel/parser@7.23.5: - resolution: {integrity: sha512-hOOqoiNXrmGdFbhgCzu6GiURxUgM27Xwd/aPuu8RfHEZPBzL1Z54okAHAQjXfcQNwvrlkAmAp4SlRTZ45vlthQ==} + /@babel/parser@7.23.6: + resolution: {integrity: sha512-Z2uID7YJ7oNvAI20O9X0bblw7Qqs8Q2hFy0R9tAfnfLkp5MW0UH9eUvnDSnFwKZ0AvgS1ucqR4KzvVHgnke1VQ==} engines: {node: '>=6.0.0'} hasBin: true dependencies: - '@babel/types': 7.23.5 + '@babel/types': 7.23.6 /@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.23.3(@babel/core@7.23.2): resolution: {integrity: sha512-iRkKcCqb7iGnq9+3G6rZ+Ciz5VywC4XNRHe57lKM+jOeYAoR0lVqdeeDRfh0tQcTfw/+vBhHn926FmQhLtlFLQ==} @@ -496,7 +493,7 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.23.2 - '@babel/helper-create-class-features-plugin': 7.23.5(@babel/core@7.23.2) + '@babel/helper-create-class-features-plugin': 7.23.6(@babel/core@7.23.2) '@babel/helper-plugin-utils': 7.22.5 /@babel/plugin-proposal-decorators@7.23.2(@babel/core@7.23.2): @@ -506,7 +503,7 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.23.2 - '@babel/helper-create-class-features-plugin': 7.23.5(@babel/core@7.23.2) + '@babel/helper-create-class-features-plugin': 7.23.6(@babel/core@7.23.2) '@babel/helper-plugin-utils': 7.22.5 '@babel/helper-replace-supers': 7.22.20(@babel/core@7.23.2) '@babel/helper-split-export-declaration': 7.22.6 @@ -545,7 +542,7 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.23.2 - '@babel/helper-create-class-features-plugin': 7.23.5(@babel/core@7.23.2) + '@babel/helper-create-class-features-plugin': 7.23.6(@babel/core@7.23.2) '@babel/helper-plugin-utils': 7.22.5 /@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2(@babel/core@7.23.2): @@ -565,7 +562,7 @@ packages: dependencies: '@babel/core': 7.23.2 '@babel/helper-annotate-as-pure': 7.22.5 - '@babel/helper-create-class-features-plugin': 7.23.5(@babel/core@7.23.2) + '@babel/helper-create-class-features-plugin': 7.23.6(@babel/core@7.23.2) '@babel/helper-plugin-utils': 7.22.5 '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.23.2) @@ -795,7 +792,7 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.23.2 - '@babel/helper-create-class-features-plugin': 7.23.5(@babel/core@7.23.2) + '@babel/helper-create-class-features-plugin': 7.23.6(@babel/core@7.23.2) '@babel/helper-plugin-utils': 7.22.5 /@babel/plugin-transform-class-static-block@7.23.4(@babel/core@7.23.2): @@ -805,7 +802,7 @@ packages: '@babel/core': ^7.12.0 dependencies: '@babel/core': 7.23.2 - '@babel/helper-create-class-features-plugin': 7.23.5(@babel/core@7.23.2) + '@babel/helper-create-class-features-plugin': 7.23.6(@babel/core@7.23.2) '@babel/helper-plugin-utils': 7.22.5 '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.23.2) @@ -817,7 +814,7 @@ packages: dependencies: '@babel/core': 7.23.2 '@babel/helper-annotate-as-pure': 7.22.5 - '@babel/helper-compilation-targets': 7.22.15 + '@babel/helper-compilation-targets': 7.23.6 '@babel/helper-environment-visitor': 7.22.20 '@babel/helper-function-name': 7.23.0 '@babel/helper-optimise-call-expression': 7.22.5 @@ -894,14 +891,15 @@ packages: '@babel/helper-plugin-utils': 7.22.5 '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.23.2) - /@babel/plugin-transform-for-of@7.23.3(@babel/core@7.23.2): - resolution: {integrity: sha512-X8jSm8X1CMwxmK878qsUGJRmbysKNbdpTv/O1/v0LuY/ZkZrng5WYiekYSdg9m09OTmDDUWeEDsTE+17WYbAZw==} + /@babel/plugin-transform-for-of@7.23.6(@babel/core@7.23.2): + resolution: {integrity: sha512-aYH4ytZ0qSuBbpfhuofbg/e96oQ7U2w1Aw/UQmKT+1l39uEhUPoFS3fHevDc1G0OvewyDudfMKY1OulczHzWIw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 /@babel/plugin-transform-function-name@7.23.3(@babel/core@7.23.2): resolution: {integrity: sha512-I1QXp1LxIvt8yLaib49dRW5Okt7Q4oaxao6tFVKS/anCdEOMtYwWVKoiOA1p34GOWIZjUK0E+zCp7+l1pfQyiw==} @@ -910,7 +908,7 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.23.2 - '@babel/helper-compilation-targets': 7.22.15 + '@babel/helper-compilation-targets': 7.23.6 '@babel/helper-function-name': 7.23.0 '@babel/helper-plugin-utils': 7.22.5 @@ -1042,7 +1040,7 @@ packages: dependencies: '@babel/compat-data': 7.23.5 '@babel/core': 7.23.2 - '@babel/helper-compilation-targets': 7.22.15 + '@babel/helper-compilation-targets': 7.23.6 '@babel/helper-plugin-utils': 7.22.5 '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.23.2) '@babel/plugin-transform-parameters': 7.23.3(@babel/core@7.23.2) @@ -1094,7 +1092,7 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.23.2 - '@babel/helper-create-class-features-plugin': 7.23.5(@babel/core@7.23.2) + '@babel/helper-create-class-features-plugin': 7.23.6(@babel/core@7.23.2) '@babel/helper-plugin-utils': 7.22.5 /@babel/plugin-transform-private-property-in-object@7.23.4(@babel/core@7.23.2): @@ -1105,7 +1103,7 @@ packages: dependencies: '@babel/core': 7.23.2 '@babel/helper-annotate-as-pure': 7.22.5 - '@babel/helper-create-class-features-plugin': 7.23.5(@babel/core@7.23.2) + '@babel/helper-create-class-features-plugin': 7.23.6(@babel/core@7.23.2) '@babel/helper-plugin-utils': 7.22.5 '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.23.2) @@ -1137,8 +1135,8 @@ packages: '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 - /@babel/plugin-transform-runtime@7.23.4(@babel/core@7.23.2): - resolution: {integrity: sha512-ITwqpb6V4btwUG0YJR82o2QvmWrLgDnx/p2A3CTPYGaRgULkDiC0DRA2C4jlRB9uXGUEfaSS/IGHfVW+ohzYDw==} + /@babel/plugin-transform-runtime@7.23.6(@babel/core@7.23.2): + resolution: {integrity: sha512-kF1Zg62aPseQ11orDhFRw+aPG/eynNQtI+TyY+m33qJa2cJ5EEvza2P2BNTIA9E5MyqFABHEyY6CPHwgdy9aNg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 @@ -1146,9 +1144,9 @@ packages: '@babel/core': 7.23.2 '@babel/helper-module-imports': 7.22.15 '@babel/helper-plugin-utils': 7.22.5 - babel-plugin-polyfill-corejs2: 0.4.6(@babel/core@7.23.2) - babel-plugin-polyfill-corejs3: 0.8.6(@babel/core@7.23.2) - babel-plugin-polyfill-regenerator: 0.5.3(@babel/core@7.23.2) + babel-plugin-polyfill-corejs2: 0.4.7(@babel/core@7.23.2) + babel-plugin-polyfill-corejs3: 0.8.7(@babel/core@7.23.2) + babel-plugin-polyfill-regenerator: 0.5.4(@babel/core@7.23.2) semver: 6.3.1 transitivePeerDependencies: - supports-color @@ -1199,15 +1197,15 @@ packages: '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 - /@babel/plugin-transform-typescript@7.23.5(@babel/core@7.23.2): - resolution: {integrity: sha512-2fMkXEJkrmwgu2Bsv1Saxgj30IXZdJ+84lQcKKI7sm719oXs0BBw2ZENKdJdR1PjWndgLCEBNXJOri0fk7RYQA==} + /@babel/plugin-transform-typescript@7.23.6(@babel/core@7.23.2): + resolution: {integrity: sha512-6cBG5mBvUu4VUD04OHKnYzbuHNP8huDsD3EDqqpIpsswTDoqHCjLoHb6+QgsV1WsT2nipRqCPgxD3LXnEO7XfA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.23.2 '@babel/helper-annotate-as-pure': 7.22.5 - '@babel/helper-create-class-features-plugin': 7.23.5(@babel/core@7.23.2) + '@babel/helper-create-class-features-plugin': 7.23.6(@babel/core@7.23.2) '@babel/helper-plugin-utils': 7.22.5 '@babel/plugin-syntax-typescript': 7.23.3(@babel/core@7.23.2) @@ -1227,7 +1225,7 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.23.2 - '@babel/helper-create-class-features-plugin': 7.23.5(@babel/core@7.23.2) + '@babel/helper-create-class-features-plugin': 7.23.6(@babel/core@7.23.2) '@babel/helper-plugin-utils': 7.22.5 '@babel/plugin-syntax-typescript': 7.23.3(@babel/core@7.23.2) @@ -1237,7 +1235,7 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.23.2 - '@babel/helper-create-class-features-plugin': 7.23.5(@babel/core@7.23.2) + '@babel/helper-create-class-features-plugin': 7.23.6(@babel/core@7.23.2) '@babel/helper-plugin-utils': 7.22.5 '@babel/plugin-syntax-typescript': 7.23.3(@babel/core@7.23.2) dev: false @@ -1288,15 +1286,15 @@ packages: core-js: 2.6.12 regenerator-runtime: 0.13.11 - /@babel/preset-env@7.23.5(@babel/core@7.23.2): - resolution: {integrity: sha512-0d/uxVD6tFGWXGDSfyMD1p2otoaKmu6+GD+NfAx0tMaH+dxORnp7T9TaVQ6mKyya7iBtCIVxHjWT7MuzzM9z+A==} + /@babel/preset-env@7.23.6(@babel/core@7.23.2): + resolution: {integrity: sha512-2XPn/BqKkZCpzYhUUNZ1ssXw7DcXfKQEjv/uXZUXgaebCMYmkEsfZ2yY+vv+xtXv50WmL5SGhyB6/xsWxIvvOQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: '@babel/compat-data': 7.23.5 '@babel/core': 7.23.2 - '@babel/helper-compilation-targets': 7.22.15 + '@babel/helper-compilation-targets': 7.23.6 '@babel/helper-plugin-utils': 7.22.5 '@babel/helper-validator-option': 7.23.5 '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression': 7.23.3(@babel/core@7.23.2) @@ -1336,7 +1334,7 @@ packages: '@babel/plugin-transform-dynamic-import': 7.23.4(@babel/core@7.23.2) '@babel/plugin-transform-exponentiation-operator': 7.23.3(@babel/core@7.23.2) '@babel/plugin-transform-export-namespace-from': 7.23.4(@babel/core@7.23.2) - '@babel/plugin-transform-for-of': 7.23.3(@babel/core@7.23.2) + '@babel/plugin-transform-for-of': 7.23.6(@babel/core@7.23.2) '@babel/plugin-transform-function-name': 7.23.3(@babel/core@7.23.2) '@babel/plugin-transform-json-strings': 7.23.4(@babel/core@7.23.2) '@babel/plugin-transform-literals': 7.23.3(@babel/core@7.23.2) @@ -1370,9 +1368,9 @@ packages: '@babel/plugin-transform-unicode-regex': 7.23.3(@babel/core@7.23.2) '@babel/plugin-transform-unicode-sets-regex': 7.23.3(@babel/core@7.23.2) '@babel/preset-modules': 0.1.6-no-external-plugins(@babel/core@7.23.2) - babel-plugin-polyfill-corejs2: 0.4.6(@babel/core@7.23.2) - babel-plugin-polyfill-corejs3: 0.8.6(@babel/core@7.23.2) - babel-plugin-polyfill-regenerator: 0.5.3(@babel/core@7.23.2) + babel-plugin-polyfill-corejs2: 0.4.7(@babel/core@7.23.2) + babel-plugin-polyfill-corejs3: 0.8.7(@babel/core@7.23.2) + babel-plugin-polyfill-regenerator: 0.5.4(@babel/core@7.23.2) core-js-compat: 3.34.0 semver: 6.3.1 transitivePeerDependencies: @@ -1385,7 +1383,7 @@ packages: dependencies: '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 - '@babel/types': 7.23.5 + '@babel/types': 7.23.6 esutils: 2.0.3 /@babel/regjsgen@0.8.0: @@ -1396,39 +1394,39 @@ packages: dependencies: regenerator-runtime: 0.13.11 - /@babel/runtime@7.23.5: - resolution: {integrity: sha512-NdUTHcPe4C99WxPub+K9l9tK5/lV4UXIoaHSYgzco9BCyjKAAwzdBI+wWtYqHt7LJdbo74ZjRPJgzVweq1sz0w==} + /@babel/runtime@7.23.6: + resolution: {integrity: sha512-zHd0eUrf5GZoOWVCXp6koAKQTfZV07eit6bGPmJgnZdnSAvvZee6zniW2XMF7Cmc4ISOOnPy3QaSiIJGJkVEDQ==} engines: {node: '>=6.9.0'} dependencies: - regenerator-runtime: 0.14.0 + regenerator-runtime: 0.14.1 /@babel/template@7.22.15: resolution: {integrity: sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w==} engines: {node: '>=6.9.0'} dependencies: '@babel/code-frame': 7.23.5 - '@babel/parser': 7.23.5 - '@babel/types': 7.23.5 + '@babel/parser': 7.23.6 + '@babel/types': 7.23.6 - /@babel/traverse@7.23.5: - resolution: {integrity: sha512-czx7Xy5a6sapWWRx61m1Ke1Ra4vczu1mCTtJam5zRTBOonfdJ+S/B6HYmGYu3fJtr8GGET3si6IhgWVBhJ/m8w==} + /@babel/traverse@7.23.6: + resolution: {integrity: sha512-czastdK1e8YByZqezMPFiZ8ahwVMh/ESl9vPgvgdB9AmFMGP5jfpFax74AQgl5zj4XHzqeYAg2l8PuUeRS1MgQ==} engines: {node: '>=6.9.0'} dependencies: '@babel/code-frame': 7.23.5 - '@babel/generator': 7.23.5 + '@babel/generator': 7.23.6 '@babel/helper-environment-visitor': 7.22.20 '@babel/helper-function-name': 7.23.0 '@babel/helper-hoist-variables': 7.22.5 '@babel/helper-split-export-declaration': 7.22.6 - '@babel/parser': 7.23.5 - '@babel/types': 7.23.5 + '@babel/parser': 7.23.6 + '@babel/types': 7.23.6 debug: 4.3.4 globals: 11.12.0 transitivePeerDependencies: - supports-color - /@babel/types@7.23.5: - resolution: {integrity: sha512-ON5kSOJwVO6xXVRTvOI0eOnWe7VdUcIpsovGo9U/Br4Ie4UVFQTboO2cYnDhAGU6Fp+UxSiT+pMft0SMHfuq6w==} + /@babel/types@7.23.6: + resolution: {integrity: sha512-+uarb83brBzPKN38NX1MkB6vb6+mwvR6amUulqAE7ccQw1pEl+bCia9TbdG1lsnFP7lZySvUn37CHyXQdfTwzg==} engines: {node: '>=6.9.0'} dependencies: '@babel/helper-string-parser': 7.23.4 @@ -1451,33 +1449,33 @@ packages: dev: true optional: true - /@csstools/css-parser-algorithms@2.3.2(@csstools/css-tokenizer@2.2.1): - resolution: {integrity: sha512-sLYGdAdEY2x7TSw9FtmdaTrh2wFtRJO5VMbBrA8tEqEod7GEggFmxTSK9XqExib3yMuYNcvcTdCZIP6ukdjAIA==} + /@csstools/css-parser-algorithms@2.4.0(@csstools/css-tokenizer@2.2.2): + resolution: {integrity: sha512-/PPLr2g5PAUCKAPEbfyk6/baZA+WJHQtUhPkoCQMpyRE8I0lXrG1QFRN8e5s3ZYxM8d/g5BZc6lH3s8Op7/VEg==} engines: {node: ^14 || ^16 || >=18} peerDependencies: - '@csstools/css-tokenizer': ^2.2.1 + '@csstools/css-tokenizer': ^2.2.2 dependencies: - '@csstools/css-tokenizer': 2.2.1 + '@csstools/css-tokenizer': 2.2.2 dev: true - /@csstools/css-tokenizer@2.2.1: - resolution: {integrity: sha512-Zmsf2f/CaEPWEVgw29odOj+WEVoiJy9s9NOv5GgNY9mZ1CZ7394By6wONrONrTsnNDv6F9hR02nvFihrGVGHBg==} + /@csstools/css-tokenizer@2.2.2: + resolution: {integrity: sha512-wCDUe/MAw7npAHFLyW3QjSyLA66S5QFaV1jIXlNQvdJ8RzXDSgALa49eWcUO6P55ARQaz0TsDdAgdRgkXFYY8g==} engines: {node: ^14 || ^16 || >=18} dev: true - /@csstools/media-query-list-parser@2.1.5(@csstools/css-parser-algorithms@2.3.2)(@csstools/css-tokenizer@2.2.1): - resolution: {integrity: sha512-IxVBdYzR8pYe89JiyXQuYk4aVVoCPhMJkz6ElRwlVysjwURTsTk/bmY/z4FfeRE+CRBMlykPwXEVUg8lThv7AQ==} + /@csstools/media-query-list-parser@2.1.6(@csstools/css-parser-algorithms@2.4.0)(@csstools/css-tokenizer@2.2.2): + resolution: {integrity: sha512-R6AKl9vaU0It7D7TR2lQn0pre5aQfdeqHRePlaRCY8rHL3l9eVlNRpsEVDKFi/zAjzv68CxH2M5kqbhPFPKjvw==} engines: {node: ^14 || ^16 || >=18} peerDependencies: - '@csstools/css-parser-algorithms': ^2.3.2 - '@csstools/css-tokenizer': ^2.2.1 + '@csstools/css-parser-algorithms': ^2.4.0 + '@csstools/css-tokenizer': ^2.2.2 dependencies: - '@csstools/css-parser-algorithms': 2.3.2(@csstools/css-tokenizer@2.2.1) - '@csstools/css-tokenizer': 2.2.1 + '@csstools/css-parser-algorithms': 2.4.0(@csstools/css-tokenizer@2.2.2) + '@csstools/css-tokenizer': 2.2.2 dev: true - /@csstools/selector-specificity@3.0.0(postcss-selector-parser@6.0.13): - resolution: {integrity: sha512-hBI9tfBtuPIi885ZsZ32IMEU/5nlZH/KOVYJCOh7gyMxaVLGmLedYqFN6Ui1LXkI8JlC8IsuC0rF0btcRZKd5g==} + /@csstools/selector-specificity@3.0.1(postcss-selector-parser@6.0.13): + resolution: {integrity: sha512-NPljRHkq4a14YzZ3YD406uaxh7s0g6eAq3L9aLOWywoqe8PkYamAvtsh7KNX6c++ihDrJ0RiU+/z7rGnhlZ5ww==} engines: {node: ^14 || ^16 || >=18} peerDependencies: postcss-selector-parser: ^6.0.13 @@ -1485,29 +1483,171 @@ packages: postcss-selector-parser: 6.0.13 dev: true - /@ember-data/private-build-infra@5.3.0: - resolution: {integrity: sha512-n7VCPgvjS0Yza5USBucdYjTvlk5GC6fIdWiQUGdK9QxHnyekFg2Znu932ulKp/Iokoc8iBEaVX3HoiCwM/Hw1w==} + /@ember-data/adapter@4.12.5(@ember-data/store@4.12.5)(@ember/string@3.1.1)(ember-inflector@4.0.2): + resolution: {integrity: sha512-YWCjBga9h59q3iBqLONxi68AjNZtKmxQ/uB7e8uSv7czOXGQKpzONlTb68jyMJ687qpg0RWebxLBlBU5yPxq1Q==} + engines: {node: 16.* || >= 18.*} + peerDependencies: + '@ember-data/store': 4.12.5 + '@ember/string': ^3.0.1 + ember-inflector: ^4.0.2 + dependencies: + '@ember-data/private-build-infra': 4.12.5 + '@ember-data/store': 4.12.5(@babel/core@7.23.2)(@ember-data/graph@4.12.5)(@ember-data/json-api@4.12.5)(@ember-data/legacy-compat@4.12.5)(@ember-data/model@4.12.5)(@ember-data/tracking@4.12.5)(@ember/string@3.1.1)(@glimmer/tracking@1.1.2)(ember-source@5.4.0) + '@ember/string': 3.1.1 + '@embroider/macros': 1.13.4 + ember-cli-babel: 7.26.11 + ember-cli-test-info: 1.0.0 + ember-inflector: 4.0.2 + transitivePeerDependencies: + - '@glint/template' + - supports-color + dev: true + + /@ember-data/debug@4.12.5(@ember-data/store@4.12.5)(@ember/string@3.1.1)(webpack@5.89.0): + resolution: {integrity: sha512-IpmZ2ZXhl7NDPd8DH2XNQBzjiwxJHmGbwGFs9IVtZXmOSkk5iCX6v2MkeRBeDjLvUOcZIHNBuHUz66nZJrHNCg==} + engines: {node: 16.* || >= 18.*} + peerDependencies: + '@ember-data/store': 4.12.5 + '@ember/string': ^3.0.1 + dependencies: + '@ember-data/private-build-infra': 4.12.5 + '@ember-data/store': 4.12.5(@babel/core@7.23.2)(@ember-data/graph@4.12.5)(@ember-data/json-api@4.12.5)(@ember-data/legacy-compat@4.12.5)(@ember-data/model@4.12.5)(@ember-data/tracking@4.12.5)(@ember/string@3.1.1)(@glimmer/tracking@1.1.2)(ember-source@5.4.0) + '@ember/edition-utils': 1.2.0 + '@ember/string': 3.1.1 + '@embroider/macros': 1.13.4 + ember-auto-import: 2.6.3(webpack@5.89.0) + ember-cli-babel: 7.26.11 + transitivePeerDependencies: + - '@glint/template' + - supports-color + - webpack + dev: true + + /@ember-data/graph@4.12.5(@ember-data/store@4.12.5): + resolution: {integrity: sha512-YHvtUeH7h1AIFOlRQeaJrUM9DGkGBkzm6+BoVR2iaEbZKM3A/l0tZD7jUveD2bfdhGPtEf5849mlwKi8T2dIKw==} + engines: {node: 16.* || >= 18.*} + peerDependencies: + '@ember-data/store': 4.12.5 + dependencies: + '@ember-data/private-build-infra': 4.12.5 + '@ember-data/store': 4.12.5(@babel/core@7.23.2)(@ember-data/graph@4.12.5)(@ember-data/json-api@4.12.5)(@ember-data/legacy-compat@4.12.5)(@ember-data/model@4.12.5)(@ember-data/tracking@4.12.5)(@ember/string@3.1.1)(@glimmer/tracking@1.1.2)(ember-source@5.4.0) + '@ember/edition-utils': 1.2.0 + '@embroider/macros': 1.13.4 + ember-cli-babel: 7.26.11 + transitivePeerDependencies: + - '@glint/template' + - supports-color + dev: true + + /@ember-data/json-api@4.12.5(@ember-data/graph@4.12.5)(@ember-data/store@4.12.5): + resolution: {integrity: sha512-L3gLUqXDXwKZnXkWm0U3TW/jiQKdQ9Q74MOxhJEeWmmN19fvKGdHe/oS3FASgdmBpMqkwItACmilDRVXWxbGWA==} + engines: {node: 16.* || >= 18.*} + peerDependencies: + '@ember-data/graph': 4.12.5 + '@ember-data/store': 4.12.5 + dependencies: + '@ember-data/graph': 4.12.5(@ember-data/store@4.12.5) + '@ember-data/private-build-infra': 4.12.5 + '@ember-data/store': 4.12.5(@babel/core@7.23.2)(@ember-data/graph@4.12.5)(@ember-data/json-api@4.12.5)(@ember-data/legacy-compat@4.12.5)(@ember-data/model@4.12.5)(@ember-data/tracking@4.12.5)(@ember/string@3.1.1)(@glimmer/tracking@1.1.2)(ember-source@5.4.0) + '@ember/edition-utils': 1.2.0 + '@embroider/macros': 1.13.4 + ember-cli-babel: 7.26.11 + transitivePeerDependencies: + - '@glint/template' + - supports-color + dev: true + + /@ember-data/legacy-compat@4.12.5(@ember-data/graph@4.12.5)(@ember-data/json-api@4.12.5): + resolution: {integrity: sha512-/f2aIsgua0UbueYG1G/nXDIfM/DI34b9f0jOgcsrOGULbhNMYAXfWNvr97TPU5swFLd4H/dWM4VG2dq8tBtmxg==} + engines: {node: 16.* || >= 18} + peerDependencies: + '@ember-data/graph': 4.12.5 + '@ember-data/json-api': 4.12.5 + peerDependenciesMeta: + '@ember-data/graph': + optional: true + '@ember-data/json-api': + optional: true + dependencies: + '@ember-data/graph': 4.12.5(@ember-data/store@4.12.5) + '@ember-data/json-api': 4.12.5(@ember-data/graph@4.12.5)(@ember-data/store@4.12.5) + '@ember-data/private-build-infra': 4.12.5 + '@embroider/macros': 1.13.4 + ember-cli-babel: 7.26.11 + transitivePeerDependencies: + - '@glint/template' + - supports-color + dev: true + + /@ember-data/model@4.12.5(@babel/core@7.23.2)(@ember-data/debug@4.12.5)(@ember-data/graph@4.12.5)(@ember-data/json-api@4.12.5)(@ember-data/legacy-compat@4.12.5)(@ember-data/store@4.12.5)(@ember-data/tracking@4.12.5)(@ember/string@3.1.1)(ember-inflector@4.0.2)(ember-source@5.4.0): + resolution: {integrity: sha512-2+n8tlDSQqrM65u+jGoANQkEzx8dQsMez9EqPZ7Czgv0gtOq9m03H6O3xahqtX/igABwz+2Fcc5o9W4Wv1uWnA==} + engines: {node: 16.* || >= 18.*} + peerDependencies: + '@ember-data/debug': 4.12.5 + '@ember-data/graph': 4.12.5 + '@ember-data/json-api': 4.12.5 + '@ember-data/legacy-compat': 4.12.5 + '@ember-data/store': 4.12.5 + '@ember-data/tracking': 4.12.5 + '@ember/string': ^3.0.1 + ember-inflector: ^4.0.2 + peerDependenciesMeta: + '@ember-data/debug': + optional: true + '@ember-data/graph': + optional: true + '@ember-data/json-api': + optional: true + dependencies: + '@ember-data/debug': 4.12.5(@ember-data/store@4.12.5)(@ember/string@3.1.1)(webpack@5.89.0) + '@ember-data/graph': 4.12.5(@ember-data/store@4.12.5) + '@ember-data/json-api': 4.12.5(@ember-data/graph@4.12.5)(@ember-data/store@4.12.5) + '@ember-data/legacy-compat': 4.12.5(@ember-data/graph@4.12.5)(@ember-data/json-api@4.12.5) + '@ember-data/private-build-infra': 4.12.5 + '@ember-data/store': 4.12.5(@babel/core@7.23.2)(@ember-data/graph@4.12.5)(@ember-data/json-api@4.12.5)(@ember-data/legacy-compat@4.12.5)(@ember-data/model@4.12.5)(@ember-data/tracking@4.12.5)(@ember/string@3.1.1)(@glimmer/tracking@1.1.2)(ember-source@5.4.0) + '@ember-data/tracking': 4.12.5 + '@ember/edition-utils': 1.2.0 + '@ember/string': 3.1.1 + '@embroider/macros': 1.13.4 + ember-cached-decorator-polyfill: 1.0.2(@babel/core@7.23.2)(ember-source@5.4.0) + ember-cli-babel: 7.26.11 + ember-cli-string-utils: 1.1.0 + ember-cli-test-info: 1.0.0 + ember-inflector: 4.0.2 + inflection: 2.0.1 + transitivePeerDependencies: + - '@babel/core' + - '@glint/template' + - ember-source + - supports-color + dev: true + + /@ember-data/private-build-infra@4.12.5: + resolution: {integrity: sha512-FNnyA8+IVylrnnwYR+MGPUushS/X8BEMN4JrrO4Mbrj4Yn10E2gAeKt/MUkk7Gl/HxMw6maxZY8SHoA/NK9XKw==} engines: {node: 16.* || >= 18.*} dependencies: '@babel/core': 7.23.2 '@babel/plugin-transform-block-scoping': 7.23.4(@babel/core@7.23.2) - '@babel/runtime': 7.23.5 + '@babel/runtime': 7.23.6 '@ember/edition-utils': 1.2.0 - '@embroider/macros': 1.13.3 + '@embroider/macros': 1.13.4 babel-import-util: 1.4.1 babel-plugin-debug-macros: 0.3.4(@babel/core@7.23.2) babel-plugin-filter-imports: 4.0.0 babel6-plugin-strip-class-callcheck: 6.0.0 broccoli-debug: 0.6.5 broccoli-file-creator: 2.1.1 + broccoli-funnel: 3.0.8 broccoli-merge-trees: 4.2.0 + broccoli-rollup: 5.0.0 calculate-cache-key-for-tree: 2.0.0 chalk: 4.1.2 - ember-cli-babel: 8.2.0(@babel/core@7.23.2) + ember-cli-babel: 7.26.11 ember-cli-path-utils: 1.0.0 ember-cli-string-utils: 1.1.0 ember-cli-version-checker: 5.1.2 git-repo-info: 2.1.1 + glob: 9.3.5 npm-git-info: 1.0.3 semver: 7.5.4 silent-error: 1.1.1 @@ -1516,43 +1656,74 @@ packages: - supports-color dev: true + /@ember-data/request@4.12.5: + resolution: {integrity: sha512-uxLuQqvjxmiU8ODs5HoiYydnnhpKjBOxxkwSuIMP3Ndb0HlXAqgqSSRMGUzCaNFXYn6KOb7CuDly3OEYYHFlMQ==} + engines: {node: 16.* || >= 18} + dependencies: + '@ember-data/private-build-infra': 4.12.5 + '@ember/test-waiters': 3.1.0 + '@embroider/macros': 1.13.4 + ember-cli-babel: 7.26.11 + transitivePeerDependencies: + - '@glint/template' + - supports-color + dev: true + /@ember-data/rfc395-data@0.0.4: resolution: {integrity: sha512-tGRdvgC9/QMQSuSuJV45xoyhI0Pzjm7A9o/MVVA3HakXIImJbbzx/k/6dO9CUEQXIyS2y0fW6C1XaYOG7rY0FQ==} - /@ember-data/serializer@5.3.0(@babel/core@7.23.2)(@ember/string@3.1.1)(ember-inflector@4.0.2): - resolution: {integrity: sha512-apsfN8qHOVQxIxmPQh6SSxYtzNcb3/jvdjJDrU6L8eklyQXfxcbaBD6r2uUAA2jaI94oNXoSHM/75TZnJjLIZA==} + /@ember-data/serializer@4.12.5(@ember-data/store@4.12.5)(@ember/string@3.1.1)(ember-inflector@4.0.2): + resolution: {integrity: sha512-qQzaJTXxfgDcR2YIgOE5iU+51Hn8ghwQxas63GvIBqtnYkbB3i2Fa4OaEJAruU7phlrEYONaKTVOyrTC+pjTKw==} engines: {node: 16.* || >= 18.*} peerDependencies: - '@ember/string': ^3.1.1 + '@ember-data/store': 4.12.5 + '@ember/string': ^3.0.1 ember-inflector: ^4.0.2 dependencies: - '@ember-data/private-build-infra': 5.3.0 + '@ember-data/private-build-infra': 4.12.5 + '@ember-data/store': 4.12.5(@babel/core@7.23.2)(@ember-data/graph@4.12.5)(@ember-data/json-api@4.12.5)(@ember-data/legacy-compat@4.12.5)(@ember-data/model@4.12.5)(@ember-data/tracking@4.12.5)(@ember/string@3.1.1)(@glimmer/tracking@1.1.2)(ember-source@5.4.0) '@ember/string': 3.1.1 - '@embroider/macros': 1.13.3 - ember-cli-babel: 8.2.0(@babel/core@7.23.2) + '@embroider/macros': 1.13.4 + ember-cli-babel: 7.26.11 ember-cli-test-info: 1.0.0 ember-inflector: 4.0.2 transitivePeerDependencies: - - '@babel/core' - '@glint/template' - supports-color dev: true - /@ember-data/store@5.3.0(@babel/core@7.23.2)(@ember-data/tracking@5.3.0)(@ember/string@3.1.1)(@glimmer/tracking@1.1.2)(ember-source@5.4.0): - resolution: {integrity: sha512-okM7AJmgM8Wz+FNgsDXVUVw32UZVLKko2K/2GfBmOjOcKVnfwLKI08HmQNLnT5IXiOsJW5mA4mRESuVgN8L4lQ==} + /@ember-data/store@4.12.5(@babel/core@7.23.2)(@ember-data/graph@4.12.5)(@ember-data/json-api@4.12.5)(@ember-data/legacy-compat@4.12.5)(@ember-data/model@4.12.5)(@ember-data/tracking@4.12.5)(@ember/string@3.1.1)(@glimmer/tracking@1.1.2)(ember-source@5.4.0): + resolution: {integrity: sha512-hpMrOa3+R3jXft7+j1RQl0Jw79rIWZE7TFuA5Z4u11QjlHiXxpOP/0icer8CeRJk1QSWPMedF/TgwZOnYWh4GQ==} engines: {node: 16.* || >= 18.*} peerDependencies: - '@ember-data/tracking': 5.3.0 - '@ember/string': ^3.1.1 + '@ember-data/graph': 4.12.5 + '@ember-data/json-api': 4.12.5 + '@ember-data/legacy-compat': 4.12.5 + '@ember-data/model': 4.12.5 + '@ember-data/tracking': 4.12.5 + '@ember/string': ^3.0.1 '@glimmer/tracking': ^1.1.2 + peerDependenciesMeta: + '@ember-data/graph': + optional: true + '@ember-data/json-api': + optional: true + '@ember-data/legacy-compat': + optional: true + '@ember-data/model': + optional: true dependencies: - '@ember-data/private-build-infra': 5.3.0 - '@ember-data/tracking': 5.3.0(@babel/core@7.23.2) + '@ember-data/graph': 4.12.5(@ember-data/store@4.12.5) + '@ember-data/json-api': 4.12.5(@ember-data/graph@4.12.5)(@ember-data/store@4.12.5) + '@ember-data/legacy-compat': 4.12.5(@ember-data/graph@4.12.5)(@ember-data/json-api@4.12.5) + '@ember-data/model': 4.12.5(@babel/core@7.23.2)(@ember-data/debug@4.12.5)(@ember-data/graph@4.12.5)(@ember-data/json-api@4.12.5)(@ember-data/legacy-compat@4.12.5)(@ember-data/store@4.12.5)(@ember-data/tracking@4.12.5)(@ember/string@3.1.1)(ember-inflector@4.0.2)(ember-source@5.4.0) + '@ember-data/private-build-infra': 4.12.5 + '@ember-data/tracking': 4.12.5 '@ember/string': 3.1.1 - '@embroider/macros': 1.13.3 + '@embroider/macros': 1.13.4 '@glimmer/tracking': 1.1.2 ember-cached-decorator-polyfill: 1.0.2(@babel/core@7.23.2)(ember-source@5.4.0) - ember-cli-babel: 8.2.0(@babel/core@7.23.2) + ember-cli-babel: 7.26.11 transitivePeerDependencies: - '@babel/core' - '@glint/template' @@ -1560,15 +1731,14 @@ packages: - supports-color dev: true - /@ember-data/tracking@5.3.0(@babel/core@7.23.2): - resolution: {integrity: sha512-CEaV9zbKY40I0c7a7AXIhV4P+veA70plWCGU2fA/AMk69BdT64vKx9r+HPvAVsaz7ER4XCnUqyPAZnCWypa9WA==} + /@ember-data/tracking@4.12.5: + resolution: {integrity: sha512-1i69F6cywzsHZGolJ+W0NelJH7AToICXyuqdH4R9mgzoOD6e3wxY+MBXhB/KoTxoa508G0vYozQ4weea3E/oyw==} engines: {node: 16.* || >= 18} dependencies: - '@ember-data/private-build-infra': 5.3.0 - '@embroider/macros': 1.13.3 - ember-cli-babel: 8.2.0(@babel/core@7.23.2) + '@ember-data/private-build-infra': 4.12.5 + '@embroider/macros': 1.13.4 + ember-cli-babel: 7.26.11 transitivePeerDependencies: - - '@babel/core' - '@glint/template' - supports-color dev: true @@ -1635,7 +1805,7 @@ packages: ember-source: ^4.0.0 || ^5.0.0 dependencies: '@ember/test-waiters': 3.1.0 - '@embroider/macros': 1.13.3 + '@embroider/macros': 1.13.4 '@simple-dom/interface': 1.4.0 broccoli-debug: 0.6.5 broccoli-funnel: 3.0.8 @@ -1669,8 +1839,8 @@ packages: transitivePeerDependencies: - supports-color - /@embroider/macros@1.13.3: - resolution: {integrity: sha512-JUC1aHRLIN2LNy1l+gz7gWkw9JmnsE20GL3LduCzNvCAnEQpMTJhW5BUbEWqdCnAWBPte/M2ofckqBXyTZioTQ==} + /@embroider/macros@1.13.4: + resolution: {integrity: sha512-A6tXvfwnscx66QO0R3c2dIJwEltfsTL4ihsYjMtgP9ODCCmQlCaRlZDQYw5Drta0ER9Fj3nXntu4naV5Wt5XLA==} engines: {node: 12.* || 14.* || >= 16} peerDependencies: '@glint/template': ^1.0.0 @@ -1746,7 +1916,7 @@ packages: ajv: 6.12.6 debug: 4.3.4 espree: 9.6.1 - globals: 13.23.0 + globals: 13.24.0 ignore: 5.3.0 import-fresh: 3.3.0 js-yaml: 4.1.0 @@ -2075,7 +2245,7 @@ packages: resolution: {integrity: sha512-F5z53uvRIF4dYfFfJP3a2Cqg+4P1dgJchJsFnsZE0eZp0LK8X7g2J0CsJHRgns+skpXOlM7n5vFGwkWCWj8qJg==} engines: {node: 12.* || >= 14} dependencies: - '@types/eslint': 8.44.8 + '@types/eslint': 8.44.9 find-up: 5.0.0 fs-extra: 9.1.0 proper-lockfile: 4.1.2 @@ -2191,7 +2361,16 @@ packages: resolution: {integrity: sha512-fB3Zu92ucau0iQ0JMCFQE7b/dv8Ot07NI3KaZIkIUNXq82k4eBAqUaneXfleGY9JWskeS9y+u0nXMyspcuQrCg==} dependencies: '@types/connect': 3.4.38 - '@types/node': 20.10.4 + '@types/node': 20.10.5 + dev: true + + /@types/broccoli-plugin@3.0.0: + resolution: {integrity: sha512-f+TcsARR2PovfFRKFdCX0kfH/QoM3ZVD2h1rl2mNvrKO0fq2uBNCBsTU3JanfU4COCt5cXpTfARyUsERlC8vIw==} + deprecated: This is a stub types definition. broccoli-plugin provides its own type definitions, so you do not need this installed. + dependencies: + broccoli-plugin: 4.0.7 + transitivePeerDependencies: + - supports-color dev: true /@types/chai-as-promised@7.1.8: @@ -2207,7 +2386,7 @@ packages: /@types/connect@3.4.38: resolution: {integrity: sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug==} dependencies: - '@types/node': 20.10.4 + '@types/node': 20.10.5 dev: true /@types/cookie@0.4.1: @@ -2217,17 +2396,17 @@ packages: /@types/cors@2.8.17: resolution: {integrity: sha512-8CGDvrBj1zgo2qE+oS3pOCyYNqCPryMWY2bGfwA0dcfopWGgxs+78df0Rs3rc9THP4JkOhLsAa+15VdpAqkcUA==} dependencies: - '@types/node': 20.10.4 + '@types/node': 20.10.5 dev: true /@types/eslint-scope@3.7.7: resolution: {integrity: sha512-MzMFlSLBqNF2gcHWO0G1vP/YQyfvrxZ0bF+u7mzUdZ1/xK4A4sru+nraZz5i3iEIk1l1uyicaDVTB4QbbEkAYg==} dependencies: - '@types/eslint': 8.44.8 + '@types/eslint': 8.44.9 '@types/estree': 1.0.5 - /@types/eslint@8.44.8: - resolution: {integrity: sha512-4K8GavROwhrYl2QXDXm0Rv9epkA8GBFu0EI+XrrnnuCl7u8CWBRusX7fXJfanhZTDWSAL24gDI/UqXyUM0Injw==} + /@types/eslint@8.44.9: + resolution: {integrity: sha512-6yBxcvwnnYoYT1Uk2d+jvIfsuP4mb2EdIxFnrPABj5a/838qe5bGkNLFOiipX4ULQ7XVQvTxOh7jO+BTAiqsEw==} dependencies: '@types/estree': 1.0.5 '@types/json-schema': 7.0.15 @@ -2238,7 +2417,7 @@ packages: /@types/express-serve-static-core@4.17.41: resolution: {integrity: sha512-OaJ7XLaelTgrvlZD8/aa0vvvxZdUmlCn6MtWeB7TkiKW70BQLc9XEPpDLPdbo52ZhXUCrznlWdCHWxJWtdyajA==} dependencies: - '@types/node': 20.10.4 + '@types/node': 20.10.5 '@types/qs': 6.9.10 '@types/range-parser': 1.2.7 '@types/send': 0.17.4 @@ -2256,26 +2435,26 @@ packages: /@types/fs-extra@5.1.0: resolution: {integrity: sha512-AInn5+UBFIK9FK5xc9yP5e3TQSPNNgjHByqYcj9g5elVBnDQcQL7PlO1CIRy2gWlbwK7UPYqi7vRvFA44dCmYQ==} dependencies: - '@types/node': 20.10.4 + '@types/node': 20.10.5 /@types/fs-extra@8.1.5: resolution: {integrity: sha512-0dzKcwO+S8s2kuF5Z9oUWatQJj5Uq/iqphEtE3GQJVRRYm/tD1LglU2UnXi2A8jLq5umkGouOXOR9y0n613ZwQ==} dependencies: - '@types/node': 20.10.4 + '@types/node': 20.10.5 dev: true /@types/glob@7.2.0: resolution: {integrity: sha512-ZUxbzKl0IfJILTS6t7ip5fQQM/J3TJYubDm3nMbgubNNYS62eXeUpoLUC8/7fJNiFYHTrGPQn7hspDUzIHX3UA==} dependencies: '@types/minimatch': 5.1.2 - '@types/node': 20.10.4 + '@types/node': 20.10.5 dev: true /@types/glob@8.1.0: resolution: {integrity: sha512-IO+MJPVhoqz+28h1qLAcBEH2+xHMK6MTyHJc7MTnnYb6wsoLR29POVGJ7LycmVXIqyy/4/2ShP5sUwTXuOwb/w==} dependencies: '@types/minimatch': 5.1.2 - '@types/node': 20.10.4 + '@types/node': 20.10.5 /@types/http-errors@2.0.4: resolution: {integrity: sha512-D0CFMMtydbJAegzOyHjtiKPLlvnm3iTZyZRSZoLq2mRhDdmLfIWOCYPfQJ4cu2erKghU++QvjcUjp/5h7hESpA==} @@ -2287,7 +2466,7 @@ packages: /@types/keyv@3.1.4: resolution: {integrity: sha512-BQ5aZNSCpj7D6K2ksrRCTmKRLEpnPvWDiLPfoGyhZ++8YtiK9d/3DBKPJgry359X/P1PfruyYwvnvwFjuEiEIg==} dependencies: - '@types/node': 20.10.4 + '@types/node': 20.10.5 dev: true /@types/mime@1.3.5: @@ -2308,8 +2487,8 @@ packages: resolution: {integrity: sha512-hov8bUuiLiyFPGyFPE1lwWhmzYbirOXQNNo40+y3zow8aFVTeyn3VWL0VFFfdNddA8S4Vf0Tc062rzyNr7Paag==} dev: true - /@types/node@20.10.4: - resolution: {integrity: sha512-D08YG6rr8X90YB56tSIuBaddy/UXAA9RKJoFvrsnogAum/0pmjkgi4+2nx96A330FmioegBWmEYQ+syqCFaveg==} + /@types/node@20.10.5: + resolution: {integrity: sha512-nNPsNE65wjMxEKI93yOP+NPGGBJz/PoN3kZsVLee0XMiJolxSekEVD8wRwBUBqkwc7UWop0edW50yrCQW4CyRw==} dependencies: undici-types: 5.26.5 @@ -2328,20 +2507,20 @@ packages: /@types/responselike@1.0.3: resolution: {integrity: sha512-H/+L+UkTV33uf49PH5pCAUBVPNj2nDBXTN+qS1dOwyyg24l3CcicicCA7ca+HMvJBZcFgl5r8e+RR6elsb4Lyw==} dependencies: - '@types/node': 20.10.4 + '@types/node': 20.10.5 dev: true /@types/rimraf@2.0.5: resolution: {integrity: sha512-YyP+VfeaqAyFmXoTh3HChxOQMyjByRMsHU7kc5KOJkSlXudhMhQIALbYV7rHh/l8d2lX3VUQzprrcAgWdRuU8g==} dependencies: '@types/glob': 8.1.0 - '@types/node': 20.10.4 + '@types/node': 20.10.5 /@types/send@0.17.4: resolution: {integrity: sha512-x2EM6TJOybec7c52BX0ZspPodMsQUd5L6PRwOunVyVUhXiBSKf3AezDL8Dgvgt5o0UfKNfuA0eMLr2wLT4AiBA==} dependencies: '@types/mime': 1.3.5 - '@types/node': 20.10.4 + '@types/node': 20.10.5 dev: true /@types/serve-static@1.15.5: @@ -2349,7 +2528,7 @@ packages: dependencies: '@types/http-errors': 2.0.4 '@types/mime': 3.0.4 - '@types/node': 20.10.4 + '@types/node': 20.10.5 dev: true /@types/symlink-or-copy@1.2.2: @@ -2856,7 +3035,7 @@ packages: resolution: {integrity: sha512-jDLlxI8QnfKd7PtieH6pl4tZJzymzfCDCPGdTq/grgbiYAikwDPp/oL0IlFJn0HQjLpcLkyYhPKkUVneRESw5w==} engines: {node: '>=8'} dependencies: - '@babel/types': 7.23.5 + '@babel/types': 7.23.6 lodash: 4.17.21 /babel-plugin-htmlbars-inline-precompile@3.2.0: @@ -2893,37 +3072,38 @@ packages: pkg-up: 3.1.0 reselect: 4.1.8 resolve: 1.22.2 + dev: false - /babel-plugin-polyfill-corejs2@0.4.6(@babel/core@7.23.2): - resolution: {integrity: sha512-jhHiWVZIlnPbEUKSSNb9YoWcQGdlTLq7z1GHL4AjFxaoOUMuuEVJ+Y4pAaQUGOGk93YsVCKPbqbfw3m0SM6H8Q==} + /babel-plugin-polyfill-corejs2@0.4.7(@babel/core@7.23.2): + resolution: {integrity: sha512-LidDk/tEGDfuHW2DWh/Hgo4rmnw3cduK6ZkOI1NPFceSK3n/yAGeOsNT7FLnSGHkXj3RHGSEVkN3FsCTY6w2CQ==} peerDependencies: '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 dependencies: '@babel/compat-data': 7.23.5 '@babel/core': 7.23.2 - '@babel/helper-define-polyfill-provider': 0.4.3(@babel/core@7.23.2) + '@babel/helper-define-polyfill-provider': 0.4.4(@babel/core@7.23.2) semver: 6.3.1 transitivePeerDependencies: - supports-color - /babel-plugin-polyfill-corejs3@0.8.6(@babel/core@7.23.2): - resolution: {integrity: sha512-leDIc4l4tUgU7str5BWLS2h8q2N4Nf6lGZP6UrNDxdtfF2g69eJ5L0H7S8A5Ln/arfFAfHor5InAdZuIOwZdgQ==} + /babel-plugin-polyfill-corejs3@0.8.7(@babel/core@7.23.2): + resolution: {integrity: sha512-KyDvZYxAzkC0Aj2dAPyDzi2Ym15e5JKZSK+maI7NAwSqofvuFglbSsxE7wUOvTg9oFVnHMzVzBKcqEb4PJgtOA==} peerDependencies: '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 dependencies: '@babel/core': 7.23.2 - '@babel/helper-define-polyfill-provider': 0.4.3(@babel/core@7.23.2) + '@babel/helper-define-polyfill-provider': 0.4.4(@babel/core@7.23.2) core-js-compat: 3.34.0 transitivePeerDependencies: - supports-color - /babel-plugin-polyfill-regenerator@0.5.3(@babel/core@7.23.2): - resolution: {integrity: sha512-8sHeDOmXC8csczMrYEOf0UTNa4yE2SxV5JGeT/LP1n0OYVDUUFPxG9vdk2AlDlIit4t+Kf0xCtpgXPBwnn/9pw==} + /babel-plugin-polyfill-regenerator@0.5.4(@babel/core@7.23.2): + resolution: {integrity: sha512-S/x2iOCvDaCASLYsOOgWOq4bCfKYVqvO/uxjkaYyZ3rVsVE3CeAI/c84NpyuBBymEgNvHgjEot3a9/Z/kXvqsg==} peerDependencies: '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 dependencies: '@babel/core': 7.23.2 - '@babel/helper-define-polyfill-provider': 0.4.3(@babel/core@7.23.2) + '@babel/helper-define-polyfill-provider': 0.4.4(@babel/core@7.23.2) transitivePeerDependencies: - supports-color @@ -3143,6 +3323,7 @@ packages: workerpool: 6.5.1 transitivePeerDependencies: - supports-color + dev: false /broccoli-builder@0.18.14: resolution: {integrity: sha512-YoUHeKnPi4xIGZ2XDVN9oHNA9k3xF5f5vlA+1wvrxIIDXqQU97gp2FxVAF503Zxdtt0C5CRB5n+47k2hlkaBzA==} @@ -3491,6 +3672,23 @@ packages: transitivePeerDependencies: - supports-color + /broccoli-rollup@5.0.0: + resolution: {integrity: sha512-QdMuXHwsdz/LOS8zu4HP91Sfi4ofimrOXoYP/lrPdRh7lJYD87Lfq4WzzUhGHsxMfzANIEvl/7qVHKD3cFJ4tA==} + engines: {node: '>=12.0'} + dependencies: + '@types/broccoli-plugin': 3.0.0 + broccoli-plugin: 4.0.7 + fs-tree-diff: 2.0.1 + heimdalljs: 0.2.6 + node-modules-path: 1.0.2 + rollup: 2.79.1 + rollup-pluginutils: 2.8.2 + symlink-or-copy: 1.3.1 + walk-sync: 2.2.0 + transitivePeerDependencies: + - supports-color + dev: true + /broccoli-slow-trees@3.1.0: resolution: {integrity: sha512-FRI7mRTk2wjIDrdNJd6znS7Kmmne4VkAkl8Ix1R/VoePFMD0g0tEl671xswzFqaRjpT9Qu+CC4hdXDLDJBuzMw==} dependencies: @@ -3595,8 +3793,8 @@ packages: engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} hasBin: true dependencies: - caniuse-lite: 1.0.30001566 - electron-to-chromium: 1.4.608 + caniuse-lite: 1.0.30001570 + electron-to-chromium: 1.4.614 node-releases: 2.0.14 update-browserslist-db: 1.0.13(browserslist@4.22.2) @@ -3712,8 +3910,8 @@ packages: dependencies: tmp: 0.0.28 - /caniuse-lite@1.0.30001566: - resolution: {integrity: sha512-ggIhCsTxmITBAMmK8yZjEhCO5/47jKXPu6Dha/wuCS4JePVL+3uiDEBuhu2aIoT+bqTOR8L76Ip1ARL9xYsEJA==} + /caniuse-lite@1.0.30001570: + resolution: {integrity: sha512-+3e0ASu4sw1SWaoCtvPeyXp+5PsjigkSt8OXZbF9StH5pQWbxEjLAZE3n8Aup5udop1uRiKA7a4utUk/uoSpUw==} /capture-exit@2.0.0: resolution: {integrity: sha512-PiT/hQmTonHhl/HFGN+Lx3JJUznrVYJ3+AQsnthneZbvW7x+f08Tk7yLJTLEOUvBTbduLeeBkxEaYXUOUrRq6g==} @@ -4360,7 +4558,7 @@ packages: resolution: {integrity: sha512-fnULvOpxnC5/Vg3NCiWelDsLiUc9bRwAPs/+LfTLNvetFCtCTN+yQz15C/fs4AwX1R9K5GLtLfn8QW+dWisaAw==} engines: {node: '>=0.11'} dependencies: - '@babel/runtime': 7.23.5 + '@babel/runtime': 7.23.6 /debug@2.6.9: resolution: {integrity: sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==} @@ -4591,8 +4789,8 @@ packages: resolution: {integrity: sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==} dev: true - /electron-to-chromium@1.4.608: - resolution: {integrity: sha512-J2f/3iIIm3Mo0npneITZ2UPe4B1bg8fTNrFjD8715F/k1BvbviRuqYGkET1PgprrczXYTHFvotbBOmUp6KE0uA==} + /electron-to-chromium@1.4.614: + resolution: {integrity: sha512-X4ze/9Sc3QWs6h92yerwqv7aB/uU8vCjZcrMjA8N9R1pjMFRe44dLsck5FzLilOYvcXuDn93B+bpGYyufc70gQ==} /ember-auto-import@2.6.3(webpack@5.89.0): resolution: {integrity: sha512-uLhrRDJYWCRvQ4JQ1e64XlSrqAKSd6PXaJ9ZsZI6Tlms9T4DtQFxNXasqji2ZRJBVrxEoLCRYX3RTldsQ0vNGQ==} @@ -4601,8 +4799,8 @@ packages: '@babel/core': 7.23.2 '@babel/plugin-proposal-class-properties': 7.18.6(@babel/core@7.23.2) '@babel/plugin-proposal-decorators': 7.23.2(@babel/core@7.23.2) - '@babel/preset-env': 7.23.5(@babel/core@7.23.2) - '@embroider/macros': 1.13.3 + '@babel/preset-env': 7.23.6(@babel/core@7.23.2) + '@embroider/macros': 1.13.4 '@embroider/shared-internals': 2.5.1 babel-loader: 8.3.0(@babel/core@7.23.2)(webpack@5.89.0) babel-plugin-ember-modules-api-polyfill: 3.5.0 @@ -4634,8 +4832,8 @@ packages: - supports-color - webpack - /ember-auto-import@2.7.0(webpack@5.89.0): - resolution: {integrity: sha512-cBEBB6IRRmlCVfyaRmDCfLrywm2HibTosJzIKv4BWF1p2ZokUhXBJjMRwuaG3tbLMV8rmJdLWnSKm8CodsdmQA==} + /ember-auto-import@2.7.1(webpack@5.89.0): + resolution: {integrity: sha512-8i5pw9DAtIJ+h+iGbYD25GPTyF3gLurokT7b1HBvKkHdOQuqGaXB9aiWA72BnqwA3Kwd3nfgdOml3HEaeQmCKQ==} engines: {node: 12.* || 14.* || >= 16} dependencies: '@babel/core': 7.23.2 @@ -4643,8 +4841,8 @@ packages: '@babel/plugin-proposal-decorators': 7.23.2(@babel/core@7.23.2) '@babel/plugin-proposal-private-methods': 7.18.6(@babel/core@7.23.2) '@babel/plugin-transform-class-static-block': 7.23.4(@babel/core@7.23.2) - '@babel/preset-env': 7.23.5(@babel/core@7.23.2) - '@embroider/macros': 1.13.3 + '@babel/preset-env': 7.23.6(@babel/core@7.23.2) + '@embroider/macros': 1.13.4 '@embroider/shared-internals': 2.5.1 babel-loader: 8.3.0(@babel/core@7.23.2)(webpack@5.89.0) babel-plugin-ember-modules-api-polyfill: 3.5.0 @@ -4697,7 +4895,7 @@ packages: peerDependencies: ember-source: ^3.13.0 || ^4.0.0 || >= 5.0.0 dependencies: - '@embroider/macros': 1.13.3 + '@embroider/macros': 1.13.4 '@glimmer/tracking': 1.1.2 babel-import-util: 1.4.1 ember-cache-primitive-polyfill: 1.0.1(@babel/core@7.23.2) @@ -4719,16 +4917,16 @@ packages: engines: {node: 6.* || 8.* || >= 10.*} dependencies: '@babel/core': 7.23.2 - '@babel/helper-compilation-targets': 7.22.15 + '@babel/helper-compilation-targets': 7.23.6 '@babel/plugin-proposal-class-properties': 7.18.6(@babel/core@7.23.2) '@babel/plugin-proposal-decorators': 7.23.2(@babel/core@7.23.2) '@babel/plugin-proposal-private-methods': 7.18.6(@babel/core@7.23.2) '@babel/plugin-proposal-private-property-in-object': 7.21.11(@babel/core@7.23.2) '@babel/plugin-transform-modules-amd': 7.23.3(@babel/core@7.23.2) - '@babel/plugin-transform-runtime': 7.23.4(@babel/core@7.23.2) - '@babel/plugin-transform-typescript': 7.23.5(@babel/core@7.23.2) + '@babel/plugin-transform-runtime': 7.23.6(@babel/core@7.23.2) + '@babel/plugin-transform-typescript': 7.23.6(@babel/core@7.23.2) '@babel/polyfill': 7.12.1 - '@babel/preset-env': 7.23.5(@babel/core@7.23.2) + '@babel/preset-env': 7.23.6(@babel/core@7.23.2) '@babel/runtime': 7.12.18 amd-name-resolver: 1.3.1 babel-plugin-debug-macros: 0.3.4(@babel/core@7.23.2) @@ -4758,16 +4956,16 @@ packages: '@babel/core': ^7.12.0 dependencies: '@babel/core': 7.23.2 - '@babel/helper-compilation-targets': 7.22.15 + '@babel/helper-compilation-targets': 7.23.6 '@babel/plugin-proposal-class-properties': 7.18.6(@babel/core@7.23.2) '@babel/plugin-proposal-decorators': 7.23.2(@babel/core@7.23.2) '@babel/plugin-proposal-private-methods': 7.18.6(@babel/core@7.23.2) '@babel/plugin-proposal-private-property-in-object': 7.21.11(@babel/core@7.23.2) '@babel/plugin-transform-class-static-block': 7.23.4(@babel/core@7.23.2) '@babel/plugin-transform-modules-amd': 7.23.3(@babel/core@7.23.2) - '@babel/plugin-transform-runtime': 7.23.4(@babel/core@7.23.2) - '@babel/plugin-transform-typescript': 7.23.5(@babel/core@7.23.2) - '@babel/preset-env': 7.23.5(@babel/core@7.23.2) + '@babel/plugin-transform-runtime': 7.23.6(@babel/core@7.23.2) + '@babel/plugin-transform-typescript': 7.23.6(@babel/core@7.23.2) + '@babel/preset-env': 7.23.6(@babel/core@7.23.2) '@babel/runtime': 7.12.18 amd-name-resolver: 1.3.1 babel-plugin-debug-macros: 0.3.4(@babel/core@7.23.2) @@ -4787,6 +4985,7 @@ packages: semver: 7.5.4 transitivePeerDependencies: - supports-color + dev: false /ember-cli-clean-css@3.0.0: resolution: {integrity: sha512-BbveJCyRvzzkaTH1llLW+MpHe/yzA5zpHOpMIg2vp/3JD9mban9zUm7lphaB0TSpPuMuby9rAhTI8pgXq0ifIA==} @@ -5265,7 +5464,7 @@ packages: ember-concurrency: ^2.0.0-rc.1 dependencies: '@babel/helper-plugin-utils': 7.22.5 - '@babel/types': 7.23.5 + '@babel/types': 7.23.6 ember-cli-babel: 7.26.11 ember-cli-babel-plugin-helpers: 1.1.1 ember-cli-htmlbars: 4.5.0 @@ -5305,7 +5504,7 @@ packages: engines: {node: 10.* || 12.* || 14.* || >= 16} dependencies: '@babel/helper-plugin-utils': 7.22.5 - '@babel/types': 7.23.5 + '@babel/types': 7.23.6 '@glimmer/tracking': 1.1.2 ember-cli-babel: 7.26.11 ember-cli-babel-plugin-helpers: 1.1.1 @@ -5324,7 +5523,7 @@ packages: ember-source: ^3.28.0 || ^4.0.0 || >=5.0.0 dependencies: '@babel/helper-plugin-utils': 7.22.5 - '@babel/types': 7.23.5 + '@babel/types': 7.23.6 '@glimmer/tracking': 1.1.2 ember-cli-babel: 7.26.11 ember-cli-babel-plugin-helpers: 1.1.1 @@ -5354,6 +5553,40 @@ packages: - supports-color dev: false + /ember-data@4.12.5(@babel/core@7.23.2)(@ember/string@3.1.1)(@glimmer/tracking@1.1.2)(ember-source@5.4.0)(webpack@5.89.0): + resolution: {integrity: sha512-5q0m0qFdbur3eFk2/iT1GEGxBUOnwbDD0Gk6sWLiVGL2NLZw1wH6Spo36RqClx62ov2vlo9DytVmKbOu224WaQ==} + engines: {node: 16.* || >= 18.*} + peerDependencies: + '@ember/string': ^3.0.1 + dependencies: + '@ember-data/adapter': 4.12.5(@ember-data/store@4.12.5)(@ember/string@3.1.1)(ember-inflector@4.0.2) + '@ember-data/debug': 4.12.5(@ember-data/store@4.12.5)(@ember/string@3.1.1)(webpack@5.89.0) + '@ember-data/graph': 4.12.5(@ember-data/store@4.12.5) + '@ember-data/json-api': 4.12.5(@ember-data/graph@4.12.5)(@ember-data/store@4.12.5) + '@ember-data/legacy-compat': 4.12.5(@ember-data/graph@4.12.5)(@ember-data/json-api@4.12.5) + '@ember-data/model': 4.12.5(@babel/core@7.23.2)(@ember-data/debug@4.12.5)(@ember-data/graph@4.12.5)(@ember-data/json-api@4.12.5)(@ember-data/legacy-compat@4.12.5)(@ember-data/store@4.12.5)(@ember-data/tracking@4.12.5)(@ember/string@3.1.1)(ember-inflector@4.0.2)(ember-source@5.4.0) + '@ember-data/private-build-infra': 4.12.5 + '@ember-data/request': 4.12.5 + '@ember-data/serializer': 4.12.5(@ember-data/store@4.12.5)(@ember/string@3.1.1)(ember-inflector@4.0.2) + '@ember-data/store': 4.12.5(@babel/core@7.23.2)(@ember-data/graph@4.12.5)(@ember-data/json-api@4.12.5)(@ember-data/legacy-compat@4.12.5)(@ember-data/model@4.12.5)(@ember-data/tracking@4.12.5)(@ember/string@3.1.1)(@glimmer/tracking@1.1.2)(ember-source@5.4.0) + '@ember-data/tracking': 4.12.5 + '@ember/edition-utils': 1.2.0 + '@ember/string': 3.1.1 + '@embroider/macros': 1.13.4 + '@glimmer/env': 0.1.7 + broccoli-merge-trees: 4.2.0 + ember-auto-import: 2.6.3(webpack@5.89.0) + ember-cli-babel: 7.26.11 + ember-inflector: 4.0.2 + transitivePeerDependencies: + - '@babel/core' + - '@glimmer/tracking' + - '@glint/template' + - ember-source + - supports-color + - webpack + dev: true + /ember-decorators@6.1.1: resolution: {integrity: sha512-63vZPntPn1aqMyeNRLoYjJD+8A8obd+c2iZkJflswpDRNVIsp2m7aQdSCtPt4G0U/TEq2251g+N10maHX3rnJQ==} engines: {node: '>= 8.*'} @@ -5397,7 +5630,7 @@ packages: '@ember/test-helpers': 3.2.0(ember-source@5.4.0)(webpack@5.89.0) '@ember/test-waiters': 3.1.0 '@embroider/addon-shim': 1.8.7 - '@embroider/macros': 1.13.3 + '@embroider/macros': 1.13.4 '@glimmer/component': 1.1.2(@babel/core@7.23.2) '@glimmer/tracking': 1.1.2 ember-auto-import: 2.6.3(webpack@5.89.0) @@ -5413,7 +5646,7 @@ packages: resolution: {integrity: sha512-uNmv1cPG/4qsac8oIf5txJ2FZ8p88LEpG4P3dNcjsJS98Y8hd0GPMFwVqpnzI78Lz7VYRGQWY4jnE4qm5R3j4g==} engines: {node: 12.* || 14.* || >= 16} dependencies: - '@embroider/macros': 1.13.3 + '@embroider/macros': 1.13.4 ember-cli-babel: 7.26.11 transitivePeerDependencies: - '@glint/template' @@ -5447,7 +5680,7 @@ packages: broccoli-stew: 3.0.0 calculate-cache-key-for-tree: 2.0.0 cldr-core: 44.0.1 - ember-auto-import: 2.7.0(webpack@5.89.0) + ember-auto-import: 2.7.1(webpack@5.89.0) ember-cli-babel: 8.2.0(@babel/core@7.23.2) ember-cli-typescript: 5.2.1 eventemitter3: 5.0.1 @@ -5540,7 +5773,7 @@ packages: dependencies: '@ember/test-helpers': 3.2.0(ember-source@5.4.0)(webpack@5.89.0) '@embroider/addon-shim': 1.8.7 - '@embroider/macros': 1.13.3 + '@embroider/macros': 1.13.4 ember-cli-test-loader: 3.1.0 ember-source: 5.4.0(@babel/core@7.23.2)(@glimmer/component@1.1.2)(rsvp@4.8.5)(webpack@5.89.0) qunit: 2.20.0 @@ -5571,8 +5804,8 @@ packages: resolution: {integrity: sha512-89oVHVJwmLDvGvAUWgS87KpBoRhy3aZ6U0Ql6HOmU4TrPkyaa8pM0W81wj9cIwjYprcQtN9EwzZMHnq46+oUyw==} engines: {node: 8.* || 10.* || >= 12} dependencies: - '@babel/parser': 7.23.5 - '@babel/traverse': 7.23.5 + '@babel/parser': 7.23.6 + '@babel/traverse': 7.23.6 recast: 0.18.10 transitivePeerDependencies: - supports-color @@ -5588,7 +5821,7 @@ packages: '@ember/test-helpers': 3.2.0(ember-source@5.4.0)(webpack@5.89.0) '@ember/test-waiters': 3.1.0 '@embroider/addon-shim': 1.8.7 - '@embroider/macros': 1.13.3 + '@embroider/macros': 1.13.4 ember-cli-is-package-missing: 1.0.0 ember-cookies: 1.1.1 silent-error: 1.1.1 @@ -5812,7 +6045,7 @@ packages: dependencies: '@types/cookie': 0.4.1 '@types/cors': 2.8.17 - '@types/node': 20.10.4 + '@types/node': 20.10.5 accepts: 1.3.8 base64id: 2.0.0 cookie: 0.4.2 @@ -6115,7 +6348,7 @@ packages: file-entry-cache: 6.0.1 find-up: 5.0.0 glob-parent: 6.0.2 - globals: 13.23.0 + globals: 13.24.0 graphemer: 1.4.0 ignore: 5.3.0 imurmurhash: 0.1.4 @@ -6180,6 +6413,10 @@ packages: resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==} engines: {node: '>=4.0'} + /estree-walker@0.6.1: + resolution: {integrity: sha512-SqmZANLWS0mnatqbSfRP5g8OXZC12Fgg1IwNtLsyHDzJizORW4khDfjPqJZsemPWBB2uqykUah5YpQ6epsqC/w==} + dev: true + /esutils@2.0.3: resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} engines: {node: '>=0.10.0'} @@ -6593,6 +6830,7 @@ packages: dependencies: json5: 2.2.3 path-exists: 4.0.0 + dev: false /find-cache-dir@3.3.2: resolution: {integrity: sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==} @@ -6616,6 +6854,7 @@ packages: engines: {node: '>=6'} dependencies: locate-path: 3.0.0 + dev: false /find-up@4.1.0: resolution: {integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==} @@ -6881,6 +7120,14 @@ packages: /fs.realpath@1.0.0: resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} + /fsevents@2.3.3: + resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} + engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} + os: [darwin] + requiresBuild: true + dev: true + optional: true + /function-bind@1.1.2: resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==} @@ -7038,6 +7285,16 @@ packages: minimatch: 5.1.6 once: 1.4.0 + /glob@9.3.5: + resolution: {integrity: sha512-e1LleDykUz2Iu+MTYdkSsuWX8lvAjAcs0Xef0lNIu0S2wOAzuTxCJtcd9S3cijlwYF18EsU3rzb8jPVobxDh9Q==} + engines: {node: '>=16 || 14 >=14.17'} + dependencies: + fs.realpath: 1.0.0 + minimatch: 8.0.4 + minipass: 4.2.8 + path-scurry: 1.10.1 + dev: true + /global-modules@1.0.0: resolution: {integrity: sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg==} engines: {node: '>=0.10.0'} @@ -7078,8 +7335,8 @@ packages: resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==} engines: {node: '>=4'} - /globals@13.23.0: - resolution: {integrity: sha512-XAmF0RjlrjY23MA51q3HltdlGxUpXPvg0GioKiD9X6HD28iMjo2dKC8Vqwm7lne4GNr78+RHTfliktR6ZH09wA==} + /globals@13.24.0: + resolution: {integrity: sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==} engines: {node: '>=8'} dependencies: type-fest: 0.20.2 @@ -7682,7 +7939,7 @@ packages: /is-language-code@3.1.0: resolution: {integrity: sha512-zJdQ3QTeLye+iphMeK3wks+vXSRFKh68/Pnlw7aOfApFSEIOhYa8P9vwwa6QrImNNBMJTiL1PpYF0f4BxDuEgA==} dependencies: - '@babel/runtime': 7.23.5 + '@babel/runtime': 7.23.6 dev: true /is-negative-zero@2.0.2: @@ -7864,7 +8121,7 @@ packages: resolution: {integrity: sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==} engines: {node: '>= 10.13.0'} dependencies: - '@types/node': 20.10.4 + '@types/node': 20.10.5 merge-stream: 2.0.0 supports-color: 8.1.1 @@ -8069,6 +8326,7 @@ packages: dependencies: p-locate: 3.0.0 path-exists: 3.0.0 + dev: false /locate-path@5.0.0: resolution: {integrity: sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==} @@ -8228,6 +8486,11 @@ packages: engines: {node: '>=8'} dev: true + /lru-cache@10.1.0: + resolution: {integrity: sha512-/1clY/ui8CzjKFyjdvwPWJUYKiFVXG2I2cY0ssG7h4+hwk+XOIX7ZSG9Q7TW8TW3Kp3BUSqgFWBLgL4PJ+Blag==} + engines: {node: 14 || >=16.14} + dev: true + /lru-cache@5.1.1: resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==} dependencies: @@ -8498,6 +8761,13 @@ packages: brace-expansion: 2.0.1 dev: true + /minimatch@8.0.4: + resolution: {integrity: sha512-W0Wvr9HyFXZRGIDgCicunpQ299OKXs9RgZfaukz4qAW/pJhcpUfupc9c+OObPOFueNy8VSrZgEmDtk6Kh4WzDA==} + engines: {node: '>=16 || 14 >=14.17'} + dependencies: + brace-expansion: 2.0.1 + dev: true + /minimist-options@4.1.0: resolution: {integrity: sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A==} engines: {node: '>= 6'} @@ -8517,6 +8787,16 @@ packages: yallist: 3.1.1 dev: true + /minipass@4.2.8: + resolution: {integrity: sha512-fNzuVyifolSLFL4NzpF+wEF4qrgqaaKX0haXPQEdQ7NKAN+WecoKMHV09YcuL/DHxrUsYQOK3MiuDf7Ip2OXfQ==} + engines: {node: '>=8'} + dev: true + + /minipass@7.0.4: + resolution: {integrity: sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==} + engines: {node: '>=16 || 14 >=14.17'} + dev: true + /mixin-deep@1.3.2: resolution: {integrity: sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==} engines: {node: '>=0.10.0'} @@ -8649,6 +8929,10 @@ packages: resolution: {integrity: sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==} dev: true + /node-modules-path@1.0.2: + resolution: {integrity: sha512-6Gbjq+d7uhkO7epaKi5DNgUJn7H0gEyA4Jg0Mo1uQOi3Rk50G83LtmhhFyw0LxnAFhtlspkiiw52ISP13qzcBg==} + dev: true + /node-notifier@10.0.1: resolution: {integrity: sha512-YX7TSyDukOZ0g+gmzjB6abKu+hTGvO8+8+gIFDsRCU2t8fLV/P2unmt+LGFaIa4y64aX98Qksa97rgz4vMNeLQ==} dependencies: @@ -8973,6 +9257,7 @@ packages: engines: {node: '>=6'} dependencies: p-limit: 2.3.0 + dev: false /p-locate@4.1.0: resolution: {integrity: sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==} @@ -9106,6 +9391,14 @@ packages: dependencies: path-root-regex: 0.1.2 + /path-scurry@1.10.1: + resolution: {integrity: sha512-MkhCqzzBEpPvxxQ71Md0b1Kk51W01lrYvlMzSUaIzNsODdd7mqhiimSZlr+VegAz5Z6Vzt9Xg2ttE//XBhH3EQ==} + engines: {node: '>=16 || 14 >=14.17'} + dependencies: + lru-cache: 10.1.0 + minipass: 7.0.4 + dev: true + /path-to-regexp@0.1.7: resolution: {integrity: sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==} dev: true @@ -9140,6 +9433,7 @@ packages: engines: {node: '>=8'} dependencies: find-up: 3.0.0 + dev: false /portfinder@1.0.32: resolution: {integrity: sha512-on2ZJVVDXRADWE6jnQaX0ioEylzgBpQk8r55NE4wjXW1ZxO+BgDlY6DXwj20i0V8eB4SenDQ00WEaxfiIQPcxg==} @@ -9483,13 +9777,13 @@ packages: /regenerator-runtime@0.13.11: resolution: {integrity: sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==} - /regenerator-runtime@0.14.0: - resolution: {integrity: sha512-srw17NI0TUWHuGa5CFGGmhfNIeja30WMBfbslPNhf6JrqQlLN5gcrvig1oqPxiVaXb0oW0XRKtH6Nngs5lKCIA==} + /regenerator-runtime@0.14.1: + resolution: {integrity: sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==} /regenerator-transform@0.15.2: resolution: {integrity: sha512-hfMp2BoF0qOk3uc5V20ALGDS2ddjQaLrdl7xrGXvAIow7qeWRM2VA2HuCHkUKk9slq3VwEwLNK3DFBqDfPGYtg==} dependencies: - '@babel/runtime': 7.23.5 + '@babel/runtime': 7.23.6 /regex-not@1.0.2: resolution: {integrity: sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==} @@ -9551,7 +9845,7 @@ packages: dependencies: '@babel/core': 7.23.2 '@babel/plugin-syntax-decorators': 7.23.3(@babel/core@7.23.2) - '@babel/plugin-transform-typescript': 7.23.5(@babel/core@7.23.2) + '@babel/plugin-transform-typescript': 7.23.6(@babel/core@7.23.2) prettier: 2.8.8 transitivePeerDependencies: - supports-color @@ -9587,6 +9881,7 @@ packages: /reselect@4.1.8: resolution: {integrity: sha512-ab9EmR80F/zQTMNeneUr4cv+jSwPJgIlvEmVwLerwrWVbpLlBuls9XHzIeTFy4cegU2NHBp3va0LKOzU5qFEYQ==} + dev: false /resolve-dir@1.0.1: resolution: {integrity: sha512-R7uiTjECzvOsWSfdM0QKFNBVFcK27aHOUwdvK53BcW8zqnGdYp0Fbj82cy54+2A4P2tFM22J5kRfe1R+lM/1yg==} @@ -9720,6 +10015,20 @@ packages: dependencies: glob: 7.2.3 + /rollup-pluginutils@2.8.2: + resolution: {integrity: sha512-EEp9NhnUkwY8aif6bxgovPHMoMoNr2FulJziTndpt5H9RdwC47GSGuII9XxpSdzVGM0GWrNPHV6ie1LTNJPaLQ==} + dependencies: + estree-walker: 0.6.1 + dev: true + + /rollup@2.79.1: + resolution: {integrity: sha512-uKxbd0IhMZOhjAiD5oAFp7BqvkA4Dv47qpOCtaNvng4HBwdbWtdOh8f5nZNuk2rp51PMGk3bzfWu5oayNEuYnw==} + engines: {node: '>=10.0.0'} + hasBin: true + optionalDependencies: + fsevents: 2.3.3 + dev: true + /route-recognizer@0.3.4: resolution: {integrity: sha512-2+MhsfPhvauN1O8KaXpXAOfR/fwe8dnUXVM+xw7yt40lJRfPVQxV6yryZm0cgRvAj5fMF/mdRZbL2ptwbs5i2g==} @@ -10147,7 +10456,7 @@ packages: stream-demux: 8.1.0 uuid: 8.3.2 vinyl-buffer: 1.0.1 - ws: 8.14.2 + ws: 8.15.1 transitivePeerDependencies: - bufferutil - utf-8-validate @@ -10476,10 +10785,10 @@ packages: engines: {node: ^14.13.1 || >=16.0.0} hasBin: true dependencies: - '@csstools/css-parser-algorithms': 2.3.2(@csstools/css-tokenizer@2.2.1) - '@csstools/css-tokenizer': 2.2.1 - '@csstools/media-query-list-parser': 2.1.5(@csstools/css-parser-algorithms@2.3.2)(@csstools/css-tokenizer@2.2.1) - '@csstools/selector-specificity': 3.0.0(postcss-selector-parser@6.0.13) + '@csstools/css-parser-algorithms': 2.4.0(@csstools/css-tokenizer@2.2.2) + '@csstools/css-tokenizer': 2.2.2 + '@csstools/media-query-list-parser': 2.1.6(@csstools/css-parser-algorithms@2.4.0)(@csstools/css-tokenizer@2.2.2) + '@csstools/selector-specificity': 3.0.1(postcss-selector-parser@6.0.13) balanced-match: 2.0.0 colord: 2.9.3 cosmiconfig: 8.3.6 @@ -11429,8 +11738,8 @@ packages: optional: true dev: true - /ws@8.14.2: - resolution: {integrity: sha512-wEBG1ftX4jcglPxgFCMJmZ2PLtSbJ2Peg6TmpJFTbe9GZYOQCDPdMYu/Tm0/bGZkw8paZnJY45J4K2PZrLYq8g==} + /ws@8.15.1: + resolution: {integrity: sha512-W5OZiCjXEmk0yZ66ZN82beM5Sz7l7coYxpRkzS+p9PP+ToQry8szKh+61eNktr7EA9DOwvFGhfC605jDHbP6QQ==} engines: {node: '>=10.0.0'} peerDependencies: bufferutil: ^4.0.1 diff --git a/tests/unit/utils/get-mounted-engine-route-prefix-test.js b/tests/unit/utils/get-mounted-engine-route-prefix-test.js new file mode 100644 index 0000000..e769250 --- /dev/null +++ b/tests/unit/utils/get-mounted-engine-route-prefix-test.js @@ -0,0 +1,10 @@ +import getMountedEngineRoutePrefix from 'dummy/utils/get-mounted-engine-route-prefix'; +import { module, test } from 'qunit'; + +module('Unit | Utility | get-mounted-engine-route-prefix', function () { + // TODO: Replace this with your real tests. + test('it works', function (assert) { + let result = getMountedEngineRoutePrefix(); + assert.ok(result); + }); +}); diff --git a/tests/unit/utils/get-resource-name-from-transition-test.js b/tests/unit/utils/get-resource-name-from-transition-test.js new file mode 100644 index 0000000..d9a85eb --- /dev/null +++ b/tests/unit/utils/get-resource-name-from-transition-test.js @@ -0,0 +1,10 @@ +import getResourceNameFromTransition from 'dummy/utils/get-resource-name-from-transition'; +import { module, test } from 'qunit'; + +module('Unit | Utility | get-resource-name-from-transition', function () { + // TODO: Replace this with your real tests. + test('it works', function (assert) { + let result = getResourceNameFromTransition(); + assert.ok(result); + }); +}); diff --git a/tests/unit/utils/is-nested-route-transition-test.js b/tests/unit/utils/is-nested-route-transition-test.js new file mode 100644 index 0000000..b18599b --- /dev/null +++ b/tests/unit/utils/is-nested-route-transition-test.js @@ -0,0 +1,10 @@ +import isNestedRouteTransition from 'dummy/utils/is-nested-route-transition'; +import { module, test } from 'qunit'; + +module('Unit | Utility | is-nested-route-transition', function () { + // TODO: Replace this with your real tests. + test('it works', function (assert) { + let result = isNestedRouteTransition(); + assert.ok(result); + }); +}); diff --git a/tests/unit/utils/set-component-arg-test.js b/tests/unit/utils/set-component-arg-test.js new file mode 100644 index 0000000..e78f100 --- /dev/null +++ b/tests/unit/utils/set-component-arg-test.js @@ -0,0 +1,10 @@ +import setComponentArg from 'dummy/utils/set-component-arg'; +import { module, test } from 'qunit'; + +module('Unit | Utility | set-component-arg', function () { + // TODO: Replace this with your real tests. + test('it works', function (assert) { + let result = setComponentArg(); + assert.ok(result); + }); +});