From d3f5d00a6074a5bc5ee581c60576b8e590de6298 Mon Sep 17 00:00:00 2001 From: Ruslan Hrabovyi Date: Sun, 15 Oct 2023 20:36:00 +0200 Subject: [PATCH] query use Query directly in finders in order to get rid of build selector - breaking: ignore trailing spaces in selectors - restore comma-separated exception --- addon/src/-private/build-selector.js | 54 + addon/src/-private/finders.js | 90 +- addon/src/-private/helpers.js | 45 +- addon/src/-private/query.js | 168 +++ addon/src/-private/query/engines.js | 5 + addon/src/-private/query/engines/jquery.js | 22 + addon/src/-private/query/locator.js | 69 ++ addon/src/extend/find-many.js | 2 +- addon/src/extend/find-one.js | 2 +- addon/src/properties/collection.js | 9 +- pnpm-lock.yaml | 1119 +++++++++--------- test-app/.eslintrc.js | 1 + test-app/tests/unit/-private/query-test.js | 188 +++ test-app/tests/unit/extend/find-many-test.ts | 38 +- test-app/tests/unit/extend/find-one-test.ts | 11 +- 15 files changed, 1172 insertions(+), 651 deletions(-) create mode 100644 addon/src/-private/build-selector.js create mode 100644 addon/src/-private/query.js create mode 100644 addon/src/-private/query/engines.js create mode 100644 addon/src/-private/query/engines/jquery.js create mode 100644 addon/src/-private/query/locator.js create mode 100644 test-app/tests/unit/-private/query-test.js diff --git a/addon/src/-private/build-selector.js b/addon/src/-private/build-selector.js new file mode 100644 index 00000000..8aa56d47 --- /dev/null +++ b/addon/src/-private/build-selector.js @@ -0,0 +1,54 @@ +import { Query } from './query'; + +/** + * @public + * + * Builds a CSS selector from a target selector and a PageObject or a node in a PageObject, along with optional parameters. + * + * @example + * + * const component = PageObject.create({ scope: '.component'}); + * + * buildSelector(component, '.my-element'); + * // returns '.component .my-element' + * + * @example + * + * const page = PageObject.create({}); + * + * buildSelector(page, '.my-element', { at: 0 }); + * // returns '.my-element:eq(0)' + * + * @example + * + * const page = PageObject.create({}); + * + * buildSelector(page, '.my-element', { contains: "Example" }); + * // returns ".my-element :contains('Example')" + * + * @example + * + * const page = PageObject.create({}); + * + * buildSelector(page, '.my-element', { last: true }); + * // returns '.my-element:last' + * + * @param {Ceibo} node - Node of the tree + * @param {string} targetSelector - CSS selector + * @param {Object} options - Additional options + * @param {boolean} options.resetScope - Do not use inherited scope + * @param {string} options.contains - Filter by using :contains('foo') pseudo-class + * @param {number} options.at - Filter by index using :eq(x) pseudo-class + * @param {boolean} options.last - Filter by using :last pseudo-class + * @param {boolean} options.visible - Filter by using :visible pseudo-class + * @return {string} Fully qualified selector + */ + +export function buildSelector(node, targetSelector, options) { + const q = new Query(node, { + ...options, + selector: targetSelector, + }); + + return q.toString(); +} diff --git a/addon/src/-private/finders.js b/addon/src/-private/finders.js index 065b6dc0..459bca96 100644 --- a/addon/src/-private/finders.js +++ b/addon/src/-private/finders.js @@ -1,32 +1,29 @@ -import { buildSelector, findClosestValue, guardMultiple } from './helpers'; -import { getAdapter } from '../adapters/index'; +import { guardMultiple } from './helpers'; import { $ } from './jquery'; import { throwBetterError, ELEMENT_NOT_FOUND } from './better-errors'; - -function getContainer(pageObjectNode, options) { - return ( - options.testContainer || - findClosestValue(pageObjectNode, 'testContainer') || - getAdapter().testContainer - ); -} +import { Query } from './query'; /** * Finds a single element, otherwise fails * * @private */ -export function findOne(pageObjectNode, targetSelector, options = {}) { - const selector = buildSelector(pageObjectNode, targetSelector, options); - const container = getContainer(pageObjectNode, options); +export function findOne(pageObjectNode, selector, options = {}) { + const query = new Query( + pageObjectNode, + normalizeOptions({ + ...options, + selector, + }) + ); - const elements = $(selector, container).toArray(); + const elements = query.all(); - guardMultiple(elements, selector); + guardMultiple(elements, query); if (elements.length === 0) { throwBetterError(pageObjectNode, options.pageObjectKey, ELEMENT_NOT_FOUND, { - selector, + selector: query.toString(), }); } @@ -38,49 +35,66 @@ export function findOne(pageObjectNode, targetSelector, options = {}) { * * @private */ -export function findMany(pageObjectNode, targetSelector, options = {}) { - const selector = buildSelector(pageObjectNode, targetSelector, options); - const container = getContainer(pageObjectNode, options); +export function findMany(pageObjectNode, selector, options = {}) { + const query = new Query( + pageObjectNode, + normalizeOptions({ + ...options, + selector, + }) + ); - return $(selector, container).toArray(); + return query.all(); } /** * @private * @deprecated */ -export function findElementWithAssert( - pageObjectNode, - targetSelector, - options = {} -) { - const selector = buildSelector(pageObjectNode, targetSelector, options); - const container = getContainer(pageObjectNode, options); +export function findElementWithAssert(pageObjectNode, selector, options = {}) { + const query = new Query( + pageObjectNode, + normalizeOptions({ + ...options, + selector, + }) + ); - let $elements = $(selector, container); + let elements = query.all(); - guardMultiple($elements, selector, options.multiple); + guardMultiple(elements, query, options.multiple); - if ($elements.length === 0) { + if (elements.length === 0) { throwBetterError(pageObjectNode, options.pageObjectKey, ELEMENT_NOT_FOUND, { - selector, + selector: query.toString(), }); } - return $elements; + return $(elements); } /** * @private * @deprecated */ -export function findElement(pageObjectNode, targetSelector, options = {}) { - const selector = buildSelector(pageObjectNode, targetSelector, options); - const container = getContainer(pageObjectNode, options); +export function findElement(pageObjectNode, selector, options = {}) { + const elements = findMany(pageObjectNode, selector, options); - let $elements = $(selector, container); + return $(elements); +} + +function normalizeOptions(options) { + if (options && options.scope) { + // TODO: deprecate options.scope + const selector = [options.scope, options.selector] + .filter(Boolean) + .join(' '); - guardMultiple($elements, selector, options.multiple); + return { + ...options, + selector, + }; + } - return $elements; + return options; } diff --git a/addon/src/-private/helpers.js b/addon/src/-private/helpers.js index a293c02f..39bf0f0b 100644 --- a/addon/src/-private/helpers.js +++ b/addon/src/-private/helpers.js @@ -1,7 +1,5 @@ import Ceibo from '@ro0gr/ceibo'; -function isPresent(value) { - return typeof value !== 'undefined'; -} +import { Query } from './query'; class Selector { constructor(node, scope, selector, filters) { @@ -159,21 +157,6 @@ export function getRoot(node) { return root; } -function getAllValuesForProperty(node, property) { - let iterator = node; - let values = []; - - while (isPresent(iterator)) { - if (isPresent(iterator[property])) { - values.push(iterator[property]); - } - - iterator = Ceibo.parent(iterator); - } - - return values; -} - /** * @public * @@ -183,29 +166,7 @@ function getAllValuesForProperty(node, property) { * @return {string} Full scope of node */ export function fullScope(node) { - let scopes = getAllValuesForProperty(node, 'scope'); + const q = new Query(node); - return scopes.reverse().join(' '); -} - -/** - * @public - * - * Returns the value of property defined on the closest ancestor of given - * node. - * - * @param {Ceibo} node - Node of the tree - * @param {string} property - Property to look for - * @return {?Object} The value of property on closest node to the given node - */ -export function findClosestValue(node, property) { - if (isPresent(node[property])) { - return node[property]; - } - - let parent = Ceibo.parent(node); - - if (isPresent(parent)) { - return findClosestValue(parent, property); - } + return q.toString(); } diff --git a/addon/src/-private/query.js b/addon/src/-private/query.js new file mode 100644 index 00000000..294dd238 --- /dev/null +++ b/addon/src/-private/query.js @@ -0,0 +1,168 @@ +import Ceibo from '@ro0gr/ceibo'; +import { getAdapter } from 'ember-cli-page-object/adapters'; +import Locator from './query/locator'; + +/** + * @private + * + * DOM Elements Query + * + * @example + * + * const query = new Query(pageObjectNode, '.child-element'); + * query.all(); + * + * @example + * + * const query = new Query(pageObjectNode, { + * selector: '.child-element', + * at: 2, + * }); + * query.all(); + */ +export class Query { + /** + * + * @param {Ceibo} node - Node of the tree + * @param {Object|string} options - Additional options + * @param {boolean} locator.resetScope - Do not use inherited scope + * @param {string} locator.contains - Filter by using :contains('foo') pseudo-class + * @param {number} locator.at - Filter by index using :eq(x) pseudo-class + * @param {boolean} locator.last - Pick the last element + * @param {boolean} locator.visible - Filter by using :visible pseudo-class + * @param {Object|string} locator.selector - Query adapter specific selector + * @param {boolean} locator.scope - Filter by using :visible pseudo-class + * @param {boolean} locator.testContainer - Filter by using :visible pseudo-class + */ + constructor(node, options) { + const fullPath = toArray(node) + .map((node) => { + return { + scope: buildLocator(node.scope), + resetScope: node.resetScope, + testContainer: node.testContainer, + }; + }) + .filter(Boolean); + + const leafLocator = buildLocator(options); + if (leafLocator) { + fullPath.push( + leafLocator + ? { + scope: leafLocator, + } + : null + ); + } + + this.testContainer = + options?.testContainer || + fullPath.findLast((i) => i.testContainer !== undefined)?.testContainer; + + const resetScopeIndex = options?.resetScope + ? fullPath.length - 1 + : fullPath.findLastIndex((i) => typeof i.resetScope === 'boolean'); + + const path = ( + resetScopeIndex === -1 ? fullPath : fullPath.slice(resetScopeIndex) + ) + .map((p) => p.scope) + .filter(Boolean); + + this.path = path.length ? path : [new Locator(':first-child', { at: 0 })]; + } + + all() { + const rootElement = this.testContainer ?? getAdapter().testContainer; + + return this.path.reduce( + (queryRootElements, locator) => { + return queryRootElements + .map((rootElement) => { + return locator.query(rootElement); + }) + .flat(); + }, + [rootElement] + ); + } + + // @todo: tests for filters via findOne + toString() { + return this.path.map((p) => p.toString()).join(' '); + } +} + +function toArray(node) { + let iterator = node; + let values = []; + + while (typeof iterator !== 'undefined') { + values.push(iterator); + + iterator = Ceibo.parent(iterator); + } + + return values.reverse(); +} + +function buildLocator(options) { + if (!options) { + return null; + } + + if (typeof options === 'string') { + return new Locator(options, null); + } + + if (options instanceof Locator) { + return options; + } + + const filters = extractFilterOptions(options); + + if (options.selector || filters) { + return new Locator(options.selector, filters); + } + + return null; +} + +function extractFilterOptions(options) { + const filters = {}; + + if (options.at !== undefined) { + if (typeof options.at !== 'number') { + throw new Error('"at" must be a number'); + } + + filters.at = options.at; + } + + if (options.last !== undefined) { + if (typeof options.last !== 'boolean') { + throw new Error('"last" must be a boolean'); + } + + filters.last = options.last; + } + + if (options.visible !== undefined) { + if (typeof options.visible !== 'boolean') { + throw new Error('"visible" must be a boolean'); + } + + filters.visible = options.visible; + } + + if (options.contains !== undefined) { + if (typeof options.contains !== 'string') { + throw new Error('"contains" must be a string'); + } + + filters.contains = options.contains; + } + + return Object.keys(filters).length ? filters : null; +} diff --git a/addon/src/-private/query/engines.js b/addon/src/-private/query/engines.js new file mode 100644 index 00000000..81e3678a --- /dev/null +++ b/addon/src/-private/query/engines.js @@ -0,0 +1,5 @@ +import JQueryQueryEngine from './engines/jquery'; + +export function getQueryEngine() { + return JQueryQueryEngine; +} diff --git a/addon/src/-private/query/engines/jquery.js b/addon/src/-private/query/engines/jquery.js new file mode 100644 index 00000000..aeb7a425 --- /dev/null +++ b/addon/src/-private/query/engines/jquery.js @@ -0,0 +1,22 @@ +import { $ } from '../../jquery'; + +export default class JQueryQueryEngine { + static all(path, containerElement) { + const selector = path.join(' '); + + validate(selector); + return $(selector, containerElement).toArray(); + } + + static serialize(path) { + return path.join(' '); + } +} + +function validate(selector) { + if (selector.indexOf(',') > -1) { + throw new Error( + 'Usage of comma separated selectors is not supported. Please make sure your selector targets a single selector.' + ); + } +} diff --git a/addon/src/-private/query/locator.js b/addon/src/-private/query/locator.js new file mode 100644 index 00000000..31443c7b --- /dev/null +++ b/addon/src/-private/query/locator.js @@ -0,0 +1,69 @@ +import { getQueryEngine } from './engines'; +import { isVisible, containsText } from '../element'; + +export default class Locator { + constructor(selector, filters) { + this.selector = selector; + this.filters = filters; + } + + query(container) { + const queryAdapter = getQueryEngine(this.selector); + + const elements = queryAdapter.all([this.selector], container); + if (!this.filters) { + return elements; + } + + const { visible, contains } = this.filters; + const filteredElements = elements.filter((element) => { + if (visible && !isVisible(element)) { + return false; + } + + if (contains && !containsText(element, contains)) { + return false; + } + + return true; + }); + + // pick by index if specified + const { at, last } = this.filters; + return ( + last + ? [filteredElements.pop()] + : typeof at === 'number' + ? [filteredElements[at]] + : filteredElements + ).filter(Boolean); + } + + toString() { + const { filters, selector } = this; + if (!filters) { + return selector; + } + + const modifiers = []; + if (typeof filters.at === 'number') { + modifiers.push(`eq(${filters.at})`); + } else if (filters.last) { + modifiers.push('last'); + } + + if (filters.visible) { + modifiers.push(`visible`); + } + + if (filters.contains) { + modifiers.push(`contains("${filters.contains}")`); + } + + if (!modifiers.length) { + return selector; + } + + return `${selector}:${modifiers.join(':')}`; + } +} diff --git a/addon/src/extend/find-many.js b/addon/src/extend/find-many.js index be25fe33..cfde5c08 100644 --- a/addon/src/extend/find-many.js +++ b/addon/src/extend/find-many.js @@ -19,7 +19,7 @@ * @param {Object} options - Additional options * @param {boolean} options.resetScope - Do not use inherited scope * @param {string} options.contains - Filter by using :contains('foo') pseudo-class - * @param {string} options.scope + * @param {string} options.scope CSS Selector to prepend to the target selector * @param {number} options.at - Filter by index using :eq(x) pseudo-class * @param {boolean} options.last - Filter by using :last pseudo-class * @param {boolean} options.visible - Filter by using :visible pseudo-class diff --git a/addon/src/extend/find-one.js b/addon/src/extend/find-one.js index 41e6de7e..abd38678 100644 --- a/addon/src/extend/find-one.js +++ b/addon/src/extend/find-one.js @@ -19,7 +19,7 @@ * @param {Object} options - Additional options * @param {boolean} options.resetScope - Do not use inherited scope * @param {string} options.contains - Filter by using :contains('foo') pseudo-class - * @param {string} options.scope + * @param {string} options.scope Selector to prepend to the target selector * @param {number} options.at - Filter by index using :eq(x) pseudo-class * @param {boolean} options.last - Filter by using :last pseudo-class * @param {boolean} options.visible - Filter by using :visible pseudo-class diff --git a/addon/src/properties/collection.js b/addon/src/properties/collection.js index bb82d19f..79e0f612 100644 --- a/addon/src/properties/collection.js +++ b/addon/src/properties/collection.js @@ -1,9 +1,10 @@ import Ceibo from '@ro0gr/ceibo'; -import { buildSelector } from '../-private/helpers'; import { isPageObject, getPageObjectDefinition } from '../-private/meta'; import { create } from '../create'; import { count } from './count'; import { throwBetterError } from '../-private/better-errors'; +import { getter } from '../macros/index'; +import Locator from '../-private/query/locator'; /** * Creates a enumerable that represents a collection of items. The collection is zero-indexed @@ -177,6 +178,7 @@ export class Collection { this._itemCounter = create( { + // @todo: use locator count: count(scope, { resetScope: this.definition.resetScope, testContainer: this.definition.testContainer, @@ -197,11 +199,12 @@ export class Collection { if (typeof this._items[index] === 'undefined') { let { scope, definition, parent } = this; - let itemScope = buildSelector({}, scope, { at: index }); let finalizedDefinition = { ...definition }; - finalizedDefinition.scope = itemScope; + finalizedDefinition.scope = getter(function () { + return new Locator(scope, { at: index }); + }); let tree = create(finalizedDefinition, { parent }); diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 939ea943..a36efdb1 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -32,25 +32,25 @@ importers: rollup: ^2.71.1 dependencies: '@ember/jquery': 2.0.0 - '@ember/test-helpers': 2.9.3_otaypuqppwyaazv47auvopbzra + '@ember/test-helpers': 2.9.3_f4tsb6lbiq7drw6qlcagmdca2i '@embroider/addon-shim': 1.8.4 '@ro0gr/ceibo': 2.2.0 '@types/jquery': 3.5.16 jquery: 3.6.4 devDependencies: - '@babel/core': 7.21.3 - '@babel/eslint-parser': 7.21.3_pxuto7xgangxlusvzceggvrmde - '@babel/plugin-proposal-class-properties': 7.18.6_@babel+core@7.21.3 - '@babel/plugin-proposal-decorators': 7.21.0_@babel+core@7.21.3 + '@babel/core': 7.21.4 + '@babel/eslint-parser': 7.21.3_dhamhndlncf2tcatgsqqhydwfi + '@babel/plugin-proposal-class-properties': 7.18.6_@babel+core@7.21.4 + '@babel/plugin-proposal-decorators': 7.21.0_@babel+core@7.21.4 '@embroider/addon-dev': 1.8.3_yu76b5e3jopdhz7yrxsmdgjoz4 - '@rollup/plugin-babel': 5.3.1_hqhlikriuul7byjexqnpgcmenu + '@rollup/plugin-babel': 5.3.1_b6cdhqm2xsfe2bpl424qdsl4ei chai: 4.3.7 ember-cli-blueprint-test-helpers: 0.18.3 - eslint: 8.36.0 - eslint-config-prettier: 8.8.0_eslint@8.36.0 - eslint-plugin-ember: 10.6.1_eslint@8.36.0 - eslint-plugin-node: 11.1.0_eslint@8.36.0 - eslint-plugin-prettier: 4.2.1_ywlv3zveqg2kxfq44lflihh5mm + eslint: 8.37.0 + eslint-config-prettier: 8.8.0_eslint@8.37.0 + eslint-plugin-ember: 10.6.1_eslint@8.37.0 + eslint-plugin-node: 11.1.0_eslint@8.37.0 + eslint-plugin-prettier: 4.2.1_ybb3aapb7235womryl2tm5ze2u mocha: 4.1.0 npm-run-all: 4.1.5 prettier: 2.8.7 @@ -144,12 +144,12 @@ importers: typescript: ^4.2.3 webpack: ^5.72.0 devDependencies: - '@babel/eslint-parser': 7.21.3_pxuto7xgangxlusvzceggvrmde - '@babel/plugin-proposal-decorators': 7.21.0_@babel+core@7.21.3 + '@babel/eslint-parser': 7.21.3_dhamhndlncf2tcatgsqqhydwfi + '@babel/plugin-proposal-decorators': 7.21.0_@babel+core@7.21.4 '@ember/optional-features': 2.0.0 - '@ember/test-helpers': 2.9.3_otaypuqppwyaazv47auvopbzra + '@ember/test-helpers': 2.9.3_f4tsb6lbiq7drw6qlcagmdca2i '@embroider/test-setup': 1.8.3 - '@glimmer/component': 1.1.2_@babel+core@7.21.3 + '@glimmer/component': 1.1.2_@babel+core@7.21.4 '@glimmer/tracking': 1.1.2 '@tsconfig/ember': 2.0.0 '@types/ember': 3.16.7 @@ -178,10 +178,10 @@ importers: '@types/rsvp': 4.0.4 broccoli-asset-rev: 3.0.0 coveralls: 3.1.1 - ember-auto-import: 2.6.1_webpack@5.76.3 + ember-auto-import: 2.6.1_webpack@5.77.0 ember-cli: 4.0.1 ember-cli-babel: 7.26.11 - ember-cli-code-coverage: 1.0.0-beta.3_@babel+core@7.21.3 + ember-cli-code-coverage: 1.0.0-beta.3_@babel+core@7.21.4 ember-cli-dependency-checker: 3.3.1_ember-cli@4.0.1 ember-cli-doc-server: 1.1.0 ember-cli-htmlbars: 6.2.0 @@ -191,20 +191,20 @@ importers: ember-cli-terser: 4.0.2 ember-cli-typescript: 4.2.1 ember-cli-typescript-blueprints: 3.0.0 - ember-load-initializers: 2.1.2_@babel+core@7.21.3 + ember-load-initializers: 2.1.2_@babel+core@7.21.4 ember-page-title: 7.0.0 ember-qunit: 5.1.5_hhhw54x36ihnlwj35uv57vllua ember-qunit-nice-errors: 1.2.1 - ember-resolver: 8.1.0_@babel+core@7.21.3 - ember-source: 3.24.7_@babel+core@7.21.3 + ember-resolver: 8.1.0_@babel+core@7.21.4 + ember-source: 3.24.7_@babel+core@7.21.4 ember-source-channel-url: 3.0.0 ember-template-lint: 2.21.0 ember-try: 2.0.0 - eslint: 8.36.0 - eslint-config-prettier: 8.8.0_eslint@8.36.0 - eslint-plugin-ember: 10.6.1_eslint@8.36.0 - eslint-plugin-node: 11.1.0_eslint@8.36.0 - eslint-plugin-prettier: 4.2.1_ywlv3zveqg2kxfq44lflihh5mm + eslint: 8.37.0 + eslint-config-prettier: 8.8.0_eslint@8.37.0 + eslint-plugin-ember: 10.6.1_eslint@8.37.0 + eslint-plugin-node: 11.1.0_eslint@8.37.0 + eslint-plugin-prettier: 4.2.1_ybb3aapb7235womryl2tm5ze2u glob: 7.2.3 loader.js: 4.7.0 npm-run-all: 4.1.5 @@ -212,7 +212,7 @@ importers: qunit: 2.19.4 qunit-dom: 2.0.0 typescript: 4.9.5 - webpack: 5.76.3 + webpack: 5.77.0 packages: @@ -223,30 +223,30 @@ packages: '@jridgewell/gen-mapping': 0.1.1 '@jridgewell/trace-mapping': 0.3.17 - /@babel/code-frame/7.18.6: - resolution: {integrity: sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==} + /@babel/code-frame/7.21.4: + resolution: {integrity: sha512-LYvhNKfwWSPpocw8GI7gpK2nq3HSDuEPC/uSYaALSJu9xjsalaaYFOq0Pwt5KmVqwEbZlDu81aLXwBOmD/Fv9g==} engines: {node: '>=6.9.0'} dependencies: '@babel/highlight': 7.18.6 - /@babel/compat-data/7.21.0: - resolution: {integrity: sha512-gMuZsmsgxk/ENC3O/fRw5QY8A9/uxQbbCEypnLIiYYc/qVJtEV7ouxC3EllIIwNzMqAQee5tanFabWsUOutS7g==} + /@babel/compat-data/7.21.4: + resolution: {integrity: sha512-/DYyDpeCfaVinT40FPGdkkb+lYSKvsVuMjDAG7jPOWWiM1ibOaB9CXJAlc4d1QpP/U2q2P9jbrSlClKSErd55g==} engines: {node: '>=6.9.0'} - /@babel/core/7.21.3: - resolution: {integrity: sha512-qIJONzoa/qiHghnm0l1n4i/6IIziDpzqc36FBs4pzMhDUraHqponwJLiAKm1hGLP3OSB/TVNz6rMwVGpwxxySw==} + /@babel/core/7.21.4: + resolution: {integrity: sha512-qt/YV149Jman/6AfmlxJ04LMIu8bMoyl3RB91yTFrxQmgbrSvQMy7cI8Q62FHx1t8wJ8B5fu0UDoLwHAhUo1QA==} engines: {node: '>=6.9.0'} dependencies: '@ampproject/remapping': 2.2.0 - '@babel/code-frame': 7.18.6 - '@babel/generator': 7.21.3 - '@babel/helper-compilation-targets': 7.20.7_@babel+core@7.21.3 + '@babel/code-frame': 7.21.4 + '@babel/generator': 7.21.4 + '@babel/helper-compilation-targets': 7.21.4_@babel+core@7.21.4 '@babel/helper-module-transforms': 7.21.2 '@babel/helpers': 7.21.0 - '@babel/parser': 7.21.3 + '@babel/parser': 7.21.4 '@babel/template': 7.20.7 - '@babel/traverse': 7.21.3 - '@babel/types': 7.21.3 + '@babel/traverse': 7.21.4 + '@babel/types': 7.21.4 convert-source-map: 1.9.0 debug: 4.3.4 gensync: 1.0.0-beta.2 @@ -255,25 +255,25 @@ packages: transitivePeerDependencies: - supports-color - /@babel/eslint-parser/7.21.3_pxuto7xgangxlusvzceggvrmde: + /@babel/eslint-parser/7.21.3_dhamhndlncf2tcatgsqqhydwfi: resolution: {integrity: sha512-kfhmPimwo6k4P8zxNs8+T7yR44q1LdpsZdE1NkCsVlfiuTPRfnGgjaF8Qgug9q9Pou17u6wneYF0lDCZJATMFg==} engines: {node: ^10.13.0 || ^12.13.0 || >=14.0.0} peerDependencies: '@babel/core': '>=7.11.0' eslint: ^7.5.0 || ^8.0.0 dependencies: - '@babel/core': 7.21.3 + '@babel/core': 7.21.4 '@nicolo-ribaudo/eslint-scope-5-internals': 5.1.1-v1 - eslint: 8.36.0 + eslint: 8.37.0 eslint-visitor-keys: 2.1.0 semver: 6.3.0 dev: true - /@babel/generator/7.21.3: - resolution: {integrity: sha512-QS3iR1GYC/YGUnW7IdggFeN5c1poPUurnGttOV/bZgPGV+izC/D8HnD6DLwod0fsatNyVn1G3EVWMYIF0nHbeA==} + /@babel/generator/7.21.4: + resolution: {integrity: sha512-NieM3pVIYW2SwGzKoqfPrQsf4xGs9M9AIG3ThppsSRmO+m7eQhmI6amajKMUeIO37wFfsvnvcxQFx6x6iqxDnA==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.21.3 + '@babel/types': 7.21.4 '@jridgewell/gen-mapping': 0.3.2 '@jridgewell/trace-mapping': 0.3.17 jsesc: 2.5.2 @@ -282,35 +282,35 @@ packages: resolution: {integrity: sha512-duORpUiYrEpzKIop6iNbjnwKLAKnJ47csTyRACyEmWj0QdUrm5aqNJGHSSEQSUAvNW0ojX0dOmK9dZduvkfeXA==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.21.3 + '@babel/types': 7.21.4 /@babel/helper-builder-binary-assignment-operator-visitor/7.18.9: resolution: {integrity: sha512-yFQ0YCHoIqarl8BCRwBL8ulYUaZpz3bNsA7oFepAzee+8/+ImtADXNOmO5vJvsPff3qi+hvpkY/NYBTrBQgdNw==} engines: {node: '>=6.9.0'} dependencies: '@babel/helper-explode-assignable-expression': 7.18.6 - '@babel/types': 7.21.3 + '@babel/types': 7.21.4 - /@babel/helper-compilation-targets/7.20.7_@babel+core@7.21.3: - resolution: {integrity: sha512-4tGORmfQcrc+bvrjb5y3dG9Mx1IOZjsHqQVUz7XCNHO+iTmqxWnVg3KRygjGmpRLJGdQSKuvFinbIb0CnZwHAQ==} + /@babel/helper-compilation-targets/7.21.4_@babel+core@7.21.4: + resolution: {integrity: sha512-Fa0tTuOXZ1iL8IeDFUWCzjZcn+sJGd9RZdH9esYVjEejGmzf+FFYQpMi/kZUk2kPy/q1H3/GPw7np8qar/stfg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 dependencies: - '@babel/compat-data': 7.21.0 - '@babel/core': 7.21.3 + '@babel/compat-data': 7.21.4 + '@babel/core': 7.21.4 '@babel/helper-validator-option': 7.21.0 browserslist: 4.21.5 lru-cache: 5.1.1 semver: 6.3.0 - /@babel/helper-create-class-features-plugin/7.21.0_@babel+core@7.21.3: - resolution: {integrity: sha512-Q8wNiMIdwsv5la5SPxNYzzkPnjgC0Sy0i7jLkVOCdllu/xcVNkr3TeZzbHBJrj+XXRqzX5uCyCoV9eu6xUG7KQ==} + /@babel/helper-create-class-features-plugin/7.21.4_@babel+core@7.21.4: + resolution: {integrity: sha512-46QrX2CQlaFRF4TkwfTt6nJD7IHq8539cCL7SDpqWSDeJKY1xylKKY5F/33mJhLZ3mFvKv2gGrVS6NkyF6qs+Q==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 dependencies: - '@babel/core': 7.21.3 + '@babel/core': 7.21.4 '@babel/helper-annotate-as-pure': 7.18.6 '@babel/helper-environment-visitor': 7.18.9 '@babel/helper-function-name': 7.21.0 @@ -322,23 +322,23 @@ packages: transitivePeerDependencies: - supports-color - /@babel/helper-create-regexp-features-plugin/7.21.0_@babel+core@7.21.3: - resolution: {integrity: sha512-N+LaFW/auRSWdx7SHD/HiARwXQju1vXTW4fKr4u5SgBUTm51OKEjKgj+cs00ggW3kEvNqwErnlwuq7Y3xBe4eg==} + /@babel/helper-create-regexp-features-plugin/7.21.4_@babel+core@7.21.4: + resolution: {integrity: sha512-M00OuhU+0GyZ5iBBN9czjugzWrEq2vDpf/zCYHxxf93ul/Q5rv+a5h+/+0WnI1AebHNVtl5bFV0qsJoH23DbfA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 dependencies: - '@babel/core': 7.21.3 + '@babel/core': 7.21.4 '@babel/helper-annotate-as-pure': 7.18.6 regexpu-core: 5.3.2 - /@babel/helper-define-polyfill-provider/0.3.3_@babel+core@7.21.3: + /@babel/helper-define-polyfill-provider/0.3.3_@babel+core@7.21.4: resolution: {integrity: sha512-z5aQKU4IzbqCC1XH0nAqfsFLMVSo22SBKUc0BxGrLkolTdPTructy0ToNnlO2zA4j9Q/7pjMZf0DSY+DSTYzww==} peerDependencies: '@babel/core': ^7.4.0-0 dependencies: - '@babel/core': 7.21.3 - '@babel/helper-compilation-targets': 7.20.7_@babel+core@7.21.3 + '@babel/core': 7.21.4 + '@babel/helper-compilation-targets': 7.21.4_@babel+core@7.21.4 '@babel/helper-plugin-utils': 7.20.2 debug: 4.3.4 lodash.debounce: 4.0.8 @@ -355,45 +355,45 @@ packages: resolution: {integrity: sha512-eyAYAsQmB80jNfg4baAtLeWAQHfHFiR483rzFK+BhETlGZaQC9bsfrugfXDCbRHLQbIA7U5NxhhOxN7p/dWIcg==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.21.3 + '@babel/types': 7.21.4 /@babel/helper-function-name/7.21.0: resolution: {integrity: sha512-HfK1aMRanKHpxemaY2gqBmL04iAPOPRj7DxtNbiDOrJK+gdwkiNRVpCpUJYbUT+aZyemKN8brqTOxzCaG6ExRg==} engines: {node: '>=6.9.0'} dependencies: '@babel/template': 7.20.7 - '@babel/types': 7.21.3 + '@babel/types': 7.21.4 /@babel/helper-hoist-variables/7.18.6: resolution: {integrity: sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.21.3 + '@babel/types': 7.21.4 /@babel/helper-member-expression-to-functions/7.21.0: resolution: {integrity: sha512-Muu8cdZwNN6mRRNG6lAYErJ5X3bRevgYR2O8wN0yn7jJSnGDu6eG59RfT29JHxGUovyfrh6Pj0XzmR7drNVL3Q==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.21.3 + '@babel/types': 7.21.4 - /@babel/helper-module-imports/7.18.6: - resolution: {integrity: sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==} + /@babel/helper-module-imports/7.21.4: + resolution: {integrity: sha512-orajc5T2PsRYUN3ZryCEFeMDYwyw09c/pZeaQEZPH0MpKzSvn3e0uXsDBu3k03VI+9DBiRo+l22BfKTpKwa/Wg==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.21.3 + '@babel/types': 7.21.4 /@babel/helper-module-transforms/7.21.2: resolution: {integrity: sha512-79yj2AR4U/Oqq/WOV7Lx6hUjau1Zfo4cI+JLAVYeMV5XIlbOhmjEk5ulbTc9fMpmlojzZHkUUxAiK+UKn+hNQQ==} engines: {node: '>=6.9.0'} dependencies: '@babel/helper-environment-visitor': 7.18.9 - '@babel/helper-module-imports': 7.18.6 + '@babel/helper-module-imports': 7.21.4 '@babel/helper-simple-access': 7.20.2 '@babel/helper-split-export-declaration': 7.18.6 '@babel/helper-validator-identifier': 7.19.1 '@babel/template': 7.20.7 - '@babel/traverse': 7.21.3 - '@babel/types': 7.21.3 + '@babel/traverse': 7.21.4 + '@babel/types': 7.21.4 transitivePeerDependencies: - supports-color @@ -401,23 +401,23 @@ packages: resolution: {integrity: sha512-HP59oD9/fEHQkdcbgFCnbmgH5vIQTJbxh2yf+CdM89/glUNnuzr87Q8GIjGEnOktTROemO0Pe0iPAYbqZuOUiA==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.21.3 + '@babel/types': 7.21.4 /@babel/helper-plugin-utils/7.20.2: resolution: {integrity: sha512-8RvlJG2mj4huQ4pZ+rU9lqKi9ZKiRmuvGuM2HlWmkmgOhbs6zEAw6IEiJ5cQqGbDzGZOhwuOQNtZMi/ENLjZoQ==} engines: {node: '>=6.9.0'} - /@babel/helper-remap-async-to-generator/7.18.9_@babel+core@7.21.3: + /@babel/helper-remap-async-to-generator/7.18.9_@babel+core@7.21.4: resolution: {integrity: sha512-dI7q50YKd8BAv3VEfgg7PS7yD3Rtbi2J1XMXaalXO0W0164hYLnh8zpjRS0mte9MfVp/tltvr/cfdXPvJr1opA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 dependencies: - '@babel/core': 7.21.3 + '@babel/core': 7.21.4 '@babel/helper-annotate-as-pure': 7.18.6 '@babel/helper-environment-visitor': 7.18.9 '@babel/helper-wrap-function': 7.20.5 - '@babel/types': 7.21.3 + '@babel/types': 7.21.4 transitivePeerDependencies: - supports-color @@ -429,8 +429,8 @@ packages: '@babel/helper-member-expression-to-functions': 7.21.0 '@babel/helper-optimise-call-expression': 7.18.6 '@babel/template': 7.20.7 - '@babel/traverse': 7.21.3 - '@babel/types': 7.21.3 + '@babel/traverse': 7.21.4 + '@babel/types': 7.21.4 transitivePeerDependencies: - supports-color @@ -438,19 +438,19 @@ packages: resolution: {integrity: sha512-+0woI/WPq59IrqDYbVGfshjT5Dmk/nnbdpcF8SnMhhXObpTq2KNBdLFRFrkVdbDOyUmHBCxzm5FHV1rACIkIbA==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.21.3 + '@babel/types': 7.21.4 /@babel/helper-skip-transparent-expression-wrappers/7.20.0: resolution: {integrity: sha512-5y1JYeNKfvnT8sZcK9DVRtpTbGiomYIHviSP3OQWmDPU3DeH4a1ZlT/N2lyQ5P8egjcRaT/Y9aNqUxK0WsnIIg==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.21.3 + '@babel/types': 7.21.4 /@babel/helper-split-export-declaration/7.18.6: resolution: {integrity: sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.21.3 + '@babel/types': 7.21.4 /@babel/helper-string-parser/7.19.4: resolution: {integrity: sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==} @@ -470,8 +470,8 @@ packages: dependencies: '@babel/helper-function-name': 7.21.0 '@babel/template': 7.20.7 - '@babel/traverse': 7.21.3 - '@babel/types': 7.21.3 + '@babel/traverse': 7.21.4 + '@babel/types': 7.21.4 transitivePeerDependencies: - supports-color @@ -480,8 +480,8 @@ packages: engines: {node: '>=6.9.0'} dependencies: '@babel/template': 7.20.7 - '@babel/traverse': 7.21.3 - '@babel/types': 7.21.3 + '@babel/traverse': 7.21.4 + '@babel/types': 7.21.4 transitivePeerDependencies: - supports-color @@ -493,408 +493,408 @@ packages: chalk: 2.4.2 js-tokens: 4.0.0 - /@babel/parser/7.21.3: - resolution: {integrity: sha512-lobG0d7aOfQRXh8AyklEAgZGvA4FShxo6xQbUrrT/cNBPUdIDojlokwJsQyCC/eKia7ifqM0yP+2DRZ4WKw2RQ==} + /@babel/parser/7.21.4: + resolution: {integrity: sha512-alVJj7k7zIxqBZ7BTRhz0IqJFxW1VJbm6N8JbcYhQ186df9ZBPbZBmWSqAMXwHGsCJdYks7z/voa3ibiS5bCIw==} engines: {node: '>=6.0.0'} hasBin: true dependencies: - '@babel/types': 7.21.3 + '@babel/types': 7.21.4 - /@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/7.18.6_@babel+core@7.21.3: + /@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/7.18.6_@babel+core@7.21.4: resolution: {integrity: sha512-Dgxsyg54Fx1d4Nge8UnvTrED63vrwOdPmyvPzlNN/boaliRP54pm3pGzZD1SJUwrBA+Cs/xdG8kXX6Mn/RfISQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 dependencies: - '@babel/core': 7.21.3 + '@babel/core': 7.21.4 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/7.20.7_@babel+core@7.21.3: + /@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/7.20.7_@babel+core@7.21.4: resolution: {integrity: sha512-sbr9+wNE5aXMBBFBICk01tt7sBf2Oc9ikRFEcem/ZORup9IMUdNhW7/wVLEbbtlWOsEubJet46mHAL2C8+2jKQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.13.0 dependencies: - '@babel/core': 7.21.3 + '@babel/core': 7.21.4 '@babel/helper-plugin-utils': 7.20.2 '@babel/helper-skip-transparent-expression-wrappers': 7.20.0 - '@babel/plugin-proposal-optional-chaining': 7.21.0_@babel+core@7.21.3 + '@babel/plugin-proposal-optional-chaining': 7.21.0_@babel+core@7.21.4 - /@babel/plugin-proposal-async-generator-functions/7.20.7_@babel+core@7.21.3: + /@babel/plugin-proposal-async-generator-functions/7.20.7_@babel+core@7.21.4: resolution: {integrity: sha512-xMbiLsn/8RK7Wq7VeVytytS2L6qE69bXPB10YCmMdDZbKF4okCqY74pI/jJQ/8U0b/F6NrT2+14b8/P9/3AMGA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.3 + '@babel/core': 7.21.4 '@babel/helper-environment-visitor': 7.18.9 '@babel/helper-plugin-utils': 7.20.2 - '@babel/helper-remap-async-to-generator': 7.18.9_@babel+core@7.21.3 - '@babel/plugin-syntax-async-generators': 7.8.4_@babel+core@7.21.3 + '@babel/helper-remap-async-to-generator': 7.18.9_@babel+core@7.21.4 + '@babel/plugin-syntax-async-generators': 7.8.4_@babel+core@7.21.4 transitivePeerDependencies: - supports-color - /@babel/plugin-proposal-class-properties/7.18.6_@babel+core@7.21.3: + /@babel/plugin-proposal-class-properties/7.18.6_@babel+core@7.21.4: resolution: {integrity: sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.3 - '@babel/helper-create-class-features-plugin': 7.21.0_@babel+core@7.21.3 + '@babel/core': 7.21.4 + '@babel/helper-create-class-features-plugin': 7.21.4_@babel+core@7.21.4 '@babel/helper-plugin-utils': 7.20.2 transitivePeerDependencies: - supports-color - /@babel/plugin-proposal-class-static-block/7.21.0_@babel+core@7.21.3: + /@babel/plugin-proposal-class-static-block/7.21.0_@babel+core@7.21.4: resolution: {integrity: sha512-XP5G9MWNUskFuP30IfFSEFB0Z6HzLIUcjYM4bYOPHXl7eiJ9HFv8tWj6TXTN5QODiEhDZAeI4hLok2iHFFV4hw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.12.0 dependencies: - '@babel/core': 7.21.3 - '@babel/helper-create-class-features-plugin': 7.21.0_@babel+core@7.21.3 + '@babel/core': 7.21.4 + '@babel/helper-create-class-features-plugin': 7.21.4_@babel+core@7.21.4 '@babel/helper-plugin-utils': 7.20.2 - '@babel/plugin-syntax-class-static-block': 7.14.5_@babel+core@7.21.3 + '@babel/plugin-syntax-class-static-block': 7.14.5_@babel+core@7.21.4 transitivePeerDependencies: - supports-color - /@babel/plugin-proposal-decorators/7.21.0_@babel+core@7.21.3: + /@babel/plugin-proposal-decorators/7.21.0_@babel+core@7.21.4: resolution: {integrity: sha512-MfgX49uRrFUTL/HvWtmx3zmpyzMMr4MTj3d527MLlr/4RTT9G/ytFFP7qet2uM2Ve03b+BkpWUpK+lRXnQ+v9w==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.3 - '@babel/helper-create-class-features-plugin': 7.21.0_@babel+core@7.21.3 + '@babel/core': 7.21.4 + '@babel/helper-create-class-features-plugin': 7.21.4_@babel+core@7.21.4 '@babel/helper-plugin-utils': 7.20.2 '@babel/helper-replace-supers': 7.20.7 '@babel/helper-split-export-declaration': 7.18.6 - '@babel/plugin-syntax-decorators': 7.21.0_@babel+core@7.21.3 + '@babel/plugin-syntax-decorators': 7.21.0_@babel+core@7.21.4 transitivePeerDependencies: - supports-color - /@babel/plugin-proposal-dynamic-import/7.18.6_@babel+core@7.21.3: + /@babel/plugin-proposal-dynamic-import/7.18.6_@babel+core@7.21.4: resolution: {integrity: sha512-1auuwmK+Rz13SJj36R+jqFPMJWyKEDd7lLSdOj4oJK0UTgGueSAtkrCvz9ewmgyU/P941Rv2fQwZJN8s6QruXw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.3 + '@babel/core': 7.21.4 '@babel/helper-plugin-utils': 7.20.2 - '@babel/plugin-syntax-dynamic-import': 7.8.3_@babel+core@7.21.3 + '@babel/plugin-syntax-dynamic-import': 7.8.3_@babel+core@7.21.4 - /@babel/plugin-proposal-export-namespace-from/7.18.9_@babel+core@7.21.3: + /@babel/plugin-proposal-export-namespace-from/7.18.9_@babel+core@7.21.4: resolution: {integrity: sha512-k1NtHyOMvlDDFeb9G5PhUXuGj8m/wiwojgQVEhJ/fsVsMCpLyOP4h0uGEjYJKrRI+EVPlb5Jk+Gt9P97lOGwtA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.3 + '@babel/core': 7.21.4 '@babel/helper-plugin-utils': 7.20.2 - '@babel/plugin-syntax-export-namespace-from': 7.8.3_@babel+core@7.21.3 + '@babel/plugin-syntax-export-namespace-from': 7.8.3_@babel+core@7.21.4 - /@babel/plugin-proposal-json-strings/7.18.6_@babel+core@7.21.3: + /@babel/plugin-proposal-json-strings/7.18.6_@babel+core@7.21.4: resolution: {integrity: sha512-lr1peyn9kOdbYc0xr0OdHTZ5FMqS6Di+H0Fz2I/JwMzGmzJETNeOFq2pBySw6X/KFL5EWDjlJuMsUGRFb8fQgQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.3 + '@babel/core': 7.21.4 '@babel/helper-plugin-utils': 7.20.2 - '@babel/plugin-syntax-json-strings': 7.8.3_@babel+core@7.21.3 + '@babel/plugin-syntax-json-strings': 7.8.3_@babel+core@7.21.4 - /@babel/plugin-proposal-logical-assignment-operators/7.20.7_@babel+core@7.21.3: + /@babel/plugin-proposal-logical-assignment-operators/7.20.7_@babel+core@7.21.4: resolution: {integrity: sha512-y7C7cZgpMIjWlKE5T7eJwp+tnRYM89HmRvWM5EQuB5BoHEONjmQ8lSNmBUwOyy/GFRsohJED51YBF79hE1djug==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.3 + '@babel/core': 7.21.4 '@babel/helper-plugin-utils': 7.20.2 - '@babel/plugin-syntax-logical-assignment-operators': 7.10.4_@babel+core@7.21.3 + '@babel/plugin-syntax-logical-assignment-operators': 7.10.4_@babel+core@7.21.4 - /@babel/plugin-proposal-nullish-coalescing-operator/7.18.6_@babel+core@7.21.3: + /@babel/plugin-proposal-nullish-coalescing-operator/7.18.6_@babel+core@7.21.4: resolution: {integrity: sha512-wQxQzxYeJqHcfppzBDnm1yAY0jSRkUXR2z8RePZYrKwMKgMlE8+Z6LUno+bd6LvbGh8Gltvy74+9pIYkr+XkKA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.3 + '@babel/core': 7.21.4 '@babel/helper-plugin-utils': 7.20.2 - '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3_@babel+core@7.21.3 + '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3_@babel+core@7.21.4 - /@babel/plugin-proposal-numeric-separator/7.18.6_@babel+core@7.21.3: + /@babel/plugin-proposal-numeric-separator/7.18.6_@babel+core@7.21.4: resolution: {integrity: sha512-ozlZFogPqoLm8WBr5Z8UckIoE4YQ5KESVcNudyXOR8uqIkliTEgJ3RoketfG6pmzLdeZF0H/wjE9/cCEitBl7Q==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.3 + '@babel/core': 7.21.4 '@babel/helper-plugin-utils': 7.20.2 - '@babel/plugin-syntax-numeric-separator': 7.10.4_@babel+core@7.21.3 + '@babel/plugin-syntax-numeric-separator': 7.10.4_@babel+core@7.21.4 - /@babel/plugin-proposal-object-rest-spread/7.20.7_@babel+core@7.21.3: + /@babel/plugin-proposal-object-rest-spread/7.20.7_@babel+core@7.21.4: resolution: {integrity: sha512-d2S98yCiLxDVmBmE8UjGcfPvNEUbA1U5q5WxaWFUGRzJSVAZqm5W6MbPct0jxnegUZ0niLeNX+IOzEs7wYg9Dg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/compat-data': 7.21.0 - '@babel/core': 7.21.3 - '@babel/helper-compilation-targets': 7.20.7_@babel+core@7.21.3 + '@babel/compat-data': 7.21.4 + '@babel/core': 7.21.4 + '@babel/helper-compilation-targets': 7.21.4_@babel+core@7.21.4 '@babel/helper-plugin-utils': 7.20.2 - '@babel/plugin-syntax-object-rest-spread': 7.8.3_@babel+core@7.21.3 - '@babel/plugin-transform-parameters': 7.21.3_@babel+core@7.21.3 + '@babel/plugin-syntax-object-rest-spread': 7.8.3_@babel+core@7.21.4 + '@babel/plugin-transform-parameters': 7.21.3_@babel+core@7.21.4 - /@babel/plugin-proposal-optional-catch-binding/7.18.6_@babel+core@7.21.3: + /@babel/plugin-proposal-optional-catch-binding/7.18.6_@babel+core@7.21.4: resolution: {integrity: sha512-Q40HEhs9DJQyaZfUjjn6vE8Cv4GmMHCYuMGIWUnlxH6400VGxOuwWsPt4FxXxJkC/5eOzgn0z21M9gMT4MOhbw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.3 + '@babel/core': 7.21.4 '@babel/helper-plugin-utils': 7.20.2 - '@babel/plugin-syntax-optional-catch-binding': 7.8.3_@babel+core@7.21.3 + '@babel/plugin-syntax-optional-catch-binding': 7.8.3_@babel+core@7.21.4 - /@babel/plugin-proposal-optional-chaining/7.21.0_@babel+core@7.21.3: + /@babel/plugin-proposal-optional-chaining/7.21.0_@babel+core@7.21.4: resolution: {integrity: sha512-p4zeefM72gpmEe2fkUr/OnOXpWEf8nAgk7ZYVqqfFiyIG7oFfVZcCrU64hWn5xp4tQ9LkV4bTIa5rD0KANpKNA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.3 + '@babel/core': 7.21.4 '@babel/helper-plugin-utils': 7.20.2 '@babel/helper-skip-transparent-expression-wrappers': 7.20.0 - '@babel/plugin-syntax-optional-chaining': 7.8.3_@babel+core@7.21.3 + '@babel/plugin-syntax-optional-chaining': 7.8.3_@babel+core@7.21.4 - /@babel/plugin-proposal-private-methods/7.18.6_@babel+core@7.21.3: + /@babel/plugin-proposal-private-methods/7.18.6_@babel+core@7.21.4: resolution: {integrity: sha512-nutsvktDItsNn4rpGItSNV2sz1XwS+nfU0Rg8aCx3W3NOKVzdMjJRu0O5OkgDp3ZGICSTbgRpxZoWsxoKRvbeA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.3 - '@babel/helper-create-class-features-plugin': 7.21.0_@babel+core@7.21.3 + '@babel/core': 7.21.4 + '@babel/helper-create-class-features-plugin': 7.21.4_@babel+core@7.21.4 '@babel/helper-plugin-utils': 7.20.2 transitivePeerDependencies: - supports-color - /@babel/plugin-proposal-private-property-in-object/7.21.0_@babel+core@7.21.3: + /@babel/plugin-proposal-private-property-in-object/7.21.0_@babel+core@7.21.4: resolution: {integrity: sha512-ha4zfehbJjc5MmXBlHec1igel5TJXXLDDRbuJ4+XT2TJcyD9/V1919BA8gMvsdHcNMBy4WBUBiRb3nw/EQUtBw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.3 + '@babel/core': 7.21.4 '@babel/helper-annotate-as-pure': 7.18.6 - '@babel/helper-create-class-features-plugin': 7.21.0_@babel+core@7.21.3 + '@babel/helper-create-class-features-plugin': 7.21.4_@babel+core@7.21.4 '@babel/helper-plugin-utils': 7.20.2 - '@babel/plugin-syntax-private-property-in-object': 7.14.5_@babel+core@7.21.3 + '@babel/plugin-syntax-private-property-in-object': 7.14.5_@babel+core@7.21.4 transitivePeerDependencies: - supports-color - /@babel/plugin-proposal-unicode-property-regex/7.18.6_@babel+core@7.21.3: + /@babel/plugin-proposal-unicode-property-regex/7.18.6_@babel+core@7.21.4: resolution: {integrity: sha512-2BShG/d5yoZyXZfVePH91urL5wTG6ASZU9M4o03lKK8u8UW1y08OMttBSOADTcJrnPMpvDXRG3G8fyLh4ovs8w==} engines: {node: '>=4'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.3 - '@babel/helper-create-regexp-features-plugin': 7.21.0_@babel+core@7.21.3 + '@babel/core': 7.21.4 + '@babel/helper-create-regexp-features-plugin': 7.21.4_@babel+core@7.21.4 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-syntax-async-generators/7.8.4_@babel+core@7.21.3: + /@babel/plugin-syntax-async-generators/7.8.4_@babel+core@7.21.4: resolution: {integrity: sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.3 + '@babel/core': 7.21.4 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-syntax-class-properties/7.12.13_@babel+core@7.21.3: + /@babel/plugin-syntax-class-properties/7.12.13_@babel+core@7.21.4: resolution: {integrity: sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.3 + '@babel/core': 7.21.4 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-syntax-class-static-block/7.14.5_@babel+core@7.21.3: + /@babel/plugin-syntax-class-static-block/7.14.5_@babel+core@7.21.4: resolution: {integrity: sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.3 + '@babel/core': 7.21.4 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-syntax-decorators/7.21.0_@babel+core@7.21.3: + /@babel/plugin-syntax-decorators/7.21.0_@babel+core@7.21.4: resolution: {integrity: sha512-tIoPpGBR8UuM4++ccWN3gifhVvQu7ZizuR1fklhRJrd5ewgbkUS+0KVFeWWxELtn18NTLoW32XV7zyOgIAiz+w==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.3 + '@babel/core': 7.21.4 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-syntax-dynamic-import/7.8.3_@babel+core@7.21.3: + /@babel/plugin-syntax-dynamic-import/7.8.3_@babel+core@7.21.4: resolution: {integrity: sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.3 + '@babel/core': 7.21.4 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-syntax-export-namespace-from/7.8.3_@babel+core@7.21.3: + /@babel/plugin-syntax-export-namespace-from/7.8.3_@babel+core@7.21.4: resolution: {integrity: sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.3 + '@babel/core': 7.21.4 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-syntax-import-assertions/7.20.0_@babel+core@7.21.3: + /@babel/plugin-syntax-import-assertions/7.20.0_@babel+core@7.21.4: resolution: {integrity: sha512-IUh1vakzNoWalR8ch/areW7qFopR2AEw03JlG7BbrDqmQ4X3q9uuipQwSGrUn7oGiemKjtSLDhNtQHzMHr1JdQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.3 + '@babel/core': 7.21.4 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-syntax-json-strings/7.8.3_@babel+core@7.21.3: + /@babel/plugin-syntax-json-strings/7.8.3_@babel+core@7.21.4: resolution: {integrity: sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.3 + '@babel/core': 7.21.4 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-syntax-logical-assignment-operators/7.10.4_@babel+core@7.21.3: + /@babel/plugin-syntax-logical-assignment-operators/7.10.4_@babel+core@7.21.4: resolution: {integrity: sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.3 + '@babel/core': 7.21.4 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-syntax-nullish-coalescing-operator/7.8.3_@babel+core@7.21.3: + /@babel/plugin-syntax-nullish-coalescing-operator/7.8.3_@babel+core@7.21.4: resolution: {integrity: sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.3 + '@babel/core': 7.21.4 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-syntax-numeric-separator/7.10.4_@babel+core@7.21.3: + /@babel/plugin-syntax-numeric-separator/7.10.4_@babel+core@7.21.4: resolution: {integrity: sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.3 + '@babel/core': 7.21.4 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-syntax-object-rest-spread/7.8.3_@babel+core@7.21.3: + /@babel/plugin-syntax-object-rest-spread/7.8.3_@babel+core@7.21.4: resolution: {integrity: sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.3 + '@babel/core': 7.21.4 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-syntax-optional-catch-binding/7.8.3_@babel+core@7.21.3: + /@babel/plugin-syntax-optional-catch-binding/7.8.3_@babel+core@7.21.4: resolution: {integrity: sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.3 + '@babel/core': 7.21.4 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-syntax-optional-chaining/7.8.3_@babel+core@7.21.3: + /@babel/plugin-syntax-optional-chaining/7.8.3_@babel+core@7.21.4: resolution: {integrity: sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.3 + '@babel/core': 7.21.4 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-syntax-private-property-in-object/7.14.5_@babel+core@7.21.3: + /@babel/plugin-syntax-private-property-in-object/7.14.5_@babel+core@7.21.4: resolution: {integrity: sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.3 + '@babel/core': 7.21.4 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-syntax-top-level-await/7.14.5_@babel+core@7.21.3: + /@babel/plugin-syntax-top-level-await/7.14.5_@babel+core@7.21.4: resolution: {integrity: sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.3 + '@babel/core': 7.21.4 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-syntax-typescript/7.20.0_@babel+core@7.21.3: - resolution: {integrity: sha512-rd9TkG+u1CExzS4SM1BlMEhMXwFLKVjOAFFCDx9PbX5ycJWDoWMcwdJH9RhkPu1dOgn5TrxLot/Gx6lWFuAUNQ==} + /@babel/plugin-syntax-typescript/7.21.4_@babel+core@7.21.4: + resolution: {integrity: sha512-xz0D39NvhQn4t4RNsHmDnnsaQizIlUkdtYvLs8La1BlfjQ6JEwxkJGeqJMW2tAXx+q6H+WFuUTXNdYVpEya0YA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.3 + '@babel/core': 7.21.4 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-transform-arrow-functions/7.20.7_@babel+core@7.21.3: + /@babel/plugin-transform-arrow-functions/7.20.7_@babel+core@7.21.4: resolution: {integrity: sha512-3poA5E7dzDomxj9WXWwuD6A5F3kc7VXwIJO+E+J8qtDtS+pXPAhrgEyh+9GBwBgPq1Z+bB+/JD60lp5jsN7JPQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.3 + '@babel/core': 7.21.4 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-transform-async-to-generator/7.20.7_@babel+core@7.21.3: + /@babel/plugin-transform-async-to-generator/7.20.7_@babel+core@7.21.4: resolution: {integrity: sha512-Uo5gwHPT9vgnSXQxqGtpdufUiWp96gk7yiP4Mp5bm1QMkEmLXBO7PAGYbKoJ6DhAwiNkcHFBol/x5zZZkL/t0Q==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.3 - '@babel/helper-module-imports': 7.18.6 + '@babel/core': 7.21.4 + '@babel/helper-module-imports': 7.21.4 '@babel/helper-plugin-utils': 7.20.2 - '@babel/helper-remap-async-to-generator': 7.18.9_@babel+core@7.21.3 + '@babel/helper-remap-async-to-generator': 7.18.9_@babel+core@7.21.4 transitivePeerDependencies: - supports-color - /@babel/plugin-transform-block-scoped-functions/7.18.6_@babel+core@7.21.3: + /@babel/plugin-transform-block-scoped-functions/7.18.6_@babel+core@7.21.4: resolution: {integrity: sha512-ExUcOqpPWnliRcPqves5HJcJOvHvIIWfuS4sroBUenPuMdmW+SMHDakmtS7qOo13sVppmUijqeTv7qqGsvURpQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.3 + '@babel/core': 7.21.4 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-transform-block-scoping/7.21.0_@babel+core@7.21.3: + /@babel/plugin-transform-block-scoping/7.21.0_@babel+core@7.21.4: resolution: {integrity: sha512-Mdrbunoh9SxwFZapeHVrwFmri16+oYotcZysSzhNIVDwIAb1UV+kvnxULSYq9J3/q5MDG+4X6w8QVgD1zhBXNQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.3 + '@babel/core': 7.21.4 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-transform-classes/7.21.0_@babel+core@7.21.3: + /@babel/plugin-transform-classes/7.21.0_@babel+core@7.21.4: resolution: {integrity: sha512-RZhbYTCEUAe6ntPehC4hlslPWosNHDox+vAs4On/mCLRLfoDVHf6hVEd7kuxr1RnHwJmxFfUM3cZiZRmPxJPXQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.3 + '@babel/core': 7.21.4 '@babel/helper-annotate-as-pure': 7.18.6 - '@babel/helper-compilation-targets': 7.20.7_@babel+core@7.21.3 + '@babel/helper-compilation-targets': 7.21.4_@babel+core@7.21.4 '@babel/helper-environment-visitor': 7.18.9 '@babel/helper-function-name': 7.21.0 '@babel/helper-optimise-call-expression': 7.18.6 @@ -905,124 +905,124 @@ packages: transitivePeerDependencies: - supports-color - /@babel/plugin-transform-computed-properties/7.20.7_@babel+core@7.21.3: + /@babel/plugin-transform-computed-properties/7.20.7_@babel+core@7.21.4: resolution: {integrity: sha512-Lz7MvBK6DTjElHAmfu6bfANzKcxpyNPeYBGEafyA6E5HtRpjpZwU+u7Qrgz/2OR0z+5TvKYbPdphfSaAcZBrYQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.3 + '@babel/core': 7.21.4 '@babel/helper-plugin-utils': 7.20.2 '@babel/template': 7.20.7 - /@babel/plugin-transform-destructuring/7.21.3_@babel+core@7.21.3: + /@babel/plugin-transform-destructuring/7.21.3_@babel+core@7.21.4: resolution: {integrity: sha512-bp6hwMFzuiE4HqYEyoGJ/V2LeIWn+hLVKc4pnj++E5XQptwhtcGmSayM029d/j2X1bPKGTlsyPwAubuU22KhMA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.3 + '@babel/core': 7.21.4 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-transform-dotall-regex/7.18.6_@babel+core@7.21.3: + /@babel/plugin-transform-dotall-regex/7.18.6_@babel+core@7.21.4: resolution: {integrity: sha512-6S3jpun1eEbAxq7TdjLotAsl4WpQI9DxfkycRcKrjhQYzU87qpXdknpBg/e+TdcMehqGnLFi7tnFUBR02Vq6wg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.3 - '@babel/helper-create-regexp-features-plugin': 7.21.0_@babel+core@7.21.3 + '@babel/core': 7.21.4 + '@babel/helper-create-regexp-features-plugin': 7.21.4_@babel+core@7.21.4 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-transform-duplicate-keys/7.18.9_@babel+core@7.21.3: + /@babel/plugin-transform-duplicate-keys/7.18.9_@babel+core@7.21.4: resolution: {integrity: sha512-d2bmXCtZXYc59/0SanQKbiWINadaJXqtvIQIzd4+hNwkWBgyCd5F/2t1kXoUdvPMrxzPvhK6EMQRROxsue+mfw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.3 + '@babel/core': 7.21.4 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-transform-exponentiation-operator/7.18.6_@babel+core@7.21.3: + /@babel/plugin-transform-exponentiation-operator/7.18.6_@babel+core@7.21.4: resolution: {integrity: sha512-wzEtc0+2c88FVR34aQmiz56dxEkxr2g8DQb/KfaFa1JYXOFVsbhvAonFN6PwVWj++fKmku8NP80plJ5Et4wqHw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.3 + '@babel/core': 7.21.4 '@babel/helper-builder-binary-assignment-operator-visitor': 7.18.9 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-transform-for-of/7.21.0_@babel+core@7.21.3: + /@babel/plugin-transform-for-of/7.21.0_@babel+core@7.21.4: resolution: {integrity: sha512-LlUYlydgDkKpIY7mcBWvyPPmMcOphEyYA27Ef4xpbh1IiDNLr0kZsos2nf92vz3IccvJI25QUwp86Eo5s6HmBQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.3 + '@babel/core': 7.21.4 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-transform-function-name/7.18.9_@babel+core@7.21.3: + /@babel/plugin-transform-function-name/7.18.9_@babel+core@7.21.4: resolution: {integrity: sha512-WvIBoRPaJQ5yVHzcnJFor7oS5Ls0PYixlTYE63lCj2RtdQEl15M68FXQlxnG6wdraJIXRdR7KI+hQ7q/9QjrCQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.3 - '@babel/helper-compilation-targets': 7.20.7_@babel+core@7.21.3 + '@babel/core': 7.21.4 + '@babel/helper-compilation-targets': 7.21.4_@babel+core@7.21.4 '@babel/helper-function-name': 7.21.0 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-transform-literals/7.18.9_@babel+core@7.21.3: + /@babel/plugin-transform-literals/7.18.9_@babel+core@7.21.4: resolution: {integrity: sha512-IFQDSRoTPnrAIrI5zoZv73IFeZu2dhu6irxQjY9rNjTT53VmKg9fenjvoiOWOkJ6mm4jKVPtdMzBY98Fp4Z4cg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.3 + '@babel/core': 7.21.4 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-transform-member-expression-literals/7.18.6_@babel+core@7.21.3: + /@babel/plugin-transform-member-expression-literals/7.18.6_@babel+core@7.21.4: resolution: {integrity: sha512-qSF1ihLGO3q+/g48k85tUjD033C29TNTVB2paCwZPVmOsjn9pClvYYrM2VeJpBY2bcNkuny0YUyTNRyRxJ54KA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.3 + '@babel/core': 7.21.4 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-transform-modules-amd/7.20.11_@babel+core@7.21.3: + /@babel/plugin-transform-modules-amd/7.20.11_@babel+core@7.21.4: resolution: {integrity: sha512-NuzCt5IIYOW0O30UvqktzHYR2ud5bOWbY0yaxWZ6G+aFzOMJvrs5YHNikrbdaT15+KNO31nPOy5Fim3ku6Zb5g==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.3 + '@babel/core': 7.21.4 '@babel/helper-module-transforms': 7.21.2 '@babel/helper-plugin-utils': 7.20.2 transitivePeerDependencies: - supports-color - /@babel/plugin-transform-modules-commonjs/7.21.2_@babel+core@7.21.3: + /@babel/plugin-transform-modules-commonjs/7.21.2_@babel+core@7.21.4: resolution: {integrity: sha512-Cln+Yy04Gxua7iPdj6nOV96smLGjpElir5YwzF0LBPKoPlLDNJePNlrGGaybAJkd0zKRnOVXOgizSqPYMNYkzA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.3 + '@babel/core': 7.21.4 '@babel/helper-module-transforms': 7.21.2 '@babel/helper-plugin-utils': 7.20.2 '@babel/helper-simple-access': 7.20.2 transitivePeerDependencies: - supports-color - /@babel/plugin-transform-modules-systemjs/7.20.11_@babel+core@7.21.3: + /@babel/plugin-transform-modules-systemjs/7.20.11_@babel+core@7.21.4: resolution: {integrity: sha512-vVu5g9BPQKSFEmvt2TA4Da5N+QVS66EX21d8uoOihC+OCpUoGvzVsXeqFdtAEfVa5BILAeFt+U7yVmLbQnAJmw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.3 + '@babel/core': 7.21.4 '@babel/helper-hoist-variables': 7.18.6 '@babel/helper-module-transforms': 7.21.2 '@babel/helper-plugin-utils': 7.20.2 @@ -1030,211 +1030,211 @@ packages: transitivePeerDependencies: - supports-color - /@babel/plugin-transform-modules-umd/7.18.6_@babel+core@7.21.3: + /@babel/plugin-transform-modules-umd/7.18.6_@babel+core@7.21.4: resolution: {integrity: sha512-dcegErExVeXcRqNtkRU/z8WlBLnvD4MRnHgNs3MytRO1Mn1sHRyhbcpYbVMGclAqOjdW+9cfkdZno9dFdfKLfQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.3 + '@babel/core': 7.21.4 '@babel/helper-module-transforms': 7.21.2 '@babel/helper-plugin-utils': 7.20.2 transitivePeerDependencies: - supports-color - /@babel/plugin-transform-named-capturing-groups-regex/7.20.5_@babel+core@7.21.3: + /@babel/plugin-transform-named-capturing-groups-regex/7.20.5_@babel+core@7.21.4: resolution: {integrity: sha512-mOW4tTzi5iTLnw+78iEq3gr8Aoq4WNRGpmSlrogqaiCBoR1HFhpU4JkpQFOHfeYx3ReVIFWOQJS4aZBRvuZ6mA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 dependencies: - '@babel/core': 7.21.3 - '@babel/helper-create-regexp-features-plugin': 7.21.0_@babel+core@7.21.3 + '@babel/core': 7.21.4 + '@babel/helper-create-regexp-features-plugin': 7.21.4_@babel+core@7.21.4 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-transform-new-target/7.18.6_@babel+core@7.21.3: + /@babel/plugin-transform-new-target/7.18.6_@babel+core@7.21.4: resolution: {integrity: sha512-DjwFA/9Iu3Z+vrAn+8pBUGcjhxKguSMlsFqeCKbhb9BAV756v0krzVK04CRDi/4aqmk8BsHb4a/gFcaA5joXRw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.3 + '@babel/core': 7.21.4 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-transform-object-assign/7.18.6_@babel+core@7.21.3: + /@babel/plugin-transform-object-assign/7.18.6_@babel+core@7.21.4: resolution: {integrity: sha512-mQisZ3JfqWh2gVXvfqYCAAyRs6+7oev+myBsTwW5RnPhYXOTuCEw2oe3YgxlXMViXUS53lG8koulI7mJ+8JE+A==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.3 + '@babel/core': 7.21.4 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-transform-object-super/7.18.6_@babel+core@7.21.3: + /@babel/plugin-transform-object-super/7.18.6_@babel+core@7.21.4: resolution: {integrity: sha512-uvGz6zk+pZoS1aTZrOvrbj6Pp/kK2mp45t2B+bTDre2UgsZZ8EZLSJtUg7m/no0zOJUWgFONpB7Zv9W2tSaFlA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.3 + '@babel/core': 7.21.4 '@babel/helper-plugin-utils': 7.20.2 '@babel/helper-replace-supers': 7.20.7 transitivePeerDependencies: - supports-color - /@babel/plugin-transform-parameters/7.21.3_@babel+core@7.21.3: + /@babel/plugin-transform-parameters/7.21.3_@babel+core@7.21.4: resolution: {integrity: sha512-Wxc+TvppQG9xWFYatvCGPvZ6+SIUxQ2ZdiBP+PHYMIjnPXD+uThCshaz4NZOnODAtBjjcVQQ/3OKs9LW28purQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.3 + '@babel/core': 7.21.4 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-transform-property-literals/7.18.6_@babel+core@7.21.3: + /@babel/plugin-transform-property-literals/7.18.6_@babel+core@7.21.4: resolution: {integrity: sha512-cYcs6qlgafTud3PAzrrRNbQtfpQ8+y/+M5tKmksS9+M1ckbH6kzY8MrexEM9mcA6JDsukE19iIRvAyYl463sMg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.3 + '@babel/core': 7.21.4 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-transform-regenerator/7.20.5_@babel+core@7.21.3: + /@babel/plugin-transform-regenerator/7.20.5_@babel+core@7.21.4: resolution: {integrity: sha512-kW/oO7HPBtntbsahzQ0qSE3tFvkFwnbozz3NWFhLGqH75vLEg+sCGngLlhVkePlCs3Jv0dBBHDzCHxNiFAQKCQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.3 + '@babel/core': 7.21.4 '@babel/helper-plugin-utils': 7.20.2 regenerator-transform: 0.15.1 - /@babel/plugin-transform-reserved-words/7.18.6_@babel+core@7.21.3: + /@babel/plugin-transform-reserved-words/7.18.6_@babel+core@7.21.4: resolution: {integrity: sha512-oX/4MyMoypzHjFrT1CdivfKZ+XvIPMFXwwxHp/r0Ddy2Vuomt4HDFGmft1TAY2yiTKiNSsh3kjBAzcM8kSdsjA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.3 + '@babel/core': 7.21.4 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-transform-runtime/7.21.0_@babel+core@7.21.3: - resolution: {integrity: sha512-ReY6pxwSzEU0b3r2/T/VhqMKg/AkceBT19X0UptA3/tYi5Pe2eXgEUH+NNMC5nok6c6XQz5tyVTUpuezRfSMSg==} + /@babel/plugin-transform-runtime/7.21.4_@babel+core@7.21.4: + resolution: {integrity: sha512-1J4dhrw1h1PqnNNpzwxQ2UBymJUF8KuPjAAnlLwZcGhHAIqUigFW7cdK6GHoB64ubY4qXQNYknoUeks4Wz7CUA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.3 - '@babel/helper-module-imports': 7.18.6 + '@babel/core': 7.21.4 + '@babel/helper-module-imports': 7.21.4 '@babel/helper-plugin-utils': 7.20.2 - babel-plugin-polyfill-corejs2: 0.3.3_@babel+core@7.21.3 - babel-plugin-polyfill-corejs3: 0.6.0_@babel+core@7.21.3 - babel-plugin-polyfill-regenerator: 0.4.1_@babel+core@7.21.3 + babel-plugin-polyfill-corejs2: 0.3.3_@babel+core@7.21.4 + babel-plugin-polyfill-corejs3: 0.6.0_@babel+core@7.21.4 + babel-plugin-polyfill-regenerator: 0.4.1_@babel+core@7.21.4 semver: 6.3.0 transitivePeerDependencies: - supports-color - /@babel/plugin-transform-shorthand-properties/7.18.6_@babel+core@7.21.3: + /@babel/plugin-transform-shorthand-properties/7.18.6_@babel+core@7.21.4: resolution: {integrity: sha512-eCLXXJqv8okzg86ywZJbRn19YJHU4XUa55oz2wbHhaQVn/MM+XhukiT7SYqp/7o00dg52Rj51Ny+Ecw4oyoygw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.3 + '@babel/core': 7.21.4 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-transform-spread/7.20.7_@babel+core@7.21.3: + /@babel/plugin-transform-spread/7.20.7_@babel+core@7.21.4: resolution: {integrity: sha512-ewBbHQ+1U/VnH1fxltbJqDeWBU1oNLG8Dj11uIv3xVf7nrQu0bPGe5Rf716r7K5Qz+SqtAOVswoVunoiBtGhxw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.3 + '@babel/core': 7.21.4 '@babel/helper-plugin-utils': 7.20.2 '@babel/helper-skip-transparent-expression-wrappers': 7.20.0 - /@babel/plugin-transform-sticky-regex/7.18.6_@babel+core@7.21.3: + /@babel/plugin-transform-sticky-regex/7.18.6_@babel+core@7.21.4: resolution: {integrity: sha512-kfiDrDQ+PBsQDO85yj1icueWMfGfJFKN1KCkndygtu/C9+XUfydLC8Iv5UYJqRwy4zk8EcplRxEOeLyjq1gm6Q==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.3 + '@babel/core': 7.21.4 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-transform-template-literals/7.18.9_@babel+core@7.21.3: + /@babel/plugin-transform-template-literals/7.18.9_@babel+core@7.21.4: resolution: {integrity: sha512-S8cOWfT82gTezpYOiVaGHrCbhlHgKhQt8XH5ES46P2XWmX92yisoZywf5km75wv5sYcXDUCLMmMxOLCtthDgMA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.3 + '@babel/core': 7.21.4 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-transform-typeof-symbol/7.18.9_@babel+core@7.21.3: + /@babel/plugin-transform-typeof-symbol/7.18.9_@babel+core@7.21.4: resolution: {integrity: sha512-SRfwTtF11G2aemAZWivL7PD+C9z52v9EvMqH9BuYbabyPuKUvSWks3oCg6041pT925L4zVFqaVBeECwsmlguEw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.3 + '@babel/core': 7.21.4 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-transform-typescript/7.21.3_@babel+core@7.21.3: + /@babel/plugin-transform-typescript/7.21.3_@babel+core@7.21.4: resolution: {integrity: sha512-RQxPz6Iqt8T0uw/WsJNReuBpWpBqs/n7mNo18sKLoTbMp+UrEekhH+pKSVC7gWz+DNjo9gryfV8YzCiT45RgMw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.3 + '@babel/core': 7.21.4 '@babel/helper-annotate-as-pure': 7.18.6 - '@babel/helper-create-class-features-plugin': 7.21.0_@babel+core@7.21.3 + '@babel/helper-create-class-features-plugin': 7.21.4_@babel+core@7.21.4 '@babel/helper-plugin-utils': 7.20.2 - '@babel/plugin-syntax-typescript': 7.20.0_@babel+core@7.21.3 + '@babel/plugin-syntax-typescript': 7.21.4_@babel+core@7.21.4 transitivePeerDependencies: - supports-color - /@babel/plugin-transform-typescript/7.4.5_@babel+core@7.21.3: + /@babel/plugin-transform-typescript/7.4.5_@babel+core@7.21.4: resolution: {integrity: sha512-RPB/YeGr4ZrFKNwfuQRlMf2lxoCUaU01MTw39/OFE/RiL8HDjtn68BwEPft1P7JN4akyEmjGWAMNldOV7o9V2g==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.3 + '@babel/core': 7.21.4 '@babel/helper-plugin-utils': 7.20.2 - '@babel/plugin-syntax-typescript': 7.20.0_@babel+core@7.21.3 + '@babel/plugin-syntax-typescript': 7.21.4_@babel+core@7.21.4 dev: true - /@babel/plugin-transform-typescript/7.5.5_@babel+core@7.21.3: + /@babel/plugin-transform-typescript/7.5.5_@babel+core@7.21.4: resolution: {integrity: sha512-pehKf4m640myZu5B2ZviLaiBlxMCjSZ1qTEO459AXKX5GnPueyulJeCqZFs1nz/Ya2dDzXQ1NxZ/kKNWyD4h6w==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.3 - '@babel/helper-create-class-features-plugin': 7.21.0_@babel+core@7.21.3 + '@babel/core': 7.21.4 + '@babel/helper-create-class-features-plugin': 7.21.4_@babel+core@7.21.4 '@babel/helper-plugin-utils': 7.20.2 - '@babel/plugin-syntax-typescript': 7.20.0_@babel+core@7.21.3 + '@babel/plugin-syntax-typescript': 7.21.4_@babel+core@7.21.4 transitivePeerDependencies: - supports-color dev: true - /@babel/plugin-transform-unicode-escapes/7.18.10_@babel+core@7.21.3: + /@babel/plugin-transform-unicode-escapes/7.18.10_@babel+core@7.21.4: resolution: {integrity: sha512-kKAdAI+YzPgGY/ftStBFXTI1LZFju38rYThnfMykS+IXy8BVx+res7s2fxf1l8I35DV2T97ezo6+SGrXz6B3iQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.3 + '@babel/core': 7.21.4 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-transform-unicode-regex/7.18.6_@babel+core@7.21.3: + /@babel/plugin-transform-unicode-regex/7.18.6_@babel+core@7.21.4: resolution: {integrity: sha512-gE7A6Lt7YLnNOL3Pb9BNeZvi+d8l7tcRrG4+pwJjK9hD2xX4mEvjlQW60G9EEmfXVYRPv9VRQcyegIVHCql/AA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.3 - '@babel/helper-create-regexp-features-plugin': 7.21.0_@babel+core@7.21.3 + '@babel/core': 7.21.4 + '@babel/helper-create-regexp-features-plugin': 7.21.4_@babel+core@7.21.4 '@babel/helper-plugin-utils': 7.20.2 /@babel/polyfill/7.12.1: @@ -1244,101 +1244,101 @@ packages: core-js: 2.6.12 regenerator-runtime: 0.13.11 - /@babel/preset-env/7.20.2_@babel+core@7.21.3: - resolution: {integrity: sha512-1G0efQEWR1EHkKvKHqbG+IN/QdgwfByUpM5V5QroDzGV2t3S/WXNQd693cHiHTlCFMpr9B6FkPFXDA2lQcKoDg==} + /@babel/preset-env/7.21.4_@babel+core@7.21.4: + resolution: {integrity: sha512-2W57zHs2yDLm6GD5ZpvNn71lZ0B/iypSdIeq25OurDKji6AdzV07qp4s3n1/x5BqtiGaTrPN3nerlSCaC5qNTw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/compat-data': 7.21.0 - '@babel/core': 7.21.3 - '@babel/helper-compilation-targets': 7.20.7_@babel+core@7.21.3 + '@babel/compat-data': 7.21.4 + '@babel/core': 7.21.4 + '@babel/helper-compilation-targets': 7.21.4_@babel+core@7.21.4 '@babel/helper-plugin-utils': 7.20.2 '@babel/helper-validator-option': 7.21.0 - '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression': 7.18.6_@babel+core@7.21.3 - '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining': 7.20.7_@babel+core@7.21.3 - '@babel/plugin-proposal-async-generator-functions': 7.20.7_@babel+core@7.21.3 - '@babel/plugin-proposal-class-properties': 7.18.6_@babel+core@7.21.3 - '@babel/plugin-proposal-class-static-block': 7.21.0_@babel+core@7.21.3 - '@babel/plugin-proposal-dynamic-import': 7.18.6_@babel+core@7.21.3 - '@babel/plugin-proposal-export-namespace-from': 7.18.9_@babel+core@7.21.3 - '@babel/plugin-proposal-json-strings': 7.18.6_@babel+core@7.21.3 - '@babel/plugin-proposal-logical-assignment-operators': 7.20.7_@babel+core@7.21.3 - '@babel/plugin-proposal-nullish-coalescing-operator': 7.18.6_@babel+core@7.21.3 - '@babel/plugin-proposal-numeric-separator': 7.18.6_@babel+core@7.21.3 - '@babel/plugin-proposal-object-rest-spread': 7.20.7_@babel+core@7.21.3 - '@babel/plugin-proposal-optional-catch-binding': 7.18.6_@babel+core@7.21.3 - '@babel/plugin-proposal-optional-chaining': 7.21.0_@babel+core@7.21.3 - '@babel/plugin-proposal-private-methods': 7.18.6_@babel+core@7.21.3 - '@babel/plugin-proposal-private-property-in-object': 7.21.0_@babel+core@7.21.3 - '@babel/plugin-proposal-unicode-property-regex': 7.18.6_@babel+core@7.21.3 - '@babel/plugin-syntax-async-generators': 7.8.4_@babel+core@7.21.3 - '@babel/plugin-syntax-class-properties': 7.12.13_@babel+core@7.21.3 - '@babel/plugin-syntax-class-static-block': 7.14.5_@babel+core@7.21.3 - '@babel/plugin-syntax-dynamic-import': 7.8.3_@babel+core@7.21.3 - '@babel/plugin-syntax-export-namespace-from': 7.8.3_@babel+core@7.21.3 - '@babel/plugin-syntax-import-assertions': 7.20.0_@babel+core@7.21.3 - '@babel/plugin-syntax-json-strings': 7.8.3_@babel+core@7.21.3 - '@babel/plugin-syntax-logical-assignment-operators': 7.10.4_@babel+core@7.21.3 - '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3_@babel+core@7.21.3 - '@babel/plugin-syntax-numeric-separator': 7.10.4_@babel+core@7.21.3 - '@babel/plugin-syntax-object-rest-spread': 7.8.3_@babel+core@7.21.3 - '@babel/plugin-syntax-optional-catch-binding': 7.8.3_@babel+core@7.21.3 - '@babel/plugin-syntax-optional-chaining': 7.8.3_@babel+core@7.21.3 - '@babel/plugin-syntax-private-property-in-object': 7.14.5_@babel+core@7.21.3 - '@babel/plugin-syntax-top-level-await': 7.14.5_@babel+core@7.21.3 - '@babel/plugin-transform-arrow-functions': 7.20.7_@babel+core@7.21.3 - '@babel/plugin-transform-async-to-generator': 7.20.7_@babel+core@7.21.3 - '@babel/plugin-transform-block-scoped-functions': 7.18.6_@babel+core@7.21.3 - '@babel/plugin-transform-block-scoping': 7.21.0_@babel+core@7.21.3 - '@babel/plugin-transform-classes': 7.21.0_@babel+core@7.21.3 - '@babel/plugin-transform-computed-properties': 7.20.7_@babel+core@7.21.3 - '@babel/plugin-transform-destructuring': 7.21.3_@babel+core@7.21.3 - '@babel/plugin-transform-dotall-regex': 7.18.6_@babel+core@7.21.3 - '@babel/plugin-transform-duplicate-keys': 7.18.9_@babel+core@7.21.3 - '@babel/plugin-transform-exponentiation-operator': 7.18.6_@babel+core@7.21.3 - '@babel/plugin-transform-for-of': 7.21.0_@babel+core@7.21.3 - '@babel/plugin-transform-function-name': 7.18.9_@babel+core@7.21.3 - '@babel/plugin-transform-literals': 7.18.9_@babel+core@7.21.3 - '@babel/plugin-transform-member-expression-literals': 7.18.6_@babel+core@7.21.3 - '@babel/plugin-transform-modules-amd': 7.20.11_@babel+core@7.21.3 - '@babel/plugin-transform-modules-commonjs': 7.21.2_@babel+core@7.21.3 - '@babel/plugin-transform-modules-systemjs': 7.20.11_@babel+core@7.21.3 - '@babel/plugin-transform-modules-umd': 7.18.6_@babel+core@7.21.3 - '@babel/plugin-transform-named-capturing-groups-regex': 7.20.5_@babel+core@7.21.3 - '@babel/plugin-transform-new-target': 7.18.6_@babel+core@7.21.3 - '@babel/plugin-transform-object-super': 7.18.6_@babel+core@7.21.3 - '@babel/plugin-transform-parameters': 7.21.3_@babel+core@7.21.3 - '@babel/plugin-transform-property-literals': 7.18.6_@babel+core@7.21.3 - '@babel/plugin-transform-regenerator': 7.20.5_@babel+core@7.21.3 - '@babel/plugin-transform-reserved-words': 7.18.6_@babel+core@7.21.3 - '@babel/plugin-transform-shorthand-properties': 7.18.6_@babel+core@7.21.3 - '@babel/plugin-transform-spread': 7.20.7_@babel+core@7.21.3 - '@babel/plugin-transform-sticky-regex': 7.18.6_@babel+core@7.21.3 - '@babel/plugin-transform-template-literals': 7.18.9_@babel+core@7.21.3 - '@babel/plugin-transform-typeof-symbol': 7.18.9_@babel+core@7.21.3 - '@babel/plugin-transform-unicode-escapes': 7.18.10_@babel+core@7.21.3 - '@babel/plugin-transform-unicode-regex': 7.18.6_@babel+core@7.21.3 - '@babel/preset-modules': 0.1.5_@babel+core@7.21.3 - '@babel/types': 7.21.3 - babel-plugin-polyfill-corejs2: 0.3.3_@babel+core@7.21.3 - babel-plugin-polyfill-corejs3: 0.6.0_@babel+core@7.21.3 - babel-plugin-polyfill-regenerator: 0.4.1_@babel+core@7.21.3 + '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression': 7.18.6_@babel+core@7.21.4 + '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining': 7.20.7_@babel+core@7.21.4 + '@babel/plugin-proposal-async-generator-functions': 7.20.7_@babel+core@7.21.4 + '@babel/plugin-proposal-class-properties': 7.18.6_@babel+core@7.21.4 + '@babel/plugin-proposal-class-static-block': 7.21.0_@babel+core@7.21.4 + '@babel/plugin-proposal-dynamic-import': 7.18.6_@babel+core@7.21.4 + '@babel/plugin-proposal-export-namespace-from': 7.18.9_@babel+core@7.21.4 + '@babel/plugin-proposal-json-strings': 7.18.6_@babel+core@7.21.4 + '@babel/plugin-proposal-logical-assignment-operators': 7.20.7_@babel+core@7.21.4 + '@babel/plugin-proposal-nullish-coalescing-operator': 7.18.6_@babel+core@7.21.4 + '@babel/plugin-proposal-numeric-separator': 7.18.6_@babel+core@7.21.4 + '@babel/plugin-proposal-object-rest-spread': 7.20.7_@babel+core@7.21.4 + '@babel/plugin-proposal-optional-catch-binding': 7.18.6_@babel+core@7.21.4 + '@babel/plugin-proposal-optional-chaining': 7.21.0_@babel+core@7.21.4 + '@babel/plugin-proposal-private-methods': 7.18.6_@babel+core@7.21.4 + '@babel/plugin-proposal-private-property-in-object': 7.21.0_@babel+core@7.21.4 + '@babel/plugin-proposal-unicode-property-regex': 7.18.6_@babel+core@7.21.4 + '@babel/plugin-syntax-async-generators': 7.8.4_@babel+core@7.21.4 + '@babel/plugin-syntax-class-properties': 7.12.13_@babel+core@7.21.4 + '@babel/plugin-syntax-class-static-block': 7.14.5_@babel+core@7.21.4 + '@babel/plugin-syntax-dynamic-import': 7.8.3_@babel+core@7.21.4 + '@babel/plugin-syntax-export-namespace-from': 7.8.3_@babel+core@7.21.4 + '@babel/plugin-syntax-import-assertions': 7.20.0_@babel+core@7.21.4 + '@babel/plugin-syntax-json-strings': 7.8.3_@babel+core@7.21.4 + '@babel/plugin-syntax-logical-assignment-operators': 7.10.4_@babel+core@7.21.4 + '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3_@babel+core@7.21.4 + '@babel/plugin-syntax-numeric-separator': 7.10.4_@babel+core@7.21.4 + '@babel/plugin-syntax-object-rest-spread': 7.8.3_@babel+core@7.21.4 + '@babel/plugin-syntax-optional-catch-binding': 7.8.3_@babel+core@7.21.4 + '@babel/plugin-syntax-optional-chaining': 7.8.3_@babel+core@7.21.4 + '@babel/plugin-syntax-private-property-in-object': 7.14.5_@babel+core@7.21.4 + '@babel/plugin-syntax-top-level-await': 7.14.5_@babel+core@7.21.4 + '@babel/plugin-transform-arrow-functions': 7.20.7_@babel+core@7.21.4 + '@babel/plugin-transform-async-to-generator': 7.20.7_@babel+core@7.21.4 + '@babel/plugin-transform-block-scoped-functions': 7.18.6_@babel+core@7.21.4 + '@babel/plugin-transform-block-scoping': 7.21.0_@babel+core@7.21.4 + '@babel/plugin-transform-classes': 7.21.0_@babel+core@7.21.4 + '@babel/plugin-transform-computed-properties': 7.20.7_@babel+core@7.21.4 + '@babel/plugin-transform-destructuring': 7.21.3_@babel+core@7.21.4 + '@babel/plugin-transform-dotall-regex': 7.18.6_@babel+core@7.21.4 + '@babel/plugin-transform-duplicate-keys': 7.18.9_@babel+core@7.21.4 + '@babel/plugin-transform-exponentiation-operator': 7.18.6_@babel+core@7.21.4 + '@babel/plugin-transform-for-of': 7.21.0_@babel+core@7.21.4 + '@babel/plugin-transform-function-name': 7.18.9_@babel+core@7.21.4 + '@babel/plugin-transform-literals': 7.18.9_@babel+core@7.21.4 + '@babel/plugin-transform-member-expression-literals': 7.18.6_@babel+core@7.21.4 + '@babel/plugin-transform-modules-amd': 7.20.11_@babel+core@7.21.4 + '@babel/plugin-transform-modules-commonjs': 7.21.2_@babel+core@7.21.4 + '@babel/plugin-transform-modules-systemjs': 7.20.11_@babel+core@7.21.4 + '@babel/plugin-transform-modules-umd': 7.18.6_@babel+core@7.21.4 + '@babel/plugin-transform-named-capturing-groups-regex': 7.20.5_@babel+core@7.21.4 + '@babel/plugin-transform-new-target': 7.18.6_@babel+core@7.21.4 + '@babel/plugin-transform-object-super': 7.18.6_@babel+core@7.21.4 + '@babel/plugin-transform-parameters': 7.21.3_@babel+core@7.21.4 + '@babel/plugin-transform-property-literals': 7.18.6_@babel+core@7.21.4 + '@babel/plugin-transform-regenerator': 7.20.5_@babel+core@7.21.4 + '@babel/plugin-transform-reserved-words': 7.18.6_@babel+core@7.21.4 + '@babel/plugin-transform-shorthand-properties': 7.18.6_@babel+core@7.21.4 + '@babel/plugin-transform-spread': 7.20.7_@babel+core@7.21.4 + '@babel/plugin-transform-sticky-regex': 7.18.6_@babel+core@7.21.4 + '@babel/plugin-transform-template-literals': 7.18.9_@babel+core@7.21.4 + '@babel/plugin-transform-typeof-symbol': 7.18.9_@babel+core@7.21.4 + '@babel/plugin-transform-unicode-escapes': 7.18.10_@babel+core@7.21.4 + '@babel/plugin-transform-unicode-regex': 7.18.6_@babel+core@7.21.4 + '@babel/preset-modules': 0.1.5_@babel+core@7.21.4 + '@babel/types': 7.21.4 + babel-plugin-polyfill-corejs2: 0.3.3_@babel+core@7.21.4 + babel-plugin-polyfill-corejs3: 0.6.0_@babel+core@7.21.4 + babel-plugin-polyfill-regenerator: 0.4.1_@babel+core@7.21.4 core-js-compat: 3.29.1 semver: 6.3.0 transitivePeerDependencies: - supports-color - /@babel/preset-modules/0.1.5_@babel+core@7.21.3: + /@babel/preset-modules/0.1.5_@babel+core@7.21.4: resolution: {integrity: sha512-A57th6YRG7oR3cq/yt/Y84MvGgE0eJG2F1JLhKuyG+jFxEgrd/HAMJatiFtmOiZurz+0DkrvbheCLaV5f2JfjA==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.3 + '@babel/core': 7.21.4 '@babel/helper-plugin-utils': 7.20.2 - '@babel/plugin-proposal-unicode-property-regex': 7.18.6_@babel+core@7.21.3 - '@babel/plugin-transform-dotall-regex': 7.18.6_@babel+core@7.21.3 - '@babel/types': 7.21.3 + '@babel/plugin-proposal-unicode-property-regex': 7.18.6_@babel+core@7.21.4 + '@babel/plugin-transform-dotall-regex': 7.18.6_@babel+core@7.21.4 + '@babel/types': 7.21.4 esutils: 2.0.3 /@babel/regjsgen/0.8.0: @@ -1354,35 +1354,34 @@ packages: engines: {node: '>=6.9.0'} dependencies: regenerator-runtime: 0.13.11 - dev: true /@babel/template/7.20.7: resolution: {integrity: sha512-8SegXApWe6VoNw0r9JHpSteLKTpTiLZ4rMlGIm9JQ18KiCtyQiAMEazujAHrUS5flrcqYZa75ukev3P6QmUwUw==} engines: {node: '>=6.9.0'} dependencies: - '@babel/code-frame': 7.18.6 - '@babel/parser': 7.21.3 - '@babel/types': 7.21.3 + '@babel/code-frame': 7.21.4 + '@babel/parser': 7.21.4 + '@babel/types': 7.21.4 - /@babel/traverse/7.21.3: - resolution: {integrity: sha512-XLyopNeaTancVitYZe2MlUEvgKb6YVVPXzofHgqHijCImG33b/uTurMS488ht/Hbsb2XK3U2BnSTxKVNGV3nGQ==} + /@babel/traverse/7.21.4: + resolution: {integrity: sha512-eyKrRHKdyZxqDm+fV1iqL9UAHMoIg0nDaGqfIOd8rKH17m5snv7Gn4qgjBoFfLz9APvjFU/ICT00NVCv1Epp8Q==} engines: {node: '>=6.9.0'} dependencies: - '@babel/code-frame': 7.18.6 - '@babel/generator': 7.21.3 + '@babel/code-frame': 7.21.4 + '@babel/generator': 7.21.4 '@babel/helper-environment-visitor': 7.18.9 '@babel/helper-function-name': 7.21.0 '@babel/helper-hoist-variables': 7.18.6 '@babel/helper-split-export-declaration': 7.18.6 - '@babel/parser': 7.21.3 - '@babel/types': 7.21.3 + '@babel/parser': 7.21.4 + '@babel/types': 7.21.4 debug: 4.3.4 globals: 11.12.0 transitivePeerDependencies: - supports-color - /@babel/types/7.21.3: - resolution: {integrity: sha512-sBGdETxC+/M4o/zKC0sl6sjWv62WFR/uzxrJ6uYyMLZOUlPnwzw0tKgVHOXxaAd5l2g8pEDM5RZ495GPQI77kg==} + /@babel/types/7.21.4: + resolution: {integrity: sha512-rU2oY501qDxE8Pyo7i/Orqma4ziCOrby0/9mvbDUGEfvZjb279Nk9k19e2fiCxHbRRpY2ZyrgW1eq22mvmOIzA==} engines: {node: '>=6.9.0'} dependencies: '@babel/helper-string-parser': 7.19.4 @@ -1438,7 +1437,7 @@ packages: - supports-color dev: true - /@ember/test-helpers/2.9.3_otaypuqppwyaazv47auvopbzra: + /@ember/test-helpers/2.9.3_f4tsb6lbiq7drw6qlcagmdca2i: resolution: {integrity: sha512-ejVg4Dj+G/6zyLvQsYOvmGiOLU6AS94tY4ClaO1E2oVvjjtVJIRmVLFN61I+DuyBg9hS3cFoPjQRTZB9MRIbxQ==} engines: {node: 10.* || 12.* || 14.* || 15.* || >= 16.*} peerDependencies: @@ -1451,8 +1450,8 @@ packages: broccoli-funnel: 3.0.8 ember-cli-babel: 7.26.11 ember-cli-htmlbars: 6.2.0 - ember-destroyable-polyfill: 2.0.3_@babel+core@7.21.3 - ember-source: 3.24.7_@babel+core@7.21.3 + ember-destroyable-polyfill: 2.0.3_@babel+core@7.21.4 + ember-source: 3.24.7_@babel+core@7.21.4 transitivePeerDependencies: - '@babel/core' - '@glint/template' @@ -1482,7 +1481,7 @@ packages: '@embroider/core': 1.9.0 '@rollup/pluginutils': 4.2.1 assert-never: 1.2.1 - ember-source: 3.24.7_@babel+core@7.21.3 + ember-source: 3.24.7_@babel+core@7.21.4 fs-extra: 10.1.0 minimatch: 3.1.2 rollup-plugin-copy-assets: 2.0.3_rollup@2.79.1 @@ -1512,12 +1511,12 @@ packages: resolution: {integrity: sha512-fjPb1pU7a+V9clpfBCa8CHdxbz7hr6azwNw/DqRQIMM272nrOPml65YVsBE24z7NrHdkqHjvmvDQ+qtl6oBhPw==} engines: {node: 12.* || 14.* || >= 16} dependencies: - '@babel/core': 7.21.3 - '@babel/parser': 7.21.3 - '@babel/plugin-syntax-dynamic-import': 7.8.3_@babel+core@7.21.3 - '@babel/plugin-transform-runtime': 7.21.0_@babel+core@7.21.3 + '@babel/core': 7.21.4 + '@babel/parser': 7.21.4 + '@babel/plugin-syntax-dynamic-import': 7.8.3_@babel+core@7.21.4 + '@babel/plugin-transform-runtime': 7.21.4_@babel+core@7.21.4 '@babel/runtime': 7.21.0 - '@babel/traverse': 7.21.3 + '@babel/traverse': 7.21.4 '@embroider/macros': 1.9.0 '@embroider/shared-internals': 1.8.3 assert-never: 1.2.1 @@ -1629,32 +1628,32 @@ packages: '@embroider/macros': 1.10.0 broccoli-funnel: 3.0.8 ember-cli-babel: 7.26.11 - ember-source: 3.24.7_@babel+core@7.21.3 + ember-source: 3.24.7_@babel+core@7.21.4 transitivePeerDependencies: - supports-color - /@eslint-community/eslint-utils/4.4.0_eslint@8.36.0: + /@eslint-community/eslint-utils/4.4.0_eslint@8.37.0: resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 dependencies: - eslint: 8.36.0 - eslint-visitor-keys: 3.3.0 + eslint: 8.37.0 + eslint-visitor-keys: 3.4.0 dev: true - /@eslint-community/regexpp/4.4.1: - resolution: {integrity: sha512-BISJ6ZE4xQsuL/FmsyRaiffpq977bMlsKfGHTQrOGFErfByxIe6iZTxPf/00Zon9b9a7iUykfQwejN3s2ZW/Bw==} + /@eslint-community/regexpp/4.5.0: + resolution: {integrity: sha512-vITaYzIcNmjn5tF5uxcZ/ft7/RXGrMUIS9HalWckEOF6ESiwXKoMzAQf2UW0aVd6rnOeExTJVd5hmWXucBKGXQ==} engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} dev: true - /@eslint/eslintrc/2.0.1: - resolution: {integrity: sha512-eFRmABvW2E5Ho6f5fHLqgena46rOj7r7OKHYfLElqcBfGFHHpjBhivyi5+jOEQuSpdc/1phIZJlbC2te+tZNIw==} + /@eslint/eslintrc/2.0.2: + resolution: {integrity: sha512-3W4f5tDUra+pA+FzgugqL2pRimUTDJWKr7BINqOpkZrC0uYI0NIc0/JFgBROCU07HR6GieA5m3/rsPIhDmCXTQ==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dependencies: ajv: 6.12.6 debug: 4.3.4 - espree: 9.5.0 + espree: 9.5.1 globals: 13.20.0 ignore: 5.2.4 import-fresh: 3.3.0 @@ -1665,12 +1664,12 @@ packages: - supports-color dev: true - /@eslint/js/8.36.0: - resolution: {integrity: sha512-lxJ9R5ygVm8ZWgYdUweoq5ownDlJ4upvoWmO4eLxBYHdMo+vZ/Rx0EN6MbKWDJOSUGrqJy2Gt+Dyv/VKml0fjg==} + /@eslint/js/8.37.0: + resolution: {integrity: sha512-x5vzdtOOGgFVDCUs81QRB2+liax8rFg3+7hqM+QhBG0/G3F1ZsoYl97UrqgHgQ9KKT7G6c4V+aTUCgu/n22v1A==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dev: true - /@glimmer/component/1.1.2_@babel+core@7.21.3: + /@glimmer/component/1.1.2_@babel+core@7.21.4: resolution: {integrity: sha512-XyAsEEa4kWOPy+gIdMjJ8XlzA3qrGH55ZDv6nA16ibalCR17k74BI0CztxuRds+Rm6CtbUVgheCVlcCULuqD7A==} engines: {node: 6.* || 8.* || >= 10.*} dependencies: @@ -1685,9 +1684,9 @@ packages: ember-cli-normalize-entity-name: 1.0.0 ember-cli-path-utils: 1.0.0 ember-cli-string-utils: 1.1.0 - ember-cli-typescript: 3.0.0_@babel+core@7.21.3 + ember-cli-typescript: 3.0.0_@babel+core@7.21.4 ember-cli-version-checker: 3.1.3 - ember-compatibility-helpers: 1.2.6_@babel+core@7.21.3 + ember-compatibility-helpers: 1.2.6_@babel+core@7.21.4 transitivePeerDependencies: - '@babel/core' - supports-color @@ -1991,7 +1990,7 @@ packages: resolution: {integrity: sha512-TcQUmyNRxV94S0QpMOnZl0++6RMiqpbH/ZMccFB/amku6Uwvyb1cjYX7xkp5nGNkbX4QPH/FcB6q1HBTHynLmQ==} engines: {node: '>= 6'} dependencies: - '@babel/core': 7.21.3 + '@babel/core': 7.21.4 '@jest/types': 24.9.0 babel-plugin-istanbul: 5.2.0 chalk: 2.4.2 @@ -2090,7 +2089,7 @@ packages: resolution: {integrity: sha512-4gSXPwwr99zUWxnTllN5L4QlfgFDloYKOsenoPvx46LE75x3wvLgGUhxUxhIMxJbqOZ0w9pzrugjQR7St0/PQg==} dev: false - /@rollup/plugin-babel/5.3.1_hqhlikriuul7byjexqnpgcmenu: + /@rollup/plugin-babel/5.3.1_b6cdhqm2xsfe2bpl424qdsl4ei: resolution: {integrity: sha512-WFfdLWU/xVWKeRQnKmIAQULUI7Il0gZnBIH/ZFO069wYIfPu+8zrfp/KMW0atmELoRDq8FbiP3VCss9MhCut7Q==} engines: {node: '>= 10.0.0'} peerDependencies: @@ -2101,8 +2100,8 @@ packages: '@types/babel__core': optional: true dependencies: - '@babel/core': 7.21.3 - '@babel/helper-module-imports': 7.18.6 + '@babel/core': 7.21.4 + '@babel/helper-module-imports': 7.21.4 '@rollup/pluginutils': 3.1.0_rollup@2.79.1 rollup: 2.79.1 dev: true @@ -2164,8 +2163,8 @@ packages: /@types/babel__core/7.20.0: resolution: {integrity: sha512-+n8dL/9GWblDO0iU6eZAwEIJVr5DWigtle+Q6HLOrh/pdbXOhOtqzq8VPPE2zvNJzSKY4vH/z3iT3tn0A3ypiQ==} dependencies: - '@babel/parser': 7.21.3 - '@babel/types': 7.21.3 + '@babel/parser': 7.21.4 + '@babel/types': 7.21.4 '@types/babel__generator': 7.6.4 '@types/babel__template': 7.4.1 '@types/babel__traverse': 7.18.3 @@ -2174,27 +2173,27 @@ packages: /@types/babel__generator/7.6.4: resolution: {integrity: sha512-tFkciB9j2K755yrTALxD44McOrk+gfpIpvC3sxHjRawj6PfnQxrse4Clq5y/Rq+G3mrBurMax/lG8Qn2t9mSsg==} dependencies: - '@babel/types': 7.21.3 + '@babel/types': 7.21.4 dev: true /@types/babel__template/7.4.1: resolution: {integrity: sha512-azBFKemX6kMg5Io+/rdGT0dkGreboUVR0Cdm3fz9QJWpaQGJRQXl7C+6hOTCZcMll7KFyEQpgbYI2lHdsS4U7g==} dependencies: - '@babel/parser': 7.21.3 - '@babel/types': 7.21.3 + '@babel/parser': 7.21.4 + '@babel/types': 7.21.4 dev: true /@types/babel__traverse/7.18.3: resolution: {integrity: sha512-1kbcJ40lLB7MHsj39U4Sh1uTd2E7rLEa79kmDpI6cy+XiXsteB3POdQomoq4FxszMrO3ZYchkhYJw7A2862b3w==} dependencies: - '@babel/types': 7.21.3 + '@babel/types': 7.21.4 dev: true /@types/body-parser/1.19.2: resolution: {integrity: sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==} dependencies: '@types/connect': 3.4.35 - '@types/node': 18.15.7 + '@types/node': 18.15.11 dev: true /@types/chai-as-promised/7.1.5: @@ -2210,7 +2209,7 @@ packages: /@types/connect/3.4.35: resolution: {integrity: sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==} dependencies: - '@types/node': 18.15.7 + '@types/node': 18.15.11 dev: true /@types/cookie/0.4.1: @@ -2220,7 +2219,7 @@ packages: /@types/cors/2.8.13: resolution: {integrity: sha512-RG8AStHlUiV5ysZQKq97copd2UmVYw3/pRMLefISZ3S1hK104Cwm7iLQ3fTKx+lsUH2CE8FlLaYeEA2LSeqYUA==} dependencies: - '@types/node': 18.15.7 + '@types/node': 18.15.11 dev: true /@types/ember-qunit/3.4.15: @@ -2384,12 +2383,12 @@ packages: /@types/eslint-scope/3.7.4: resolution: {integrity: sha512-9K4zoImiZc3HlIp6AVUDE4CWYx22a+lhSZMYNpbjW04+YF0KWj4pJXnEMjdnFTiQibFFmElcsasJXDbdI/EPhA==} dependencies: - '@types/eslint': 8.21.3 + '@types/eslint': 8.37.0 '@types/estree': 0.0.51 dev: true - /@types/eslint/8.21.3: - resolution: {integrity: sha512-fa7GkppZVEByMWGbTtE5MbmXWJTVbrjjaS8K6uQj+XtuuUv1fsuPAxhygfqLmsb/Ufb3CV8deFCpiMfAgi00Sw==} + /@types/eslint/8.37.0: + resolution: {integrity: sha512-Piet7dG2JBuDIfohBngQ3rCt7MgO9xCO4xIMKxBThCq5PNRB91IjlJ10eJVwfoNtvTErmxLzwBZ7rHZtbOMmFQ==} dependencies: '@types/estree': 0.0.51 '@types/json-schema': 7.0.11 @@ -2406,7 +2405,7 @@ packages: /@types/express-serve-static-core/4.17.33: resolution: {integrity: sha512-TPBqmR/HRYI3eC2E5hmiivIzv+bidAfXofM+sbonAGvyDhySGw9/PQZFt2BLOrjUUR++4eJVpx6KnLQK1Fk9tA==} dependencies: - '@types/node': 18.15.7 + '@types/node': 18.15.11 '@types/qs': 6.9.7 '@types/range-parser': 1.2.4 dev: true @@ -2423,26 +2422,26 @@ packages: /@types/fs-extra/5.1.0: resolution: {integrity: sha512-AInn5+UBFIK9FK5xc9yP5e3TQSPNNgjHByqYcj9g5elVBnDQcQL7PlO1CIRy2gWlbwK7UPYqi7vRvFA44dCmYQ==} dependencies: - '@types/node': 18.15.7 + '@types/node': 18.15.11 /@types/fs-extra/8.1.2: resolution: {integrity: sha512-SvSrYXfWSc7R4eqnOzbQF4TZmfpNSM9FrSWLU3EUnWBuyZqNBOrv1B1JA3byUDPUl9z4Ab3jeZG2eDdySlgNMg==} dependencies: - '@types/node': 18.15.7 + '@types/node': 18.15.11 dev: true /@types/glob/7.2.0: resolution: {integrity: sha512-ZUxbzKl0IfJILTS6t7ip5fQQM/J3TJYubDm3nMbgubNNYS62eXeUpoLUC8/7fJNiFYHTrGPQn7hspDUzIHX3UA==} dependencies: '@types/minimatch': 5.1.2 - '@types/node': 18.15.7 + '@types/node': 18.15.11 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': 18.15.7 + '@types/node': 18.15.11 /@types/htmlbars-inline-precompile/1.0.1: resolution: {integrity: sha512-sVD2e6QAAHW0Y6Btse+tTA9k9g0iKm87wjxRsgZRU5EwSooz80tenbV+fA+f2BI2g0G2CqxsS1rIlwQCtPRQow==} @@ -2477,7 +2476,7 @@ packages: /@types/keyv/3.1.4: resolution: {integrity: sha512-BQ5aZNSCpj7D6K2ksrRCTmKRLEpnPvWDiLPfoGyhZ++8YtiK9d/3DBKPJgry359X/P1PfruyYwvnvwFjuEiEIg==} dependencies: - '@types/node': 18.15.7 + '@types/node': 18.15.11 dev: true /@types/mime/3.0.1: @@ -2490,8 +2489,8 @@ packages: /@types/minimatch/5.1.2: resolution: {integrity: sha512-K0VQKziLUWkVKiRVrx4a40iPaxTUefQmjtkQofBkYRcoaaL/8rhwDWww9qWbrgicNOgnpIsMxyNIUM4+n6dUIA==} - /@types/node/18.15.7: - resolution: {integrity: sha512-LFmUbFunqmBn26wJZgZPYZPrDR1RwGOu2v79Mgcka1ndO6V0/cwjivPTc4yoK6n9kmw4/ls1r8cLrvh2iMibFA==} + /@types/node/18.15.11: + resolution: {integrity: sha512-E5Kwq2n4SbMzQOn6wnmBjuK9ouqlURrcZDVfbo9ftDDTFt3nk7ZKK4GMOzoYgnpQJKcxwQw+lGaBvvlMo0qN/Q==} /@types/qs/6.9.7: resolution: {integrity: sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==} @@ -2508,14 +2507,14 @@ packages: /@types/responselike/1.0.0: resolution: {integrity: sha512-85Y2BjiufFzaMIlvJDvTTB8Fxl2xfLo4HgmHzVBz08w4wDePCTjYw66PdrolO0kzli3yam/YCgRufyo1DdQVTA==} dependencies: - '@types/node': 18.15.7 + '@types/node': 18.15.11 dev: true /@types/rimraf/2.0.5: resolution: {integrity: sha512-YyP+VfeaqAyFmXoTh3HChxOQMyjByRMsHU7kc5KOJkSlXudhMhQIALbYV7rHh/l8d2lX3VUQzprrcAgWdRuU8g==} dependencies: '@types/glob': 8.1.0 - '@types/node': 18.15.7 + '@types/node': 18.15.11 /@types/rsvp/4.0.4: resolution: {integrity: sha512-J3Ol++HCC7/hwZhanDvggFYU/GtxHxE/e7cGRWxR04BF7Tt3TqJZ84BkzQgDxmX0uu8IagiyfmfoUlBACh2Ilg==} @@ -2525,7 +2524,7 @@ packages: resolution: {integrity: sha512-NUo5XNiAdULrJENtJXZZ3fHtfMolzZwczzBbnAeBbqBwG+LaG6YaJtuwzwGSQZ2wsCrxjEhNNjAkKigy3n8teQ==} dependencies: '@types/mime': 3.0.1 - '@types/node': 18.15.7 + '@types/node': 18.15.11 dev: true /@types/sizzle/2.3.3: @@ -2785,8 +2784,8 @@ packages: '@xtuc/long': 4.2.2 dev: true - /@xmldom/xmldom/0.8.6: - resolution: {integrity: sha512-uRjjusqpoqfmRkTaNuLJ2VohVr67Q5YwDATW3VU7PfzTj6IRaihGrYI7zckGZjxQPBIp63nfvJbM+Yu5ICh0Bg==} + /@xmldom/xmldom/0.8.7: + resolution: {integrity: sha512-sI1Ly2cODlWStkINzqGrZ8K6n+MTSbAeQnAipGyL+KZCXuHaRlj2gyyy8B/9MvsFFqN7XHryQnB2QwhzvJXovg==} engines: {node: '>=10.0.0'} dev: true @@ -3503,47 +3502,47 @@ packages: resolution: {integrity: sha512-PPzUT17eAI18zn6ek1R3sB4Krc/MbnmT1MkZQFmyhjoaEGBVwNABhfVU9+EKcDSKrrOm9OIpGhjxukx1GCiy1g==} engines: {node: '>= 12.*'} - /babel-jest/24.9.0_@babel+core@7.21.3: + /babel-jest/24.9.0_@babel+core@7.21.4: resolution: {integrity: sha512-ntuddfyiN+EhMw58PTNL1ph4C9rECiQXjI4nMMBKBaNjXvqLdkXpPRcMSr4iyBrJg/+wz9brFUD6RhOAT6r4Iw==} engines: {node: '>= 6'} peerDependencies: '@babel/core': ^7.0.0 dependencies: - '@babel/core': 7.21.3 + '@babel/core': 7.21.4 '@jest/transform': 24.9.0 '@jest/types': 24.9.0 '@types/babel__core': 7.20.0 babel-plugin-istanbul: 5.2.0 - babel-preset-jest: 24.9.0_@babel+core@7.21.3 + babel-preset-jest: 24.9.0_@babel+core@7.21.4 chalk: 2.4.2 slash: 2.0.0 transitivePeerDependencies: - supports-color dev: true - /babel-loader/8.3.0_qtovpurzjlo3biun26ymnwui7i: + /babel-loader/8.3.0_kh7tlia7ljiqfn7rrvxklxkh5i: resolution: {integrity: sha512-H8SvsMF+m9t15HNLMipppzkC+Y2Yq+v3SonZyU70RBL/h1gxPkH08Ot8pEE9Z4Kd+czyWJClmFS8qzIP9OZ04Q==} engines: {node: '>= 8.9'} peerDependencies: '@babel/core': ^7.0.0 webpack: '>=2' dependencies: - '@babel/core': 7.21.3 + '@babel/core': 7.21.4 find-cache-dir: 3.3.2 loader-utils: 2.0.4 make-dir: 3.1.0 schema-utils: 2.7.1 - webpack: 5.76.3 + webpack: 5.77.0 dev: true - /babel-loader/8.3.0_y3c3uzyfhmxjbwhc6k6hyxg3aa: + /babel-loader/8.3.0_z2ws6pnxa5zk5axe2qz6qd5y4u: resolution: {integrity: sha512-H8SvsMF+m9t15HNLMipppzkC+Y2Yq+v3SonZyU70RBL/h1gxPkH08Ot8pEE9Z4Kd+czyWJClmFS8qzIP9OZ04Q==} engines: {node: '>= 8.9'} peerDependencies: '@babel/core': ^7.0.0 webpack: '>=2' dependencies: - '@babel/core': 7.21.3 + '@babel/core': 7.21.4 find-cache-dir: 3.3.2 loader-utils: 2.0.4 make-dir: 3.1.0 @@ -3563,22 +3562,22 @@ packages: babel-runtime: 6.26.0 dev: true - /babel-plugin-debug-macros/0.2.0_@babel+core@7.21.3: + /babel-plugin-debug-macros/0.2.0_@babel+core@7.21.4: resolution: {integrity: sha512-Wpmw4TbhR3Eq2t3W51eBAQSdKlr+uAyF0GI4GtPfMCD12Y4cIdpKC9l0RjNTH/P9isFypSqqewMPm7//fnZlNA==} engines: {node: '>=4'} peerDependencies: '@babel/core': ^7.0.0-beta.42 dependencies: - '@babel/core': 7.21.3 + '@babel/core': 7.21.4 semver: 5.7.1 - /babel-plugin-debug-macros/0.3.4_@babel+core@7.21.3: + /babel-plugin-debug-macros/0.3.4_@babel+core@7.21.4: resolution: {integrity: sha512-wfel/vb3pXfwIDZUrkoDrn5FHmlWI96PCJ3UCDv2a86poJ3EQrnArNW5KfHSVJ9IOgxHbo748cQt7sDU+0KCEw==} engines: {node: '>=6'} peerDependencies: '@babel/core': ^7.0.0 dependencies: - '@babel/core': 7.21.3 + '@babel/core': 7.21.4 semver: 5.7.1 /babel-plugin-ember-data-packages-polyfill/0.1.2: @@ -3620,7 +3619,7 @@ packages: resolution: {integrity: sha512-jDLlxI8QnfKd7PtieH6pl4tZJzymzfCDCPGdTq/grgbiYAikwDPp/oL0IlFJn0HQjLpcLkyYhPKkUVneRESw5w==} engines: {node: '>=8'} dependencies: - '@babel/types': 7.21.3 + '@babel/types': 7.21.4 lodash: 4.17.21 /babel-plugin-htmlbars-inline-precompile/5.3.1: @@ -3684,36 +3683,36 @@ packages: resolve: 1.22.1 dev: true - /babel-plugin-polyfill-corejs2/0.3.3_@babel+core@7.21.3: + /babel-plugin-polyfill-corejs2/0.3.3_@babel+core@7.21.4: resolution: {integrity: sha512-8hOdmFYFSZhqg2C/JgLUQ+t52o5nirNwaWM2B9LWteozwIvM14VSwdsCAUET10qT+kmySAlseadmfeeSWFCy+Q==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/compat-data': 7.21.0 - '@babel/core': 7.21.3 - '@babel/helper-define-polyfill-provider': 0.3.3_@babel+core@7.21.3 + '@babel/compat-data': 7.21.4 + '@babel/core': 7.21.4 + '@babel/helper-define-polyfill-provider': 0.3.3_@babel+core@7.21.4 semver: 6.3.0 transitivePeerDependencies: - supports-color - /babel-plugin-polyfill-corejs3/0.6.0_@babel+core@7.21.3: + /babel-plugin-polyfill-corejs3/0.6.0_@babel+core@7.21.4: resolution: {integrity: sha512-+eHqR6OPcBhJOGgsIar7xoAB1GcSwVUA3XjAd7HJNzOXT4wv6/H7KIdA/Nc60cvUlDbKApmqNvD1B1bzOt4nyA==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.3 - '@babel/helper-define-polyfill-provider': 0.3.3_@babel+core@7.21.3 + '@babel/core': 7.21.4 + '@babel/helper-define-polyfill-provider': 0.3.3_@babel+core@7.21.4 core-js-compat: 3.29.1 transitivePeerDependencies: - supports-color - /babel-plugin-polyfill-regenerator/0.4.1_@babel+core@7.21.3: + /babel-plugin-polyfill-regenerator/0.4.1_@babel+core@7.21.4: resolution: {integrity: sha512-NtQGmyQDXjQqQ+IzRkBVwEOz9lQ4zxAQZgoAYEtU9dJjnl1Oc98qnN7jcp+bE7O7aYzVpavXE3/VKXNzUbh7aw==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.3 - '@babel/helper-define-polyfill-provider': 0.3.3_@babel+core@7.21.3 + '@babel/core': 7.21.4 + '@babel/helper-define-polyfill-provider': 0.3.3_@babel+core@7.21.4 transitivePeerDependencies: - supports-color @@ -4167,14 +4166,14 @@ packages: babel-plugin-transform-flow-strip-types: 6.22.0 dev: true - /babel-preset-jest/24.9.0_@babel+core@7.21.3: + /babel-preset-jest/24.9.0_@babel+core@7.21.4: resolution: {integrity: sha512-izTUuhE4TMfTRPF92fFwD2QfdXaZW08qvWTFCI51V8rW5x00UuPgc3ajRoWofXOuxjfcOM5zzSYsQS3H8KGCAg==} engines: {node: '>= 6'} peerDependencies: '@babel/core': ^7.0.0 dependencies: - '@babel/core': 7.21.3 - '@babel/plugin-syntax-object-rest-spread': 7.8.3_@babel+core@7.21.3 + '@babel/core': 7.21.4 + '@babel/plugin-syntax-object-rest-spread': 7.8.3_@babel+core@7.21.4 babel-plugin-jest-hoist: 24.9.0 dev: true @@ -4557,7 +4556,7 @@ packages: resolution: {integrity: sha512-6IXBgfRt7HZ61g67ssBc6lBb3Smw3DPZ9dEYirgtvXWpRZ2A9M22nxy6opEwJDgDJzlu/bB7ToppW33OFkA1gA==} engines: {node: '>= 6'} dependencies: - '@babel/core': 7.21.3 + '@babel/core': 7.21.4 '@babel/polyfill': 7.12.1 broccoli-funnel: 2.0.2 broccoli-merge-trees: 3.0.2 @@ -5089,8 +5088,8 @@ packages: resolution: {integrity: sha512-WHVocJYavUwVgVViC0ORikPHQquXwVh939TaelZ4WDqpWgTX/FsGhl/+P4qBUAGcRvtOgDgC+xftNWWp2RUTAQ==} hasBin: true dependencies: - caniuse-lite: 1.0.30001469 - electron-to-chromium: 1.4.340 + caniuse-lite: 1.0.30001473 + electron-to-chromium: 1.4.348 dev: true /browserslist/4.21.5: @@ -5098,8 +5097,8 @@ packages: engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} hasBin: true dependencies: - caniuse-lite: 1.0.30001469 - electron-to-chromium: 1.4.340 + caniuse-lite: 1.0.30001473 + electron-to-chromium: 1.4.348 node-releases: 2.0.10 update-browserslist-db: 1.0.10_browserslist@4.21.5 @@ -5256,8 +5255,8 @@ packages: dependencies: tmp: 0.0.28 - /caniuse-lite/1.0.30001469: - resolution: {integrity: sha512-Rcp7221ScNqQPP3W+lVOYDyjdR6dC+neEQCttoNr5bAyz54AboB4iwpnWgyi8P4YUsPybVzT4LgWiBbI3drL4g==} + /caniuse-lite/1.0.30001473: + resolution: {integrity: sha512-ewDad7+D2vlyy+E4UJuVfiBsU69IL+8oVmTuZnH5Q6CIUbxNfI50uVpRHbUPDD6SUaN2o0Lh4DhTrvLG/Tn1yg==} /capture-exit/2.0.0: resolution: {integrity: sha512-PiT/hQmTonHhl/HFGN+Lx3JJUznrVYJ3+AQsnthneZbvW7x+f08Tk7yLJTLEOUvBTbduLeeBkxEaYXUOUrRq6g==} @@ -6138,7 +6137,7 @@ packages: engines: {node: '>=8'} dev: true - /css-loader/5.2.7_webpack@5.76.3: + /css-loader/5.2.7_webpack@5.77.0: resolution: {integrity: sha512-Q7mOvpBNBG7YrVGMxRxcBJZFL75o+cH2abNASdibkj/fffYD8qWbInZrD0S9ccI6vZclF3DsHE7njGlLtaHbhg==} engines: {node: '>= 10.13.0'} peerDependencies: @@ -6154,7 +6153,7 @@ packages: postcss-value-parser: 4.2.0 schema-utils: 3.1.1 semver: 7.3.8 - webpack: 5.76.3 + webpack: 5.77.0 dev: true /css-tree/2.3.1: @@ -6637,8 +6636,8 @@ packages: resolution: {integrity: sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==} dev: true - /electron-to-chromium/1.4.340: - resolution: {integrity: sha512-zx8hqumOqltKsv/MF50yvdAlPF9S/4PXbyfzJS6ZGhbddGkRegdwImmfSVqCkEziYzrIGZ/TlrzBND4FysfkDg==} + /electron-to-chromium/1.4.348: + resolution: {integrity: sha512-gM7TdwuG3amns/1rlgxMbeeyNoBFPa+4Uu0c7FeROWh4qWmvSOnvcslKmWy51ggLKZ2n/F/4i2HJ+PVNxH9uCQ==} /elliptic/6.5.4: resolution: {integrity: sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==} @@ -6656,13 +6655,13 @@ packages: resolution: {integrity: sha512-gLqML2k77AuUiXxWNon1FSzuG1DV7PEPpCLCU5aJvf6fdL6rmFfElsZRh+8ELEB/qP9dT+LHjNEunVzd2dYc8A==} engines: {node: '>= 10.*'} dependencies: - '@babel/core': 7.21.3 - '@babel/preset-env': 7.20.2_@babel+core@7.21.3 - '@babel/traverse': 7.21.3 - '@babel/types': 7.21.3 + '@babel/core': 7.21.4 + '@babel/preset-env': 7.21.4_@babel+core@7.21.4 + '@babel/traverse': 7.21.4 + '@babel/types': 7.21.4 '@embroider/shared-internals': 1.8.3 babel-core: 6.26.3 - babel-loader: 8.3.0_y3c3uzyfhmxjbwhc6k6hyxg3aa + babel-loader: 8.3.0_z2ws6pnxa5zk5axe2qz6qd5y4u babel-plugin-syntax-dynamic-import: 6.18.0 babylon: 6.18.0 broccoli-debug: 0.6.5 @@ -6691,17 +6690,17 @@ packages: - webpack-command dev: true - /ember-auto-import/2.6.1_webpack@5.76.3: + /ember-auto-import/2.6.1_webpack@5.77.0: resolution: {integrity: sha512-3bCRi/pXp4QslmuCXGlSz9xwR7DF5oDx3zZO5OXKzNZihtkqAM1xvGuRIdQSl46pvbAXOkp8Odl5fOen1i0dRw==} engines: {node: 12.* || 14.* || >= 16} dependencies: - '@babel/core': 7.21.3 - '@babel/plugin-proposal-class-properties': 7.18.6_@babel+core@7.21.3 - '@babel/plugin-proposal-decorators': 7.21.0_@babel+core@7.21.3 - '@babel/preset-env': 7.20.2_@babel+core@7.21.3 + '@babel/core': 7.21.4 + '@babel/plugin-proposal-class-properties': 7.18.6_@babel+core@7.21.4 + '@babel/plugin-proposal-decorators': 7.21.0_@babel+core@7.21.4 + '@babel/preset-env': 7.21.4_@babel+core@7.21.4 '@embroider/macros': 1.10.0 '@embroider/shared-internals': 2.0.0 - babel-loader: 8.3.0_qtovpurzjlo3biun26ymnwui7i + babel-loader: 8.3.0_kh7tlia7ljiqfn7rrvxklxkh5i babel-plugin-ember-modules-api-polyfill: 3.5.0 babel-plugin-htmlbars-inline-precompile: 5.3.1 babel-plugin-syntax-dynamic-import: 6.18.0 @@ -6710,19 +6709,19 @@ packages: broccoli-merge-trees: 4.2.0 broccoli-plugin: 4.0.7 broccoli-source: 3.0.1 - css-loader: 5.2.7_webpack@5.76.3 + css-loader: 5.2.7_webpack@5.77.0 debug: 4.3.4 fs-extra: 10.1.0 fs-tree-diff: 2.0.1 handlebars: 4.7.7 js-string-escape: 1.0.1 lodash: 4.17.21 - mini-css-extract-plugin: 2.7.5_webpack@5.76.3 + mini-css-extract-plugin: 2.7.5_webpack@5.77.0 parse5: 6.0.1 resolve: 1.22.1 resolve-package-path: 4.0.3 semver: 7.3.8 - style-loader: 2.0.0_webpack@5.76.3 + style-loader: 2.0.0_webpack@5.77.0 typescript-memoize: 1.1.1 walk-sync: 3.0.0 transitivePeerDependencies: @@ -6734,12 +6733,12 @@ packages: resolution: {integrity: sha512-sKvOiPNHr5F/60NLd7SFzMpYPte/nnGkq/tMIfXejfKHIhaiIkYFqX8Z9UFTKWLLn+V7NOaby6niNPZUdvKCRw==} engines: {node: 6.* || 8.* || >= 10.*} - /ember-cli-babel/6.18.0_@babel+core@7.21.3: + /ember-cli-babel/6.18.0_@babel+core@7.21.4: resolution: {integrity: sha512-7ceC8joNYxY2wES16iIBlbPSxwKDBhYwC8drU3ZEvuPDMwVv1KzxCNu1fvxyFEBWhwaRNTUxSCsEVoTd9nosGA==} engines: {node: ^4.5 || 6.* || >= 7.*} dependencies: amd-name-resolver: 1.2.0 - babel-plugin-debug-macros: 0.2.0_@babel+core@7.21.3 + babel-plugin-debug-macros: 0.2.0_@babel+core@7.21.4 babel-plugin-ember-modules-api-polyfill: 2.13.4 babel-plugin-transform-es2015-modules-amd: 6.24.1 babel-polyfill: 6.26.0 @@ -6760,20 +6759,20 @@ packages: resolution: {integrity: sha512-JJYeYjiz/JTn34q7F5DSOjkkZqy8qwFOOxXfE6pe9yEJqWGu4qErKxlz8I22JoVEQ/aBUO+OcKTpmctvykM9YA==} engines: {node: 6.* || 8.* || >= 10.*} dependencies: - '@babel/core': 7.21.3 - '@babel/helper-compilation-targets': 7.20.7_@babel+core@7.21.3 - '@babel/plugin-proposal-class-properties': 7.18.6_@babel+core@7.21.3 - '@babel/plugin-proposal-decorators': 7.21.0_@babel+core@7.21.3 - '@babel/plugin-proposal-private-methods': 7.18.6_@babel+core@7.21.3 - '@babel/plugin-proposal-private-property-in-object': 7.21.0_@babel+core@7.21.3 - '@babel/plugin-transform-modules-amd': 7.20.11_@babel+core@7.21.3 - '@babel/plugin-transform-runtime': 7.21.0_@babel+core@7.21.3 - '@babel/plugin-transform-typescript': 7.21.3_@babel+core@7.21.3 + '@babel/core': 7.21.4 + '@babel/helper-compilation-targets': 7.21.4_@babel+core@7.21.4 + '@babel/plugin-proposal-class-properties': 7.18.6_@babel+core@7.21.4 + '@babel/plugin-proposal-decorators': 7.21.0_@babel+core@7.21.4 + '@babel/plugin-proposal-private-methods': 7.18.6_@babel+core@7.21.4 + '@babel/plugin-proposal-private-property-in-object': 7.21.0_@babel+core@7.21.4 + '@babel/plugin-transform-modules-amd': 7.20.11_@babel+core@7.21.4 + '@babel/plugin-transform-runtime': 7.21.4_@babel+core@7.21.4 + '@babel/plugin-transform-typescript': 7.21.3_@babel+core@7.21.4 '@babel/polyfill': 7.12.1 - '@babel/preset-env': 7.20.2_@babel+core@7.21.3 + '@babel/preset-env': 7.21.4_@babel+core@7.21.4 '@babel/runtime': 7.12.18 amd-name-resolver: 1.3.1 - babel-plugin-debug-macros: 0.3.4_@babel+core@7.21.3 + babel-plugin-debug-macros: 0.3.4_@babel+core@7.21.4 babel-plugin-ember-data-packages-polyfill: 0.1.2 babel-plugin-ember-modules-api-polyfill: 3.5.0 babel-plugin-module-resolver: 3.2.0 @@ -6802,13 +6801,13 @@ packages: debug: 3.2.7 ember-cli-internal-test-helpers: 0.9.1 fs-extra: 4.0.3 - testdouble: 3.17.1 + testdouble: 3.17.2 tmp-sync: 1.1.2 transitivePeerDependencies: - supports-color dev: true - /ember-cli-code-coverage/1.0.0-beta.3_@babel+core@7.21.3: + /ember-cli-code-coverage/1.0.0-beta.3_@babel+core@7.21.4: resolution: {integrity: sha512-7Wr9QhcneCHb7BLJwsvIhqJTLrVnIUKD3dtWF6nHdMeyYQAq2HfE7MJ71BXJ7fCBL8AR5S8dJWHh8/dCGxhflQ==} engines: {node: ^4.5 || 6.* || >= 7.*} dependencies: @@ -6817,7 +6816,7 @@ packages: babel-plugin-transform-async-to-generator: 6.24.1 body-parser: 1.20.2 co: 4.6.0 - ember-cli-babel: 6.18.0_@babel+core@7.21.3 + ember-cli-babel: 6.18.0_@babel+core@7.21.4 ember-cli-htmlbars: 2.0.5 ember-cli-version-checker: 2.2.0 exists-sync: 0.0.4 @@ -7009,12 +7008,12 @@ packages: - supports-color dev: true - /ember-cli-typescript/2.0.2_@babel+core@7.21.3: + /ember-cli-typescript/2.0.2_@babel+core@7.21.4: resolution: {integrity: sha512-7I5azCTxOgRDN8aSSnJZIKSqr+MGnT+jLTUbBYqF8wu6ojs2DUnTePxUcQMcvNh3Q3B1ySv7Q/uZFSjdU9gSjA==} engines: {node: 6.* || 8.* || >= 10.*} dependencies: - '@babel/plugin-proposal-class-properties': 7.18.6_@babel+core@7.21.3 - '@babel/plugin-transform-typescript': 7.4.5_@babel+core@7.21.3 + '@babel/plugin-proposal-class-properties': 7.18.6_@babel+core@7.21.4 + '@babel/plugin-transform-typescript': 7.4.5_@babel+core@7.21.4 ansi-to-html: 0.6.15 debug: 4.3.4 ember-cli-babel-plugin-helpers: 1.1.1 @@ -7030,11 +7029,11 @@ packages: - supports-color dev: true - /ember-cli-typescript/3.0.0_@babel+core@7.21.3: + /ember-cli-typescript/3.0.0_@babel+core@7.21.4: resolution: {integrity: sha512-lo5YArbJzJi5ssvaGqTt6+FnhTALnSvYVuxM7lfyL1UCMudyNJ94ovH5C7n5il7ATd6WsNiAPRUO/v+s5Jq/aA==} engines: {node: 8.* || >= 10.*} dependencies: - '@babel/plugin-transform-typescript': 7.5.5_@babel+core@7.21.3 + '@babel/plugin-transform-typescript': 7.5.5_@babel+core@7.21.4 ansi-to-html: 0.6.15 debug: 4.3.4 ember-cli-babel-plugin-helpers: 1.1.1 @@ -7117,8 +7116,8 @@ packages: engines: {node: '>= 12'} hasBin: true dependencies: - '@babel/core': 7.21.3 - '@babel/plugin-transform-modules-amd': 7.20.11_@babel+core@7.21.3 + '@babel/core': 7.21.4 + '@babel/plugin-transform-modules-amd': 7.20.11_@babel+core@7.21.4 amd-name-resolver: 1.3.1 babel-plugin-module-resolver: 4.1.0 bower-config: 1.4.3 @@ -7268,11 +7267,11 @@ packages: - whiskers dev: true - /ember-compatibility-helpers/1.2.6_@babel+core@7.21.3: + /ember-compatibility-helpers/1.2.6_@babel+core@7.21.4: resolution: {integrity: sha512-2UBUa5SAuPg8/kRVaiOfTwlXdeVweal1zdNPibwItrhR0IvPrXpaqwJDlEZnWKEoB+h33V0JIfiWleSG6hGkkA==} engines: {node: 10.* || >= 12.*} dependencies: - babel-plugin-debug-macros: 0.2.0_@babel+core@7.21.3 + babel-plugin-debug-macros: 0.2.0_@babel+core@7.21.4 ember-cli-version-checker: 5.1.2 find-up: 5.0.0 fs-extra: 9.1.0 @@ -7281,23 +7280,23 @@ packages: - '@babel/core' - supports-color - /ember-destroyable-polyfill/2.0.3_@babel+core@7.21.3: + /ember-destroyable-polyfill/2.0.3_@babel+core@7.21.4: resolution: {integrity: sha512-TovtNqCumzyAiW0/OisSkkVK93xnVF4NRU6+FN0ubpfwEOpRrmM2RqDwXI6YAChCgSHON1cz0DfQStpA1Gjuuw==} engines: {node: 10.* || >= 12} dependencies: ember-cli-babel: 7.26.11 ember-cli-version-checker: 5.1.2 - ember-compatibility-helpers: 1.2.6_@babel+core@7.21.3 + ember-compatibility-helpers: 1.2.6_@babel+core@7.21.4 transitivePeerDependencies: - '@babel/core' - supports-color - /ember-load-initializers/2.1.2_@babel+core@7.21.3: + /ember-load-initializers/2.1.2_@babel+core@7.21.4: resolution: {integrity: sha512-CYR+U/wRxLbrfYN3dh+0Tb6mFaxJKfdyz+wNql6cqTrA0BBi9k6J3AaKXj273TqvEpyyXegQFFkZEiuZdYtgJw==} engines: {node: 6.* || 8.* || >= 10.*} dependencies: ember-cli-babel: 7.26.11 - ember-cli-typescript: 2.0.2_@babel+core@7.21.3 + ember-cli-typescript: 2.0.2_@babel+core@7.21.4 transitivePeerDependencies: - '@babel/core' - supports-color @@ -7332,7 +7331,7 @@ packages: '@ember/test-helpers': ^2.4.0 qunit: ^2.13.0 dependencies: - '@ember/test-helpers': 2.9.3_otaypuqppwyaazv47auvopbzra + '@ember/test-helpers': 2.9.3_f4tsb6lbiq7drw6qlcagmdca2i broccoli-funnel: 3.0.8 broccoli-merge-trees: 3.0.2 common-tags: 1.8.2 @@ -7349,11 +7348,11 @@ packages: - webpack-command dev: true - /ember-resolver/8.1.0_@babel+core@7.21.3: + /ember-resolver/8.1.0_@babel+core@7.21.4: resolution: {integrity: sha512-MGD7X2ztZVswGqs1mLgzhZJRhG7XiF6Mg4DgC7xJFWRYQQUHyGJpGdNWY9nXyrYnRIsCrQoL1do41zpxbrB/cg==} engines: {node: '>= 10.*'} dependencies: - babel-plugin-debug-macros: 0.3.4_@babel+core@7.21.3 + babel-plugin-debug-macros: 0.3.4_@babel+core@7.21.4 broccoli-funnel: 3.0.8 broccoli-merge-trees: 4.2.0 ember-cli-babel: 7.26.11 @@ -7371,8 +7370,8 @@ packages: resolution: {integrity: sha512-89oVHVJwmLDvGvAUWgS87KpBoRhy3aZ6U0Ql6HOmU4TrPkyaa8pM0W81wj9cIwjYprcQtN9EwzZMHnq46+oUyw==} engines: {node: 8.* || 10.* || >= 12} dependencies: - '@babel/parser': 7.21.3 - '@babel/traverse': 7.21.3 + '@babel/parser': 7.21.4 + '@babel/traverse': 7.21.4 recast: 0.18.10 transitivePeerDependencies: - supports-color @@ -7387,15 +7386,15 @@ packages: - encoding dev: true - /ember-source/3.24.7_@babel+core@7.21.3: + /ember-source/3.24.7_@babel+core@7.21.4: resolution: {integrity: sha512-xwftkvyigiO2wl8FkpMt3uXG0cpvq0EQ5K+gsV251sHcQyRdihf4mY3CPRPgCxLvjEpBln8F+mhMbsxpOxI7Eg==} engines: {node: 10.* || >= 12.*} dependencies: - '@babel/helper-module-imports': 7.18.6 - '@babel/plugin-transform-block-scoping': 7.21.0_@babel+core@7.21.3 - '@babel/plugin-transform-object-assign': 7.18.6_@babel+core@7.21.3 + '@babel/helper-module-imports': 7.21.4 + '@babel/plugin-transform-block-scoping': 7.21.0_@babel+core@7.21.4 + '@babel/plugin-transform-object-assign': 7.18.6_@babel+core@7.21.4 '@ember/edition-utils': 1.2.0 - babel-plugin-debug-macros: 0.3.4_@babel+core@7.21.3 + babel-plugin-debug-macros: 0.3.4_@babel+core@7.21.4 babel-plugin-filter-imports: 4.0.0 broccoli-concat: 4.2.5 broccoli-debug: 0.6.5 @@ -7530,7 +7529,7 @@ packages: dependencies: '@types/cookie': 0.4.1 '@types/cors': 2.8.13 - '@types/node': 18.15.7 + '@types/node': 18.15.11 accepts: 1.3.8 base64id: 2.0.0 cookie: 0.4.2 @@ -7710,16 +7709,16 @@ packages: source-map: 0.6.1 dev: true - /eslint-config-prettier/8.8.0_eslint@8.36.0: + /eslint-config-prettier/8.8.0_eslint@8.37.0: resolution: {integrity: sha512-wLbQiFre3tdGgpDv67NQKnJuTlcUVYHas3k+DZCc2U2BadthoEY4B7hLPvAxaqdyOGCzuLfii2fqGph10va7oA==} hasBin: true peerDependencies: eslint: '>=7.0.0' dependencies: - eslint: 8.36.0 + eslint: 8.37.0 dev: true - /eslint-plugin-ember/10.6.1_eslint@8.36.0: + /eslint-plugin-ember/10.6.1_eslint@8.37.0: resolution: {integrity: sha512-R+TN3jwhYQ2ytZCA1VkfJDZSGgHFOHjsHU1DrBlRXYRepThe56PpuGxywAyDvQ7inhoAz3e6G6M60PzpvjzmNg==} engines: {node: 10.* || 12.* || >= 14} peerDependencies: @@ -7728,33 +7727,33 @@ packages: '@ember-data/rfc395-data': 0.0.4 css-tree: 2.3.1 ember-rfc176-data: 0.3.18 - eslint: 8.36.0 - eslint-utils: 3.0.0_eslint@8.36.0 + eslint: 8.37.0 + eslint-utils: 3.0.0_eslint@8.37.0 estraverse: 5.3.0 lodash.kebabcase: 4.1.1 requireindex: 1.2.0 snake-case: 3.0.4 dev: true - /eslint-plugin-es/3.0.1_eslint@8.36.0: + /eslint-plugin-es/3.0.1_eslint@8.37.0: resolution: {integrity: sha512-GUmAsJaN4Fc7Gbtl8uOBlayo2DqhwWvEzykMHSCZHU3XdJ+NSzzZcVhXh3VxX5icqQ+oQdIEawXX8xkR3mIFmQ==} engines: {node: '>=8.10.0'} peerDependencies: eslint: '>=4.19.1' dependencies: - eslint: 8.36.0 + eslint: 8.37.0 eslint-utils: 2.1.0 regexpp: 3.2.0 dev: true - /eslint-plugin-node/11.1.0_eslint@8.36.0: + /eslint-plugin-node/11.1.0_eslint@8.37.0: resolution: {integrity: sha512-oUwtPJ1W0SKD0Tr+wqu92c5xuCeQqB3hSCHasn/ZgjFdA9iDGNkNf2Zi9ztY7X+hNuMib23LNGRm6+uN+KLE3g==} engines: {node: '>=8.10.0'} peerDependencies: eslint: '>=5.16.0' dependencies: - eslint: 8.36.0 - eslint-plugin-es: 3.0.1_eslint@8.36.0 + eslint: 8.37.0 + eslint-plugin-es: 3.0.1_eslint@8.37.0 eslint-utils: 2.1.0 ignore: 5.2.4 minimatch: 3.1.2 @@ -7762,7 +7761,7 @@ packages: semver: 6.3.0 dev: true - /eslint-plugin-prettier/4.2.1_ywlv3zveqg2kxfq44lflihh5mm: + /eslint-plugin-prettier/4.2.1_ybb3aapb7235womryl2tm5ze2u: resolution: {integrity: sha512-f/0rXLXUt0oFYs8ra4w49wYZBG5GKZpAYsJSm6rnYL5uVDjd+zowwMwVZHnAjf4edNrKpCDYfXDgmRE/Ak7QyQ==} engines: {node: '>=12.0.0'} peerDependencies: @@ -7773,8 +7772,8 @@ packages: eslint-config-prettier: optional: true dependencies: - eslint: 8.36.0 - eslint-config-prettier: 8.8.0_eslint@8.36.0 + eslint: 8.37.0 + eslint-config-prettier: 8.8.0_eslint@8.37.0 prettier: 2.8.7 prettier-linter-helpers: 1.0.0 dev: true @@ -7810,13 +7809,13 @@ packages: eslint-visitor-keys: 1.3.0 dev: true - /eslint-utils/3.0.0_eslint@8.36.0: + /eslint-utils/3.0.0_eslint@8.37.0: resolution: {integrity: sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==} engines: {node: ^10.0.0 || ^12.0.0 || >= 14.0.0} peerDependencies: eslint: '>=5' dependencies: - eslint: 8.36.0 + eslint: 8.37.0 eslint-visitor-keys: 2.1.0 dev: true @@ -7830,20 +7829,20 @@ packages: engines: {node: '>=10'} dev: true - /eslint-visitor-keys/3.3.0: - resolution: {integrity: sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==} + /eslint-visitor-keys/3.4.0: + resolution: {integrity: sha512-HPpKPUBQcAsZOsHAFwTtIKcYlCje62XB7SEAcxjtmW6TD1WVpkS6i6/hOVtTZIl4zGj/mBqpFVGvaDneik+VoQ==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dev: true - /eslint/8.36.0: - resolution: {integrity: sha512-Y956lmS7vDqomxlaaQAHVmeb4tNMp2FWIvU/RnU5BD3IKMD/MJPr76xdyr68P8tV1iNMvN2mRK0yy3c+UjL+bw==} + /eslint/8.37.0: + resolution: {integrity: sha512-NU3Ps9nI05GUoVMxcZx1J8CNR6xOvUT4jAUMH5+z8lpp3aEdPVCImKw6PWG4PY+Vfkpr+jvMpxs/qoE7wq0sPw==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} hasBin: true dependencies: - '@eslint-community/eslint-utils': 4.4.0_eslint@8.36.0 - '@eslint-community/regexpp': 4.4.1 - '@eslint/eslintrc': 2.0.1 - '@eslint/js': 8.36.0 + '@eslint-community/eslint-utils': 4.4.0_eslint@8.37.0 + '@eslint-community/regexpp': 4.5.0 + '@eslint/eslintrc': 2.0.2 + '@eslint/js': 8.37.0 '@humanwhocodes/config-array': 0.11.8 '@humanwhocodes/module-importer': 1.0.1 '@nodelib/fs.walk': 1.2.8 @@ -7854,8 +7853,8 @@ packages: doctrine: 3.0.0 escape-string-regexp: 4.0.0 eslint-scope: 7.1.1 - eslint-visitor-keys: 3.3.0 - espree: 9.5.0 + eslint-visitor-keys: 3.4.0 + espree: 9.5.1 esquery: 1.5.0 esutils: 2.0.3 fast-deep-equal: 3.1.3 @@ -7889,13 +7888,13 @@ packages: engines: {node: '>=6'} dev: true - /espree/9.5.0: - resolution: {integrity: sha512-JPbJGhKc47++oo4JkEoTe2wjy4fmMwvFpgJT9cQzmfXKp22Dr6Hf1tdCteLz1h0P3t+mGvWZ+4Uankvh8+c6zw==} + /espree/9.5.1: + resolution: {integrity: sha512-5yxtHSZXRSW5pvv3hAlXM5+/Oswi1AUFqBmbibKb5s6bp3rGIDkyXU6xCoyuuLhijr4SFwPrXRoZjz0AZDN9tg==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dependencies: acorn: 8.8.2 acorn-jsx: 5.3.2_acorn@8.8.2 - eslint-visitor-keys: 3.3.0 + eslint-visitor-keys: 3.4.0 dev: true /esprima/3.0.0: @@ -10304,11 +10303,11 @@ packages: resolution: {integrity: sha512-5nnIN4vo5xQZHdXno/YDXJ0G+I3dAm4XgzfSVTPLQpj/zAV2dV6Juy0yaf10/zrJOJeHoN3fraFe+XRq2bFVZA==} engines: {node: '>=6'} dependencies: - '@babel/generator': 7.21.3 - '@babel/parser': 7.21.3 + '@babel/generator': 7.21.4 + '@babel/parser': 7.21.4 '@babel/template': 7.20.7 - '@babel/traverse': 7.21.3 - '@babel/types': 7.21.3 + '@babel/traverse': 7.21.4 + '@babel/types': 7.21.4 istanbul-lib-coverage: 2.0.5 semver: 6.3.0 transitivePeerDependencies: @@ -10432,10 +10431,10 @@ packages: resolution: {integrity: sha512-RATtQJtVYQrp7fvWg6f5y3pEFj9I+H8sWw4aKxnDZ96mob5i5SD6ZEGWgMLXQ4LE8UurrjbdlLWdUeo+28QpfQ==} engines: {node: '>= 6'} dependencies: - '@babel/core': 7.21.3 + '@babel/core': 7.21.4 '@jest/test-sequencer': 24.9.0 '@jest/types': 24.9.0 - babel-jest: 24.9.0_@babel+core@7.21.3 + babel-jest: 24.9.0_@babel+core@7.21.4 chalk: 2.4.2 glob: 7.2.3 jest-environment-jsdom: 24.9.0 @@ -10544,7 +10543,7 @@ packages: resolution: {integrity: sha512-Cq7vkAgaYKp+PsX+2/JbTarrk0DmNhsEtqBXNwUHkdlbrTBLtMJINADf2mf5FkowNsq8evbPc07/qFO0AdKTzw==} engines: {node: '>= 6'} dependencies: - '@babel/traverse': 7.21.3 + '@babel/traverse': 7.21.4 '@jest/environment': 24.9.0 '@jest/test-result': 24.9.0 '@jest/types': 24.9.0 @@ -10586,7 +10585,7 @@ packages: resolution: {integrity: sha512-oCj8FiZ3U0hTP4aSui87P4L4jC37BtQwUMqk+zk/b11FR19BJDeZsZAvIHutWnmtw7r85UmR3CEWZ0HWU2mAlw==} engines: {node: '>= 6'} dependencies: - '@babel/code-frame': 7.18.6 + '@babel/code-frame': 7.21.4 '@jest/test-result': 24.9.0 '@jest/types': 24.9.0 '@types/stack-utils': 1.0.1 @@ -10716,7 +10715,7 @@ packages: resolution: {integrity: sha512-uI/rszGSs73xCM0l+up7O7a40o90cnrk429LOiK3aeTvfC0HHmldbd81/B7Ix81KSFe1lwkbl7GnBGG4UfuDew==} engines: {node: '>= 6'} dependencies: - '@babel/types': 7.21.3 + '@babel/types': 7.21.4 '@jest/types': 24.9.0 chalk: 2.4.2 expect: 24.9.0 @@ -10792,7 +10791,7 @@ packages: resolution: {integrity: sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==} engines: {node: '>= 10.13.0'} dependencies: - '@types/node': 18.15.7 + '@types/node': 18.15.11 merge-stream: 2.0.0 supports-color: 8.1.1 dev: true @@ -11812,14 +11811,14 @@ packages: engines: {node: '>=4'} dev: true - /mini-css-extract-plugin/2.7.5_webpack@5.76.3: + /mini-css-extract-plugin/2.7.5_webpack@5.77.0: resolution: {integrity: sha512-9HaR++0mlgom81s95vvNjxkg52n2b5s//3ZTI1EtzFb98awsLSivs2LMsVqnQ3ay0PVhqWcGNyDaTE961FOcjQ==} engines: {node: '>= 12.13.0'} peerDependencies: webpack: ^5.0.0 dependencies: schema-utils: 4.0.0 - webpack: 5.76.3 + webpack: 5.77.0 dev: true /minimalistic-assert/1.0.1: @@ -11995,8 +11994,8 @@ packages: dev: true optional: true - /nanoid/3.3.4: - resolution: {integrity: sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==} + /nanoid/3.3.6: + resolution: {integrity: sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==} engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} hasBin: true dev: true @@ -12972,7 +12971,7 @@ packages: resolution: {integrity: sha512-tP7u/Sn/dVxK2NnruI4H9BG+x+Wxz6oeZ1cJ8P6G/PZY0IKk4k/63TDsQf2kQq3+qoJeLm2kIBUNlZe3zgb4Zg==} engines: {node: ^10 || ^12 || >=14} dependencies: - nanoid: 3.3.4 + nanoid: 3.3.6 picocolors: 1.0.0 source-map-js: 1.0.2 dev: true @@ -13525,7 +13524,7 @@ packages: /regenerator-transform/0.15.1: resolution: {integrity: sha512-knzmNAcuyxV+gQCufkYcvOqX/qIIfHLv0u5x79kRxuGojfYVky1f15TzZEu2Avte8QGepvUNTnLskf8E6X6Vyg==} dependencies: - '@babel/runtime': 7.12.18 + '@babel/runtime': 7.21.0 /regex-cache/0.4.4: resolution: {integrity: sha512-nVIZwtCjkC9YgvWkpM55B5rBhBYRZhAaJbgcFYXXsHnbZ9UZI9nnVWYZpBlCqv9ho2eZryPnWrZGsOdPwVWXWQ==} @@ -14827,7 +14826,7 @@ packages: engines: {node: '>=8'} dev: true - /style-loader/2.0.0_webpack@5.76.3: + /style-loader/2.0.0_webpack@5.77.0: resolution: {integrity: sha512-Z0gYUJmzZ6ZdRUqpg1r8GsaFKypE+3xAzuFeMuoHgjc9KZv3wMyCRjQIWEbhoFSq7+7yoHXySDJyyWQaPajeiQ==} engines: {node: '>= 10.13.0'} peerDependencies: @@ -14835,7 +14834,7 @@ packages: dependencies: loader-utils: 2.0.4 schema-utils: 3.1.1 - webpack: 5.76.3 + webpack: 5.77.0 dev: true /styled_string/0.0.1: @@ -14985,7 +14984,7 @@ packages: worker-farm: 1.7.0 dev: true - /terser-webpack-plugin/5.3.7_webpack@5.76.3: + /terser-webpack-plugin/5.3.7_webpack@5.77.0: resolution: {integrity: sha512-AfKwIktyP7Cu50xNjXF/6Qb5lBNzYaWpU6YfoX3uZicTx0zTy0stDDCsvjDapKsSDvOeWo5MEq4TmdBy2cNoHw==} engines: {node: '>= 10.13.0'} peerDependencies: @@ -15006,7 +15005,7 @@ packages: schema-utils: 3.1.1 serialize-javascript: 6.0.1 terser: 5.16.8 - webpack: 5.76.3 + webpack: 5.77.0 dev: true /terser/4.8.1: @@ -15051,8 +15050,8 @@ packages: require-main-filename: 2.0.0 dev: true - /testdouble/3.17.1: - resolution: {integrity: sha512-6u3v0rKHf3oJHSD7UuxFkXXcvV3QWguYdfU9QKaRjLF/wRa9Hxg0fmRzdbMhPX2fYs4xVnw4l1h2GsKJiwFRlw==} + /testdouble/3.17.2: + resolution: {integrity: sha512-oRrk1DJISNoFr3aaczIqrrhkOUQ26BsXN3SopYT/U0GTvk9hlKPCEbd9R2uxkcufKZgEfo9D1JAB4CJrjHE9cw==} engines: {node: '>= 14'} dependencies: lodash: 4.17.21 @@ -15066,7 +15065,7 @@ packages: engines: {node: '>= 7.*'} hasBin: true dependencies: - '@xmldom/xmldom': 0.8.6 + '@xmldom/xmldom': 0.8.7 backbone: 1.4.1 bluebird: 3.7.2 charm: 1.0.2 @@ -16125,8 +16124,8 @@ packages: - supports-color dev: true - /webpack/5.76.3: - resolution: {integrity: sha512-18Qv7uGPU8b2vqGeEEObnfICyw2g39CHlDEK4I7NK13LOur1d0HGmGNKGT58Eluwddpn3oEejwvBPoP4M7/KSA==} + /webpack/5.77.0: + resolution: {integrity: sha512-sbGNjBr5Ya5ss91yzjeJTLKyfiwo5C628AFjEa6WSXcZa4E+F57om3Cc8xLb1Jh0b243AWuSYRf3dn7HVeFQ9Q==} engines: {node: '>=10.13.0'} hasBin: true peerDependencies: @@ -16156,7 +16155,7 @@ packages: neo-async: 2.6.2 schema-utils: 3.1.1 tapable: 2.2.1 - terser-webpack-plugin: 5.3.7_webpack@5.76.3 + terser-webpack-plugin: 5.3.7_webpack@5.77.0 watchpack: 2.4.0 webpack-sources: 3.2.3 transitivePeerDependencies: @@ -16295,7 +16294,7 @@ packages: /workerpool/3.1.2: resolution: {integrity: sha512-WJFA0dGqIK7qj7xPTqciWBH5DlJQzoPjsANvc3Y4hNB0SScT+Emjvt0jPPkDBUjBNngX1q9hHgt1Gfwytu6pug==} dependencies: - '@babel/core': 7.21.3 + '@babel/core': 7.21.4 object-assign: 4.1.1 rsvp: 4.8.5 transitivePeerDependencies: diff --git a/test-app/.eslintrc.js b/test-app/.eslintrc.js index faf5316a..8f93f5fb 100644 --- a/test-app/.eslintrc.js +++ b/test-app/.eslintrc.js @@ -22,6 +22,7 @@ module.exports = { }, rules: { 'ember/no-global-jquery': 0, + 'ember/no-jquery': 0, 'no-console': ['error', { allow: ['warn', 'error'] }], }, overrides: [ diff --git a/test-app/tests/unit/-private/query-test.js b/test-app/tests/unit/-private/query-test.js new file mode 100644 index 00000000..f16dbb6f --- /dev/null +++ b/test-app/tests/unit/-private/query-test.js @@ -0,0 +1,188 @@ +import { test, module } from 'qunit'; +import { create, collection } from 'ember-cli-page-object'; +import { Query } from 'ember-cli-page-object/-private/query'; +import { setupRenderingTest } from '../../helpers'; +import { render } from '@ember/test-helpers'; +import hbs from 'htmlbars-inline-precompile'; +// @ts-expect-error test-only private import +import Locator from 'ember-cli-page-object/-private/query/locator'; + +module('Unit | -private/query', function () { + module('toString()', function () { + test('it works', function (assert) { + const q = new Query(); + assert.equal(q.toString(), ':first-child:eq(0)'); + }); + + test('respects node scope', function (assert) { + const page = create({ + scope: '.selector', + }); + + const q = new Query(page); + assert.equal(q.toString(), '.selector'); + }); + + test('scope as a getter', function (assert) { + const page = create({ + get scope() { + return new Locator('.selector', { + at: 2, + }); + }, + }); + + const q = new Query(page); + assert.equal(q.toString(), '.selector:eq(2)'); + }); + + module('locator', function () { + test('accepts string', function (assert) { + const page = create({ + scope: '.selector', + }); + + const q = new Query(page, '.child'); + assert.equal(q.toString(), '.selector .child'); + }); + + test('selector', function (assert) { + const page = create({ + scope: '.selector', + }); + + const q = new Query(page, { + selector: '.child', + }); + + assert.equal(q.toString(), '.selector .child'); + }); + + test('at', function (assert) { + const page = create({ + scope: '.selector', + }); + + const q = new Query(page, { + at: 9, + }); + + assert.equal(q.toString(), '.selector:eq(9)'); + }); + + test('last', function (assert) { + const page = create({ + scope: '.selector', + }); + + const q = new Query(page, { + last: true, + }); + + assert.equal(q.toString(), '.selector:last'); + }); + + test('visible', function (assert) { + const page = create({ + scope: '.selector', + }); + + const q = new Query(page, { + visible: true, + }); + + assert.equal(q.toString(), '.selector:visible'); + }); + + test('contains', function (assert) { + const page = create({ + scope: '.selector', + }); + + const q = new Query(page, { + contains: 'some text', + }); + + assert.equal(q.toString(), '.selector:contains("some text")'); + }); + + test('respects resetScope', function (assert) { + const page = create({ + scope: '.selector', + }); + + const q1 = new Query(page, { + selector: '.independent-selector', + resetScope: true, + }); + + assert.equal(q1.toString(), '.independent-selector'); + + const q2 = new Query(page, { + resetScope: true, + }); + + assert.equal(q2.toString(), '.selector'); + }); + }); + }); + + module('all', function (hooks) { + setupRenderingTest(hooks); + + test('it works', async function (assert) { + const page = create({ + scope: 'ul', + collection: collection('li', { + title: { + scope: 'h5', + }, + }), + }); + + const q = new Query(page.collection[1].title, {}); + + await render(hbs``); + + assert.strictEqual(q.all().length, 1); + }); + + test('testContainer', async function (assert) { + const page = create({ + scope: 'ul', + testContainer: '#alternate-ember-testing', + + collection: collection('li', { + title: { + scope: 'h5', + }, + }), + }); + + const q = new Query(page.collection[1].title, {}); + + await this.createTemplate( + ``, + { + useAlternateContainer: true, + } + ); + + assert.strictEqual(q.all().length, 1); + }); + }); +}); diff --git a/test-app/tests/unit/extend/find-many-test.ts b/test-app/tests/unit/extend/find-many-test.ts index 92fdf82e..ffceae77 100644 --- a/test-app/tests/unit/extend/find-many-test.ts +++ b/test-app/tests/unit/extend/find-many-test.ts @@ -73,16 +73,46 @@ module(`Extend | findMany`, function(hooks) { assert.deepEqual(findMany(page, '.lorem', { resetScope: true }), findAll('.lorem')); }); - test('contains param', async function(assert) { + test('contains', async function(assert) { let page = create({}); await render(hbs` - Word - Word + + Word + Word + + + Word + Word + + `); + + assert.deepEqual( + findMany(page, '.lorem', { contains: 'Word' }).map((el) => el.id), + ['a', 'b'] + ); + }); + + test('contains with nested selector', async function(assert) { + let page = create({}); + + await render(hbs` + + + Word + Word + + + Word + Word + `); - assert.deepEqual(findMany(page, '.lorem', { contains: 'Word' }), findAll('.lorem').slice(1, 3)); + assert.deepEqual( + findMany(page, '.lorem *', { contains: 'Word' }).map((el) => el.id), + ['ab', 'bb'] + ); }); test('scope param', async function(assert) { diff --git a/test-app/tests/unit/extend/find-one-test.ts b/test-app/tests/unit/extend/find-one-test.ts index b1810688..3123fffa 100644 --- a/test-app/tests/unit/extend/find-one-test.ts +++ b/test-app/tests/unit/extend/find-one-test.ts @@ -17,9 +17,16 @@ module(`Extend | findOne`, function(hooks) { }); test('finds deeper in scope', async function(assert) { - let page = create({ scope: '.lorem' }); + let page = create({ + scope: '.lorem' + }); - await render(hbs``); + await render(hbs` + + + + + `); assert.equal(findOne(page, '.dolor', {}), find('.lorem .dolor')); });